@import url(https://cloud.typography.com/7121376/6691972/css/fonts.css);

/* ==========================================================================
  Core bundle

  Styles shared between:
  - CMS front-end (projects/cms), and
  - search and account front-end (projects/search)

  If in doubt:
  Anything that is NOT a specific to a CMS content module
  should most likely go here.

  Caution:
  If removing something from here, be sure that
  it is not used by the search and account front-end
========================================================================== */
/* ==========================================================================
  Mixins and extendable classes

  * Boundary wrapper
  * Text visibility
  * Plain action
  * Ellipsis
  * Icons
  ========================================================================== */
/* Boundary wrapper

Ensure an element meets min and max width boundary requirements, and centre it:
  .my-element-with-standard-boundaries {
    @extend .extender-boundary-wrapper;
  }
========================================================================== */
.sv-extender-boundary-wrapper {
  max-width: 78rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1rem;
  min-width: 20rem;
}
.sv-extender-boundary-wrapper:before{
  content: '';
  display: table;
}
.sv-extender-boundary-wrapper:after{
  content: '';
  display: table;
  clear: both;
}
/* Text visibility

Hide text visually but accessibly to non-visual interpretation:
  .my-element-with-hidden-text {
    @extend .extender-text-hide;
  }

Overriding (e.g. between breakpoints or with class modifiers):
  .my-element-with-hidden-text.different-state {
    @extend .extender-text-show;
  }
========================================================================== */
.sv-extender-text-hide, .sv-social__action, .sv-header__tool-action span {
  overflow: hidden;
  text-indent: 100vw; /* % is buggy in Firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=1306590 */
  white-space: nowrap;
}
.sv-extender-text-show {
  overflow: visible;
  text-indent: 0;
  white-space: normal;
}
/* Plain action
Can be used on any element, but includes a light button reset
as it is likely it will be used on button elements too

Usage:
  .my-plain-call-to-action {
    @extend .extender-plain-action;
  }
========================================================================== */
.sv-extender-plain-action, .sv-header__tool-action, .sv-nav__close {
  background: none;
  border: 0;
  color: #4c4d50;
  display: inline-block;
  font-size: 0.8125rem;
  line-height: 1.15;
  margin: 0;
  padding: 0;
}
/* Ellipsis
========================================================================== */
.sv-extender-ellipsis, .sv--type-residential .sv-property-price__value, .sv--type-new-development .sv-property-price__value, .sv--type-residential .sv-property-price__original, .sv--type-new-development .sv-property-price__original, .sv-tag, .sv-card-meta__data, .sv-card-label, .sv-property-card .sv-slider__footer-labels .sv-card-label, .sv-property-card.sv--type-new-development .sv-details__address2, .sv-rich-card__extra-actions .sv-button {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* Icons

Basic usage:
  .my-element-with-icon-background {
    @extend .extender-icon-base;
    @mixin mixin-icon-config basket, yellow
  }

Advanced usage:
  .my-element-with-icon-background {
    @extend .extender-icon-base;
    @mixin mixin-icon-config basket, yellow, 50px, 10px, left;
  }

mixin-icon-config mixin options:
  $name = name of public/images/icons SVG file (without .svg extension)
  $color = color to fill the SVG paths
  $size = square canvas size to include the SVG at
  $buffer = additional padding to apply to left or right of icon (depends on $position), e.g. to buffer between text and icon
  $position = left, right, or center
========================================================================== */
.sv-extender-icon-base, .sv-busy, .sv-property-attribute, .sv-tag__close, .sv-cta-link > a, .sv-cta-link > span, .sv-card__download-link, .sv-list-group__label, .sv-modal-window__close, .sv-property-card .sv-slider__footer-action, .sv-share-this-article__share-item, .sv-share-this-article__copy-button > span, .sv-social__action, .sv-header__tool-action span, .sv-nav__close span {
  display: inline-block;
  position: relative;
}
.sv-extender-icon-base::after, .sv-busy::after, .sv-property-attribute::after, .sv-tag__close::after, .sv-cta-link > a::after, .sv-cta-link > span::after, .sv-card__download-link::after, .sv-list-group__label::after, .sv-modal-window__close::after, .sv-property-card .sv-slider__footer-action::after, .sv-share-this-article__share-item::after, .sv-share-this-article__copy-button > span::after, .sv-social__action::after, .sv-header__tool-action span::after, .sv-nav__close span::after {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  content: '';
  display: block;
  position: absolute;
  speak: none;
  top: 50%;
  transform: translateY(-50%);
}
/* View unit from px

TODO: find best place to round this decimal output to 4 places
*/
/* ==========================================================================
  Variables

  * Colours
  * Measurements
  * Fonts
  * Other
  * Keyframes

  note:
  --properties, @custom-media, and @apply are transformed (or not)
  by cssnext, based on the browserslist file in the root of the project
 ========================================================================== */
/* Colours
 ========================================================================== */
:root {
  /* highlight scale */

  /* shadow scale */ /* TODO: maybe reorder to get rid of "0" */

  /* keeping a gap for an inevitable in-between shades here */ /* TOOD:; replace all instances of this with highlight-shade-1 */

  /* primary pallette */ /* dark clay */ /* school bus yellow */ /* dull blue */ /* slate grey */ /* red */

  /* secondary pallette */ /* light blue */ /* duck egg */ /* cream */ /* light grey */ /* just another random colour because why not ffs!!! */ /* light/mid blue */ /* dark blue */ /* light dark blue */ /* light great, almost in double figures */ /* lighter grey double figures... */ /* :| */ /* ¯\_(ツ)_/¯ */ /* light grey variant */ /* dark grey variant */ /* really dark blue */

  /* ui pallette */ /* medium red */ /* light red */ /* medium green */ /* light green */ /* 'new-development' light blue */ /* 'new-development' blue */

  /* default font colour */ /* dark grey (black) */ /* dark grey */
}
/* Measurements
 ========================================================================== */
:root {

  /* Added named default gutter size for the purpose associative loops */

  /* Added intermediate gutter size for the purpose associative loops */ /* 16 * 20 */ /* 16 * 48 */ /* 16 * 64 */ /* 16 * 71 */ /* 16 * 78 */

  /* globals */
}
/* Fonts
 ========================================================================== */
:root {
  /* standard */

  /* alternative */
}
/* Other
 ========================================================================== */
:root {
  /* transitions */

  /* urls */

  /* z-indexes */
}
/* Keyframes
 ========================================================================== */
@keyframes sv-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* stylelint-disable */
@charset "UTF-8";
/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
 */
.sv-pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: #333;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 0.75rem;
  border: 1px solid #C9C9C9;
  border-radius: 0.125rem;
  background-color: #FFFFFF;
  box-shadow: 0 0.125rem 0.25rem 0 rgba(0, 0, 0, .17);
}
/*
clear child float (pika-lendar), using the famous micro clearfix hack
http://nicolasgallagher.com/micro-clearfix-hack/
*/
.sv-pika-single:before, .sv-pika-single:after {
  content: " ";
  display: table;
}
.sv-pika-single:after {
  clear: both
}
.sv-pika-single {
  *zoom: 1
}
.sv-pika-single.sv-is-hidden {
  display: none;
}
.sv-pika-single.sv-is-bound {
  position: absolute;
  box-shadow: 0 0.3125rem 0.9375rem -0.3125rem rgba(0, 0, 0, .5);
}
.sv-pika-lendar {
  float: left;
  width: 15rem;
  margin: 0.5rem;
}
.sv-pika-title {
  position: relative;
  text-align: center;
}
.sv-pika-label {
  display: inline-block;
  *display: inline;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 0.3125rem 0.1875rem 0;
  font-size: 0.75rem;
  line-height: 1.25rem;
  font-weight: bold;
  background-color: #fff;
}
.sv-pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 9998;
  margin: 0;
  left: 0;
  top: 0.3125rem;
  filter: alpha(opacity=0);
  opacity: 0;
}
.sv-pika-prev, .sv-pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 1.25rem;
  height: 1.875rem;
  /* hide text using text-indent trick, using width value (it's enough) */
  text-indent: 1.25rem;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: .5;
  *position: absolute;
  *top: 0;
}
.sv-pika-prev:hover, .sv-pika-next:hover {
  opacity: 1;
}
.sv-pika-prev, .sv-is-rtl .sv-pika-next {
  float: left;
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');
  *left: 0;
}
.sv-pika-next, .sv-is-rtl .sv-pika-prev {
  float: right;
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');
  *right: 0;
}
.sv-pika-prev.sv-is-disabled, .sv-pika-next.sv-is-disabled {
  cursor: default;
  opacity: .2;
}
.sv-pika-select {
  display: inline-block;
  *display: inline;
}
.sv-pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
}
.sv-pika-table th, .sv-pika-table td {
  width: 14.285714285714286%;
  padding: 0;
}
.sv-pika-table th {
  color: #999;
  font-size: 0.75rem;
  line-height: 1.5625rem;
  font-weight: bold;
  text-align: center;
}
.sv-pika-button {
  cursor: pointer;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 0.3125rem;
  color: #777;
  font-size: 0.75rem;
  line-height: 0.9375rem;
  text-align: center;
  background: #e9eaeb;
}
.sv-pika-week {
  font-size: 0.6875rem;
  color: #999;
}
.sv-is-today .sv-pika-button {
  font-weight: bold;
}
.sv-is-selected .sv-pika-button, .sv-has-event .sv-pika-button {
  font-weight: bold;
  background: #ffdf00;
  border-radius: 0.125rem;
}
.sv-has-event .sv-pika-button {
  background: #005da9;
  box-shadow: inset 0 1px 0.1875rem #0076c9;
}
.sv-is-disabled .sv-pika-button, .sv-is-inrange .sv-pika-button {
  background: #D5E9F7;
}
.sv-is-startrange .sv-pika-button {
  color: #fff;
  background: #6CB31D;
  box-shadow: none;
  border-radius: 0.1875rem;
}
.sv-is-endrange .sv-pika-button {
  color: #fff;
  background: #33aaff;
  box-shadow: none;
  border-radius: 0.1875rem;
}
.sv-is-disabled .sv-pika-button {
  pointer-events: none;
  cursor: default;
  color: #999;
  opacity: .3;
}
.sv-is-outside-current-month .sv-pika-button {
  color: #999;
  opacity: .3;
}
.sv-is-selection-disabled {
  pointer-events: none;
  cursor: default;
}
.sv-pika-button:hover, .sv-pika-row.sv-pick-whole-week:hover .sv-pika-button {
  background: #ffdf00;
  box-shadow: none;
  border-radius: 0.125rem;
}
/* styling for abbr */
.sv-pika-table abbr {
  text-decoration: none;
  border-bottom: none;
  font-weight: 500;
  cursor: help;
  line-height: 1.5rem;
}
/* ==========================================================================
  Conditionals

  * Viewport visibility
  ========================================================================== */
/* Viewport visibility
gt = greater than this breakpoint
lt = less than this breakpoint
eq = only within this breakpoint
 ========================================================================== */
[class*=sv-view-gt-], [class*=sv-view-lt-] {
  display: none;
}
/* ==========================================================================
  Font face definitions

  * Gotham
  * Domine
 ========================================================================== */
/* Gotham
 ========================================================================== */
/* Domine
 ========================================================================== */
@font-face {
  font-family: 'DomineWebBold';
  src:
    url('https://assets.savills.com/livev6/WebAssets/GlobalPropertySearch/fonts/domine/domine-bold-webfont.woff2') format('woff2'),
    url('https://assets.savills.com/livev6/WebAssets/GlobalPropertySearch/fonts/domine/domine-bold-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'DomineWebRegular';
  src:
    url('https://assets.savills.com/livev6/WebAssets/GlobalPropertySearch/fonts/domine/domine-regular-webfont.woff2') format('woff2'),
    url('https://assets.savills.com/livev6/WebAssets/GlobalPropertySearch/fonts/domine/domine-regular-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
/* ==========================================================================
  Reset

  * Baseline
  * Layout
  * Actions and inputs
  ========================================================================== */
/* Baseline
 ========================================================================== */
body {
  background: #fff;
  color: #252839;
  font: 1rem / 1.5 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  margin: 0;
  min-width: 20rem;
  padding: 0;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  /* stylelint-disable property-no-unknown */
  font-smoothing: always;
  /* stylelint-enable property-no-unknown */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  width: 100%;
}
.sv-no-scroll {
  overflow: hidden;
  position: fixed;
}
/* Layout
 ========================================================================== */
*, *::before, *::after {
  box-sizing: border-box;
}
main {
  display: block;
}
img {
  display: block;
  max-width: 100%;
}
/* Actions and inputs
 ========================================================================== */
a {
  text-decoration: none;
}
a:active, a:hover, button:active, button:hover {
  outline: 0;
}
button {
  border: none;
  border-radius: 0;
  cursor: pointer;
  letter-spacing: inherit;
  overflow: visible;
  -webkit-font-smoothing: inherit;
}
button, input[type="reset"], input[type="submit"] {
  -webkit-appearance: none;
  cursor: pointer;
}
button[disabled], input[disabled] {
  cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
button, input, select, textarea {
  font-size: 100%;
}
input[type="search"] {
  -webkit-appearance: none;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
textarea {
  vertical-align: top;
}
fieldset {
  border: 0;
}
/* https://silktide.com/i-thought-title-text-improved-accessibility-i-was-wrong/ */
.sv-accessible-link {
  position: relative;
}
.sv-accessible-link span {
  height: 1px;
  width: 1px;
  position: absolute;
  overflow: hidden;
  top: -0.625rem;
}
/* atoms a-z */
.sv-anchor::before {
  content: '';
  display: block;
  height: 3.125rem;
  margin: -3.125rem 0 0;
}
/* ==========================================================================
  Busy indicator

  * Basic styles
  * Centred
  * Colours
  * Sizes
  ========================================================================== */
.sv-busy {

  padding-right: 5rem;

  animation: sv-spin 2s infinite linear;
  color: transparent;
  display: block;
  height: 2rem;
  left: 50%;
  margin: -1rem 0 0 -1rem;
  overflow: hidden;
  padding: 0;
  position: absolute;
  text-indent: -100%;
  top: 50%;
  width: 2rem;
}
.sv-busy::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 5rem;
  width: 5rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23313131%3B%22%3E%3Cpath%20d%3D%22M526%201394q0%2053-37.5%2090.5t-90.5%2037.5q-52%200-90-38t-38-90q0-53%2037.5-90.5t90.5-37.5%2090.5%2037.5%2037.5%2090.5zm498%20206q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-704-704q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm1202%20498q0%2052-38%2090t-90%2038q-53%200-90.5-37.5t-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-964-996q0%2066-47%20113t-113%2047-113-47-47-113%2047-113%20113-47%20113%2047%2047%20113zm1170%20498q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-640-704q0%2080-56%20136t-136%2056-136-56-56-136%2056-136%20136-56%20136%2056%2056%20136zm530%20206q0%2093-66%20158.5t-158%2065.5q-93%200-158.5-65.5t-65.5-158.5q0-92%2065.5-158t158.5-66q92%200%20158%2066t66%20158z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
/* Colours
   ========================================================================== */
.sv-busy.sv--light {
  padding-right: 5rem;
}
.sv-busy.sv--light::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 5rem;
  width: 5rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M526%201394q0%2053-37.5%2090.5t-90.5%2037.5q-52%200-90-38t-38-90q0-53%2037.5-90.5t90.5-37.5%2090.5%2037.5%2037.5%2090.5zm498%20206q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-704-704q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm1202%20498q0%2052-38%2090t-90%2038q-53%200-90.5-37.5t-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-964-996q0%2066-47%20113t-113%2047-113-47-47-113%2047-113%20113-47%20113%2047%2047%20113zm1170%20498q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-640-704q0%2080-56%20136t-136%2056-136-56-56-136%2056-136%20136-56%20136%2056%2056%20136zm530%20206q0%2093-66%20158.5t-158%2065.5q-93%200-158.5-65.5t-65.5-158.5q0-92%2065.5-158t158.5-66q92%200%20158%2066t66%20158z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-busy, .sv-busy.sv--light {
  padding-right: 0;
}
.sv-busy::after, .sv-busy.sv--light::after {
  height: 100%;
  width: 100%;
}
/* Sizes
   ========================================================================== */
.sv-busy.sv--lrg {
  height: 3rem;
  margin: -1.5rem 0 0 -1.5rem;
  width: 3rem;
}
/* ==========================================================================
  Buttons

  * Basic styles
  * Full width
  * With icon
  * Small
  * Secondary colour scheme
  * Tertiary colour scheme
  * Dark colour scheme
  * Light colour sceheme
  * >= sml viewport
  ========================================================================== */
.sv-button {
  -webkit-tap-highlight-color: transparent;
  border-radius: 0;
  border: 0;
  display: inline-block;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1;
  margin: 0 0 1rem;
  padding: 1.125rem 2.5rem;
  position: relative;
  text-align: center;
  width: 100%;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #252839;
  background-color: #ffdf00;

  /* Link
   ========================================================================== */
  /* stylelint-enable selector-max-specificity */

  /* Tertiary Light colour scheme
   ========================================================================== */
  /* stylelint-enable selector-max-specificity */

  /* Tertiary Yellow colour scheme
   ========================================================================== */
  /* stylelint-enable selector-max-specificity */

  /* Tertiary Grey colour scheme
   ========================================================================== */
  /* stylelint-enable selector-max-specificity */
}
.sv-button:hover, .sv-button:focus {
  outline: none;
}
.sv-button:active {
  outline: none;
}
.sv-button:disabled, .sv-button.sv--disabled {
  background: #eee !important;
  /* Use of important to prevent having to override styles with specificity */
  color: #78828b !important;
  cursor: default;
  pointer-events: none;
}
/* stylelint-disable selector-max-specificity,selector-no-qualifying-type */
.sv-button.sv--link {
  padding: 0;
}
.sv-button.sv--link > a {
  display: block;
  padding: 1.125rem 2.5rem;
  color: #252839;
}
.sv-button.sv--link > a:active {
  color: #ffdf00;
}
.sv-button.sv--link.sv--disabled > a, .sv-button.sv--link > a:disabled {
  color: #78828b !important;
}
.sv-button.sv--link.sv--secondary > a {
  color: #fff;
}
.sv-button.sv--link.sv--secondary > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--tertiary > a {
  color: #252839;
}
.sv-button.sv--link.sv--tertiary > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--tertiary.sv--light > a {
  color: #fff;
}
.sv-button.sv--link.sv--tertiary.sv--light > a:active {
  color: #252839;
}
.sv-button.sv--link.sv--tertiary.sv--yellow > a {
  color: #ffdf00;
}
.sv-button.sv--link.sv--tertiary.sv--yellow > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--tertiary.sv--grey > a {
  color: #a3a4a9;
}
.sv-button.sv--link.sv--tertiary.sv--grey > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--dark > a {
  color: #fff;
}
.sv-button.sv--link.sv--dark > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--light > a {
  color: #313131;
}
.sv-button.sv--link.sv--light > a:active {
  color: #fff;
}
.sv-button.sv--link.sv--new-development > a {
  color: #fff;
}
.sv-button.sv--link.sv--new-development > a:active {
  color: #fff;
}
/* Share window
   ========================================================================== */
.sv-button.sv--share-window {
  display: none;
}
/* Full width
   ========================================================================== */
.sv-button.sv--full {
  width: 100%;
}
/* With icon
   ========================================================================== */
.sv-button.sv--icon {
  padding-right: 3.75rem;
  text-align: left;
}
.sv-button.sv--icon::before, .sv-button.sv--icon::after {
  content: '';
  display: block;
  width: 1.25rem;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.875rem;
  background: no-repeat center;
  transition: all .15s;
}
.sv-button.sv--icon::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 1.25rem;
  transform: translateX(-1.5625rem);
  transition-delay: .12s;
  opacity: 0;
}
.sv-button.sv--icon::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23252839%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 1.25rem;
}
.sv-button.sv--icon:active::before {
  transform: translateX(0);
  opacity: 1;
}
.sv-button.sv--icon:active::after {
  transform: translateX(1.875rem);
  opacity: 0;
}
.sv-button.sv--icon:disabled, .sv-button.sv--icon.sv--disabled {
  background: #eee;
  color: #78828b !important;
  cursor: default;
  pointer-events: none;
}
.sv-button.sv--icon:disabled::before, .sv-button.sv--icon:disabled::after, .sv-button.sv--icon.sv--disabled::before, .sv-button.sv--icon.sv--disabled::after {
  display: none;
}
/* Small
  ========================================================================== */
.sv-button.sv--sml:not(.sv--link), .sv-button.sv--sml.sv--link > a {
  font-size: 0.875rem;
  padding: 1.125rem 1.25rem;
}
/* Secondary colour scheme
   ========================================================================== */
.sv-button.sv--secondary {
  background-color: #78828b;
  color: #fff;
}
.sv-button.sv--secondary:disabled, .sv-button.sv--secondary.sv--disabled {
  background-image: none;
}
.sv-button.sv--secondary.sv--icon::before, .sv-button.sv--secondary.sv--icon::after {
  background-size: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
/* Tertiary colour scheme
   ========================================================================== */
.sv-button.sv--tertiary {
  background-color: transparent;
  color: #252839;
  box-shadow: 0 0 0 1px #252839 inset;
}
/* fake 'inset border' so button heights are equal w/wo border */
.sv-button.sv--tertiary:disabled, .sv-button.sv--tertiary.sv--disabled {
  background: transparent !important;
  box-shadow: 0 0 0 1px #eee inset;
}
.sv-button.sv--tertiary.sv--icon::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-button.sv--tertiary.sv--icon::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23252839%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
/* stylelint-disable selector-max-specificity */
.sv-button.sv--tertiary.sv--light {
  background-color: transparent;
  color: #fff;
  box-shadow: 0 0 0 1px #fff inset;
}
.sv-button.sv--tertiary.sv--light:disabled, .sv-button.sv--tertiary.sv--light.sv--disabled {
  background: transparent !important;
  box-shadow: 0 0 0 1px #eee inset;
}
.sv-button.sv--tertiary.sv--light.sv--icon::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23252839%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-button.sv--tertiary.sv--light.sv--icon::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
/* stylelint-disable selector-max-specificity */
.sv-button.sv--tertiary.sv--yellow {
  background-color: transparent;
  color: #ffdf00;
  box-shadow: 0 0 0 1px #ffdf00 inset;
}
.sv-button.sv--tertiary.sv--yellow:disabled, .sv-button.sv--tertiary.sv--yellow.sv--disabled {
  background: transparent !important;
  box-shadow: 0 0 0 1px #eee inset;
}
/* stylelint-disable selector-max-specificity */
.sv-button.sv--tertiary.sv--grey {
  background-color: transparent;
  color: #a3a4a9;
  box-shadow: 0 0 0 1px #a3a4a9 inset;
}
.sv-button.sv--tertiary.sv--grey:disabled, .sv-button.sv--tertiary.sv--grey.sv--disabled {
  background: transparent !important;
  box-shadow: 0 0 0 1px #eee inset;
}
/* Dark colour scheme
   ========================================================================== */
.sv-button.sv--dark {
  background-color: #4c4d50;
  color: #fff;
}
.sv-button.sv--dark:disabled, .sv-button.sv--dark.sv--disabled {
  background-image: none;
}
.sv-button.sv--dark.sv--icon::before, .sv-button.sv--dark.sv--icon::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
/* Light colour scheme
   ========================================================================== */
.sv-button.sv--light {
  background-color: #fff;
  color: #313131;
}
.sv-button.sv--light:disabled, .sv-button.sv--light.sv--disabled {
  background-image: none;
}
.sv-button.sv--light.sv--icon::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23313131%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-button.sv--light.sv--icon::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
}
/* New Development Style
   ========================================================================== */
.sv-button.sv--new-development {
  background-color: #7987b5;
  color: #fff;
}
.sv-button.sv--new-development:disabled, .sv-button.sv--new-development.sv--disabled {
  background-image: none;
}
/* >= sml viewport
 ========================================================================== */
.sv-cookie-img {
  position: fixed;
  top: -6.25rem;
}
.sv-divider {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border: 0;
  border-bottom: 1px solid #eee;
}
.sv-divider > *:last-child {
  margin-bottom: 0;
}
.sv-divider.sv--no-style {
  border-bottom: none;
}
.sv-divider.sv--dark {
  border-bottom: 1px solid grey;
}
.sv-favourite, .sv-favourite:active, .sv-favourite:hover, .sv-favourite:focus {
  padding: 0;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1;
  color: #e2e3e5;
  background: none;
}
.sv-property-card .sv-favourite, .sv-search-summary .sv-favourite, .sv-property-card .sv-favourite:active, .sv-search-summary .sv-favourite:active, .sv-property-card .sv-favourite:hover, .sv-search-summary .sv-favourite:hover, .sv-property-card .sv-favourite:focus, .sv-search-summary .sv-favourite:focus {
  font-weight: 500;
}
.sv-favourite {
  /* stylelint-enable selector-max-specificity */
}
.sv-favourite.sv--remove-property {
  background: #fff;
  display: inline-block;
  height: 2rem;
  position: absolute;
  right: 0;
  top: 0;
  width: 2rem;
  z-index: 2;
}
.sv-favourite.sv--remove-property::after, .sv-favourite.sv--remove-property::before {
  background: #999795;
  content: '';
  display: block;
  height: 0.125rem;
  margin-left: 0.5rem;
  width: 1rem;
}
.sv-favourite.sv--remove-property::after {
  transform: rotate(-45deg) translateX(1px);
}
.sv-favourite.sv--remove-property::before {
  transform: rotate(45deg) translateX(1px);
}
.sv-favourite.sv--remove-property span {
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.sv-page-actions .sv-favourite {
  height: 1.5rem;
}
.sv-favourite__image {
  position: relative;
  display: inline;
  top: 0.25rem;
  width: 1.125rem;
  min-width: 1.125rem;
}
.sv-page-actions .sv-favourite__image {
  margin-right: 0.5rem;
}
.sv-property-card .sv-favourite span {
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/* stylelint-disable selector-max-specificity */
/* ==========================================================================
  Form elements

  * Errors
  * Custom field containers
 ========================================================================== */
/* ==========================================================================
  Input style fields

  * Text & dropdown input fields (common)
  * No border
  * Search
  * Dropdown fields
 ========================================================================== */
/* stylelint-disable selector-no-qualifying-type */
/* Text input & dropdown fields (common)
 ========================================================================== */
input[type=search], input[type=text], input[type=tel], input[type=email], input[type=number], input[type=month], input[type=date], input[type=datetime], input[type=datetime-local], input[type=password], input[type=time], input[type=url], input[type=week], textarea, select {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 1rem;
  color: #4c4d50;
  border: 1px solid #b8b8b8;
  border-radius: 0.125rem;
  padding: 0.9375rem;
  min-width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  min-height: 3.4375rem;
  box-shadow: 1px 1px 0.1875rem 1px transparent;
  transition: box-shadow .2s;
  margin-bottom: 2rem;
  margin-left: 0;
}
input[type=search]:disabled, input[type=text]:disabled, input[type=tel]:disabled, input[type=email]:disabled, input[type=number]:disabled, input[type=month]:disabled, input[type=date]:disabled, input[type=datetime]:disabled, input[type=datetime-local]:disabled, input[type=password]:disabled, input[type=time]:disabled, input[type=url]:disabled, input[type=week]:disabled, textarea:disabled, select:disabled {
  background-color: #e2e3e5;
  cursor: not-allowed;
}
input[type=search]:focus, input[type=text]:focus, input[type=tel]:focus, input[type=email]:focus, input[type=number]:focus, input[type=month]:focus, input[type=date]:focus, input[type=datetime]:focus, input[type=datetime-local]:focus, input[type=password]:focus, input[type=time]:focus, input[type=url]:focus, input[type=week]:focus, textarea:focus, select:focus {
  outline: none;
}
input[type=search]:focus ~ label, input[type=search].sv-state-has-value ~ label, input[type=text]:focus ~ label, input[type=text].sv-state-has-value ~ label, input[type=tel]:focus ~ label, input[type=tel].sv-state-has-value ~ label, input[type=email]:focus ~ label, input[type=email].sv-state-has-value ~ label, input[type=number]:focus ~ label, input[type=number].sv-state-has-value ~ label, input[type=month]:focus ~ label, input[type=month].sv-state-has-value ~ label, input[type=date]:focus ~ label, input[type=date].sv-state-has-value ~ label, input[type=datetime]:focus ~ label, input[type=datetime].sv-state-has-value ~ label, input[type=datetime-local]:focus ~ label, input[type=datetime-local].sv-state-has-value ~ label, input[type=password]:focus ~ label, input[type=password].sv-state-has-value ~ label, input[type=time]:focus ~ label, input[type=time].sv-state-has-value ~ label, input[type=url]:focus ~ label, input[type=url].sv-state-has-value ~ label, input[type=week]:focus ~ label, input[type=week].sv-state-has-value ~ label, textarea:focus ~ label, textarea.sv-state-has-value ~ label, select:focus ~ label, select.sv-state-has-value ~ label {
  padding: 0;
  opacity: .5;
  color: #464853 !important;
  /* use of important to overide various state text colors */
}
input[type=search]::-webkit-input-placeholder, input[type=text]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=month]::-webkit-input-placeholder, input[type=date]::-webkit-input-placeholder, input[type=datetime]::-webkit-input-placeholder, input[type=datetime-local]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=time]::-webkit-input-placeholder, input[type=url]::-webkit-input-placeholder, input[type=week]::-webkit-input-placeholder, textarea::-webkit-input-placeholder, select::-webkit-input-placeholder {
  font-size: 0.875rem;
}
input[type=search]:-ms-input-placeholder, input[type=text]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, textarea:-ms-input-placeholder, select:-ms-input-placeholder {
  font-size: 0.875rem;
}
input[type=search]::placeholder, input[type=text]::placeholder, input[type=tel]::placeholder, input[type=email]::placeholder, input[type=number]::placeholder, input[type=month]::placeholder, input[type=date]::placeholder, input[type=datetime]::placeholder, input[type=datetime-local]::placeholder, input[type=password]::placeholder, input[type=time]::placeholder, input[type=url]::placeholder, input[type=week]::placeholder, textarea::placeholder, select::placeholder {
  font-size: 0.875rem;
}
input[type=search].input-error, input[type=text].input-error, input[type=tel].input-error, input[type=email].input-error, input[type=number].input-error, input[type=month].input-error, input[type=date].input-error, input[type=datetime].input-error, input[type=datetime-local].input-error, input[type=password].input-error, input[type=time].input-error, input[type=url].input-error, input[type=week].input-error, textarea.input-error, select.input-error {
  box-shadow: 1px 1px 0.1875rem 1px #ed4444;
  border-color: #ed4444;
}
textarea {
  height: 9.375rem;
}
.sv--input-optional, .sv--input-tagline {
  color: #555764;
  font-size: 0.875rem;
}
.sv--input-tagline {
  float: right;
  margin-top: 0.625rem;
}
.sv-date-picker input {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225%22%20height%3D%2225%22%20viewBox%3D%220%200%2025%2025%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23595b68%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%226.2%22%20y%3D%2217.5%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%226.2%22%20y%3D%2212.5%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%2211.2%22%20y%3D%2212.5%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%2211.2%22%20y%3D%2217.5%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%2216.2%22%20y%3D%2217.5%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222.5%22%20height%3D%222.5%22%20x%3D%2216.2%22%20y%3D%2212.5%22%2F%3E%0D%0A%20%20%20%20%3Cpath%20d%3D%22M20%205C19.3%205%2018.8%204.4%2018.8%203.8L18.8%201.3C18.8.6%2019.4.1%2020%20.1%2020.6.1%2021.2.7%2021.2%201.3L21.2%203.8C21.2%204.4%2020.7%205%2020%205zM5%205C4.3%205%203.8%204.4%203.8%203.8L3.8%201.3C3.8.6%204.4.1%205%20.1%205.6.1%206.2.7%206.2%201.3L6.2%203.8C6.2%204.4%205.7%205%205%205z%22%2F%3E%0D%0A%20%20%20%20%3Cpath%20d%3D%22M25%2C25%20L0%2C25%20L0%2C2.5%20L2.5%2C2.5%20L2.5%2C3.7%20C2.5%2C5.1%203.6%2C6.2%205%2C6.2%20C6.4%2C6.2%207.5%2C5.1%207.5%2C3.7%20L7.5%2C2.5%20L17.5%2C2.5%20L17.5%2C3.7%20C17.5%2C5.1%2018.6%2C6.2%2020%2C6.2%20C21.4%2C6.2%2022.5%2C5.1%2022.5%2C3.7%20L22.5%2C2.5%20L25%2C2.5%20L25%2C25%20Z%20M2.5%2C22.5%20L22.5%2C22.5%20L22.5%2C10%20L2.5%2C10%20L2.5%2C22.5%20Z%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  background-size: 1.5625rem;
  background-repeat: no-repeat;
  background-position: calc(100% - 0.9375rem);
}
.sv-date-picker::after {
  right: 3.4375rem !important;
}
/* No border
 ========================================================================== */
.sv-custom-input.sv--no-border input {
  border: none;
  padding-left: 0;
}
.sv-custom-input.sv--lrg input {
  max-width: 100%;
  font-size: 1.875rem;
  font-weight: 300;
  line-height: 4.75rem;
}
/* Search
 ========================================================================== */
.sv-custom-input.sv--search input {
  padding-right: 3.125rem;
  background-position: calc(100% - 1rem) center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23999795%3B%22%3E%3Cpath%20d%3D%22M1216%20832q0-185-131.5-316.5t-316.5-131.5-316.5%20131.5-131.5%20316.5%20131.5%20316.5%20316.5%20131.5%20316.5-131.5%20131.5-316.5zm512%20832q0%2052-38%2090t-90%2038q-54%200-90-38l-343-342q-179%20124-399%20124-143%200-273.5-55.5t-225-150-150-225-55.5-273.5%2055.5-273.5%20150-225%20225-150%20273.5-55.5%20273.5%2055.5%20225%20150%20150%20225%2055.5%20273.5q0%20220-124%20399l343%20343q37%2037%2037%2090z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 1rem;
}
.sv-custom-input.sv--search.sv--alt {
  position: relative;
}
.sv-custom-input.sv--search.sv--alt button {
  content: '';
  position: absolute;
  top: 1.5625rem;
  right: 1px;
  width: 2.6875rem;
  height: 2.6875rem;
  background-color: #ffdf00;
  background-position: 1rem center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23252839%3B%22%3E%3Cpath%20d%3D%22M1216%20832q0-185-131.5-316.5t-316.5-131.5-316.5%20131.5-131.5%20316.5%20131.5%20316.5%20316.5%20131.5%20316.5-131.5%20131.5-316.5zm512%20832q0%2052-38%2090t-90%2038q-54%200-90-38l-343-342q-179%20124-399%20124-143%200-273.5-55.5t-225-150-150-225-55.5-273.5%2055.5-273.5%20150-225%20225-150%20273.5-55.5%20273.5%2055.5%20225%20150%20150%20225%2055.5%20273.5q0%20220-124%20399l343%20343q37%2037%2037%2090z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 1rem;
}
.sv-custom-input.sv--search.sv--alt label {
  padding: 0.75rem 3.125rem 0.8125rem 1.125rem;
  color: #777;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transform: none;
}
.sv-custom-input.sv--search.sv--alt input {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  padding: 0.625rem 3.125rem 0.625rem 1.125rem;
  min-height: 2.8125rem;
  background-image: none;
  border-color: #c9c9c9;
  border-radius: 0;
  font-weight: 500;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-custom-input.sv--search.sv--alt input:focus ~ label, .sv-custom-input.sv--search.sv--alt input.sv-state-has-value ~ label {
  opacity: 0;
}
/* Dropdowns
 ========================================================================== */
/* Hide the dropdown arrow in IE */
select {
  background: #fff calc(100% - 0.9375rem) no-repeat;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23999795%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 0.625rem;
  padding-right: 2.25rem;
}
select::-ms-expand {
  display: none;
}
.sv-custom-input.sv--dropdown {
  margin-bottom: 2rem;
}
/* Want to: maintain correct spacing with or without 'custom-input' wrapper */
.sv-custom-input.sv--dropdown .sv-select__container[data-sv-has-sort-prefix] {
  font-size: 1rem;
  position: relative;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-custom-input.sv--dropdown .sv-select__container[data-sv-has-sort-prefix]::before {
  content: attr(data-sort-label);
  position: absolute;
  bottom: 0;
  padding-top: 0.9375rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-custom-input.sv--dropdown .sv-select__container[data-sv-has-sort-prefix] select {
  padding-left: 5.625rem;
  border: 1px solid #c9c9c9;
}
.sv-custom-input.sv--dropdown select {
  margin-bottom: 0;
}
.sv-custom-input.sv--dropdown .sv-select__value, .sv-custom-input.sv--dropdown .sv-select__options {
  display: none;
}
.sv-custom-input.sv--dropdown label {
  display: block;
  position: static;
}
.sv--dropdown {
}
.sv--dropdown.sv--primary-1 .sv-select__value, .sv--dropdown.sv--primary-1 select{
  color: #252839;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23252839%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv--dropdown.sv--primary-2 .sv-select__value, .sv--dropdown.sv--primary-2 select{
  color: #ffdf00;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv--dropdown.sv--primary-3 .sv-select__value, .sv--dropdown.sv--primary-3 select{
  color: #69769e;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%2369769e%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv--dropdown.sv--primary-4 .sv-select__value, .sv--dropdown.sv--primary-4 select{
  color: #78828b;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%2378828b%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv--dropdown.sv--primary-5 .sv-select__value, .sv--dropdown.sv--primary-5 select{
  color: #cd171e;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23cd171e%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv--dropdown.sv--calc-layout {
  display: inline-block;
  box-shadow: none;
  outline: none;
}
.sv--dropdown.sv--calc-layout .sv-select__container {
  display: inline-block;
}
.sv--dropdown.sv--calc-layout .sv-dropdown__calc {
  display: none;
}
.sv--dropdown.sv--calc-layout select {
  font-size: inherit;
  border: none;
  border-radius: 0;
  border-radius: initial;
  border-bottom-style: dotted;
  background-size: .45em;
  background-position: 100% .4em;
  background-color: transparent;
  padding: 0;
  min-height: 1.875rem;
  min-width: 0;
  min-width: initial;
  box-shadow: none;
  outline: none;
}
.sv--dropdown.sv--calc-layout label {
  position: static;
  display: inline;
  font-size: inherit;
  margin-right: .7ch;
  padding: 0;
}
.sv--dropdown.sv--custom select {
  display: none;
}
.sv--dropdown.sv--custom .sv-select__value, .sv--dropdown.sv--custom .sv-select__option {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
}
.sv--dropdown.sv--custom .sv-select__container {
  position: relative;
}
.sv--dropdown.sv--custom .sv-select__value {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: .45em;
  background-position: 100% .4em;
  display: inline-block;
  border-bottom-style: dotted;
  padding: 0 .9em 0 0;
  min-height: 1.875rem;
  line-height: 1.2;
  white-space: nowrap;
}
.sv--dropdown.sv--custom:focus .sv-select__value {
  box-shadow: .0625rem .0625rem .1875rem .0625rem #6081e5;
  box-shadow: 1px 1px 0.125rem 1px #69769e;
}
.sv--dropdown.sv--custom::after {
  content: '';
  padding-right: .5ch;
}
.sv--dropdown.sv--custom .sv-select__options {
  padding: 0;
  margin: 0;
  min-width: 100%;
  list-style: none;
  display: block;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-1.25rem);
  font-size: medium;
  font-size: initial;
  border: 1px solid #c9c9c9;
}
.sv--dropdown.sv--custom .sv-select__option {
  white-space: nowrap;
  padding: 0.5rem 1rem;
  background-color: #f3f3f3;
  margin-top: 0;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  line-height: 1.4375rem;
}
.sv--dropdown.sv--custom .sv-select__option:hover, .sv--dropdown.sv--custom .sv-select__option.sv--active {
  background-color: #e2e3e5;
}
.sv--dropdown.sv--custom.sv--open .sv-select__options {
  transition: all .2s;
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  z-index: 11;
  height: auto;
  max-height: inherit;
}
.sv--dropdown.sv--language-dropdown .sv-select__value {
  border: none;
  padding: 0.1875rem 0.9375rem 0;
  text-align: left;
}
.sv--dropdown.sv--language-dropdown .sv-select__value:focus {
  outline: none;
}
.sv--dropdown.sv--language-dropdown .sv-select__container {
  display: block;
}
.sv--dropdown.sv--language-dropdown .sv-select__option {
  background: #fff;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.625rem 0.9375rem;
  text-align: left;
}
.sv--dropdown.sv--language-dropdown .sv-select__options {
  border: none;
  box-shadow: 0 0.125rem 0.25rem 0 rgba(0, 0, 0, .14);
}
.sv-form-field-touched input[type=date] {
  padding-right: 2.8125rem;
}
/* ==========================================================================
  Check style fields

  * Check indicator (shared)
  * Custom radios/checkboxes (common)
  * Custom radios
  * Custom checkboxes
 ========================================================================== */
/* stylelint-disable selector-max-specificity */
/* stylelint-disable selector-no-qualifying-type */
/* Check indicator (shared)
 ========================================================================== */
.sv-custom-input__check {
  min-height: 1.25rem;
  position: relative;
  padding-left: 1.875rem;
  line-height: 1.5;
  display: block;
}
.sv-custom-input__check::before, .sv-custom-input__check::after {
  height: 1.25rem;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 150ms;
  width: 1.25rem;
}
.sv-custom-input__check::before {
  content: '';
  border: 1px solid #9a9896;
  display: inline-block;
}
.sv-custom-input__check::after {
  content: '';
  background-color: #3e3e40;
  transform: scale(0);
}
.sv-custom-input__check.sv--sml {
  font-size: 0.875rem;
  min-height: 1rem;
  padding-left: 1.5rem;
}
.sv-custom-input__check.sv--sml::before {
  border-width: 1px;
}
.sv-custom-input__check.sv--sml::before, .sv-custom-input__check.sv--sml::after {
  height: 1rem;
  top: 0.125rem;
  width: 1rem;
}
/* Custom radios/checkboxes (common)
 ========================================================================== */
.sv-custom-input.sv--radio, .sv-custom-input.sv--checkbox {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin-bottom: 2rem;
  display: block;
}
.sv-custom-input.sv--radio input, .sv-custom-input.sv--checkbox input {
  opacity: 0;
  /* hides inputs whilst retaining descendant selector capabilities */
  position: absolute;
}
.sv-custom-input.sv--radio input:disabled ~ .sv-custom-input__check, .sv-custom-input.sv--checkbox input:disabled ~ .sv-custom-input__check {
  opacity: .3;
  cursor: not-allowed;
}
.sv-custom-input.sv--radio input:focus ~ .sv-custom-input__check::before, .sv-custom-input.sv--checkbox input:focus ~ .sv-custom-input__check::before {
  box-shadow: 1px 1px 0.1875rem 1px #6081e5;
  border-color: #69769e;
}
.sv-custom-input.sv--radio input.sv-input-error ~ .sv-custom-input__check::before, .sv-custom-input.sv--checkbox input.sv-input-error ~ .sv-custom-input__check::before {
  box-shadow: 1px 1px 0.1875rem 1px #ed4444;
  border-color: #ed4444;
}
/* Custom radios
 ========================================================================== */
.sv-custom-input.sv--radio input:checked ~ .sv-custom-input__check::after {
  transform: scale(.6);
}
.sv-custom-input.sv--radio .sv-custom-input__check::before {
  border-radius: 100%;
}
.sv-custom-input.sv--radio .sv-custom-input__check::after {
  border-radius: 100%;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0.25rem;
}
.sv-custom-input.sv--radio .sv-custom-input__check.sv--sml::after {
  width: 0.375rem;
  height: 0.375rem;
  margin: 0.3125rem;
}
/* Custom checkboxes
 ========================================================================== */
.sv-custom-input.sv--checkbox {
  min-height: 1.25rem;
}
.sv-custom-input.sv--checkbox input:checked ~ .sv-custom-input__check::after {
  transform: scale(1);
}
.sv-custom-input.sv--checkbox .sv-custom-input__check::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1671%20566q0%2040-28%2068l-724%20724-136%20136q-28%2028-68%2028t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28%2068-28t68%2028l294%20295%20656-657q28-28%2068-28t68%2028l136%20136q28%2028%2028%2068z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: .875rem;
}
.sv-custom-input.sv--checkbox .sv-custom-input__check.sv--sml {
  min-height: 1rem;
}
/* Errors
 ========================================================================== */
.sv-form-error {
  color: #ed4444;
  display: block;
  font-size: 0.75rem;
  padding-top: 0.5rem;
}
/* Custom field containers
(see forms-[*].css for .custom-input variants)
 ========================================================================== */
.sv-custom-input {
  position: relative;
  margin-bottom: 1.25rem;
}
/* Want to: maintain correct spacing with or without 'custom-input' wrapper */
.sv-custom-input input[type], .sv-custom-input textarea {
  margin-bottom: 0;
}
.sv-custom-input input[type]::-ms-clear, .sv-custom-input textarea::-ms-clear {
  display: none;
}
.sv-custom-input label, .sv-custom-input__label {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
  font-size: 0.875rem;
  padding: 0.625rem 0;
  display: inline-block;
  color: #4c4d50;
}
.sv--static .sv-custom-input label, .sv--static .sv-custom-input__label {
  font-weight: 500;
  padding-bottom: 0;
}
.sv-custom-input.sv-form-field-valid input, .sv-custom-input.sv-form-field-valid textarea, .sv-custom-input.sv-form-field-valid select {
  border: 0.125rem solid #7ed321 !important;
  /* To override and custom styles so validation is still present */
}
.sv-custom-input.sv-form-field-invalid input, .sv-custom-input.sv-form-field-invalid textarea, .sv-custom-input.sv-form-field-invalid select {
  border: 0.125rem solid #cd171e !important;
  /* To override and custom styles so validation is still present */
}
.sv-custom-input .sv-form-error {
  position: relative;
  display: block;
  width: 100%;
  border: 0.125rem solid #cd171e;
  border-radius: 0.125rem;
  font-weight: 500;
  padding: 1rem;
  margin: 1.4375rem 0;
  text-align: center;
}
.sv-custom-input .sv-form-error::before {
  content: '';
  position: absolute;
  left: 50%;
  width: 0.5625rem;
  height: 0.5625rem;
  border-left: 0.125rem solid #cd171e;
  border-bottom: 0.125rem solid #cd171e;
  background: #fff;
  top: -0.375rem;
  transform: rotate(135deg);
}
.sv-custom-input.sv-input-error::after, .sv-custom-input.sv-form-field-valid::after {
  content: '';
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  position: absolute;
  right: 1.25rem;
  top: 3.75rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2219%22%20viewBox%3D%220%200%2019%2019%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23cd171e%22%20d%3D%22M9.5%2C19%20C4.3%2C19%200%2C14.7%200%2C9.5%20C0%2C4.3%204.3%2C0%209.5%2C0%20C14.7%2C0%2019%2C4.3%2019%2C9.5%20C19%2C14.7%2014.7%2C19%209.5%2C19%20Z%20M8.9%2C11.9%20L10.2%2C11.9%20C10.2%2C11.5%2010.2%2C11.1%2010.2%2C10.7%20C10.2%2C10.3%2010.3%2C9.8%2010.3%2C9.4%20C10.3%2C9%2010.4%2C8.6%2010.4%2C8.3%20C10.4%2C8%2010.4%2C7.7%2010.4%2C7.5%20C10.5%2C7.1%2010.5%2C6.8%2010.5%2C6.4%20C10.5%2C6%2010.6%2C5.6%2010.6%2C5.2%20C10.6%2C4.9%2010.5%2C4.6%2010.4%2C4.4%20C10.2%2C4.2%209.9%2C4%209.5%2C4%20C9.2%2C4%208.9%2C4.2%208.7%2C4.4%20C8.5%2C4.6%208.4%2C4.9%208.4%2C5.2%20C8.4%2C5.6%208.4%2C6%208.5%2C6.4%20C8.6%2C6.8%208.6%2C7.1%208.6%2C7.5%20C8.6%2C7.7%208.6%2C7.9%208.7%2C8.3%20C8.7%2C8.6%208.8%2C9%208.8%2C9.4%20C8.8%2C9.8%208.8%2C10.2%208.9%2C10.7%20C8.9%2C11.1%208.9%2C11.5%208.9%2C11.9%20Z%20M8.3%2C14.2%20C8.3%2C14.6%208.4%2C14.9%208.6%2C15.1%20C8.8%2C15.3%209.1%2C15.4%209.4%2C15.4%20C9.8%2C15.4%2010.1%2C15.3%2010.3%2C15.1%20C10.5%2C14.9%2010.6%2C14.6%2010.6%2C14.2%20C10.6%2C13.8%2010.5%2C13.5%2010.3%2C13.3%20C10.1%2C13.1%209.9%2C13%209.5%2C13%20C9.1%2C13%208.9%2C13.1%208.6%2C13.3%20C8.4%2C13.5%208.3%2C13.8%208.3%2C14.2%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
}
.sv-custom-input.sv-input-optional.sv-form-field-valid {
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-custom-input.sv-input-optional.sv-form-field-valid input:focus, .sv-custom-input.sv-input-optional.sv-form-field-valid textarea:focus {
  border: 0.125rem solid #69769e !important;
}
/* stylelint-disable selector-max-specificity */
.sv-custom-input.sv-input-optional.sv-form-field-valid.sv--form-field-populated input, .sv-custom-input.sv-input-optional.sv-form-field-valid.sv--form-field-populated textarea {
  border: 0.125rem solid #7ed321 !important;
  /* To override and custom styles so validation is still present */
}
/* stylelint-enable selector-max-specificity */
.sv-custom-input.sv-form-field-valid::after {
  content: '';
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%237ed321%22%20d%3D%22M10%2C0%20C4.5%2C0%200%2C4.5%200%2C10%20C0%2C15.5%204.5%2C20%2010%2C20%20C15.5%2C20%2020%2C15.5%2020%2C10%20C20%2C4.5%2015.5%2C0%2010%2C0%20Z%20M14.8%2C7.7%20L9%2C13.7%20C8.7%2C14%208.3%2C14.1%208%2C14.1%20C7.6%2C14.1%207.3%2C14%207%2C13.7%20L5%2C11.7%20C4.4%2C11.1%204.4%2C10.2%205%2C9.6%20C5.4%2C9%206.4%2C9%207%2C9.6%20L8%2C10.5%20L12.7%2C5.6%20C13.3%2C5%2014.2%2C5%2014.8%2C5.6%20C15.4%2C6.2%2015.4%2C7.1%2014.8%2C7.7%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
}
.sv-custom-input.sv--dropdown::after {
  top: 1.1875rem;
  right: 2.5rem;
}
.sv-custom-input.sv--radio::after, .sv-custom-input.sv--checkbox::after, .sv-custom-input.sv--dropdown::after {
  display: none;
}
.sv-custom-input.sv--input-clean label {
  display: none;
}
.sv-custom-input__static {
  color: #4c4d50;
  display: block;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.875rem;
}
.sv-custom-input__link.sv-link {
  margin: 1.875rem 0;
  display: inline-block;
  color: #4c4d50;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  font-size: 0.875rem;
}
.sv-custom-input__toggle-password {
  position: absolute;
  top: 0.3125rem;
  right: 0;
  background: transparent;
  padding-left: 1.5625rem;
  color: #6a769d;
  font-size: 0.875rem;
  font-weight: 500;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
}
.sv-custom-input__toggle-password::before {
  content: '';
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2212%22%20viewBox%3D%220%200%2020%2012%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%236a769d%22%20d%3D%22M10%2C1.7%20C14%2C1.7%2016.7%2C4.2%2017.9%2C5.6%20C16.8%2C7.1%2014%2C10%2010%2C10%20C6.3%2C10%203.4%2C7.1%202.1%2C5.5%20C3.4%2C4.1%206.1%2C1.7%2010%2C1.7%20Z%20M10%2C0%20C3.7%2C0%200%2C5.5%200%2C5.5%20C0%2C5.5%204%2C11.7%2010%2C11.7%20C16.4%2C11.7%2020%2C5.5%2020%2C5.5%20C20%2C5.5%2016.4%2C0%2010%2C0%20Z%20M10%2C2.5%20C8.2%2C2.5%206.7%2C4%206.7%2C5.8%20C6.7%2C7.6%208.2%2C9.1%2010%2C9.1%20C11.8%2C9.1%2013.3%2C7.6%2013.3%2C5.8%20C13.3%2C4%2011.8%2C2.5%2010%2C2.5%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  width: 1.25rem;
  height: 0.75rem;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.sv-custom-input__toggle-password.sv--hidden::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2216%22%20viewBox%3D%220%200%2020%2016%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%236a769d%22%20d%3D%22M16.3%2C0%20L13.5%2C2.6%20C12.5%2C2.3%2011.3%2C2%2010%2C2%20C3.7%2C2%200%2C7.5%200%2C7.5%20C0%2C7.5%201.6%2C10%204.3%2C11.8%20L1.9%2C14.2%20L3%2C15.4%20L17.5%2C1.2%20L16.3%2C0%20Z%20M11.3%2C4.8%20C8.6%2C3.6%205.8%2C6.4%206.9%2C9.2%20L5.5%2C10.6%20C4%2C9.6%202.8%2C8.4%202.1%2C7.6%20C3.3%2C6.2%206.1%2C3.8%2010%2C3.8%20C10.8%2C3.8%2011.5%2C3.9%2012.2%2C4.1%20L11.3%2C4.8%20L11.3%2C4.8%20Z%20M8.9%2C11%20L13.1%2C6.8%20C14%2C9.4%2011.5%2C11.9%208.9%2C11%20Z%20M20%2C7.5%20C20%2C7.5%2016.5%2C13.7%2010%2C13.7%20C8.9%2C13.7%207.8%2C13.5%206.8%2C13.1%20L8.1%2C11.8%20C8.7%2C11.9%209.4%2C12%2010%2C12%20C14%2C12%2016.8%2C9.1%2017.9%2C7.5%20C17.3%2C6.8%2016.3%2C5.8%2014.9%2C5%20L16.1%2C3.8%20C18.7%2C5.5%2020%2C7.5%2020%2C7.5%20L20%2C7.5%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  height: 1rem;
}
/* ==========================================================================
  Generic card address

  * Base styles
  ========================================================================== */
.sv-form-group-header {
  margin: 1rem 0 1rem;
}
.sv-form-group-header.sv--border {
  border-bottom: 1px solid #c9c9c9;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
}
.sv--dark .sv-form-group-header.sv--border {
  border-bottom-color: rgba(201,201,201, .5);
}
.sv-form-group-header__label {
  display: block;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.25rem;
  margin-bottom: 0;
}
/* ==========================================================================
  Grid

  * Lost config
  * Container
  * Rows
  * Columns - small / medium / large

  There's a heavy usage of important here to work around the specificty of
  the lost css declarations.
  ========================================================================== */
/* Lost config
 ========================================================================== */
/* Container
 ========================================================================== */
.sv-contained, .sv-row, .sv-block-grid {
  max-width: 78rem;
  margin-left: auto;
  margin-right: auto;
}
.sv-contained:before, .sv-row:before, .sv-block-grid:before{
  content: '';
  display: table;
}
.sv-contained:after, .sv-row:after, .sv-block-grid:after{
  content: '';
  display: table;
  clear: both;
}
.sv-contained .sv--contained, .sv-contained .sv-row, .sv-contained .sv-block-grid, .sv-row .sv--contained, .sv-row .sv-row, .sv-row .sv-block-grid, .sv-block-grid .sv--contained, .sv-block-grid .sv-row, .sv-block-grid .sv-block-grid {
  padding: 0;
}
/* Rows
========================================================================== */
.sv-row:before{
  content: '';
  display: table;
}
.sv-row:after{
  content: '';
  display: table;
  clear: both;
}
/* Columns
  (minimum viewport sizes)
 ========================================================================== */
.sv-col {
  list-style: none;
}
.sv-col:before{
  content: '';
  display: table;
}
.sv-col:after{
  content: '';
  display: table;
  clear: both;
}
/* Column centering */
.sv-col.sv--center {
  margin: 0 auto !important;
  float: none !important;
}
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/*
  Offset
*/
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/* Render out breakpoint specific column sizes */
/*
  Arbitrary negative top offset class (as seen in article pages right col)
*/
/* block-grid uniform grids controlled from parent container */
.sv-block-grid:before{
  content: '';
  display: table;
}
.sv-block-grid:after{
  content: '';
  display: table;
  clear: both;
}
.sv-block-grid > .sv-col {
  margin-bottom: 1rem;
}
/* Render out breakpoint specific block-grid column sizes */
/* Set a block-grid column view limit on lower breakpoints */
.sv-block-grid.sv--borders > .sv-col {
  margin: 0 !important; /* TODO find better workaround for lost grid specificity */
  box-sizing: content-box; /* Required to increase lost-css calc widths with padding as margins are removed */
  border: 0 solid #c9c9c9;
}
.sv-block-grid.sv--borders > .sv-col:first-of-type {
  border: 0;
}
.sv-lightbox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 101;
}
.sv-lightbox.sv--is-modal {
  position: fixed;
  overflow-y: auto;
  height: 100%;
}
.sv-lightbox__wrapper {
  position: fixed;
  height: 100%;
  width: 100%;
}
.sv--is-modal .sv-lightbox__wrapper {
  position: relative;
  max-width: none;
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto;
  min-height: 100%;
}
.sv-lightbox__wrapper .sv-slider {
  margin: 4.125rem 0;
  height: calc(100vh - 8.25rem);
}
.sv-lightbox__wrapper .sv-slider .stp_slick-list {
  overflow: visible;
}
.sv-lightbox__wrapper .sv-slider__control, .sv-lightbox__wrapper .sv-slider__counter, .sv-lightbox__wrapper .sv-slider__caption {
  position: fixed;
}
.sv-lightbox__wrapper .sv-slider__content, .sv-lightbox__wrapper .sv-slider__image-container {
  height: 100%;
}
.sv-lightbox__wrapper .sv-slider__counter {
  right: 1rem;
  bottom: 0.75rem;
}
.sv-lightbox__wrapper .sv-slider__caption {
  border: none 0 transparent;
  color: white;
  border-left: solid 0.125rem white;
  padding-left: 1.25rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  left: 1rem;
  bottom: 1.25rem;
}
.sv-lightbox__wrapper .sv-slider .sv-image {
  height: 100%;
  margin: 0 auto;
  object-fit: contain;
  width: 100%;
}
.sv-lightbox__close {
  position: fixed;
  top: 0.75rem;
  right: 1rem;
  width: 2rem;
  height: 2rem;
  padding: 0;
  background: none;
  transform: rotate(45deg);
  overflow: hidden;
  text-indent: -62.5rem;
  z-index: 2;
}
.sv-lightbox__close::before, .sv-lightbox__close::after {
  content: '';
  position: absolute;
  top: 0.875rem;
  left: 0;
  height: 0.25rem;
  width: 2rem;
  background: #fff;
  box-shadow: 0.125rem 0.125rem 0.1875rem rgba(0, 0, 0, .42);
}
.sv--is-modal .sv-lightbox__close::before, .sv--is-modal .sv-lightbox__close::after {
  box-shadow: none;
}
.sv-lightbox__close::before {
  transform: rotate(-90deg);
  box-shadow: -0.125rem 0.125rem 0.1875rem rgba(0, 0, 0, .42);
  z-index: 1;
}
.sv-lightbox__close > div {
  position: absolute;
  top: 0.875rem;
  left: 0;
  height: 0.25rem;
  width: 2rem;
  background: #fff;
  z-index: 2;
}
.sv-lightbox__knockout {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  background: rgba(70, 72, 83, .8);
  z-index: -1;
}
.sv-lightbox__iframe {
  border: none 0 transparent;
  height: calc(100vh - 13.75rem);
}
.sv-lightbox__iframe {
  margin: 0 4vw 1.875rem;
  width: calc(100% - 8vw);
}
.sv-modal {
  position: relative;
  width: 100%;
  -ms-grid-row-align: stretch;
      align-self: stretch;
  background-color: #fff;
  max-height: 100%;
  overflow-y: auto;
}
.sv-modal__close {
  position: absolute;
  right: 1.125rem;
  top: 1.25rem;
  padding: 0;
  cursor: pointer;
  background: none;
}
.sv-modal__close::before {
  content: '';
  width: 1rem;
  height: 1rem;
  display: block;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%2378828b%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
}
/* ==========================================================================
  Pagination

  * Base styles
  * >= med viewport
  ========================================================================== */
.sv-pagination__pages {
  display: flex;
  list-style: none;
  margin: 1rem 0;
  padding-left: 0;
  color: #78828b;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25rem;
}
.sv-pagination__page {
  text-transform: uppercase;
  display: inline-block;
}
.sv-pagination__page a {
  color: #78828b;
}
.sv-pagination__page:first-child, .sv-pagination__page:last-child {
  flex: 1;
}
.sv-pagination__page:first-child {
  text-align: left;
}
.sv-pagination__page:first-child::before {
  content: '<';
}
.sv-pagination__page:last-child {
  text-align: right;
}
.sv-pagination__page:last-child::after {
  content: '>';
}
.sv-pagination__page:not(:last-child) {
  padding-right: 1rem;
}
.sv-pagination__page.sv--disabled a {
  color: #b3b3b3;
  pointer-events: none;
}
.sv-pagination__page.sv--active a {
  color: #cd171e;
  text-decoration: underline;
}
.sv-pagination.sv--right {
  text-align: right;
}
.sv-pagination.sv--bordered {
  border-style: solid;
  border-width: 1px 0;
  border-color: #c9c9c9;
}
.sv-pagination.sv--compact .sv-pagination__pages {
  display: block;
}
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Property attribute

  * Variables
  * Mixins
  * Base styles
  * Style modifiers
  * Type modifiers
  * Color modifiers
  ========================================================================== */
:root {
  /* Standard multipliers */

  /* Large modifier mulitpliers */

  /* Property type vars */

  /* Size icon vars */

  /* Land area vars */

  /* Bathroom vars */

  /* Bedroom vars */

  /* Reception vars */

  /* Grade vars */

  /* Number of people vars */

  /* Yield vars */
}
/* Supporting mixins
 ========================================================================== */
/* Base styles
 ========================================================================== */
.sv-property-attribute {

  height: 1.25rem;
  margin: 0 1rem 0 0;
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.375rem;
  color: #4c4d50;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sv-property-attribute.sv--large {
  font-size: 0.8125rem;
}
/* Style modifiers
   ========================================================================== */
.sv-property-attribute.sv--dark {
  color: #fff;
  font-weight: 400;
}
/* Type modifiers
   ========================================================================== */
.sv-property-attribute.sv--residential {
  padding-left: 1.5rem;
}
.sv-property-attribute.sv--residential::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-residential.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--rural {
  padding-left: 1.5rem;
}
.sv-property-attribute.sv--rural::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-rural.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--commercial {
  padding-left: 1.5rem;
}
.sv-property-attribute.sv--commercial::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-commercial.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--residential.sv--large, .sv-property-attribute.sv--rural.sv--large, .sv-property-attribute.sv--commercial.sv--large {
  padding-left: 1.5438rem;
}
.sv-property-attribute.sv--residential.sv--large::after, .sv-property-attribute.sv--rural.sv--large::after, .sv-property-attribute.sv--commercial.sv--large::after{
  width: 1.1688rem;
  height: 1.1688rem;
}
.sv-property-attribute.sv--size {
  padding-left: 1.3125rem;
}
.sv-property-attribute.sv--size::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 0.9375rem;
  height: 0.9375rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-size.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--available-size {
  padding-left: 1.3125rem;
}
.sv-property-attribute.sv--available-size::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 0.9375rem;
  height: 0.9375rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-available-space.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--size.sv--large, .sv-property-attribute.sv--available-size.sv--large {
  padding-left: 1.35rem;
}
.sv-property-attribute.sv--size.sv--large::after, .sv-property-attribute.sv--available-size.sv--large::after{
  width: 1.0313rem;
  height: 1.0313rem;
}
.sv-property-attribute.sv--land-area {
  padding-left: 1.5rem;
}
.sv-property-attribute.sv--land-area::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-land-area.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--land-area.sv--large {
  padding-left: 1.5438rem;
}
.sv-property-attribute.sv--land-area.sv--large::after{
  width: 1.1688rem;
  height: 1.1688rem;
}
.sv-property-attribute.sv--bathrooms {
  padding-left: 1.6875rem;
}
.sv-property-attribute.sv--bathrooms::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.1875rem;
  height: 1.1875rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-bathrooms.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--bathrooms.sv--large {
  padding-left: 1.7375rem;
}
.sv-property-attribute.sv--bathrooms.sv--large::after{
  width: 1.3062rem;
  height: 1.3062rem;
}
.sv-property-attribute.sv--bedrooms {
  padding-left: 1.5625rem;
}
.sv-property-attribute.sv--bedrooms::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.125rem;
  height: 1.125rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-bedrooms.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--bedrooms.sv--large {
  padding-left: 1.6063rem;
}
.sv-property-attribute.sv--bedrooms.sv--large::after{
  width: 1.2375rem;
  height: 1.2375rem;
}
.sv-property-attribute.sv--receptions {
  padding-left: 1.75rem;
}
.sv-property-attribute.sv--receptions::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.25rem;
  height: 1.25rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-receptions.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--receptions.sv--large {
  padding-left: 1.8rem;
}
.sv-property-attribute.sv--receptions.sv--large::after{
  width: 1.375rem;
  height: 1.375rem;
}
.sv-property-attribute.sv--grade {
  padding-left: 1.5625rem;
}
.sv-property-attribute.sv--grade::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-grade.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--grade.sv--large {
  padding-left: 1.6125rem;
}
.sv-property-attribute.sv--grade.sv--large::after{
  width: 1.1688rem;
  height: 1.1688rem;
}
.sv-property-attribute.sv--people {
  padding-left: 1.75rem;
}
.sv-property-attribute.sv--people::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1.125rem;
  height: 1.125rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-no-of-people.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--people.sv--large {
  padding-left: 1.8125rem;
}
.sv-property-attribute.sv--people.sv--large::after{
  width: 1.2375rem;
  height: 1.2375rem;
}
.sv-property-attribute.sv--yield {
  padding-left: 1.625rem;
}
.sv-property-attribute.sv--yield::after{
  /* stylelint-disable at-rule-empty-line-before */
  width: 1rem;
  height: 1rem;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/icons/custom/sprite-yield.svg');
  background-size: 300%;
  background-position: 0 0;
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-attribute.sv--yield.sv--large {
  padding-left: 1.6875rem;
}
.sv-property-attribute.sv--yield.sv--large::after{
  width: 1.1rem;
  height: 1.1rem;
}
/* Color modifiers
   ========================================================================== */
.sv-property-attribute.sv--yellow::after {
  background-position: 50% 0;
}
.sv-property-attribute.sv--red::after {
  background-position: 100% 100%;
}
.sv-property-attribute.sv--blue::after {
  background-position: 0 100%;
}
.sv-property-attribute.sv--green::after {
  background-position: 50% 100%;
}
/* ==========================================================================
  Property price

  * Base styles
  * Price Wrap
  * Price Guide
  ========================================================================== */
.sv-property-price {
  position: relative;
}
/* Wrap element
  ========================================================================== */
.sv-property-price__wrap {
  position: relative;
  display: block;
}
.sv--search-type-rent .sv-property-price__wrap {
  display: inline-block;
  max-width: 100%;
}
.sv--show-original .sv-property-price__wrap {
  display: block;
}
.sv-property-intro .sv--show-size.sv--show-guide .sv-property-price__wrap {
  margin-top: 0.25rem;
  margin-bottom: 0.5rem;
}
.sv-property-intro .sv--show-original .sv-property-price__wrap {
  display: block;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv--type-residential .sv-property-price__wrap + span, .sv--type-new-development .sv-property-price__wrap + span {
  white-space: nowrap;
}
.sv--type-residential.sv-property-card .sv-property-price__wrap + span, .sv--type-new-development.sv-property-card .sv-property-price__wrap + span {
  max-width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  vertical-align: bottom;
}
/* Wrap-other element
  ========================================================================== */
.sv-property-price__wrap-other {
  display: inline-block;
}
/* Value + Original elements
  ========================================================================== */
.sv-property-price__value, .sv-property-price__original {
  display: none;
  max-width: 100%;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  vertical-align: bottom;
}
.sv--show-price .sv-property-price__value, .sv--show-price .sv-property-price__original {
  display: inline-block;
}
/* Reset above if within property-intro */
.sv-property-intro.sv--type-residential .sv-property-price__value, .sv-property-intro.sv--type-new-development .sv-property-price__value, .sv-property-intro.sv--type-residential .sv-property-price__original, .sv-property-intro.sv--type-new-development .sv-property-price__original {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}
.sv--type-commercial .sv-property-price__value, .sv--type-farm .sv-property-price__value, .sv--type-commercial .sv-property-price__original, .sv--type-farm .sv-property-price__original {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  font-size: 0.75rem;
}
.sv--type-farm .sv-property-price__value, .sv--type-farm .sv-property-price__original {
  line-height: 1.5;
}
.sv--type-commercial .sv-property-price__value, .sv--type-commercial .sv-property-price__original {
  line-height: 1.2;
}
.sv--type-farm.sv--search-type-rent .sv-property-price__value, .sv--type-farm.sv--search-type-rent .sv-property-price__original {
  vertical-align: baseline;
}
/* stylelint-disable-next-line selector-max-specificity */
/* stylelint-disable-next-line selector-max-specificity */
.sv-property-intro .sv-property-price__value, .sv-property-intro .sv-property-price__original {
  vertical-align: baseline;
}
/* Value element
  ========================================================================== */
.sv-property-price__value {
  font-size: 1.5rem;
  line-height: 1;
  margin-right: 0.3125rem;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv--dark.sv--show-size.sv--show-price.sv--show-rent-unit .sv-property-price__value {
  color: #a4a4a4;
}
.sv-property-intro.sv--full-width .sv--show-size .sv-property-price__value {
  display: inline;
}
/* stylelint-disable-next-line selector-max-specificity */
/* stylelint-disable-next-line selector-max-specificity */
/* stylelint-disable-next-line selector-max-specificity */
/* Original value element
  ========================================================================== */
.sv-property-price__original {
  color: #777;
  line-height: 1.25;
}
/* Size element
  ========================================================================== */
.sv-property-price__size {
  display: none;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1rem;
  line-height: 1.125;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0;
  margin: initial;
}
/* Layout/Display modifiers */
.sv--show-size .sv-property-price__size {
  display: block;
}
.sv-property-price__size span {
  margin-right: .5rem;
  white-space: nowrap;
}
.sv-property-intro .sv-property-price__size span {
  display: inline-block;
}
.sv-property-price__size span:last-of-type {
  margin-right: 0;
}
.sv-property-intro .sv-property-price__size {
  font-size: 1.375rem;
  line-height: 1.2;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}
/* Other fees element
  ========================================================================== */
.sv-property-price__other-fees {
  display: inline;
  position: relative;
  margin-left: 0.625rem;
  font-size: 0.6875rem;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  line-height: 1.6;
  color: #000;
  border-bottom: 1px solid #cd171e;
  z-index: 2;
}
.sv-property-intro .sv-property-price__other-fees {
  font-size: 0.75rem;
  color: #fff;
}
.sv-property-price__other-fees::before {
  position: absolute;
  content: '+';
  left: -0.6875rem;
  top: 0;
}
/* Rent basis element
  ========================================================================== */
.sv-property-price__rent-basis {
  display: none;
  font-size: 0.6875rem;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  line-height: 1.6;
}
.sv--show-rent-basis .sv-property-price__rent-basis {
  display: inline-block;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv--dark.sv--show-size.sv--show-price.sv--show-rent-unit .sv-property-price__rent-basis {
  color: #a4a4a4;
}
.sv-property-intro .sv-property-price__rent-basis {
  font-size: 0.75rem;
}
/* Other fees element
  ========================================================================== */
.sv-property-price__rent-unit {
  display: none;
}
.sv--show-rent-unit .sv-property-price__rent-unit {
  display: inline;
  display: initial;
}
/* Price guide element
  ========================================================================== */
.sv-property-price__guide {
  display: block;
  font-size: 0.625rem;
  line-height: 2.2;
  color: #4c4d50;
  white-space: nowrap;
}
/* TODO: Do I need this? */
.sv-property-intro .sv-property-price__guide {
  font-size: 0.75rem;
}
/* Shade / Color modifiers */
.sv--dark .sv-property-price__guide {
  color: #a4a4a4;
}
/* stylelint-disable selector-max-specificity */
.sv--dark:not(.sv--show-price).sv--show-size.sv--show-rent-basis .sv-property-price__guide, .sv--dark:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide, .sv--dark.sv--show-price.sv--show-size:not(.sv--show-rent-basis) .sv-property-price__guide {
  color: #fff;
}
.sv--show-size:not(.sv--dark) .sv-property-price__guide {
  color: #252839;
}
.sv-property-price:not(.sv--show-price):not(.sv--show-size):not(.sv--dark) .sv-property-price__guide {
  color: #252839;
}
/* Content / Layout modifiers */
.sv-property-price:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 1.2;
  text-overflow: ellipsis;
  overflow: hidden;
}
.sv-property-intro .sv-property-price:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide {
  font-size: 1.75rem;
  white-space: normal;
}
/* stylelint-enable selector-max-specificity */
.sv--show-size .sv-property-price__guide {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.5;
}
.sv--type-commercial .sv--show-size .sv-property-price__guide {
  line-height: 1.2;
}
.sv--show-size:not(.sv--show-price) .sv-property-price__guide {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
}
/* stylelint-disable-next-line selector-max-specificity */
/* stylelint-disable-next-line selector-max-specificity */
/* TODO: Review - currently used to overwrite the above .-full-width */
/* ==========================================================================
  Quotes

  * Default quote block
  * Alignment modifier
  * Inline modifiers
  * Language specific quotation marks
  ========================================================================== */
.sv-quote {
  display: inline-block;
  color: #252839;
  padding: 0.3125rem 1.5625rem;
  margin: 3.125rem 0;
  position: relative;
}
.sv-quote::before {
  /* Side border */
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  border-left: 0.125rem solid #252839;
}
.sv-quote::after {
  /* Quotation mark base styling */
  content: '\201C';
  /* English double open quote high */
  line-height: .88;
  height: 4.6875rem;
  position: absolute;
  top: -1.875rem;
  left: 1.25rem;
  opacity: .59;
  transform: translateX(-0.625rem);
  /* compensate for font kerning */
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 15.625rem;
  color: #ffdf00;
}
.sv-quote__text {
  font-family: 'DomineWebBold', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.5rem;
  line-height: 1.41;
  margin: 0 0 0.625rem;
  position: relative;
  z-index: 1;
}
.sv-quote__citation {
  line-height: 1.37;
  color: #78828b;
  font-style: normal;
  display: block;
  position: relative;
  z-index: 1;
}
.sv-quote__citation::before {
  content: '- ';
}
/* Alignment modifier
 ========================================================================== */
.sv-quote.sv--right-align {
  padding-left: 0.3125rem;
  text-align: right;
}
.sv-quote.sv--right-align .sv-quote__citation {
  text-align: right;
}
.sv-quote.sv--right-align::before {
  /* Side border */
  left: inherit;
  right: 0;
}
.sv-quote.sv--right-align::after {
  /* Quotation mark */
  left: 0;
}
/* Inline modifiers
TODO: If it turns out the ideal inline rich text editor solution
is not possible within the Vuture CMS, remove this modifier.
In this scenario, the quote would instead be contained within the column system.
 ========================================================================== */
/* Language specific quotation marks
- More considerations required???
 ========================================================================== */
:lang(zh-Hant) .quote::after {
  content: '\300E'; /* Traditional Chinese double open quote high */
  line-height: 1.01;
  height: 9.6875rem;
  transform: translate3d(-9.375rem, 0, 0);
}
:lang(de) .quote::after {
  content: '\201E'; /* German double open quote low */
  line-height: .1;
  top: auto;
  transform: translate3d(-0.625rem, 0, 0);
  bottom: -1.875rem;
  height: 8.125rem;
}
:lang(fr).quote::after, :lang(es).quote::after {
  content: '\AB';
  /* French double open quote high */
  line-height: .33;
  height: 7.1875rem;
}
/* ==========================================================================
  Results indicator

  * Base styles
  * < sml viewport
  * >= sml viewport
  ========================================================================== */
.sv-results-indicator {
  font-size: 0.75rem;
  font-weight: 500;
  color: #777;
}
.sv-results-indicator p {
  margin: 0;
}
.sv-results-indicator.sv--right {
  text-align: right;
}
.sv-results-indicator.sv--bordered {
  border-style: solid;
  border-width: 1px 0;
  border-color: #c9c9c9;
  padding: 1.25rem 0;
}
/* < sml viewport
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* ==========================================================================
  Spacer
  - Generic horizontal spacing class with modifiers for breakpoint specific sizing

  * Base
  * Breakpoint spefic space modifiers
 ========================================================================== */
/* Defaults for bottom spacing without breakpoints or size */
.sv-spacer:not(.sv--reverse):not(.sv--no-spacer) {
  margin-bottom: 1rem;
}
.sv-spacer.sv--v-space {
  /* Defaults for vertical spacing without breakpoints or size */
  padding: 0 1rem;
}
.sv-spacer.sv--reverse {
  margin-top: 1rem;
}
.sv-spacer.sv--no-spacer:not(.sv--reverse) {
  margin-bottom: 0 !important;
}
.sv-spacer.sv--no-spacer.sv--reverse {
  margin-top: 0 !important;
}
/* Breakpoint specific space size modifiers
  ========================================================================== */
/* ==========================================================================
  Section Backgrounds
  - Allows background colour styling for templates

  * Background fills
 ========================================================================== */
.sv-section-bg {
  background-color: #f2f2f2;
}
.sv-section-bg.sv--wrap {
  overflow: auto;
}
.sv-section-bg.sv--primary-1 {
  background-color: #252839;
}
.sv-section-bg.sv--padded {
  padding: 1.875rem 0;
}
.sv-section-bg.sv--padded-top {
  padding-top: 2rem;
}
.sv-section-header {
  margin-bottom: 2rem;
}
/* ==========================================================================
  Tags

  * Default tag
  * Size modifiers
  * Theme modifiers
  ========================================================================== */
.sv-tag {

  display: inline-block;
  border: 1px solid #cd171e;
  color: #cd171e;
  font-size: 0.625rem;
  font-weight: 500;
  margin: 0 0.3125rem 0.3125rem 0;
  padding: 0.375rem 0.625rem;
  line-height: 1;
  text-transform: uppercase;
  max-width: 100%;
}
.sv-tag:last-of-type {
  margin-right: 0;
}
.sv-tag__close {
  background: #cd171e;
  float: right;
  height: 1.5rem;
  margin: -0.375rem -0.625rem -0.375rem 0.625rem;
  padding: 0.25rem 0;
  width: 1.5rem;
  /* stylelint-disable at-rule-empty-line-before */
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-tag__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.875rem;
  width: 0.875rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23fff%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.4375rem, -0.4375rem);
  /* stylelint-enable at-rule-empty-line-before */
}
/* Size modifiers
========================================================================== */
.sv-tag.sv--sml {
  font-size: 0.625rem;
}
.sv-tag.sv--sml .sv-tag__close {
  height: 1.4375rem;
  padding: 0.25rem 0;
  width: 1.4375rem;
}
.sv-tag.sv--lrg {
  font-size: 0.75rem;
}
.sv-tag.sv--lrg .sv-tag__close {
  height: 1.5625rem;
  padding: 0.375rem 0;
  width: 1.5625rem;
}
/* Theme modifiers
========================================================================== */
.sv-tag.sv--light {
  background: #fff;
  border-color: #fff;
  color: #313131;
}
.sv-tag.sv--overlay {
  background-color: rgba(255, 255, 255, .25);
  border-color: transparent;
  color: #fff;
}
.sv-tag.sv--subtle {
  border-color: #999795;
  color: #999795;
}
.sv-tag.sv--standout {
  background: #ffdf00;
  border-color: #ffdf00;
  border-radius: 0.1875rem;
  color: #252839;
  text-transform: none;
}
.sv-tag.sv--standout .sv-tag__close {
  border-radius: 0 0.1875rem 0.1875rem 0;
}
.sv-tag.sv--light .sv-tag__close, .sv-tag.sv--overlay .sv-tag__close, .sv-tag.sv--standout .sv-tag__close {
  background: rgba(0,0,0, .1);
}
.sv-tag.sv--light .sv-tag__close::after, .sv-tag.sv--overlay .sv-tag__close::after, .sv-tag.sv--standout .sv-tag__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.875rem;
  width: 0.875rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23252839%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.4375rem, -0.4375rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-tag.sv--light .sv-tag__close, .sv-tag.sv--standout .sv-tag__close {
}
.sv-tag.sv--light .sv-tag__close::after, .sv-tag.sv--standout .sv-tag__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.875rem;
  width: 0.875rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23252839%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.4375rem, -0.4375rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-tag.sv--subtle .sv-tag__close {
  background: transparent;
  margin-left: 0;
}
.sv-tag.sv--subtle .sv-tag__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.875rem;
  width: 0.875rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23999795%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.4375rem, -0.4375rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-tag.sv--overlay .sv-tag__close {
}
.sv-tag.sv--overlay .sv-tag__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.875rem;
  width: 0.875rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23fff%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.4375rem, -0.4375rem);
  /* stylelint-enable at-rule-empty-line-before */
}
/* ==========================================================================
  Typography

  * Generic
  * Standard text link
  * Common base text styles
  * Common text styles with layout
  * Colour helpers
  * Lists
  * Rich text editor output
 ========================================================================== */
/* Generic
========================================================================== */
sub, sup {
  font-size: 75%;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 300;
  margin-top: 0;
}
p {
  margin-top: 0;
}
.sv-panel-heading {
  font-size: 1.875rem;
}
.sv-section-header__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 500;
  font-size: 1.75rem;
  margin: 0;
}
/* Standard text link
========================================================================== */
.sv-link, .sv-text-feature-heading a, .sv-text-leading-intro a, .sv-text-copy-heading a, .sv-text-copy a, .sv-text-smallprint a, .sv-feature-heading a, .sv-leading-intro a, .sv-copy a, .sv-copy-heading a, .sv-smallprint a, .sv-list li a, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a, .vx_text:not(.sv-sub-nav__link-tree) > ul li a, .vx_text:not(.sv-sub-nav__link-tree) > ol li a, .sv-content-header__title a, .sv-article__intro a, .sv-profile-intro__intro a {
  color: #313131;
  font-weight: 500;
  position: relative;
  text-decoration: none;
}
.sv-link::before, .sv-link::after, .sv-text-feature-heading a::before, .sv-text-leading-intro a::before, .sv-text-copy-heading a::before, .sv-text-copy a::before, .sv-text-smallprint a::before, .sv-text-feature-heading a::after, .sv-text-leading-intro a::after, .sv-text-copy-heading a::after, .sv-text-copy a::after, .sv-text-smallprint a::after, .sv-feature-heading a::before, .sv-feature-heading a::after, .sv-leading-intro a::before, .sv-leading-intro a::after, .sv-copy a::before, .sv-copy a::after, .sv-copy-heading a::before, .sv-copy-heading a::after, .sv-smallprint a::before, .sv-smallprint a::after, .sv-list li a::before, .sv-list li a::after, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > ul li a::before, .vx_text:not(.sv-sub-nav__link-tree) > ul li a::after, .vx_text:not(.sv-sub-nav__link-tree) > ol li a::before, .vx_text:not(.sv-sub-nav__link-tree) > ol li a::after, .sv-content-header__title a::before, .sv-content-header__title a::after, .sv-article__intro a::before, .sv-article__intro a::after, .sv-profile-intro__intro a::before, .sv-profile-intro__intro a::after {
  bottom: -1px;
  content: '';
  display: block;
  height: 0.125rem;
  left: 0;
  position: absolute;
  width: 100%;
}
.sv-link::before, .sv-text-feature-heading a::before, .sv-text-leading-intro a::before, .sv-text-copy-heading a::before, .sv-text-copy a::before, .sv-text-smallprint a::before, .sv-feature-heading a::before, .sv-leading-intro a::before, .sv-copy a::before, .sv-copy-heading a::before, .sv-smallprint a::before, .sv-list li a::before, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a::before, .vx_text:not(.sv-sub-nav__link-tree) > ul li a::before, .vx_text:not(.sv-sub-nav__link-tree) > ol li a::before, .sv-content-header__title a::before, .sv-article__intro a::before, .sv-profile-intro__intro a::before {
  background-color: #ffdf00;
}
.sv-link::after, .sv-text-feature-heading a::after, .sv-text-leading-intro a::after, .sv-text-copy-heading a::after, .sv-text-copy a::after, .sv-text-smallprint a::after, .sv-feature-heading a::after, .sv-leading-intro a::after, .sv-copy a::after, .sv-copy-heading a::after, .sv-smallprint a::after, .sv-list li a::after, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a::after, .vx_text:not(.sv-sub-nav__link-tree) > ul li a::after, .vx_text:not(.sv-sub-nav__link-tree) > ol li a::after, .sv-content-header__title a::after, .sv-article__intro a::after, .sv-profile-intro__intro a::after {
  background-color: #313131;
  width: 0;
  transition: width 150ms ease-out;
}
.sv-link:hover::after, .sv-text-feature-heading a:hover::after, .sv-text-leading-intro a:hover::after, .sv-text-copy-heading a:hover::after, .sv-text-copy a:hover::after, .sv-text-smallprint a:hover::after, .sv-feature-heading a:hover::after, .sv-leading-intro a:hover::after, .sv-copy a:hover::after, .sv-copy-heading a:hover::after, .sv-smallprint a:hover::after, .sv-list li a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > ul li a:hover::after, .vx_text:not(.sv-sub-nav__link-tree) > ol li a:hover::after, .sv-content-header__title a:hover::after, .sv-article__intro a:hover::after, .sv-profile-intro__intro a:hover::after {
  width: 100%;
}
/* Bold links with caret arrow
   ----------------------- */
.sv-cta-link > a, .sv-cta-link > span {

  padding-right: 1.25rem;

  color: #cd171e;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.25;
  display: inline-block;
}
.sv-cta-link > a::after, .sv-cta-link > span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.9375rem;
  width: 0.9375rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23cd171e%3B%22%3E%3Cpath%20d%3D%22M1152%20896q0%2026-19%2045l-448%20448q-19%2019-45%2019t-45-19-19-45v-896q0-26%2019-45t45-19%2045%2019l448%20448q19%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-cta-link > a::after, .sv-cta-link > span::after {
  margin-bottom: -0.1875rem;
}
.sv-cta-link.sv--alt > a, .sv-cta-link.sv--alt > span {
  padding-right: 1.875rem;

  color: #ffdf00;
}
.sv-cta-link.sv--alt > a::after, .sv-cta-link.sv--alt > span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.9375rem;
  width: 0.9375rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1152%20896q0%2026-19%2045l-448%20448q-19%2019-45%2019t-45-19-19-45v-896q0-26%2019-45t45-19%2045%2019l448%20448q19%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
/* Common base text styles
(excludes layout properties)

Useful where pure font styles required.
Most appropriate for extending within main module CSS,
rather than applying directly to HTML elements
========================================================================== */
.sv-text-feature-heading, .sv-text-leading-intro, .sv-text-copy-heading, .sv-text-copy, .sv-text-smallprint, .sv-feature-heading, .sv-leading-intro, .sv-copy, .sv-copy-heading, .sv-smallprint, .sv-list li, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > ul li, .vx_text:not(.sv-sub-nav__link-tree) > ol li, .sv-content-header__title, .sv-article__intro, .sv-profile-intro__intro {
  margin: 0;
  padding: 0;
}
/* make sure all common text styles display links appropriately */
.sv-text-feature-heading strong, .sv-text-leading-intro strong, .sv-text-copy-heading strong, .sv-text-copy strong, .sv-text-smallprint strong, .sv-feature-heading strong, .sv-leading-intro strong, .sv-copy strong, .sv-copy-heading strong, .sv-smallprint strong, .sv-list li strong, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) strong, .vx_text:not(.sv-sub-nav__link-tree) > ul li strong, .vx_text:not(.sv-sub-nav__link-tree) > ol li strong, .sv-content-header__title strong, .sv-article__intro strong, .sv-profile-intro__intro strong {
  font-weight: 500;
}
.sv-text-feature-heading em, .sv-text-leading-intro em, .sv-text-copy-heading em, .sv-text-copy em, .sv-text-smallprint em, .sv-feature-heading em, .sv-leading-intro em, .sv-copy em, .sv-copy-heading em, .sv-smallprint em, .sv-list li em, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) em, .vx_text:not(.sv-sub-nav__link-tree) > ul li em, .vx_text:not(.sv-sub-nav__link-tree) > ol li em, .sv-content-header__title em, .sv-article__intro em, .sv-profile-intro__intro em {
  font-style: italic;
}
.sv-text-feature-heading, .sv-feature-heading, .sv-content-header__title {
  font: 700 3.75rem/1.26 'DomineWebBold', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
}
.sv-text-leading-intro, .sv-leading-intro, .sv-article__intro {
  font-size: 1.875rem;
  line-height: 1.33;
}
.sv-text-leading-intro.sv--sml, .sv-leading-intro.sv--sml, .sv-article__intro.sv--sml {
  font-size: 1.375rem;
}
.sv-text-copy, .sv-copy, .sv-list li, .vx_text:not(.sv-sub-nav__link-tree) > ul li, .vx_text:not(.sv-sub-nav__link-tree) > ol li, .sv-profile-intro__intro {
  font-size: 0.875rem; /* explicitly set size, in case this is applied to element that needs override */
  line-height: 1.25rem;
  color: #555764;
}
.sv-text-copy-heading, .sv-copy-heading, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) {
  font-size: 1rem; /* explicitly set size, in case this is applied to element that needs override */
  font-weight: 500;
  line-height: 1.25;
  font-style: normal;
  text-transform: uppercase;
}
.sv-text-smallprint, .sv-smallprint {
  font-size: 0.6875rem;
}
.sv-text-section-heading {
  font-weight: 300;
}
.sv-text-section-heading.sv--lrg {
  font-size: 1.875rem;
  line-height: 1.2;
  margin-bottom: 1rem;
}
.sv-text-section-intro {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 400;
  color: #4c4d50;
}
/* Common text alignment
 ========================================================================== */
.sv-text-center {
  text-align: center;
}
.sv-text-left {
  text-align: left;
}
.sv-text-right {
  text-align: right;
}
/* Common text styles with layout
(includes layout properties)
 ========================================================================== */
.sv-feature-heading, .sv-leading-intro, .sv-copy-heading, .sv-copy, .sv-smallprint, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]), .sv-article__intro {
  margin-bottom: 2rem;
}
.sv-feature-heading {

  display: block;
}
.sv-leading-intro, .sv-article__intro {

  display: block;
}
.sv-copy { /* makes sure all child selectors under text-copy are included, such as links */
}
.sv-copy-heading, .vx_text:not(.sv-sub-nav__link-tree) > h1:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h2:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h3:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h4:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h5:not([class]), .vx_text:not(.sv-sub-nav__link-tree) > h6:not([class]) {

  display: block;
}
/* Lists
 ========================================================================== */
.sv-list, .vx_text:not(.sv-sub-nav__link-tree) > ul, .vx_text:not(.sv-sub-nav__link-tree) > ol {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
}
.sv-list li, .vx_text:not(.sv-sub-nav__link-tree) > ul li, .vx_text:not(.sv-sub-nav__link-tree) > ol li {
  /* makes sure all child selectors under text-copy are included, such as links */
  padding: 0 0 0 1rem;
  position: relative;
  margin: 0;
}
.sv-list li::before, .vx_text:not(.sv-sub-nav__link-tree) > ul li::before, .vx_text:not(.sv-sub-nav__link-tree) > ol li::before {
  content: '';
  display: block;
  position: absolute;
  speak: none;
}
.sv--bullets li::before, .vx_text:not(.sv-sub-nav__link-tree) > ul li::before {
  background-color: #cd171e;
  border-radius: 0.25rem;
  height: 0.25rem;
  left: 0;
  top: 0.5625rem;
  width: 0.25rem;
}
.sv--bullets.sv--lrg li, .vx_text:not(.sv-sub-nav__link-tree) > ul.sv--lrg li {
  padding-left: 1.5625rem;
}
.sv--bullets.sv--lrg li::before, .vx_text:not(.sv-sub-nav__link-tree) > ul.sv--lrg li::before {
  top: 0.625rem;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 0.375rem;
}
.sv--numbers, .vx_text:not(.sv-sub-nav__link-tree) > ol {
  counter-reset: section;
}
.sv--numbers li, .vx_text:not(.sv-sub-nav__link-tree) > ol li {
  padding-left: 2.1875rem;
  margin-bottom: 1rem;
  min-height: 1.875rem;
}
.sv--numbers li::before, .vx_text:not(.sv-sub-nav__link-tree) > ol li::before {
  color: #777;
  counter-increment: section;
  display: inline-block;
  content: counters(section, '') '.';
  font: 400 1.875rem/1 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  left: 0;
  width: 1.875rem;
  top: 0.1875rem;
}
/* Colour helpers
 ========================================================================== */
.sv-highlight {
  color: #cd171e;
}
/* Rich text editor output
 ========================================================================== */
/*
  :not([class]) allows styled elements to retain their intended styling
*/
.vx_text:not(.sv-sub-nav__link-tree) > .sv-image-treatment {
  margin-bottom: 2rem;
}
.sv-video {
  margin-bottom: 2rem;
}
.sv-video__container {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
}
.sv-video__copy {
  border-left: 0.125rem solid #252839;
  margin: 1rem 0 0;
  padding-left: 1rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.75rem;
}
.sv-video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}
/* molecules a-z */
.sv-address-finder__manual-entry, .sv-address-finder__address-list {
  border-top: 1px solid #c9c9c9;
  margin: 2rem 0 0;
  padding: 2rem 0 2rem;
  display: none;
}
.sv-address-finder__manual-entry .sv-custom-input:last-of-type {
  margin-bottom: 0;
}
.sv-address-finder__postcode-container .sv-form-error {
  display: none !important;
}
.sv-address-finder--active {
  display: block;
}
.sv-address-finder .sv-button {
  width: 100%;
  padding: 1.25rem;
}
.sv-breadcrumbs {
  position: absolute;
  width: 100%;
  top: 3.125rem;
  z-index: 99;
  max-width: 100%;
  text-align: center;
  height: 2.6875rem;
  overflow: hidden;
  border-top: 1px solid #e2e3e5;
  border-bottom: 1px solid #e2e3e5;
}
.sv-breadcrumbs__scroller {
  overflow-x: auto;
  margin-right: 0.3125rem;
}
.sv-breadcrumbs.sv--secondary {
  background: rgba(255,255,255, .55);
  border-bottom: 0;
}
.sv-breadcrumbs__container {
  max-width: 78rem;
  text-align: left;
  margin: 0.5rem auto;
  padding-left: 1.125rem;
  display: inline-block;
  white-space: nowrap;
  width: 100%;
}
.sv-breadcrumbs__link, .sv-breadcrumbs__current-page, .sv-breadcrumbs__seperator {
  height: 1.5625rem;
  width: 3.75rem;
  color: #494b5a;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.5625rem;
  margin-left: 0.25rem;
}
.sv-breadcrumbs__link {
  text-decoration: underline;
}
.sv-breadcrumbs__home {
  display: inline-block;
  width: 0.875rem;
  height: 0.8125rem;
  background-size: cover;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2012.9%2011.8%22%20style%3D%22fill%3A%23494b5a%3B%22%20xml%3Aspace%3D%22preserve%22%20height%3D%22100%25%22%20width%3D%22100%25%22%3E%0D%0A%3Cpath%20id%3D%22Home_-_breadcrumbs_1_%22%20class%3D%22st0%22%20d%3D%22M11.3%2C6.4v5.4H8V8.6H4.8v3.2H1.6V6.4H0L6.4%2C0l6.4%2C6.4H11.3z%20M10.7%2C3.3V0.5H9.1v1.1%0D%0A%09L10.7%2C3.3z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  margin-bottom: -0.125rem;
}
.sv-breadcrumbs .sv--breadcrumb-fixed {
  position: absolute;
  right: 0;
}
.sv-header__cookie-notification-displayed .sv-breadcrumbs {
  top: 12.8125rem;
}
/* ==========================================================================
  Generic card address

  * Base styles
  ========================================================================== */
.sv-card-address {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  margin-bottom: 1rem;
}
.sv-card-address__line {
  display: inline-block;
}
.sv-card-address__line.sv--break {
  display: block;
}
/* ==========================================================================
  Generic card meta data

  * Base styles
  * modifiers
  * >= med viewport
  ========================================================================== */
.sv-card-meta {
  font-weight: 500;
  text-transform: uppercase;
  margin: 0 0 0.75rem;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 1.25rem;
  font-size: 0.625rem;
  color: #cd171e;
}
.sv-card-meta__label {
  margin-right: 0.3125rem;
  color: #777;
  white-space: nowrap;
}
.sv-card-meta__data {
  max-width: 50%;
}
.sv-card-meta__data:only-child {
  max-width: 100%;
}
.sv-card-meta__date {
  display: inherit;
  white-space: nowrap;
}
.sv-card-meta__date::before {
  content: '';
  border-right: 1px solid;
  display: block;
  margin: 0 0.625rem;
  height: 0.8125rem;
  transform: translateX(1px);
  /* to make it exactly center, considering the border */
}
.sv-card-meta a:not(.sv-card-meta__label) {
  color: inherit;
}
/* Modifiers
 ========================================================================== */
.sv-card-meta.sv--sml, .sv-card.sv--micro .sv-card-meta {
  margin: 0 0 0.375rem;
}
.sv-card-meta.sv--alt, .sv-card.sv--subjacent-block .sv-card-meta, .sv-card.sv--cta-block .sv-card-meta {
  color: #252839;
}
.sv-card-meta.sv--is-publication, .sv-card.sv--is-publication .sv-card-meta {
  color: #5475b0;
}
.sv-card-meta.sv--center-align, .sv-card.sv--center-align .sv-card-meta, .sv-rich-card__content .sv-card-meta {
  justify-content: center;
}
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Generic card title

  * Base styles
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
.sv-card-title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  line-height: 1.2;
  color: #313131;
  overflow: hidden;
  font-size: 1.125rem;
  margin: 0 auto 1rem;
}
.sv-card-title a {
  color: inherit;
  display: block;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Generic card intro

  * Base styles
  * >= sml viewport
  * >= med viewport
  * Quote style modifier
  ========================================================================== */
.sv-card-intro {
  overflow: hidden;
  line-height: 1.5;
  font-size: 0.875rem;
}
/* >= sml viewport
========================================================================== */
/* >= med viewport
 ========================================================================== */
/* Quote style modifier
 ========================================================================== */
.sv-card-intro.sv--quote {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
}
/* ==========================================================================
  Generic card label

  * Base styles
  * Modifiers
  ========================================================================== */
.sv-card-label {

  color: #fff;
  font-size: 0.625rem;
  display: inline-block;
  padding: 0 1rem;
  background: #cd171e;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 2;
  border-radius: 0.125rem;
  max-width: 100%;
}
/* Modifiers
========================================================================== */
.sv-card-label.sv--is-publication, .sv-card.sv--is-publication .sv-card-label {
  background: #5475b0;
}
.sv-card-label.sv--negative {
  background-color: #cd171e;
}
.sv-card-label.sv--positive {
  color: #000;
  background-color: #ffdf00;
}
.sv-card-label.sv--neutral {
  color: #000;
  background-color: #e2e3e5;
}
.sv-card-label.sv--new-development {
  background-color: #7987b5;
}
.sv-card-label.sv--farm {
  background-color: #6c9173;
}
/* ==========================================================================
  Generic card tags container

  * Base styles
  * modifiers
  ========================================================================== */
.sv-card-tags-container {
  height: 4.375rem;
  margin: 2rem 0 0;
  text-align: center;
}
.sv-card-tags-container .sv-tag {
  max-width: 100%;
  margin: 0 0.625rem 0 0;
}
/* Modifiers
 ========================================================================== */
.sv-card-tags-container.sv--inline {
  height: 1.5625rem;
  white-space: nowrap;
  flex-direction: row;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.sv-card-tags-container.sv--inline .sv-tag {
  margin-bottom: 0;
}
.sv-card-tags-container.sv--block {
  flex-direction: column;
  align-items: flex-start;
  height: auto;
}
.sv-card-tags-container.sv--block .sv-tag {
  margin-top: 0.75rem;
}
.sv-card-tags-container.sv--center-align, .sv-card.sv--center-align .sv-card-tags-container, .sv-rich-card__content .sv-card-tags-container {
  justify-content: center;
}
/* ==========================================================================
  Generic card telephone

  * Base styles
  ========================================================================== */
.sv-card-telephone {
  font-size: 0.875rem;
  margin-bottom: 1.5rem;
}
.sv-card-telephone__link {
  color: inherit;
  text-decoration: none;
}
/* ==========================================================================
  Generic card fixed height

  * Base styles
  ========================================================================== */
.sv-card.sv--fixed-height .sv-card-title {
  height: 3.9375rem;
}
.sv-card.sv--fixed-height.sv--listing-block .sv-card-title {
  height: auto;
  max-height: 5.4375rem;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-card.sv--fixed-height.sv--listing-block .sv-card-title .sv--dynamic-height {
  height: auto;
}
.sv-card.sv--fixed-height.sv--listing-block .sv-card-intro {
  height: auto;
}
.sv-card.sv--fixed-height.sv--listing-block .sv-card-tags-container {
  margin-top: 0;
}
.sv-card.sv--fixed-height.sv--is-award {
  height: auto;
}
.sv-card.sv--fixed-height.sv--is-award .sv-card-title {
  height: auto;
  max-height: 3.25rem;
  overflow: hidden;
}
.sv-card.sv--fixed-height.sv--is-award .sv-card-intro {
  height: auto;
  margin-bottom: 2.125rem;
  max-height: 6.625rem;
}
.sv-card.sv--fixed-height.sv--office {
  height: auto;
}
.sv-card.sv--fixed-height.sv--office .sv-card-title {
  height: 1.625rem;
  margin-bottom: 0.8125rem;
}
.sv-card.sv--fixed-height.sv--office .sv-card-intro {
  height: auto;
  max-height: 9.375rem;
  margin-bottom: 1.5rem;
}
.sv-card.sv--fixed-height.sv--office .sv-card-address {
  margin-bottom: 0;
}
.sv-card.sv--fixed-height.sv--office .sv-card-link-container {
  position: absolute;
  bottom: 1.25rem;
}
.sv-card.sv--fixed-height.sv--expert {
  height: auto;
}
.sv-card.sv--fixed-height.sv--expert .sv-card-title {
  margin-bottom: 0.1875rem;
}
/* ==========================================================================
  Generic card

  * Base styles
  * Centerally align modifier
  * Transparent card modifier
  * Subjacent card modifier
  * Listing card modifier
  * Full width card modifier
  * Micro card modifier
  * Video card modifier
  * Award card modifier
  * CTA block card modifier
  ========================================================================== */
.sv-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  justify-content: space-between;
  height: 100%;
}
.sv-card__content {
  padding: 1rem;
  overflow: hidden;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 46.875rem;
}
.sv-card__location {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sv-card .sv-card__image + .sv-card__content .sv-card-label {
  position: absolute;
  left: 0;
  top: 1rem;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.sv-card__download-link {
  display: none;
  text-indent: -9999%;
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
.sv-card__download-link::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5rem;
  width: 1.5rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23bfbfbf%3B%22%3E%3Cpath%20d%3D%22M1344%201344q0-26-19-45t-45-19-45%2019-19%2045%2019%2045%2045%2019%2045-19%2019-45zm256%200q0-26-19-45t-45-19-45%2019-19%2045%2019%2045%2045%2019%2045-19%2019-45zm128-224v320q0%2040-28%2068t-68%2028h-1472q-40%200-68-28t-28-68v-320q0-40%2028-68t68-28h465l135%20136q58%2056%20136%2056t136-56l136-136h464q40%200%2068%2028t28%2068zm-325-569q17%2041-14%2070l-448%20448q-18%2019-45%2019t-45-19l-448-448q-31-29-14-70%2017-39%2059-39h256v-448q0-26%2019-45t45-19h256q26%200%2045%2019t19%2045v448h256q42%200%2059%2039z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.75rem, -0.75rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-card__type {
  font-size: 0.625rem;
  font-weight: 500;
  line-height: 0.9375rem;
  color: #4c4d50;
  text-transform: uppercase;
}
.sv-card__content-footer {
  position: relative;
}
.sv-card__content-filters {
  margin-top: 2rem;
}
.sv-card__filter-labels {
  display: block;
  list-style: none;
  padding-left: 0;
}
/* Centerally align modifier
========================================================================== */
.sv-card.sv--center-align {
  text-align: center;
}
/* Transparent card modifier
========================================================================== */
.sv-card.sv--transparent {
  background: transparent;
}
/* Subjacent card modifier
========================================================================== */
/* Listing card modifier
========================================================================== */
.sv-card.sv--listing-block {
  border: 1px solid #e2e3e5;
}
/* size modifiers
========================================================================== */
/* tone modifiers
========================================================================== */
/* row listing modifier
========================================================================== */
.sv-card.sv--listing-row {
  border-top: 1px solid #e2e3e5;
}
.sv-card.sv--listing-row.sv--no-border {
  border-top: 0;
}
.sv-card.sv--listing-row.sv--padded {
  padding: 1rem;
}
/* stylelint-disable selector-max-specificity */
/* stylelint-enable selector-max-specificity */
.sv-card.sv--listing-row:first-of-type {
  margin-top: 0;
}
.sv-card.sv--listing-row .sv-card__content {
  padding: 0;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-card.sv--listing-row .sv-card__content .sv-card-label:first-of-type {
  float: left;
  margin-right: 0.625rem;
}
.sv-card.sv--listing-row .sv-card__content .sv-card-label:first-of-type + .sv-card-meta {
  width: auto;
}
.sv-card.sv--listing-row .sv-card__content + .sv-card__type {
  margin-top: 1rem;
}
.sv-card.sv--listing-row .sv-card-tags-container {
  position: static;
}
/* stylelint-disable selector-max-specificity */
.sv-card.sv--listing-row .sv-card__primary-ctas .sv-button:last-of-type {
  margin-bottom: 0;
}
.sv-card.sv--listing-row .sv-card__image + .sv-card__content .sv-card-label {
  top: 2rem;
}
/* stylelint-enable selector-max-specificity */
.sv-card.sv--listing-row.sv--lrg .sv-card__content, .sv-card.sv--listing-row.sv--med .sv-card__content {
  padding: 0;
}
/* Horizontal ('Full-width') card modifier
========================================================================== */
/* micro card modifier - small inline card typically used for side listings
========================================================================== */
.sv-card.sv--micro {
  border-top: 1px solid #e2e3e5;
  padding: 1rem 0;
  flex-direction: row;
  height: 7.625rem;
}
.sv-card.sv--micro .sv-card__image {
  width: 7.8125rem;
  flex: 0 0 auto;
  margin-right: 1rem;
}
.sv-card.sv--micro .sv-card__content {
  padding: 0;
}
.sv-card.sv--micro .sv-card-title {
  font-size: 0.9375rem;
  line-height: 1.3;
  margin: 0;
}
/* Expert result card modifier
========================================================================== */
.sv-card.sv--expert .sv-card__location, .sv-card.sv--expert .sv-card__misc {
  font-size: 0.875rem;
  line-height: 1.5;
}
.sv-card.sv--expert .sv-card__location {
  font-weight: 500;
  margin-bottom: 0;
}
.sv-card.sv--expert .sv-card__misc {
  margin-bottom: 1.3125rem;
}
.sv-card.sv--expert .sv-card-meta {
  color: #69769e;
  margin-bottom: 0.6875rem;
}
.sv-card.sv--expert .sv-card-address {
  font-weight: 300;
  margin-bottom: 0;
}
.sv-card.sv--expert .sv-card-address__line.sv--break {
  display: inline-block;
}
.sv-card.sv--expert .sv-cta-link {
  line-height: 1.25rem;
}
.sv-card.sv--expert .sv-card__primary-ctas, .sv-card.sv--office .sv-card__primary-ctas {
  display: none;
}
.sv-card.sv--expert .sv-card-title a, .sv-card.sv--office .sv-card-title a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sv-card.sv--expert.sv--listing-row .sv-card__content, .sv-card.sv--office.sv--listing-row .sv-card__content {
  justify-content: flex-start;
}
.sv-card.sv--expert.sv--micro {
  height: auto;
  padding: 1rem 0;
  min-height: auto;
}
.sv-card.sv--expert.sv--micro .sv-card__image {
  max-width: 5.875rem;
  max-height: 5.875rem;
}
.sv-card.sv--expert.sv--micro .sv-card__location {
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 300;
  margin-bottom: 0.1875rem;
}
.sv-card.sv--expert.sv--micro .sv-card__license {
  font-size: 0.75rem;
  line-height: 1rem;
  color: #4a4a4a;
  margin-bottom: 0.1875rem;
}
.sv-card.sv--expert.sv--micro .sv-card-title {
  font-size: 1rem;
  line-height: 1.375rem;
  margin-top: -0.1875rem;
  /* Align with top of image */
  margin-bottom: 0.125rem;
}
.sv-card.sv--expert.sv--micro .sv-card-telephone {
  font-size: 0.6875rem;
  line-height: 1rem;
  font-weight: 500;
  margin-bottom: 1px;
}
/* Author card modifier
========================================================================== */
.sv-card.sv--author .sv-card__image {
  width: 4rem;
  height: 4rem;
}
.sv-card.sv--author .sv-card__image .sv-image-treatment {
  height: 100%;
}
.sv-card.sv--author .sv-card__location, .sv-card.sv--author .sv-card__license, .sv-card.sv--author .sv-card-telephone {
  display: none;
}
.sv-card.sv--author .sv-card__misc {
  margin-bottom: 0;
  font-size: 0.75rem;
  line-height: 0.75rem;
}
/* video card - simply adds an icon to the image
========================================================================== */
.sv-card.sv--is-video .sv-card__image {
  display: block;
  position: relative;
}
.sv-card.sv--is-video .sv-card__image::before {
  content: '';
  background: center center no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1280%20896q0-37-30-54l-512-320q-31-20-65-2-33%2018-33%2056v640q0%2038%2033%2056%2016%208%2031%208%2020%200%2034-10l512-320q30-17%2030-54zm512%200q0%2096-1%20150t-8.5%20136.5-22.5%20147.5q-16%2073-69%20123t-124%2058q-222%2025-671%2025t-671-25q-71-8-124.5-58t-69.5-123q-14-65-21.5-147.5t-8.5-136.5-1-150%201-150%208.5-136.5%2022.5-147.5q16-73%2069-123t124-58q222-25%20671-25t671%2025q71%208%20124.5%2058t69.5%20123q14%2065%2021.5%20147.5t8.5%20136.5%201%20150z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 5.625rem;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: .85;
  z-index: 1;
}
/* award card
========================================================================== */
.sv-card.sv--is-award .sv-card-title {
  color: #313131;
  font-size: 1.125rem;
  line-height: 1.4;
}
/* cta block modifier - call to action block card
========================================================================== */
.sv-card.sv--cta-block .sv-card__content {
  padding: 1.5625rem 0;
  flex: none;
}
.sv-card.sv--cta-block .sv-card-title {
  font-size: 1.125rem;
  line-height: 2.125rem;
  margin: 0 0 0.25rem;
}
.sv-card.sv--cta-block .sv-card-intro {
  margin-right: 0.9375rem;
  margin-bottom: 1.6875rem;
  font-size: 0.75rem;
  color: #4a4a4a;
}
.sv-card.sv--clean .sv-card__content {
  max-width: none;
  padding: 1.5rem 0;
}
.sv-card.sv--clean .sv-card-intro {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 0.875rem;
}
/* full width modifier
========================================================================== */
/* ==========================================================================
  Cookie notification

  * Basic styles
  * >= sml viewport
  * >= med viewport
 ========================================================================== */
.sv-cookie-notification {
  display: none;
  padding: 0.9375rem 0.9375rem 0;
  background: #252839;
  position: fixed;
  width: 100%;
  z-index: 100;
}
.sv-cookie-notification.sv--visible {
  display: block;
}
.sv-cookie-notification__content-wrap {
  max-width: 78rem;
  margin: 0 auto;
}
.sv-cookie-notification__warning, .sv-cookie-notification__warning-link {
  font-size: 0.875rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
}
.sv-cookie-notification__warning {
  color: #fff;
  margin-bottom: 1.25rem;
  display: block;
}
.sv-cookie-notification__warning-link {
  color: #ffdf00;
  display: inline;
  border-bottom: 1px solid #ffdf00;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
.sv-contact-header {
  padding: 1.25rem 0 1.875rem;
  margin-bottom: 1.25rem;
  border-top: 1px solid #c9c9c9;
  border-bottom: 1px solid #c9c9c9;
}
.sv-contact-header.sv--dark {
  border-top-color: #4c4d50;
  border-bottom-color: #4c4d50;
}
.sv-contact-header.sv--mini {
  display: flex;
  padding: 1.75rem 0;
  margin-bottom: 2rem;
}
.sv-contact-header__image .sv-image-treatment img {
  max-width: 100%;
}
.sv--mini .sv-contact-header__image {
  max-width: 4rem;
}
.sv-contact-header__details {
  margin-top: 1.25rem;
}
.sv--no-default .sv-contact-header__details, .sv--no-default.sv--mini .sv-contact-header__details {
  margin-left: 0;
}
.sv--mini .sv-contact-header__details {
  margin-top: 0;
  margin-left: 1.25rem;
}
.sv-contact-header__job-title {
  display: block;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25rem;
  text-transform: uppercase;
  color: #69769e;
}
.sv-contact-header__name {
  display: block;
  font: 400 1.875rem 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  margin: 0.625rem 0;
}
.sv--mini .sv-contact-header__name {
  margin-top: 0;
  font-size: 1rem;
}
.sv-contact-header__location {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
}
.sv-contact-header__department {
  display: block;
  font-size: 0.875rem;
}
.sv-contact-header__telephone {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.625rem;
  color: #252839;
}
.sv--dark .sv-contact-header__telephone {
  color: #fff;
}
/* ==========================================================================
  Content header

  * Content wrapper
  * Section title
  * Header
  * Date
  * Dark modifier
  * Has image modifier
 ========================================================================== */
.sv--breadcrumb-adjustment .sv-content-header__content {
  padding-top: calc(2.6875rem + 6vw);
}
/* Content wrapper
 ========================================================================== */
.sv-content-header {
  position: relative;
  background: #f3f3f3;
  min-height: 26.5625rem; /* Average image height at the desired aspect ratio */
  max-height: 33.125rem;
  overflow: hidden;
}
.sv-content-header .sv-image-treatment {
  position: absolute;
}
/* Content wrapper
   ========================================================================== */
.sv-content-header__content {
  text-align: center;
  position: relative;
  padding: 4.6875rem;
  z-index: 2;
}
.sv-content-header__content-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 78rem;
  height: 100%;
}
/* Section title
   ========================================================================== */
.sv-content-header__category {
  color: #cd171e;
  font: 500 1.125rem/1.1 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  margin: 0 0 1.5rem;
  text-transform: uppercase;
}
/* Header
   ========================================================================== */
/* Date
   ========================================================================== */
.sv-content-header__date {
  color: #464853;
  font: 500 1.125rem/1.1 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  margin: 2.8125rem 0 0;
  display: block;
}
/* Has image modifier
 ========================================================================== */
.sv-content-header.sv--has-image .sv-content-header__content-wrap {
  min-height: 13.125rem;
}
/* Plain modifier
 ========================================================================== */
.sv-content-header.sv--plain {
  background: #fff;
  border-bottom: 1px solid #e2e3e5;
}
/* Dark modifier - where the text should sit on top a dark bg (eg a 'treated' image)
 ========================================================================== */
.sv-content-header.sv--dark .sv-content-header__category {
  color: #ffdf00;
}
.sv-content-header.sv--dark .sv-content-header__title {
  color: #fff;
}
.sv-content-header.sv--dark .sv-content-header__date {
  color: #e2e3e5;
}
/* ==========================================================================
  Content panels

  * Default content panel
  * Styled modifier
  * Dark modifier
  * Overlay modifier

  * Article content panel
  ========================================================================== */
.sv-content-panel, .sv-author-panel {
  position: relative;
  padding: 1.25rem;
  margin-bottom: 1rem;
}
.sv-content-panel > *:first-child, .sv-author-panel > *:first-child {
  margin-top: 0;
}
.sv-content-panel > *:last-child, .sv-author-panel > *:last-child {
  margin-bottom: 0;
}
/* Styled modifier
 ========================================================================== */
.sv-content-panel.sv--styled, .sv-author-panel.sv--styled, .sv-author-panel {
  background: #fff;
  border: 1px solid #eee;
}
/* Dark modifier
 ========================================================================== */
.sv-content-panel.sv--dark, .sv-author-panel.sv--dark {
  background: #252839;
}
.sv-content-panel.sv--dark > p, .sv-author-panel.sv--dark > p {
  color: #fff;
}
/* Overlay modifier
 ========================================================================== */
.sv-content-panel.sv--overlay, .sv-author-panel.sv--overlay {
  margin-top: -5rem;
}
/* ==========================================================================
  Article content panel
 ========================================================================== */
/* >= sml < lrg viewport
 ========================================================================== */
/* ==========================================================================
  Content row

  * Basic styles
  * >= sml viewport
  * >= lrg viewport
  * Blockquote sibling
 ========================================================================== */
.sv-content-row {
  margin-top: 1.125rem;
  padding-bottom: 1.125rem;
  border-bottom: 1px solid #a3a4a9;
}
.sv-content-row:last-of-type {
  border-bottom: none;
}
.sv-content-row__col {
  margin-bottom: 0.625rem;
}
.sv-content-row__col:last-child {
  margin-bottom: 0;
}
.sv-content-row__heading {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  margin-bottom: 0;
  text-transform: uppercase;
  color: #555764;
}
.sv-content-row__content {
  font-size: 0.75rem;
  line-height: 1.75rem;
  color: #555764;
  letter-spacing: -.4px;
}
/* Letter spacing by default is off compared to design */
.sv-content-row__content a[href] {
  color: #555764;
}
/* Don't add an underline if link is social */
.sv-content-row__content a[href]:not(.sv-social__action) {
  border-bottom: 1px solid #ffdf00;
}
.sv-content-row .sv-list {
  margin-bottom: 0;
}
.sv-content-row .sv-list li {
  font-size: 0.75rem;
  line-height: 1.75rem;
}
.sv-content-row.sv--featured .sv-content-row__heading {
  font-size: 1.375rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  line-height: 2.125rem;
  text-transform: none;
  color: #252839;
  margin-bottom: 0.75rem;
}
.sv-content-row.sv--featured .sv-list li {
  font-size: 0.875rem;
}
.sv-content-row.sv--no-border {
  border-bottom: none;
}
/* >= sml viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* Blockquote sibling
 ========================================================================== */
.sv-quote + .sv-content-row {
  margin-top: 0;
}
/* ==========================================================================
  cta links

  * Base styles
  ========================================================================== */
.sv-cta-links {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  padding: 1.25rem 1.25rem 0;
  outline: 1px solid #c9c9c9;
}
.sv-cta-links.sv--overlay {
  margin-top: -3rem;
}
.sv-cta-links.sv--no-wrapper {
  outline: 0;
}
.sv-cta-links .sv-button {
  width: 100%;
  margin-bottom: 1.5rem;
}
.sv-cta-links.sv--fixed-lt-lrg {
  position: fixed;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4.875rem;
  background-color: rgba(255,255,255, .8);
  z-index: 3;
  outline: none;
}
.sv-cta-links.sv--fixed-lt-lrg .sv-button {
  flex: 1 1 50%;
  width: auto;
}
/* Tertiary so don't show - not priority */
.sv-cta-links.sv--fixed-lt-lrg .sv-button.sv--tertiary {
  display: none;
  max-width: none;
  background-color: #fff;
}
/* ==========================================================================
  cta promo

  * Base styles
  ========================================================================== */
.sv-cta-promo {
  background: #252839;
  padding: 2rem;
  display: block;
  position: relative;
}
.sv-cta-promo__title {
  font-size: 2.1875rem;
  line-height: 1.3;
  color: #fff;
  margin: 0 0 2rem;
}
.sv-cta-promo .sv-cta-link.sv--alt {
  position: absolute;
  bottom: 2rem;
}
.sv-disclaimer {
  margin-top: 1.875rem;
  padding: 1.25rem 0 6.25rem;
  border-top: 1px solid #c9c9c9;
}
.sv-disclaimer.sv--dark {
  border-top-color: #4c4d50;
}
.sv-disclaimer__title {
  display: block;
  font-size: 0.625rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #4c4d50;
  margin-bottom: 0.625rem;
}
.sv--dark .sv-disclaimer__title {
  color: #fff;
}
.sv-disclaimer__content {
  display: block;
  font-size: 0.625rem;
  line-height: 0.875rem;
}
.sv-disclaimer__link {
  font-size: 0.625rem;
  font-weight: 500;
  color: #69769e;
}
/* ==========================================================================
  Expandable item

  * Base styles
  * >= sml viewport
  * >= med viewport
  * >= lrg viewport
  ========================================================================== */
.sv-expandable-item {
  position: relative;
  border-top: 1px solid #999795;
  border-bottom: 1px solid #999795;
}
.sv-expandable-item__header {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  padding: 0.5rem 0.5rem 0.5rem 0;
}
.sv-expandable-item__header::before {
  content: '';
  position: absolute;
  width: 1.0625rem;
  height: 1.0625rem;
  top: 1rem;
  right: 0.5rem;
  /* stylelint-disable-next-line function-whitespace-after */
  background-image: url(/_images/icons/custom/concetina-open.svg);
}
.sv-expandable-item__header.sv--expanded::before {
  /* stylelint-disable-next-line function-whitespace-after */
  background-image: url(/_images/icons/custom/concetina-close.svg);
}
.sv-expandable-item__title, .sv-expandable-item__content {
  margin: 0 3.125rem 0 0;
}
.sv-expandable-item__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 1.5;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.sv-expandable-item__content {
  padding-bottom: 1.5rem;
}
.sv-expandable-item__content[aria-expanded="false"] {
  display: none;
}
.sv-expandable-item__content[aria-expanded="true"] {
  display: block;
}
.sv-expandable-item__content figure {
  margin-left: 0;
  margin-bottom: 3rem;
}
.sv-expandable-item__content p {
  font-size: 0.75rem;
}
.sv-expandable-item__content h3, .sv-expandable-item__content h4 {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 500;
  text-transform: uppercase;
}
.sv-expandable-item__content h3 {
  font-size: 1rem;
  line-height: 1.25;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Facts and figures

  * Base styles
  * >= sml viewport
  * >= med viewport
  * >= lrg viewport
  ========================================================================== */
.sv-facts {
  position: relative;
  overflow: hidden;
}
.sv-facts__content {
  position: relative;
  z-index: 1;
}
.sv-facts__background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 3.125rem;
  overflow: hidden;
}
.sv-facts__facts {
  background: #f2f2f2;
  padding: 2rem 1rem 0;
}
.sv-facts__button {
  margin-top: 0.25rem;
}
.sv-facts.sv--has-divider {
  margin-top: 2rem;
}
.sv--has-heading .sv-facts__background {
  bottom: 3.125rem;
}
.sv--has-heading .sv-facts__content {
  margin-top: 2rem;
}
.sv--has-heading .sv-facts__title, .sv--has-heading .sv-facts__intro {
  text-align: center;
  color: #fff;
}
.sv--has-heading .sv-facts__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.75rem;
  line-height: 1.3;
  margin-bottom: 1rem;
}
.sv--has-heading .sv-facts__intro {
  font-size: 0.875rem;
  line-height: 1.45;
  margin-bottom: 2rem;
}
.sv--has-heading .sv-facts__facts {
  background: #fff;
}
.sv-fact {
  display: flex;
  flex-direction: column-reverse;
  margin: 0;
}
.sv-fact__term, .sv-fact__value {
  text-align: center;
}
.sv-fact__term {
  max-width: 95%;
  margin: 0 auto 1.25rem;
  font-size: 0.875rem;
  line-height: 1.4;
}
.sv-fact__value {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 3.125rem;
  line-height: 1.2;
}
.sv-fact__value.sv--text {
  margin-top: 0.5rem;
  margin-bottom: 0.375rem;
  font-size: 1.625rem;
  font-family: 'DomineWebBold', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 700;
  line-height: 1.4;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Featured card

  * Base styles
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-featured-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #f3f3f3;
}
.sv-featured-card.sv--alt {
  background: #fff;
}
.sv-featured-card.sv--new-development {
  background: #fff;
  border-top: 0.1875rem solid #7987b5;
}
.sv-featured-card__image {
  width: 100%;
  height: 14.6875rem;
  overflow: hidden;
}
.sv-featured-card__content {
  padding: 1rem;
  overflow: hidden;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.sv-featured-card__title {
  font-size: 1.75rem;
  font-weight: 300;
  line-height: 1.285;
  max-height: 6.75rem;
  margin: 0 0 1rem;
  overflow: hidden;
}
.sv-featured-card__intro {
  margin: 0 0 1.5rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.5;
  overflow: hidden;
}
.sv-featured-card .sv-card-meta {
  font-size: 0.875rem;
  font-weight: 300;
  margin: 0 0 1rem;
  line-height: 1.25rem;
}
.sv--new-development .sv-featured-card .sv-card-meta {
  color: #7987b5;
}
.sv-featured-card .sv-card-meta__date::before {
  margin-top: 0.125rem;
  height: 1rem;
}
.sv-featured-card .sv-button {
  margin-bottom: 0.5rem;
}
.sv-featured-card__secondary-wide {
  display: none;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Featured content

  * Base styles
  * Light modifier
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-featured-content {
  position: relative;
  overflow: hidden;
  color: #fff;
}
.sv-featured-content__image {
  overflow: hidden;
}
.sv-featured-content__content {
  padding: 1.75rem 1rem 2rem;
  overflow: hidden;
  background: #252839;
}
.sv-featured-content__title {
  font-size: 1.875rem;
  line-height: 1.2;
  max-height: 6.75rem;
  margin-bottom: 1.5rem;
}
.sv-featured-content__intro {
  font-size: 0.75rem;
  line-height: 1.6;
  max-height: 8rem;
  margin-bottom: 1.5rem;
}
.sv-featured-content__link:not(:last-child) {
  margin-bottom: 0.5rem;
}
/* Light modifier
 ========================================================================== */
.sv-featured-content.sv--light {
  color: #252839;
}
.sv-featured-content.sv--light .sv-featured-content__content {
  background-color: #f2f2f2;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Filter Bar
  - Generic container styles for filter controls bar

  * Base styles
  ========================================================================== */
.sv-filter-bar {
  padding: 0.625rem 0;
  border-style: solid;
  border-width: 1px 0;
  border-color: #c9c9c9;
  color: #777;
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 2rem;
}
/* TODO: Unify filter-search & tidy up and maybe create some dropdown mods */
.sv-filter-bar .sv-select__container::before {
  padding-top: 0.75rem !important;
  padding-bottom: 0.625rem !important;
}
.sv-filter-bar select {
  margin: 0;
  border-radius: 0;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  min-height: 2.8125rem;
  color: #777;
  font-size: 1rem;
  font-weight: 500;
}
.sv-filter-bar select:focus {
  box-shadow: 1px 1px 0.125rem 1px #69769e;
}
.sv-filter-bar .sv-col > * {
  /* Adding ugly importants here to safeguard against and high specificity selectors for child components */
  margin: 0 !important;
  padding: 0 !important;
}
/* ==========================================================================
  Filter search

  * Base styles
  * >= xsml viewport
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
.sv-filter-search {
  padding: 0.75rem 0 0.8125rem;
  border-style: solid;
  border-width: 0 0 1px;
  border-color: #c9c9c9;
  color: #777;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6;
  /* stylelint-enable selector-max-specificity */
}
.sv-filter-search__results, .sv-filter-search__filters {
  padding-top: 0.75rem;
}
.sv-filter-search__filters {
  display: table;
  margin: 0 auto;
}
.sv-filter-search__filters-col {
  display: table-cell;
  padding-right: 0.625rem;
}
.sv-filter-search__filters-col:last-child {
  padding-right: 0;
}
.sv-filter-search__results.sv--sml {
  display: none;
}
.sv-filter-search__results.sv--margin {
  margin-bottom: 0.625rem;
}
.sv-filter-search__sort-label {
  display: block;
  padding: 0.625rem 0;
  text-align: center;
}
.sv-filter-search .sv-results-indicator {
  text-align: center;
}
.sv-filter-search .sv-custom-input {
  padding-top: 0;
  margin-bottom: 0;
}
.sv-filter-search .sv-custom-input.sv--radio {
  padding-top: 0.625rem;
  padding-bottom: 1.25rem;
}
.sv-filter-search .sv-custom-input.sv--dropdown {
  margin-bottom: 0.625rem;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-filter-search .sv-custom-input.sv--dropdown .sv-select__container::before {
  padding-top: 0.625rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
}
.sv-filter-search .sv-custom-input.sv--dropdown select {
  margin: 0;
  border-radius: 0;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  min-height: 2.8125rem;
  color: #777;
  font-weight: 500;
  border: 1px solid #c9c9c9;
  width: 100%;
}
.sv-filter-search .sv-custom-input.sv--dropdown select:focus {
  box-shadow: 1px 1px 0.125rem 1px #69769e;
}
.sv-filter-search .sv-custom-input input {
  max-width: 100%;
}
.sv-filter-search .sv-custom-input input:checked + span {
  color: #4a4a4a;
}
/* stylelint-disable selector-max-specificity */
.sv-filter-search .sv-custom-input.sv--search.sv--alt label {
  top: 0;
}
.sv-filter-search .sv-custom-input.sv--search.sv--alt button {
  top: 1px;
}
.sv-filter-search .sv--radio .sv-custom-input__check {
  line-height: 1.6;
}
/* >= xsml viewport
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
.sv-image-treatment {
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.sv-image-treatment img {
  position: relative;
  min-width: 100%;
  max-width: none;
  left: 50%;
  transform: translateX(-50%);
}
.sv-image-treatment::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
/* Gradients */
.sv-image-treatment.sv--type-1::before, .sv-image-treatment.sv--type-2::before, .sv-image-treatment.sv--type-3::before, .sv-image-treatment.sv--type-4::before {
  opacity: .8;
}
/* Gradient */
.sv-image-treatment.sv--type-1::before {
  background: linear-gradient(275deg, transparent 0%, #252839 100%);
}
/* Gradient - reverse */
.sv-image-treatment.sv--type-2::before {
  background: linear-gradient(75deg, transparent 0%, #252839 100%);
}
/* Gradient - vertical */
.sv-image-treatment.sv--type-3::before {
  background: linear-gradient(180deg, transparent 0%, #252839 100%);
}
/* Gradient - vertical - reverse */
.sv-image-treatment.sv--type-4::before {
  background: linear-gradient(0deg, transparent 0%, #252839 100%);
}
/* Flats */
.sv-image-treatment.sv--type-5::before, .sv-image-treatment.sv--type-6::before {
  opacity: .9;
}
/* Flat - Primary */
.sv-image-treatment.sv--type-5::before {
  background: #252839;
}
/* Flat - Secondary */
.sv-image-treatment.sv--type-6::before {
  background: #4c4d50;
}
/* Gradient - custom */
.sv-image-treatment.sv--type-7::before {
  background-image: linear-gradient(180deg, rgba(37,40,57, .55) 33%, rgba(3,11,54, .64) 100%);
}
/* Flat - Primary - faded */
.sv-image-treatment.sv--type-8::before {
  opacity: .3;
  background: #252839;
}
.sv-image-treatment.sv--type-9::before {
  background: linear-gradient(180deg, transparent 20%, #252839 100%);
}
.sv-language-selector select {
  transform: translate3d(0, 0, 0);
  /* Fix for render issue within fixed pos modals */
}
.sv-language-selector__country {
  height: 1.875rem;
  overflow: hidden;
}
.sv--active .sv-language-selector__country {
  height: auto;
  overflow: visible;
}
.sv-language-selector__country-flag {
  display: flex;
  align-items: center;
  cursor: pointer;
  height: 1.875rem;
}
.sv-language-selector__country-flag.sv-flag::before {
  position: relative;
  top: -1px;
}
.sv-language-selector .sv-flag::before {
  transform: scale(.7);
}
.sv-language-selector .sv-flag.sv--form-flag {
  display: block;
  position: relative;
  margin-bottom: 32px;
}
.sv-language-selector .sv-flag.sv--form-flag .sv--dropdown {
  margin-bottom: 0;
}
.sv-language-selector .sv-flag.sv--form-flag::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 7px;
  z-index: 1;
  transform: translateY(-50%) scale(.7);
}
.sv-language-selector .sv-flag.sv--list-flag::before {
  display: inline-block;
  margin-bottom: -10px;
  margin-left: -10px;
}
.sv-language-selector__country:focus, .sv-language-selector__language:focus {
  outline: none;
}
.sv-language-selector__country-dropdown, .sv-language-selector__language-dropdown {
  display: none;
}
.sv-language-selector__dropdown-label {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.25rem;
  color: #252839;
}
.sv-language-selector__country-name {
  display: none;
}
.sv-language-selector .sv--custom.sv--open .sv-select__value {
  color: #cd171e;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23cd171e%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-language-selector .sv--custom.sv--open .sv-select__options {
  max-height: 14.125rem;
  overflow-y: scroll;
}
.sv-language-selector .sv--custom .sv-select__option, .sv-language-selector .sv--custom .sv-select__value {
  font-size: 1rem;
  color: #252839;
}
.sv-language-selector .sv--calc-layout .sv-select__value {
  text-indent: 0;
  background: #fff calc(100% - 0.625rem) no-repeat;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23999795%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 0.625rem;
}
.sv--active .sv-language-selector__country-flag {
  display: none;
}
.sv--active .sv-language-selector__country-dropdown, .sv--active .sv-language-selector__language-dropdown {
  display: block;
  text-align: left;
}
/* stylelint-disable selector-max-specificity */
.sv--active .sv-language-selector__language-dropdown {
  padding: 0 1.25rem 1.25rem;
}
.sv--active .sv-language-selector__language-dropdown .sv-select__option.sv--active {
  background: none;
}
.sv--active .sv-language-selector__language-dropdown .sv-select__option.sv--active:hover, .sv--active .sv-language-selector__language-dropdown .sv-select__option.sv--active:focus {
  background: #e2e3e5;
}
/* stylelint-enable selector-max-specificity */
.sv--active .sv-language-selector__country-dropdown {
  padding: 1.25rem 1.25rem 0;
}
.sv--active .sv-language-selector__country-dropdown .sv--calc-layout select {
  padding-left: 2.5rem;
}
.sv--active .sv-language-selector__country-dropdown .sv--calc-layout .sv-select__value {
  text-indent: 1.5625rem;
}
.sv--active .sv--calc-layout {
  width: 100%;
}
.sv--active .sv--calc-layout select, .sv--active .sv--calc-layout .sv-select__value {
  border: 1px solid #b8b8b8;
  padding: 0.9375rem;
  width: 100%;
  background-position: 96% 1em;
  background-size: 0.9375rem;
  font-weight: 300;
  font-size: 1rem;
}
.sv-login-modal {
  display: none;
}
.sv-login-modal.sv--active {
  display: block;
}
/* ==========================================================================
  List group

  * Basic styles
  * Light colour variant
  * >= sml viewport
  ========================================================================== */
.sv-list-group {
  display: block;
  margin-bottom: 1rem;
}
.sv-list-group__heading {
  color: #313131;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: .25px;
  /* avoid legibility problems with tiny text on some OS/browser combos */
  line-height: 1.125rem;
  text-transform: uppercase;
}
.sv-list-group__set {
  margin: 0;
  padding: 0;
}
.sv-list-group__item {
  display: block;
  margin: 0;
  padding: 0;
}
.sv-list-group__label {
  background-color: transparent;
  color: #313131;
  display: block;
  font: 0.8125rem 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  line-height: 1rem;
  padding: 0.5rem 0;
  text-align: left;
  transition: background-color 150ms;
  width: 100%;
}
.sv-list-group__label::after {
  top: 0.5rem;
  transform: none;
}
/* if this label also acts as an action, provide appropriate states */
.sv-list-group__label.sv--action:hover {
  background-color: rgba(255,255,255, .2);
}
.sv-list-group__icon-pre {
  float: left;
  margin-right: 1rem;
  width: 1.125rem;
}
.sv-list-group__icon-post {
  float: right;
  margin-left: 1rem;
  width: 1.125rem;
}
/* Light colour variant
 ========================================================================== */
.sv-list-group.sv--light .sv-list-group__heading {
  color: #ffdf00;
}
.sv-list-group.sv--light .sv-list-group__label {
  color: #fff;
}
/* >= sml viewport
 ========================================================================== */
/* ==========================================================================
  Map

  * Basic styles
  * >= sml viewport
  * >= med viewport
 ========================================================================== */
.sv-map {
  height: 10rem;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
.sv-modal-window {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(70, 72, 83, .8);
  /* stylelint-disable property-no-unknown */
  background-filter: blur(0.625rem);
  /* stylelint-enable property-no-unknown */
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  text-align: center;
  color: #fff;
  transition: .3s;
  overflow-y: auto;
}
.sv-modal-window:target {
  opacity: 1;
  pointer-events: auto;
  transition: .3s;
}
.sv-modal-window__container {
  width: 47rem;
  height: 36.5625rem;
  position: relative;
  margin: 10% auto;
  opacity: .85;
  border-radius: 0.125rem;
  background-color: #060712;
}
.sv-modal-window__content {
  position: relative;
}
.sv-modal-window__close {
  position: absolute;
  top: 1.3125rem;
  right: 1.0625rem;
  height: 2rem;
  width: 2rem;
}
.sv-modal-window__close::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1rem;
  width: 1rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23fff%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5rem, -0.5rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-modal-window__close:hover {
  position: absolute;
}
.sv-modal-window__close:hover::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1rem;
  width: 1rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23ffdf00%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5rem, -0.5rem);
  /* stylelint-enable at-rule-empty-line-before */
}
/* ==========================================================================
  Page banner

  * Base styles
  * <= sml viewport
  * >= sml viewport
  * >= med viewport
  * <= med viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-page-banner {
  padding: 1.5rem;
  position: relative;
  overflow: hidden;
}
.sv-page-banner .sv-image-treatment {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
}
.sv-page-banner__content {
  position: relative;
  z-index: 1;
}
.sv-page-banner__title, .sv-page-banner__subtitle {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  margin: 0;
  line-height: 1;
  color: #fff;
}
.sv-page-banner__intro {
  overflow: auto;
  margin-bottom: 0;
  padding-bottom: 0;
  /* stylelint-enable selector-pseudo-element-no-unknown */
  font-size: 0.75rem;
  margin: 0;
  color: #fff;
}
/* stylelint-disable selector-pseudo-element-no-unknown */
.sv-page-banner__intro::before{
  content: '';
  margin: 2rem 0;
  width: 3.125rem;
  height: 0.125rem;
  border: 1px solid;
  display: block;
}
.sv-page-banner.sv--center .sv-page-banner__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.sv-page-banner.sv--secondary-banner {
  padding: 0;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__content {
  padding-top: 1rem;
}
.sv-page-banner.sv--secondary-banner .sv-image-treatment {
  position: relative;
}
.sv-page-banner.sv--secondary-banner .sv--type-1::before {
  display: none;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__category {
  font-size: 0.875rem;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__title {
  color: #252839;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  margin-top: 0.625rem;
  margin-bottom: 0.625rem;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__intro {
  color: #4c4d50;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.875rem;
  line-height: 1.375rem;
  margin-bottom: 1.25rem;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__intro::before {
  display: none;
}
.sv-page-banner.sv--secondary-banner .sv-page-banner__category {
  text-transform: uppercase;
  color: #cd171e;
}
.sv-page-banner.sv--secondary-banner .sv-button {
  margin: 0;
}
/* <= sml viewport
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* <= med viewport
 ========================================================================== */
/* ==========================================================================
  Page header

  * Base styles
  * <= sml viewport
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-page-header {
  text-align: center;
}
.sv-page-header__title {
  font-weight: 300;
  line-height: 1.2;
  margin: 0 0 1rem;
}
.sv-page-header__intro {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  color: #4c4d50;
  line-height: 1.5;
  margin: 0;
}
.sv-page-header.sv--secondary-heading .sv-page-header__title {
  font-size: 2rem;
}
.sv-page-header.sv--secondary .sv-page-header__title {
  line-height: 1;
  text-align: left;
}
.sv-page-header.sv--secondary .sv-page-header__intro {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  line-height: 1.5;
  text-align: left;
}
.sv-page-header.sv--tertiary .sv-page-header__title {
  font: 400 1.875rem 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  line-height: 1;
  text-align: left;
  margin: 0 0 2rem;
}
.sv-page-header.sv--tertiary .sv-page-header__intro {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  line-height: 1.5;
  text-align: left;
  font-size: 1rem;
}
.sv-page-header.sv--has-image .sv-page-header__container {
  position: relative;
}
.sv-page-header.sv--has-image .sv-page-header__content-inner {
  margin-bottom: 1.5rem;
  width: 100%;
}
.sv-page-header.sv--has-image .sv-page-header__title {
  color: #fff;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  line-height: 1.333;
  margin: 0;
}
.sv-page-header.sv--has-image .sv-page-header__intro {
  display: none;
  color: #fff;
}
.sv-page-header.sv--show-intro-narrow .sv-page-header__intro {
  display: block;
  font-size: 0.875rem;
  padding: 0 0.625rem;
}
.sv-page-header.sv--show-intro-narrow .sv-page-header__content-inner {
  bottom: 1.875rem;
}
.sv-page-header.sv--show-intro-narrow .sv-page-header__content {
  height: 20rem;
}
/* <= sml viewport
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Property card

  * Base styles
  * Full width
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
.sv-property-card {
  position: relative;
  display: flex;
  flex-direction: column;
  max-width: 20rem;
  height: 26rem;
  background: #fff;
  border: 1px solid #e9eaeb;
}
.sv-property-card .sv-link::before {
  background-color: #cd171e;
  height: 1px;
}
.sv-property-card .sv-link::after {
  height: 1px;
}
.sv-property-card .sv-card__bg {
  box-shadow: 0 0.125rem 0.125rem rgba(0,0,0, .17);
  background-color: #fff;
  position: absolute;
  z-index: 3;
}
.sv-property-card .sv-card__bg.sv--card-0 {
  width: 100%;
  height: 100%;
  z-index: 2;
}
.sv-property-card .sv-card__bg.sv--card-1 {
  top: 100%;
  left: 2.5%;
  width: 95%;
  height: 0.5rem;
  z-index: 1;
}
.sv-property-card .sv-card__bg.sv--card-2 {
  top: calc(100% + 0.5rem);
  left: 5%;
  width: 90%;
  height: 0.5rem;
  z-index: 0;
}
.sv-property-card .sv-slider {
  position: relative;
  height: 11.5625rem;
  overflow: hidden;
  background-color: #f3f3f3;
}
.sv-property-card .sv-slider__image {
  min-height: 100%;
  max-width: none;
  transform: translate(-50%, -50%);
  position: relative;
  right: -50%;
  bottom: -50%;
}
.sv-property-card .sv-slider .sv-image-treatment {
  width: 100%;
  height: 100%;
}
.sv-property-card .sv-slider__footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  z-index: 5;
}
.sv-property-card .sv-slider__footer.sv--bg {
  height: 2.5rem;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000;
  opacity: .36;
}
.sv-property-card .sv-slider__footer-labels {
  flex: 1;
  display: flex;
  justify-content: flex-start;
  flex-flow: row wrap;
  overflow: hidden;
  height: 1.25rem;
  margin-left: 1rem;
}
.sv-property-card .sv-slider__footer-labels > span {
  line-height: 0;
}
.sv-property-card .sv-slider__footer-labels .sv-card-label {
  font-size: 0.5625rem;
  line-height: 1.25rem;
  margin-right: 0.9375rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-carousel .sv-property-card .sv-slider__footer-labels .sv-card-label {
  max-width: 8.25rem;
}
.sv-property-card .sv-slider__footer-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.sv-property-card .sv-slider__footer-action {
  color: #fff;
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.25rem;
  height: 1.25rem;
  text-transform: capitalize;
  padding-left: 1rem;
}
.sv-property-card .sv-slider__footer-action.sv--paging {
  padding-left: 1.0625rem;
  padding-left: 1.5625rem;
}
.sv-property-card .sv-slider__footer-action.sv--paging::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.0625rem;
  width: 1.0625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2218%22%20viewBox%3D%220%200%2021%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3%2C7%20C3%2C6.5%203.5%2C6%204%2C6%20C4.5%2C6%205.1%2C6.5%205.1%2C7%20C5.1%2C7.5%204.6%2C8.1%204%2C8.1%20C3.4%2C8.1%203%2C7.6%203%2C7%20Z%20M17.7%2C4.3%20L17.7%2C17%20C17.7%2C17.2%2017.6%2C17.3%2017.4%2C17.3%20L0.3%2C17.3%20C0.1%2C17.3%200%2C17.2%200%2C17%20L0%2C4.3%20C0%2C4.1%200.1%2C4%200.3%2C4%20L17.4%2C4%20C17.6%2C4%2017.7%2C4.1%2017.7%2C4.3%20Z%20M16.5%2C5.2%20L1.2%2C5.2%20L1.2%2C14.6%20L4.4%2C11%20C4.5%2C10.9%204.5%2C10.9%204.6%2C10.9%20C4.7%2C10.9%204.8%2C10.9%204.8%2C11%20L7.7%2C13.9%20L11.8%2C7.8%20C11.9%2C7.7%2012%2C7.7%2012.1%2C7.7%20C12.2%2C7.7%2012.3%2C7.8%2012.4%2C7.8%20L16.6%2C13.3%20L16.6%2C5.2%20L16.5%2C5.2%20Z%20M20.3%2C0%20L5.3%2C0%20C5.1%2C0%205%2C0.1%205%2C0.3%20L5%2C0.9%20C5%2C1.1%205.1%2C1.2%205.3%2C1.2%20L19.4%2C1.2%20L19.4%2C10.9%20C19.4%2C11.1%2019.5%2C11.2%2019.7%2C11.2%20L20.3%2C11.2%20C20.5%2C11.2%2020.6%2C11.1%2020.6%2C10.9%20L20.6%2C0.3%20C20.6%2C0.1%2020.5%2C0%2020.3%2C0%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-card .sv-slider__footer-action.sv--save {
  margin: 0 0 0 0.625rem;
  padding-left: 1.0625rem;
}
.sv-property-card .sv-slider__footer-action.sv--save::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.0625rem;
  width: 1.0625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2218%22%20viewBox%3D%220%200%2019%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3.9%2C17.4%20C3.7%2C17.4%203.6%2C17.4%203.5%2C17.3%20C3.3%2C17.1%203.2%2C16.8%203.2%2C16.6%20L4.1%2C11.2%20L0.2%2C7.4%20C3.33066907e-16%2C7.2%20-0.1%2C6.9%203.33066907e-16%2C6.6%20C0.1%2C6.3%200.3%2C6.1%200.6%2C6.1%20L6%2C5.3%20L8.4%2C0.4%20C8.7%2C-0.1%209.5%2C-0.1%209.7%2C0.4%20L12.1%2C5.3%20L17.5%2C6.1%20C17.8%2C6.1%2018%2C6.3%2018.1%2C6.6%20C18.2%2C6.9%2018.1%2C7.2%2017.9%2C7.4%20L14%2C11.2%20L14.9%2C16.6%20C14.9%2C16.9%2014.8%2C17.2%2014.6%2C17.3%20C14.4%2C17.5%2014.1%2C17.5%2013.8%2C17.4%20L9%2C14.9%20L4.2%2C17.4%20C4.2%2C17.4%204.1%2C17.4%203.9%2C17.4%20Z%20M9.1%2C13.2%20C9.2%2C13.2%209.3%2C13.2%209.5%2C13.3%20L13.3%2C15.3%20L12.6%2C11%20C12.6%2C10.8%2012.6%2C10.5%2012.8%2C10.3%20L15.9%2C7.3%20L11.6%2C6.7%20C11.4%2C6.7%2011.1%2C6.5%2011%2C6.3%20L9.1%2C2.4%20L7.2%2C6.3%20C7.1%2C6.5%206.9%2C6.7%206.6%2C6.7%20L2.4%2C7.3%20L5.5%2C10.3%20C5.7%2C10.5%205.8%2C10.7%205.7%2C11%20L5%2C15.3%20L8.8%2C13.3%20C8.9%2C13.2%209%2C13.2%209.1%2C13.2%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-card .sv-slider__footer-action.sv--save.sv--selected {
  padding-left: 1.0625rem;
}
.sv-property-card .sv-slider__footer-action.sv--save.sv--selected::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.0625rem;
  width: 1.0625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2218%22%20viewBox%3D%220%200%2019%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3.9%2C17.4%20C3.7%2C17.4%203.6%2C17.4%203.5%2C17.3%20C3.3%2C17.1%203.2%2C16.8%203.2%2C16.6%20L4.1%2C11.2%20L0.2%2C7.4%20C3.33066907e-16%2C7.2%20-0.1%2C6.9%203.33066907e-16%2C6.6%20C0.1%2C6.3%200.3%2C6.1%200.6%2C6.1%20L6%2C5.3%20L8.4%2C0.4%20C8.7%2C-0.1%209.5%2C-0.1%209.7%2C0.4%20L12.1%2C5.3%20L17.5%2C6.1%20C17.8%2C6.1%2018%2C6.3%2018.1%2C6.6%20C18.2%2C6.9%2018.1%2C7.2%2017.9%2C7.4%20L14%2C11.2%20L14.9%2C16.6%20C14.9%2C16.9%2014.8%2C17.2%2014.6%2C17.3%20C14.4%2C17.5%2014.1%2C17.5%2013.8%2C17.4%20L9%2C14.9%20L4.2%2C17.4%20C4.2%2C17.4%204.1%2C17.4%203.9%2C17.4%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-property-card .sv-slider__footer-action.sv--save span {
  display: none;
}
.sv-property-card .sv-slider__footer-action.sv--save-inline {
  margin: 0;
  padding-left: 0;
  height: 2.5rem;
}
.sv-property-card .sv-slider__footer-action.sv--save-inline button {
  outline: none;
  height: 2.5rem;
  margin: 0;
  padding-left: 1rem;
  padding-right: 1rem;
  line-height: 2.5rem;
  white-space: nowrap;
  color: #fff;
  font-size: inherit;
  font-weight: inherit;
}
.sv-property-card .sv-slider__footer-action:last-child:not(.sv--save-inline) {
  margin-right: 1rem;
}
.sv-details {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.sv-details__content {
  display: flex;
  flex-direction: column;
  margin: 2.5rem 1rem 0;
}
.sv-details__link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.sv-details__link::before, .sv-details__link::after {
  display: none;
}
.sv-details__address1 {
  margin-bottom: 0.25rem;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.125rem;
  line-height: 1.2;
  /* Average */
}
.sv-details__address2 {
  overflow: hidden;
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.5;
  max-height: 3.375rem;
}
.sv-details__size {
  display: none;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1rem;
  line-height: 1.125rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0;
  margin: initial;
}
.sv-details__price {
  position: relative;
  margin-bottom: 0.5rem;
  line-height: 1.5;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv--type-residential .sv-details__price .sv-property-price.sv--show-guide.sv--show-price, .sv--type-new-development .sv-details__price .sv-property-price.sv--show-guide.sv--show-price {
  margin-top: -1.5rem;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-details__features, .sv-details__contacts {
  display: none;
}
.sv-details__footer {
  order: 6;
  display: flex;
  align-items: center;
  padding: 0.375rem 0;
  overflow: hidden;
  margin: 0 1rem;
  height: 2.5rem;
  background-color: #fff;
  border-top: 1px solid #bfbfbf;
}
.sv-details__footer-left {
  flex: 1;
  display: flex;
  overflow: hidden;
}
.sv-details__footer-right {
  display: flex;
}
.sv-details__footer-right .sv-property-attribute:last-of-type {
  margin-right: 0;
}
.sv-details .sv-property-attribute.sv--residential:last-child, .sv-details .sv-property-attribute.sv--rural:last-child, .sv-details .sv-property-attribute.sv--commercial:last-child, .sv-details .sv-property-attribute.sv--size:last-child {
  padding-right: 0.5rem;
}
.sv-details .sv-property-attribute.sv--size, .sv-details .sv-property-attribute.sv--people, .sv-details .sv-property-attribute.sv--grade, .sv-details .sv-property-attribute.sv--bathrooms, .sv-details .sv-property-attribute.sv--bedrooms, .sv-details .sv-property-attribute.sv--receptions {
  margin-left: 0;
}
.sv-details .sv-property-attribute.sv--residential {
  display: none;
}
.sv--type-commercial .sv-details .sv-property-attribute.sv--size, .sv--type-farm .sv-details .sv-property-attribute.sv--size {
  display: none;
}
.sv--type-residential .sv-details .sv-property-attribute.sv--people, .sv--type-new-development .sv-details .sv-property-attribute.sv--people, .sv--type-farm .sv-details .sv-property-attribute.sv--people {
  display: none;
}
.sv--type-residential .sv-details .sv-property-attribute.sv--grade, .sv--type-new-development .sv-details .sv-property-attribute.sv--grade, .sv--type-farm .sv-details .sv-property-attribute.sv--grade {
  display: none;
}
.sv--type-commercial .sv-details .sv-property-attribute.sv--bathrooms {
  display: none;
}
.sv-details .sv-property-attribute.sv--bedrooms {
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv--type-commercial:not(.sv--secondary-type-hotel):not(.sv--secondary-type-healthcare) .sv-details .sv-property-attribute.sv--bedrooms {
  display: none;
}
.sv--type-commercial .sv-details .sv-property-attribute.sv--receptions {
  display: none;
}
.sv-property-card {

  /* stylelint-enable selector-max-specificity */
}
/*
    -- Secondary types
    .-secondary-type-development
    .-secondary-type-industrial
    .-secondary-type-leisure
    .-secondary-type-office
    .-secondary-type-healthcare
    .-secondary-type-hotel
    .-secondary-type-investment
    .-secondary-type-serviced-office
    .-secondary-type-retail
  */
.sv-property-card.sv--type-commercial.sv--secondary-type-industrial .sv-details .sv-property-attribute.sv--size, .sv-property-card.sv--type-commercial.sv--secondary-type-leisure .sv-details .sv-property-attribute.sv--size, .sv-property-card.sv--type-commercial.sv--secondary-type-retail .sv-details .sv-property-attribute.sv--size, .sv-property-card.sv--type-commercial.sv--secondary-type-serviced-office .sv-details .sv-property-attribute.sv--size {
  display: inline-block;
}
.sv-property-card.sv--type-commercial.sv--secondary-type-hotel .sv-details .sv-property-attribute.sv--people, .sv-property-card.sv--type-commercial.sv--secondary-type-hotel .sv-details .sv-property-attribute.sv--grade, .sv-property-card.sv--type-commercial.sv--secondary-type-industrial .sv-details .sv-property-attribute.sv--people, .sv-property-card.sv--type-commercial.sv--secondary-type-industrial .sv-details .sv-property-attribute.sv--grade, .sv-property-card.sv--type-commercial.sv--secondary-type-leisure .sv-details .sv-property-attribute.sv--people, .sv-property-card.sv--type-commercial.sv--secondary-type-leisure .sv-details .sv-property-attribute.sv--grade, .sv-property-card.sv--type-commercial.sv--secondary-type-retail .sv-details .sv-property-attribute.sv--people, .sv-property-card.sv--type-commercial.sv--secondary-type-retail .sv-details .sv-property-attribute.sv--grade {
  display: none;
}
.sv-property-card.sv--type-commercial.sv--secondary-type-offices .sv-details .sv-property-attribute.sv--residential, .sv-property-card.sv--type-commercial.sv--secondary-type-offices .sv-details .sv-property-attribute.sv--rural, .sv-property-card.sv--type-commercial.sv--secondary-type-offices .sv-details .sv-property-attribute.sv--commercial, .sv-property-card.sv--type-commercial.sv--secondary-type-serviced-office .sv-details .sv-property-attribute.sv--residential, .sv-property-card.sv--type-commercial.sv--secondary-type-serviced-office .sv-details .sv-property-attribute.sv--rural, .sv-property-card.sv--type-commercial.sv--secondary-type-serviced-office .sv-details .sv-property-attribute.sv--commercial {
  display: none;
}
.sv-property-card.sv--type-commercial.sv--secondary-type-hotel .sv-details .sv-property-attribute.sv--bedrooms, .sv-property-card.sv--type-commercial.sv--secondary-type-healthcare .sv-details .sv-property-attribute.sv--bedrooms {
  display: inline-block;
}
/* Content hierarchy
   ========================================================================== */
.sv-property-card.sv--type-new-development .sv-details__price, .sv-property-card.sv--type-residential .sv-details__price {
  order: 1;
}
.sv-property-card.sv--type-new-development .sv-details__address1, .sv-property-card.sv--type-residential .sv-details__address1 {
  order: 2;
}
.sv-property-card.sv--type-new-development .sv-details__address2, .sv-property-card.sv--type-residential .sv-details__address2 {
  order: 3;
}
/* Property features icons visibility
   ========================================================================== */
.sv-property-card.sv--type-farm .sv-details__address1 {
  order: 1;
}
.sv-property-card.sv--type-farm .sv-details__address2 {
  order: 2;
}
.sv-property-card.sv--type-farm .sv-details__size {
  order: 3;
}
.sv-property-card.sv--type-farm .sv-details__price {
  order: 4;
}
/* Content spacing
   ========================================================================== */
.sv-property-card.sv--type-residential.sv--search-type-rent .sv-details__price {
  line-height: 1.2;
}
/* stylelint-disable selector-max-specificity */
.sv-property-card.sv--type-commercial .sv-details__address1, .sv-property-card.sv--type-farm .sv-details__address1 {
  font-size: 1.25rem;
  line-height: 1.3;
  max-height: 3.125rem;
}
.sv-property-card.sv--type-commercial .sv-details__size, .sv-property-card.sv--type-farm .sv-details__size {
  display: block;
}
.sv-property-card.sv--type-commercial .sv-details .sv-property-attribute.sv--commercial, .sv-property-card.sv--type-commercial .sv-details .sv-property-attribute.sv--rural, .sv-property-card.sv--type-farm .sv-details .sv-property-attribute.sv--commercial, .sv-property-card.sv--type-farm .sv-details .sv-property-attribute.sv--rural {
  display: inline-block;
  margin-left: 0;
}
/* ==========================================================================
    Modifiers
   ========================================================================== */
.sv-property-card.sv--type-commercial .sv-details__price {
  line-height: 1.1;
}
.sv-property-card.sv--type-farm .sv-details__price {
  line-height: 1;
}
.sv-property-card.sv--type-residential.sv--search-type-rent .sv-details__content, .sv-property-card.sv--type-new-development.sv--search-type-rent .sv-details__content, .sv-property-card.sv--type-commercial .sv-details__content, .sv-property-card.sv--type-farm .sv-details__content {
  margin-top: 1.25rem;
}
/* the rest */
.sv-property-card.sv--type-new-development .sv-link::before {
  background-color: #78828b;
}
.sv-property-card.sv--type-new-development .sv-details__address1 {
  margin: 0 0 0.3125rem;
}
.sv-property-card.sv--type-new-development .sv-details__address2 {
  display: block;
  margin-bottom: auto;
}
.sv-property-card .sv-gallery__viewport {
  height: 11.875rem;
}
/* Parent modifier
 ========================================================================== */
.sv-property-card.sv--parent {
  margin-bottom: 1rem;
  border-top: 0.3125rem solid #a3a4a9;
}
.sv-property-card.sv--parent.sv--type-new-development {
  border-top-color: #7987b5;
}
.sv-property-card.sv--parent.sv--type-farm {
  border-top-color: #6c9173;
}
.sv-property-card.sv--parent .sv-slider, .sv-property-card.sv--parent .sv-details, .sv-property-card.sv--parent .sv-details__content, .sv-property-card.sv--parent .sv-details__footer {
  z-index: 4;
}
.sv-property-card.sv--parent .sv-details__footer {
  width: 100%;
  padding: 0.375rem 1rem;
  margin-left: 0;
  margin-right: 0;
  background-color: #e5e7ed;
  border-width: 0;
}
/* Full width modifier
 ========================================================================== */
.sv-property-card.sv--full-width {
  display: block;
  max-width: none;
  max-width: initial;
  height: auto;
}
.sv-property-card.sv--full-width .sv-slider {
  height: 0;
  padding-bottom: 60%;
}
.sv-property-card.sv--full-width .sv-details {
  flex: none;
}
.sv-property-card.sv--full-width .sv-details__content {
  min-height: 7.1875rem;
}
.sv-property-card.sv--full-width.sv--type-farm .sv-details__content {
  min-height: 8.75rem;
}
.sv-property-card.sv--full-width.sv--type-new-development .sv-details__address2 {
  margin-bottom: 0.75rem;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Rich card - alternative variant

  * Base styles
  * Hover panel
  * Hover state
  * <= sml viewport
  * <= med viewport
  * >= med viewport
  ========================================================================== */
/*
  detailed content
  */
.sv-rich-card.sv--secondary .sv-rich-card__detail {
  background: none;
  text-align: center;
  padding: 0;
}
.sv-rich-card.sv--secondary .sv-card-intro {
  color: #f3f3f3;
  margin-bottom: 1.5rem;
}
.sv-rich-card.sv--secondary .sv-rich-card__bg {
  height: 100%;
}
/* Hover panel
 ========================================================================== */
.sv-rich-card__extra {
  background: rgba(255,223,0, .8);
  color: #313131;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  text-align: left;
  transform: scale(.95);
  transition: opacity ease 200ms, transform 200ms ease;
  opacity: 0;
  z-index: 2;
}
.sv-rich-card__extra .sv-card-title {
  font-weight: 700;
  color: #313131 !important;
  height: auto !important;
  line-height: 1.4;
  max-height: 5.25rem;
}
.sv-rich-card__extra .sv-copy-heading {
  margin: 0 0 1rem;
  font-size: 0.875rem;
}
.sv-rich-card__extra-intro {
  overflow: hidden;
  margin: 0;
}
.sv-rich-card__extra-actions {
  position: absolute;
  margin: 0;
}
.sv-rich-card__extra-actions .sv-col {
  margin-bottom: 1rem;
}
.sv-rich-card__extra-actions .sv-button {
  margin: 0;
  display: block;
}
/* Hover state
 ========================================================================== */
.sv-rich-card.sv--secondary .sv-rich-card__content {
  height: 100%;
}
.sv-rich-card.sv--secondary .sv-rich-card__content, .sv-rich-card.sv--secondary .sv-rich-card__detail {
  opacity: 1;
  transition: opacity 200ms ease-out;
}
.sv-rich-card.sv--secondary:hover .sv-rich-card__content, .sv-rich-card.sv--secondary:hover .sv-rich-card__detail, .sv-rich-card.sv--secondary:focus .sv-rich-card__content, .sv-rich-card.sv--secondary:focus .sv-rich-card__detail {
  opacity: 0;
}
.sv-rich-card.sv--secondary:hover .sv-rich-card__extra, .sv-rich-card.sv--secondary:focus .sv-rich-card__extra {
  transform: scale(1);
  opacity: 1;
  transition: opacity ease 200ms, transform 200ms ease-out;
}
/* <= sml viewport
  Scale sizes upward from here based on viewport width
 ======================================================================== */
/* <= med viewport
  Scale sizes upward from here based on viewport width
 ======================================================================== */
/* >= xlrg viewport
  Stop scaling all sizes - set fixed maximums now
 ========================================================================== */
/* ==========================================================================
  Rich card - alternative variant

  * Base styles
  * <= sml viewport
  * <= med viewport
  * >= med viewport
  ========================================================================== */
.sv-rich-card.sv--tertiary {
  padding: 2rem 1rem;
}
/*
  detailed content
  */
.sv-rich-card.sv--tertiary .sv-rich-card__detail {
  background: none;
  text-align: center;
  padding: 0;
}
.sv-rich-card.sv--tertiary .sv-rich-card__bg {
  height: 100%;
}
.sv-rich-card.sv--tertiary .sv-card-intro {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  color: #bfbfbf;
}
.sv-rich-card.sv--tertiary .sv-card-meta {
  font-size: 0.625rem;
}
.sv-rich-card.sv--tertiary .sv-card-meta.sv--alt {
  color: #fff;
}
.sv-rich-card.sv--tertiary .sv-rich-card__content, .sv-rich-card.sv--tertiary .sv-rich-card__detail {
  opacity: 1;
  transition: opacity 200ms ease-out;
}
/* <= sml viewport
  Scale sizes upward from here based on viewport width
 ======================================================================== */
/* <= med viewport
  Scale sizes upward from here based on viewport width
 ======================================================================== */
/* >= xlrg viewport
  Stop scaling all sizes - set fixed maximums now
 ========================================================================== */
/* ==========================================================================
  Rich card - alternative variant

  * Base styles
  * >= sml viewport
  * >= lrg viewport
  ========================================================================== */
.sv-rich-card.sv--quarternary {
  padding: 55% 0.625rem 0;
}
.sv-rich-card.sv--quarternary .sv-rich-card__bg {
  background: none;
  height: auto;
}
.sv-rich-card.sv--quarternary .sv-rich-card__bg img {
  width: 100%;
}
.sv-rich-card.sv--quarternary .sv-rich-card__detail {
  margin-top: 0;
  padding: 1.25rem 0.5rem;
  height: auto;
}
.sv-rich-card.sv--quarternary .sv-card-title {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  font-size: 1.375rem;
  line-height: 1.5rem;
  height: auto;
  color: #313131;
  max-width: none;
}
.sv-rich-card.sv--quarternary .sv-card-intro {
  font-size: 0.75rem;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 300;
  color: #4c4d50;
  height: auto;
  margin-bottom: 0.375rem;
}
.sv-rich-card.sv--quarternary .sv-cta-link {
  font-size: 0.75rem;
  line-height: 1.7;
}
/* >= 350px custom viewport
 ========================================================================== */
/* >= 510px custom viewport
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Rich card

  * Base styles
  * <= sml viewport
  * <= med viewport
  * >= med viewport
  ========================================================================== */
.sv-rich-card {
  position: relative;
}
.sv-rich-card .sv-card-title {
  color: #fff;
}
.sv-rich-card .sv-card-intro {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
}
.sv-rich-card .sv-card-meta {
  color: #ffdf00;
}
.sv-rich-card__bg {
  background-color: #35384b;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 15.625rem;
  z-index: 1;
  overflow: hidden;
}
/*
  main content
  */
.sv-rich-card__content {
  position: relative;
  z-index: 2;
  text-align: center;
}
/*
  detailed content
  */
.sv-rich-card__detail {
  background: #fff;
  text-align: left;
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}
.sv-rich-card.sv--secondary .sv-rich-card__detail, .sv-rich-card.sv--tertiary .sv-rich-card__detail {
  height: 7.8125rem;
}
.sv-rich-card .sv-cta-link {
  margin-top: auto;
}
.sv-rich-card .sv-card-tags-container {
  margin-top: 0;
}
.sv-rich-card.sv--fixed-height .sv-card-title {
  height: 5rem;
}
.sv-rich-card.sv--fixed-height.sv--secondary .sv-card-tags-container {
  width: 100%;
}
/* <= sml viewport
  Scale sizes upward from here based on viewport width
 ========================================================================== */
/* >= sml viewport
 ========================================================================== */
/* <= med viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Search box

  * Basic styles
  * Active state styles
  ========================================================================== */
.sv-search-box {
  display: none;
}
/* Active state
 ========================================================================== */
/* ==========================================================================
  Search filter

  * Base styles
  ========================================================================== */
.sv-search-filter {
  padding: 1rem 0;
  font-size: 0.75rem;
  color: #4c4d50;
}
.sv-search-filter__content {
  display: none;
}
.sv-search-filter__heading {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
}
.sv-search-filter__option .sv-custom-input.sv--radio, .sv-search-filter__option .sv-custom-input.sv--checkbox {
  margin-bottom: 1rem;
}
/* ==========================================================================
  Search panel

  * Basic styles
  * Active state styles
  ========================================================================== */
.sv-search-panel {
  display: none;
}
/* Active state
 ========================================================================== */
.sv-selection-panel {
  background-color: #f2f2f2;
  position: relative;
  font-size: 1.375rem;
  font-weight: 400;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  line-height: 2.6875rem;
  padding: 1rem;
}
.sv-selection-panel .sv-image-treatment {
  position: absolute;
  left: 0;
  top: 0;
  max-height: 100%;
  max-width: 100%;
}
.sv-selection-panel .sv--flex-column, .sv-selection-panel .sv--flex-row {
  display: flex;
}
.sv-selection-panel .sv--flex-column {
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.sv-selection-panel .sv--flex-row {
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  max-width: none;
}
.sv-selection-panel .sv-contained .sv-row {
  position: relative;
  z-index: 3;
}
.sv-selection-panel .sv--dropdown {
  margin: 0 .6em 0 0;
  padding: 0;
}
.sv-selection-panel .sv--dropdown .sv-select__value, .sv-selection-panel .sv--dropdown select {
  font-weight: 400;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
}
.sv-selection-panel .sv-button {
  margin: 1rem;
}
.sv-selection-panel.sv--alt {
  font-size: 1.5rem;
  line-height: 1.875rem;
  padding: 1rem 0;
}
.sv-selection-panel.sv--alt .sv-selection-panel__content {
  display: flex;
  align-items: center;
  min-height: 12.5rem;
}
.sv-selection-panel.sv--alt label {
  text-align: center;
  color: #fff;
  line-height: 1;
}
.sv-selection-panel.sv--alt .sv-select__value, .sv-selection-panel.sv--alt select {
  color: #ffdf00;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-selection-panel.sv--alt .sv--dropdown {
  margin: 0 0.5rem 0.5rem;
}
.sv-selection-panel.sv--alt .sv-selection-panel__button {
  width: 100%;
}
.sv-selection-panel.sv--alt .sv-button {
  margin: 1rem 0 0;
  width: auto;
}
.sv-selection-panel.sv--alt.sv--breadcrumb-adjustment {
  padding-top: 6rem;
}
.sv-share-price {
  background: #ffe300;
  width: 100%;
  height: 3.4375rem;
  padding: 0 0.9375rem;
}
.sv-share-price__container {
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  height: 100%;
  width: 100%;
  max-width: 78rem;
  margin: 0 auto;
}
.sv-share-price__label, .sv-share-price__value, .sv-share-price__info-cta-narrow, .sv-share-price__info-cta-wide {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 700;
}
.sv-share-price__label {
  color: #404e7f;
}
.sv-share-price__current-value {
  flex: 1 0 65%;
}
.sv-share-price__market-cap, .sv-share-price__last-close, .sv-share-price__info-cta-wide {
  display: none;
}
.sv-share-price__info-cta-narrow, .sv-share-price__info-cta-wide {
  flex: 1 1 35%;
  color: #cd171e;
  text-align: right;
  margin-top: 0.1875rem;
}
.sv-share-price__icon {
  width: 0.9375rem;
  height: 0.9375rem;
  display: inline-block;
  margin-bottom: -0.1875rem;
  background-position: center;
  background-size: cover;
}
.sv-share-price__icon.sv--caret-up {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%230fa400%3B%22%3E%3Cpath%20d%3D%22M1408%201216q0%2026-19%2045t-45%2019h-896q-26%200-45-19t-19-45%2019-45l448-448q19-19%2045-19t45%2019l448%20448q19%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-share-price__icon.sv--caret-right {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23cd171e%3B%22%3E%3Cpath%20d%3D%22M1152%20896q0%2026-19%2045l-448%20448q-19%2019-45%2019t-45-19-19-45v-896q0-26%2019-45t45-19%2045%2019l448%20448q19%2019%2019%2045z%22%2F%3E%3C%2Fsvg%3E");
}
.sv-share-price__icon.sv--caret-down {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23cd171e%3B%22%3E%3Cpath%20d%3D%22M1408%20704q0%2026-19%2045l-448%20448q-19%2019-45%2019t-45-19l-448-448q-19-19-19-45t19-45%2045-19h896q26%200%2045%2019t19%2045z%22%2F%3E%3C%2Fsvg%3E");
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
.sv-share-this-article__title {
  color: #fff;
  display: inline-block;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.5rem;
  line-height: 1.375rem;
  margin: 4rem auto 0;
  text-align: center;
}
.sv-share-this-article__line {
  background-color: #252839;
  box-sizing: border-box;
  height: 1px;
  margin: 2rem auto 0;
  width: 35.625rem;
}
.sv-share-this-article__text {
  height: 7.0625rem;
  color: #fff;
  font-size: 2rem;
  font-weight: 300;
  line-height: 2.375rem;
  margin: 2rem auto 0;
  text-align: center;
  width: 35.625rem;
}
.sv-share-this-article__share {
  display: flex;
  justify-content: space-between;
  margin: 3rem auto 0;
  width: 100%;
  max-width: 25rem;
}
.sv-share-this-article__share-item {
  height: 3.125rem;
  width: 3.125rem;
  border-radius: 0.125rem;
  background-color: #252839;
  text-indent: 100%;
  overflow: hidden;
}
.sv-share-this-article__share-item.sv--email {
}
.sv-share-this-article__share-item.sv--email::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2219%22%20viewBox%3D%220%200%2029%2019%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23ffdf00%22%3E%0D%0A%20%20%20%20%3Cpolygon%20points%3D%2228.49%200%20.14%200%2014.32%2010.05%22%2F%3E%0D%0A%20%20%20%20%3Cpolygon%20points%3D%2214.32%2012.89%200%202.71%200%2018.33%2028.64%2018.33%2028.64%202.71%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--facebook {
}
.sv-share-this-article__share-item.sv--facebook::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1343%2012v264h-157q-86%200-116%2036t-30%20108v189h293l-39%20296h-254v759h-306v-759h-255v-296h255v-218q0-186%20104-288.5t277-102.5q147%200%20228%2012z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--twitter {
}
.sv-share-this-article__share-item.sv--twitter::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1684%20408q-67%2098-162%20167%201%2014%201%2042%200%20130-38%20259.5t-115.5%20248.5-184.5%20210.5-258%20146-323%2054.5q-271%200-496-145%2035%204%2078%204%20225%200%20401-138-105-2-188-64.5t-114-159.5q33%205%2061%205%2043%200%2085-11-112-23-185.5-111.5t-73.5-205.5v-4q68%2038%20146%2041-66-44-105-115t-39-154q0-88%2044-163%20121%20149%20294.5%20238.5t371.5%2099.5q-8-38-8-74%200-134%2094.5-228.5t228.5-94.5q140%200%20236%20102%20109-21%20205-78-37%20115-142%20178%2093-10%20186-50z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--linkedin {
}
.sv-share-this-article__share-item.sv--linkedin::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M477%20625v991h-330v-991h330zm21-306q1%2073-50.5%20122t-135.5%2049h-2q-82%200-132-49t-50-122q0-74%2051.5-122.5t134.5-48.5%20133%2048.5%2051%20122.5zm1166%20729v568h-329v-530q0-105-40.5-164.5t-126.5-59.5q-63%200-105.5%2034.5t-63.5%2085.5q-11%2030-11%2081v553h-329q2-399%202-647t-1-296l-1-48h329v144h-2q20-32%2041-56t56.5-52%2087-43.5%20114.5-15.5q171%200%20275%20113.5t104%20332.5z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--google-plus {
}
.sv-share-this-article__share-item.sv--google-plus::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2043.78%2027.8%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2238.91%2011.47%2038.91%206.6%2035.45%206.6%2035.45%2011.47%2030.58%2011.47%2030.58%2014.94%2035.45%2014.94%2035.45%2019.81%2038.91%2019.81%2038.91%2014.94%2043.78%2014.94%2043.78%2011.47%2038.91%2011.47%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M13.9%2C11.08v5.58h7.49c-.83%2C3.67-3.7%2C5.5-7.49%2C5.5A8.25%2C8.25%2C0%2C0%2C1%2C5.72%2C13.9%2C8.35%2C8.35%2C0%2C0%2C1%2C13.9%2C5.53a7.33%2C7.33%2C0%2C0%2C1%2C5.35%2C2.09l4-4A13.19%2C13.19%2C0%2C0%2C0%2C13.9%2C0a13.9%2C13.9%2C0%2C0%2C0%2C0%2C27.8c6.83%2C0%2C12.11-4.06%2C13.19-11.14a18.38%2C18.38%2C0%2C0%2C0%2C.21-2.77%2C16.29%2C16.29%2C0%2C0%2C0-.24-2.82Z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--pinterest {
}
.sv-share-this-article__share-item.sv--pinterest::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1664%20896q0%20209-103%20385.5t-279.5%20279.5-385.5%20103q-111%200-218-32%2059-93%2078-164%209-34%2054-211%2020%2039%2073%2067.5t114%2028.5q121%200%20216-68.5t147-188.5%2052-270q0-114-59.5-214t-172.5-163-255-63q-105%200-196%2029t-154.5%2077-109%20110.5-67%20129.5-21.5%20134q0%20104%2040%20183t117%20111q30%2012%2038-20%202-7%208-31t8-30q6-23-11-43-51-61-51-151%200-151%20104.5-259.5t273.5-108.5q151%200%20235.5%2082t84.5%20213q0%20170-68.5%20289t-175.5%20119q-61%200-98-43.5t-23-104.5q8-35%2026.5-93.5t30-103%2011.5-75.5q0-50-27-83t-77-33q-62%200-105%2057t-43%20142q0%2073%2025%20122l-99%20418q-17%2070-13%20177-206-91-333-281t-127-423q0-209%20103-385.5t279.5-279.5%20385.5-103%20385.5%20103%20279.5%20279.5%20103%20385.5z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__share-item.sv--weibo {
}
.sv-share-this-article__share-item.sv--weibo::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.125rem;
  width: 1.125rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M675%201284q21-34%2011-69t-45-50q-34-14-73-1t-60%2046q-22%2034-13%2068.5t43%2050.5%2074.5%202.5%2062.5-47.5zm94-121q8-13%203.5-26.5t-17.5-18.5q-14-5-28.5.5t-21.5%2018.5q-17%2031%2013%2045%2014%205%2029-.5t22-18.5zm174%20107q-45%20102-158%20150t-224%2012q-107-34-147.5-126.5t6.5-187.5q47-93%20151.5-139t210.5-19q111%2029%20158.5%20119.5t2.5%20190.5zm312-160q-9-96-89-170t-208.5-109-274.5-21q-223%2023-369.5%20141.5t-132.5%20264.5q9%2096%2089%20170t208.5%20109%20274.5%2021q223-23%20369.5-141.5t132.5-264.5zm308%204q0%2068-37%20139.5t-109%20137-168.5%20117.5-226%2083-270.5%2031-275-33.5-240.5-93-171.5-151-65-199.5q0-115%2069.5-245t197.5-258q169-169%20341.5-236t246.5%207q65%2064%2020%20209-4%2014-1%2020t10%207%2014.5-.5%2013.5-3.5l6-2q139-59%20246-59t153%2061q45%2063%200%20178-2%2013-4.5%2020t4.5%2012.5%2012%207.5%2017%206q57%2018%20103%2047t80%2081.5%2034%20116.5zm-74-624q42%2047%2054.5%20108.5t-6.5%20117.5q-8%2023-29.5%2034t-44.5%204q-23-8-34-29.5t-4-44.5q20-63-24-111t-107-35q-24%205-45-8t-25-37q-5-24%208-44.5t37-25.5q60-13%20119%205.5t101%2065.5zm181-163q87%2096%20112.5%20222.5t-13.5%20241.5q-9%2027-34%2040t-52%204-40-34-5-52q28-82%2010-172t-80-158q-62-69-148-95.5t-173-8.5q-28%206-52-9.5t-30-43.5%209.5-51.5%2043.5-29.5q123-26%20244%2011.5t208%20134.5z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.5625rem, -0.5625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-share-this-article__copy {
  align-items: stretch;
  background-color: #252839;
  border: 1px solid #000;
  border-radius: 0.125rem;
  box-shadow: inset 0 0 0.1875rem 0 rgba(0, 0, 0, .5);
  display: flex;
  height: 3.125rem;
  justify-content: flex-end;
  margin: 1.25rem auto 0;
  width: 25rem;
}
.sv-share-this-article__copy-url {
  color: #e2e3e5;
  display: inline-block;
  font-size: 0.75rem;
  padding: 0 1rem;
  font-weight: 300;
  height: 3rem;
  line-height: 3rem;
  white-space: nowrap;
  overflow: hidden;
  width: 29.375rem;
}
.sv-share-this-article__copy-button {
  border-radius: 0 0.125rem 0.125rem 0;
  background-color: #69769e;
  color: #fff;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 500;
  height: 3rem;
  line-height: 3rem;
  width: 6.25rem;
}
.sv-share-this-article__copy-button > span {
  padding-left: 0.75rem;
  width: 3rem;
}
.sv-share-this-article__copy-button > span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 0.75rem;
  width: 0.75rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1520%201216q0-40-28-68l-208-208q-28-28-68-28-42%200-72%2032%203%203%2019%2018.5t21.5%2021.5%2015%2019%2013%2025.5%203.5%2027.5q0%2040-28%2068t-68%2028q-15%200-27.5-3.5t-25.5-13-19-15-21.5-21.5-18.5-19q-33%2031-33%2073%200%2040%2028%2068l206%20207q27%2027%2068%2027%2040%200%2068-26l147-146q28-28%2028-67zm-703-705q0-40-28-68l-206-207q-28-28-68-28-39%200-68%2027l-147%20146q-28%2028-28%2067%200%2040%2028%2068l208%20208q27%2027%2068%2027%2042%200%2072-31-3-3-19-18.5t-21.5-21.5-15-19-13-25.5-3.5-27.5q0-40%2028-68t68-28q15%200%2027.5%203.5t25.5%2013%2019%2015%2021.5%2021.5%2018.5%2019q33-31%2033-73zm895%20705q0%20120-85%20203l-147%20146q-83%2083-203%2083-121%200-204-85l-206-207q-83-83-83-203%200-123%2088-209l-88-88q-86%2088-208%2088-120%200-204-84l-208-208q-84-84-84-204t85-203l147-146q83-83%20203-83%20121%200%20204%2085l206%20207q83%2083%2083%20203%200%20123-88%20209l88%2088q86-88%20208-88%20120%200%20204%2084l208%20208q84%2084%2084%20204z%22%2F%3E%3C%2Fsvg%3E");
  left: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
/* ==========================================================================
  Social
  ========================================================================== */
.sv-social:before{
  content: '';
  display: table;
}
.sv-social:after{
  content: '';
  display: table;
  clear: both;
}
.sv-social__heading {
  color: #313131;
  font-weight: 500;
  font-size: 0.75rem;
  float: left;
  margin: 0;
  padding: 0;
  line-height: 1.875rem;
  text-transform: uppercase;
}
.sv-social__group {
  float: left;
  list-style: none;
  margin: 0;
  padding: 0.375rem 0 0;
}
.sv-social__item {
  display: inline-block;
  margin: 0 0.3125rem;
  padding: 0;
}
.sv-social__action {
  padding: 0.3125rem;
  height: 1.875rem;
  width: 1.875rem;
}
.sv-social__action.sv--twitter {
}
.sv-social__action.sv--twitter::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23313131%3B%22%3E%3Cpath%20d%3D%22M1684%20408q-67%2098-162%20167%201%2014%201%2042%200%20130-38%20259.5t-115.5%20248.5-184.5%20210.5-258%20146-323%2054.5q-271%200-496-145%2035%204%2078%204%20225%200%20401-138-105-2-188-64.5t-114-159.5q33%205%2061%205%2043%200%2085-11-112-23-185.5-111.5t-73.5-205.5v-4q68%2038%20146%2041-66-44-105-115t-39-154q0-88%2044-163%20121%20149%20294.5%20238.5t371.5%2099.5q-8-38-8-74%200-134%2094.5-228.5t228.5-94.5q140%200%20236%20102%20109-21%20205-78-37%20115-142%20178%2093-10%20186-50z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social__action.sv--facebook {
}
.sv-social__action.sv--facebook::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23313131%3B%22%3E%3Cpath%20d%3D%22M1343%2012v264h-157q-86%200-116%2036t-30%20108v189h293l-39%20296h-254v759h-306v-759h-255v-296h255v-218q0-186%20104-288.5t277-102.5q147%200%20228%2012z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social__action.sv--youtube {
}
.sv-social__action.sv--youtube::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23313131%3B%22%3E%3Cpath%20d%3D%22M1280%20896q0-37-30-54l-512-320q-31-20-65-2-33%2018-33%2056v640q0%2038%2033%2056%2016%208%2031%208%2020%200%2034-10l512-320q30-17%2030-54zm512%200q0%2096-1%20150t-8.5%20136.5-22.5%20147.5q-16%2073-69%20123t-124%2058q-222%2025-671%2025t-671-25q-71-8-124.5-58t-69.5-123q-14-65-21.5-147.5t-8.5-136.5-1-150%201-150%208.5-136.5%2022.5-147.5q16-73%2069-123t124-58q222-25%20671-25t671%2025q71%208%20124.5%2058t69.5%20123q14%2065%2021.5%20147.5t8.5%20136.5%201%20150z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--inverse .sv-social__heading {
  color: #fff;
}
.sv-social.sv--inverse .sv-social__action {
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-social.sv--inverse .sv-social__action.sv--twitter {
}
.sv-social.sv--inverse .sv-social__action.sv--twitter::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1684%20408q-67%2098-162%20167%201%2014%201%2042%200%20130-38%20259.5t-115.5%20248.5-184.5%20210.5-258%20146-323%2054.5q-271%200-496-145%2035%204%2078%204%20225%200%20401-138-105-2-188-64.5t-114-159.5q33%205%2061%205%2043%200%2085-11-112-23-185.5-111.5t-73.5-205.5v-4q68%2038%20146%2041-66-44-105-115t-39-154q0-88%2044-163%20121%20149%20294.5%20238.5t371.5%2099.5q-8-38-8-74%200-134%2094.5-228.5t228.5-94.5q140%200%20236%20102%20109-21%20205-78-37%20115-142%20178%2093-10%20186-50z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--inverse .sv-social__action.sv--facebook {
}
.sv-social.sv--inverse .sv-social__action.sv--facebook::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1343%2012v264h-157q-86%200-116%2036t-30%20108v189h293l-39%20296h-254v759h-306v-759h-255v-296h255v-218q0-186%20104-288.5t277-102.5q147%200%20228%2012z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--inverse .sv-social__action.sv--youtube {
}
.sv-social.sv--inverse .sv-social__action.sv--youtube::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.5625rem;
  width: 1.5625rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1280%20896q0-37-30-54l-512-320q-31-20-65-2-33%2018-33%2056v640q0%2038%2033%2056%2016%208%2031%208%2020%200%2034-10l512-320q30-17%2030-54zm512%200q0%2096-1%20150t-8.5%20136.5-22.5%20147.5q-16%2073-69%20123t-124%2058q-222%2025-671%2025t-671-25q-71-8-124.5-58t-69.5-123q-14-65-21.5-147.5t-8.5-136.5-1-150%201-150%208.5-136.5%2022.5-147.5q16-73%2069-123t124-58q222-25%20671-25t671%2025q71%208%20124.5%2058t69.5%20123q14%2065%2021.5%20147.5t8.5%20136.5%201%20150z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.7813rem, -0.7813rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--block .sv-social__item {
  width: 2.25rem;
  height: 2.25rem;
  margin: 0 1px;
  background-color: #999795;
  border-radius: 0.125rem;
}
.sv-social.sv--block .sv-social__action {
  width: 2.25rem;
  height: 2.25rem;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-social.sv--block .sv-social__action.sv--twitter {
}
.sv-social.sv--block .sv-social__action.sv--twitter::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.25rem;
  width: 1.25rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1684%20408q-67%2098-162%20167%201%2014%201%2042%200%20130-38%20259.5t-115.5%20248.5-184.5%20210.5-258%20146-323%2054.5q-271%200-496-145%2035%204%2078%204%20225%200%20401-138-105-2-188-64.5t-114-159.5q33%205%2061%205%2043%200%2085-11-112-23-185.5-111.5t-73.5-205.5v-4q68%2038%20146%2041-66-44-105-115t-39-154q0-88%2044-163%20121%20149%20294.5%20238.5t371.5%2099.5q-8-38-8-74%200-134%2094.5-228.5t228.5-94.5q140%200%20236%20102%20109-21%20205-78-37%20115-142%20178%2093-10%20186-50z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.625rem, -0.625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--block .sv-social__action.sv--facebook {
}
.sv-social.sv--block .sv-social__action.sv--facebook::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.25rem;
  width: 1.25rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1343%2012v264h-157q-86%200-116%2036t-30%20108v189h293l-39%20296h-254v759h-306v-759h-255v-296h255v-218q0-186%20104-288.5t277-102.5q147%200%20228%2012z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.625rem, -0.625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--block .sv-social__action.sv--youtube {
}
.sv-social.sv--block .sv-social__action.sv--youtube::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.25rem;
  width: 1.25rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1280%20896q0-37-30-54l-512-320q-31-20-65-2-33%2018-33%2056v640q0%2038%2033%2056%2016%208%2031%208%2020%200%2034-10l512-320q30-17%2030-54zm512%200q0%2096-1%20150t-8.5%20136.5-22.5%20147.5q-16%2073-69%20123t-124%2058q-222%2025-671%2025t-671-25q-71-8-124.5-58t-69.5-123q-14-65-21.5-147.5t-8.5-136.5-1-150%201-150%208.5-136.5%2022.5-147.5q16-73%2069-123t124-58q222-25%20671-25t671%2025q71%208%20124.5%2058t69.5%20123q14%2065%2021.5%20147.5t8.5%20136.5%201%20150z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.625rem, -0.625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-social.sv--block .sv-social__action.sv--weibo {
}
.sv-social.sv--block .sv-social__action.sv--weibo::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.25rem;
  width: 1.25rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M675%201284q21-34%2011-69t-45-50q-34-14-73-1t-60%2046q-22%2034-13%2068.5t43%2050.5%2074.5%202.5%2062.5-47.5zm94-121q8-13%203.5-26.5t-17.5-18.5q-14-5-28.5.5t-21.5%2018.5q-17%2031%2013%2045%2014%205%2029-.5t22-18.5zm174%20107q-45%20102-158%20150t-224%2012q-107-34-147.5-126.5t6.5-187.5q47-93%20151.5-139t210.5-19q111%2029%20158.5%20119.5t2.5%20190.5zm312-160q-9-96-89-170t-208.5-109-274.5-21q-223%2023-369.5%20141.5t-132.5%20264.5q9%2096%2089%20170t208.5%20109%20274.5%2021q223-23%20369.5-141.5t132.5-264.5zm308%204q0%2068-37%20139.5t-109%20137-168.5%20117.5-226%2083-270.5%2031-275-33.5-240.5-93-171.5-151-65-199.5q0-115%2069.5-245t197.5-258q169-169%20341.5-236t246.5%207q65%2064%2020%20209-4%2014-1%2020t10%207%2014.5-.5%2013.5-3.5l6-2q139-59%20246-59t153%2061q45%2063%200%20178-2%2013-4.5%2020t4.5%2012.5%2012%207.5%2017%206q57%2018%20103%2047t80%2081.5%2034%20116.5zm-74-624q42%2047%2054.5%20108.5t-6.5%20117.5q-8%2023-29.5%2034t-44.5%204q-23-8-34-29.5t-4-44.5q20-63-24-111t-107-35q-24%205-45-8t-25-37q-5-24%208-44.5t37-25.5q60-13%20119%205.5t101%2065.5zm181-163q87%2096%20112.5%20222.5t-13.5%20241.5q-9%2027-34%2040t-52%204-40-34-5-52q28-82%2010-172t-80-158q-62-69-148-95.5t-173-8.5q-28%206-52-9.5t-30-43.5%209.5-51.5%2043.5-29.5q123-26%20244%2011.5t208%20134.5z%22%2F%3E%3C%2Fsvg%3E");
  left: 50%;
  transform: translate(-0.625rem, -0.625rem);
  /* stylelint-enable at-rule-empty-line-before */
}
/* ==========================================================================
  Tabs panel

  * Base styles
  * Modifiers
  ========================================================================== */
.sv-tabs-panel {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.sv-tab-card {
  border-bottom: 1px solid #c9c9c9;
  padding: 1rem;
}
.sv-tab-card:first-child {
  border-top: 1px solid #c9c9c9;
}
.sv-tab-card:last-child {
  border-bottom: none;
}
.sv-tab-card__intro {
  color: #4c4d50;
  margin: 0;
  overflow: hidden;
  font-size: 0.6875rem;
  line-height: 1.25rem;
  padding: 1rem 0 0;
}
.sv-tab-card__header {
  display: flex;
  align-items: center;
  justify-content: center;
}
.sv-tab-card__title {
  font-size: 0.875rem;
  font-weight: 700;
  color: #252839;
  margin: 0;
  padding-left: 1ch;
  text-transform: uppercase;
}
.sv-tab-card .sv-image {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
}
.sv-tab-card .sv-image img {
  width: 1.875rem;
}
/* Alternative style
 ========================================================================== */
.sv-tabs-panel.sv--alt {
  flex-direction: row;
  width: auto;
  width: initial;
  transform: none;
  margin-top: 2rem;
}
.sv-tabs-panel.sv--alt .sv-tab-card {
  flex: 1;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: -0.125rem;
  border-bottom: none;
}
.sv-tabs-panel.sv--alt .sv-tab-card:first-child {
  border-top: none;
}
.sv-tabs-panel.sv--alt .sv-tab-card__header {
  padding-top: 0;
}
.sv-tabs-panel.sv--alt .sv-tab-card__title {
  color: #464853;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 2.6875rem;
  text-transform: none;
  padding: 0.625rem 0;
  opacity: .6;
  border-right: 0;
}
.sv-tabs-panel.sv--alt .sv-tab-card.sv--active {
  margin-bottom: -1px;
  border-width: 1px 1px 0;
  border-style: solid;
  border-color: #c9c9c9;
  /* TODO Update */
  background-color: #f2f2f2;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-tabs-panel.sv--alt .sv-tab-card.sv--active .sv-tab-card__title {
  opacity: 1;
}
.sv-tabs-panel.sv--alt.sv-spacer {
  margin: 0;
}
.sv-tabs-panel-container.sv--alt {
  padding-top: 2rem;
}
.sv-tabs-panel-container__wrap {
  border-bottom: 1px solid #c9c9c9;
  /* TODO Update */
}
/* Content nav style
 ========================================================================== */
.sv-tabs-panel.sv--content-nav {
  flex-direction: row;
  justify-content: center;
  width: auto;
  width: initial;
  transform: none;
  padding: 0;
  border-width: 1px 0;
  border-style: solid;
  border-color: #c9c9c9;
}
.sv-tabs-panel.sv--content-nav .sv-tab-card {
  flex: 1;
  padding: 0.8125rem 0 0.75rem;
  border-bottom: 0;
}
.sv-tabs-panel.sv--content-nav .sv-tab-card:first-child {
  border-top: none;
}
.sv-tabs-panel.sv--content-nav .sv-tab-card__title {
  font-size: 0.75rem;
  color: #a3a4a9;
  font-weight: 500;
  border-right: 0;
  padding-left: 0;
}
.sv-tabs-panel.sv--content-nav .sv-tab-card.sv--active {
  border-bottom: 0.125rem solid #cd171e;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-tabs-panel.sv--content-nav .sv-tab-card.sv--active .sv-tab-card__title {
  border-right: 0;
  color: #cd171e;
}
.sv-js-tab-content.sv--active {
  display: block;
}
.sv-js-tab-content.sv--inactive {
  display: none;
}
.sv-author-panel {

  min-width: 18.75rem;
}
.sv-author-panel .sv-card.sv--micro {
  border: 0;
  padding: 0.3125rem 0 !important;
  /* override .card.-micro */
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-author-panel .sv-card.sv--expert.sv--micro .sv-card-title {
  height: auto;
}
.sv-author-panel .sv-divider {
  margin: 0;
}
.sv-author-panel .sv-card-tags-container {
  margin: 0;
}
.sv-author-panel__term {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.125rem;
  margin-bottom: 0.3125rem;
}
.sv-author-panel__term.sv--read-time {
  margin-top: 1.875rem;
}
.sv-author-panel__description {
  margin: 0;
}
.sv-author-panel__description.sv--read-time {
  color: #4c4d50;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
/* needs to be imported after content-header as it extends it */
/* ==========================================================================
  Unique selling point

  * Base styles
  * Child differences - based on order of usps
  * >= sml viewport
  * >= sml < med viewport
  * >= med viewport
  * >= lrg viewport
  ========================================================================== */
/* stylelint-disable selector-max-specificity, function-whitespace-after */
.sv-usp {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-bottom: 1.5rem;
}
.sv-usp__imagery {
  position: relative;
  margin-bottom: 1.5rem;
}
.sv-usp__image {
  position: relative;
  background: #fff;
}
.sv-usp__image.sv--primary {
  margin-top: 18.6%;
}
.sv-usp__image.sv--primary::after {
  position: absolute;
  z-index: 10;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-repeat: no-repeat;
}
.sv-usp__image.sv--secondary {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 50%;
}
.sv-usp__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.875rem;
  line-height: 1.25;
  color: #252839;
  margin-bottom: 0.625rem;
}
.sv-usp__horizontal-rule {
  width: 1.5625rem;
  height: 0.1875rem;
  border: none;
  background-color: #252839;
  margin-left: 0;
  margin-bottom: 1.375rem;
  text-align: left;
}
.sv-usp__body {
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #555764;
}
/* Child differences
 ========================================================================== */
.sv-usp:nth-child(1) .sv-usp__image.sv--primary::after {
  background-image: url(/_images/overlays/usp-01.svg);
  background-position: center 75%;
  background-size: 31% 50%;
}
.sv-usp:nth-child(2) .sv-usp__image.sv--primary, .sv-usp:nth-child(3) .sv-usp__image.sv--primary {
  margin-top: 0;
  margin-bottom: 18.6%;
}
.sv-usp:nth-child(2) .sv-usp__image.sv--secondary, .sv-usp:nth-child(3) .sv-usp__image.sv--secondary {
  top: auto;
  bottom: 0;
}
.sv-usp:nth-child(2) .sv-usp__image.sv--secondary {
  left: 0;
  right: auto;
}
.sv-usp:nth-child(3) .sv-usp__image.sv--primary::after {
  background-image: url(/_images/overlays/usp-03.svg);
  background-position: center 30%;
  background-size: 32% 44%;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* organisms a-z */
.sv-s404__content {
  margin: 2.5rem 0;
}
.sv-s404__content-image, .sv-s404__content-text {
  width: 100%;
  padding: 1.25rem;
}
.sv-s404__content-image-container {
  max-width: 18.75rem;
  margin: 0 auto;
}
.sv-s404__content-heading {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  padding-bottom: 0.625rem;
  margin-bottom: 0;
}
.sv-s404__content-message {
  margin-bottom: 1.25rem;
}
.sv-article__abstract {
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 700;
  margin-bottom: 1rem;
}
.sv-article__divider {
  height: 1px;
  margin: 2rem 0;
  border: none;
  background: #e2e3e5;
}
/* ==========================================================================
  Award row

  * Base styles
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-award-row {
  margin-bottom: 1rem;
}
.sv-award-row__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.75rem;
  line-height: 1.14;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Card listings

  * Base styles
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
/* Base styles
 ========================================================================== */
.sv-card-listings {
  margin-bottom: 2rem;
}
.sv-card-listings__title {
  font-size: 1.75rem;
  line-height: 1.3;
}
.sv-card-listings .sv-card.sv--listing-row:last-of-type {
  border-bottom: 1px solid #e2e3e5;
}
/* >= sml viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
.sv-contact-agent-form .sv-custom-input, .sv-contact-agent-form .sv-button {
  transform: translate3d(0, 0, 0);
  /* Fix for render issue within fixed pos modals */
}
.sv-contact-agent-form .sv-button {
  width: 100%;
}
.sv-contact-agent-form .sv--checkbox {
  padding-top: 1.875rem;
  margin-bottom: 2.5rem;
}
.sv-contact-agent-form input, .sv-contact-agent-form select, .sv-contact-agent-form textarea {
  border: none;
  background-color: #e9eaeb;
}
.sv--dark .sv-contact-agent-form input, .sv--dark .sv-contact-agent-form select, .sv--dark .sv-contact-agent-form textarea {
  color: #fff;
  background-color: #252839;
}
.sv-contact-agent-form input:focus, .sv-contact-agent-form select:focus, .sv-contact-agent-form textarea:focus {
  border: 0.125rem solid #69769e;
}
.sv-contact-agent-form__header-container {
  display: none;
}
.sv-contact-agent-form.sv--dark input, .sv-contact-agent-form.sv--dark select, .sv-contact-agent-form.sv--dark textarea {
  color: #fff;
  background-color: #2c2d39;
}
.sv-successful-result__message {
  position: relative;
  width: 70%;
  min-height: 3.125rem;
  padding-left: 4rem;
  font-weight: 400;
}
.sv-account .sv-successful-result__message {
  display: flex;
  align-items: center;
  width: 100%;
}
.sv-successful-result__message::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: block;
  width: 3.125rem;
  background-repeat: no-repeat;
  background-size: 3rem;
  background-position: center;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23ffdf00%22%20d%3D%22M10%2C0%20C4.5%2C0%200%2C4.5%200%2C10%20C0%2C15.5%204.5%2C20%2010%2C20%20C15.5%2C20%2020%2C15.5%2020%2C10%20C20%2C4.5%2015.5%2C0%2010%2C0%20Z%20M14.8%2C7.7%20L9%2C13.7%20C8.7%2C14%208.3%2C14.1%208%2C14.1%20C7.6%2C14.1%207.3%2C14%207%2C13.7%20L5%2C11.7%20C4.4%2C11.1%204.4%2C10.2%205%2C9.6%20C5.4%2C9%206.4%2C9%207%2C9.6%20L8%2C10.5%20L12.7%2C5.6%20C13.3%2C5%2014.2%2C5%2014.8%2C5.6%20C15.4%2C6.2%2015.4%2C7.1%2014.8%2C7.7%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
}
.sv-account .sv-successful-result__message::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%237ed321%22%20d%3D%22M10%2C0%20C4.5%2C0%200%2C4.5%200%2C10%20C0%2C15.5%204.5%2C20%2010%2C20%20C15.5%2C20%2020%2C15.5%2020%2C10%20C20%2C4.5%2015.5%2C0%2010%2C0%20Z%20M14.8%2C7.7%20L9%2C13.7%20C8.7%2C14%208.3%2C14.1%208%2C14.1%20C7.6%2C14.1%207.3%2C14%207%2C13.7%20L5%2C11.7%20C4.4%2C11.1%204.4%2C10.2%205%2C9.6%20C5.4%2C9%206.4%2C9%207%2C9.6%20L8%2C10.5%20L12.7%2C5.6%20C13.3%2C5%2014.2%2C5%2014.8%2C5.6%20C15.4%2C6.2%2015.4%2C7.1%2014.8%2C7.7%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
}
.sv-successful-result .sv-col:first-child {
  margin-bottom: 2rem;
}
.sv-contact-office-form .sv-form-group-controls input, .sv-contact-office-form .sv-form-group-controls select, .sv-contact-office-form .sv-form-group-controls textarea {
  border: none;
  background-color: #e9eaeb;
}
.sv-contact-office-form .sv-form-group-controls input:focus, .sv-contact-office-form .sv-form-group-controls select:focus, .sv-contact-office-form .sv-form-group-controls textarea:focus {
  border: 0.125rem solid #69769e;
}
.sv-contact-office-form .sv-button {
  width: 100%;
}
.sv-contact-office-form .sv--checkbox {
  padding-top: 1.875rem;
  margin-bottom: 2.5rem;
}
/* ==========================================================================
  CTA Block row

  * Base styles
  * >= sml viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-cta-block-row .sv-col:last-child {
  border-bottom: 1px solid #e2e3e5;
}
.sv-cta-block-row .sv-card {
  border-top: 1px solid #e2e3e5;
}
/* >= sml viewport
 ========================================================================== */
/* ==========================================================================
  Expandable list

  * Base styles
  ========================================================================== */
.sv-expandable-list__content {
  margin: 0;
  padding: 0;
  list-style: none;
}
.sv-expandable-list__item {
  padding: 0;
}
.sv-expandable-list__item + .sv-expandable-list__item .sv-expandable-item {
  border-top: none;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-expandable-list.sv--no-border-top .sv-expandable-list__item:first-child .sv-expandable-item {
  border-top: 0;
}
/* ==========================================================================
  Header

  * Smallest viewport (mobile first)
  * >= Medium viewport
  * >= Large viewport
  ========================================================================== */
/* Smallest viewport (mobile first)
 ========================================================================== */
.sv-footer {
  background: #35384b;
  color: #a3a4a9;
}
.sv-footer.sv--cta-links {
  padding-bottom: 4.875rem;
}
.sv-footer a {
  color: #a3a4a9;
  transition: color 150ms ease-out;
}
.sv-footer a:hover {
  color: #fff;
}
.sv-footer__inner {
  padding: 2rem 0;
}
.sv-footer__inner:before{
  content: '';
  display: table;
}
.sv-footer__inner:after{
  content: '';
  display: table;
  clear: both;
}
.sv-footer__header .sv-footer__inner {
  border-bottom: 1px solid #4c4d50;
}
.sv-footer__footer {
  background: #252839;
}
.sv-footer__footer .sv-smallprint {
  margin-bottom: 0;
}
.sv-footer__heading {
  color: #fff;
  font: 400 1rem/1.25 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  margin: 1rem 0 0.75rem;
  padding: 0;
}
.sv-footer__subheading {
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.75;
  margin: 0 0 0.375rem;
  padding: 0;
  text-transform: uppercase;
}
.sv-footer__list {
  font-size: 0.75rem;
  line-height: 1.6;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sv-footer__list-item {
  margin: 0 0 0.625rem;
  padding: 0;
}
.sv-footer__list-item a {
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  overflow: hidden;
}
.sv-footer__info .sv-footer__list {
  line-height: 2;
}
.sv-footer__info .sv-footer__heading {
  margin-top: 0;
}
.sv-footer .sv-social {
  float: right;
}
/* >= Medium viewport
 ========================================================================== */
/* >= Medium viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
.sv-form-submission-thanks {
  margin-bottom: 21.5625rem;
}
/* ==========================================================================
  Gallery

  * Base
  * 'Active' state animations
  ========================================================================== */
.sv-gallery__viewport {
  overflow: hidden;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.sv-gallery__track {
  display: flex;
  pointer-events: none;
  /* So as to force click handler not to drill down to this element */
  transition: transform cubic-bezier(0, .6, .6, 1) .3s;
  height: 100%;
}
.sv-gallery__caption {
  margin: 1rem 0 0;
  padding: 0 7.25rem 0 1rem;
  position: relative;
}
.sv-gallery__caption-copy {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.875rem;
  color: #4c4d50;
  line-height: 1.4;
  transform: translateX(-1.875rem);
  opacity: 0;
  display: block;
  transition: cubic-bezier(0, .6, .6, 1) .3s .4s;
}
.sv-gallery__caption::before {
  content: '';
  display: block;
  width: 0.125rem;
  background: #252839;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: 50%;
  transition: cubic-bezier(0, .6, .6, 1) .3s .3s;
}
.sv-gallery__paging {
  display: block;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.875rem;
  font-style: inherit;
  color: #cd171e;
  text-align: right;
  width: 6.25rem;
  position: absolute;
  right: 0;
  line-height: 1;
  z-index: 1;
  background: #fff;
}
.sv-property-card .sv-gallery__paging {
  display: none;
}
.sv-gallery__paging::before {
  content: '';
  width: 1rem;
  height: 100%;
  position: absolute;
  right: 100%;
  background-image: linear-gradient(90deg, rgba(255,255,255, 0) 0%, #fff 100%);
}
.sv-gallery__nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  height: 100%;
}
.sv-gallery__nav-item {
  background: none;
  bottom: 0;
  display: block;
  padding: 0;
  position: absolute;
  text-indent: -1000%;
  top: 0;
  width: 33%;
}
.sv-gallery__nav-item::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2226%22%20height%3D%2253%22%20viewBox%3D%220%200%2026%2053%22%20style%3D%22fill%3A%23fff%3B%22%3E%0D%0A%20%20%3Cpath%20d%3D%22M23.8%2C52.5%20C23.4%2C52.5%2023%2C52.3%2022.7%2C52%20L0.4%2C27.2%20C-0.1%2C26.6%20-0.1%2C25.8%200.4%2C25.2%20L22.7%2C0.5%20C23.3%2C-0.1%2024.2%2C-0.2%2024.8%2C0.4%20C25.4%2C1%2025.5%2C1.9%2024.9%2C2.5%20L3.5%2C26.2%20L24.9%2C50%20C25.5%2C50.6%2025.4%2C51.6%2024.8%2C52.1%20C24.5%2C52.3%2024.2%2C52.5%2023.8%2C52.5%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E"), url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229%22%20height%3D%2257%22%20viewBox%3D%220%200%2029%2057%22%20style%3D%22fill%3Argba(0%2C0%2C0%2C.85)%3B%22%3E%0D%0A%20%20%3Cdefs%3E%0D%0A%20%20%20%20%3Cfilter%20id%3D%22gallery-arrow-shadow-a%22%20width%3D%22123.7%25%22%20height%3D%22111.4%25%22%20x%3D%22-11.9%25%22%20y%3D%22-5.7%25%22%20filterUnits%3D%22objectBoundingBox%22%3E%0D%0A%20%20%20%20%20%20%3CfeGaussianBlur%20in%3D%22SourceGraphic%22%20stdDeviation%3D%221%22%2F%3E%0D%0A%20%20%20%20%3C%2Ffilter%3E%0D%0A%20%20%3C%2Fdefs%3E%0D%0A%20%20%3Cpath%20d%3D%22M25.8%2C54.5%20C25.4%2C54.5%2025%2C54.3%2024.7%2C54%20L2.4%2C29.2%20C1.9%2C28.6%201.9%2C27.8%202.4%2C27.2%20L24.7%2C2.5%20C25.3%2C1.9%2026.2%2C1.8%2026.8%2C2.4%20C27.4%2C3%2027.5%2C3.9%2026.9%2C4.5%20L5.5%2C28.2%20L26.9%2C52%20C27.5%2C52.6%2027.4%2C53.6%2026.8%2C54.1%20C26.5%2C54.3%2026.2%2C54.5%2025.8%2C54.5%20Z%22%20filter%3D%22url(%23gallery-arrow-shadow-a)%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  background-position: 15% center, 14% calc(50% + 0.125rem);
  background-repeat: no-repeat;
  content: '';
  display: block;
  height: 100%;
}
.sv-gallery__nav-item.sv--prev {
  left: 0;
}
.sv-gallery__nav-item.sv--next {
  right: 0;
}
.sv-gallery__nav-item.sv--next::before {
  transform: scaleX(-1);
}
.sv-gallery__nav-item.sv--inactive::before {
  display: none;
}
.sv-gallery__control-label {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
}
.sv-gallery__slide .sv-image-treatment {
  width: 100%;
  background: #252839;
}
.sv-gallery__slide .sv-image-treatment .sv-busy {
  z-index: 1;
}
.sv-gallery__slide .sv-image-treatment img {
  min-width: auto;
}
.sv-gallery__lightbox {
  position: fixed;
  z-index: 100;
}
.sv-gallery__lightbox, .sv-gallery__lightbox-veil {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.sv-gallery__lightbox-veil {
  position: absolute;
  background: rgba(37,40,57, .8);
}
.sv-gallery__lightbox-veil::before {
  content: '';
  background: center center no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%23fff%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  background-size: 1.375rem;
  width: 1.5625rem;
  height: 1.5625rem;
  position: absolute;
  top: 2rem;
  right: 2rem;
}
/* 'Active' state animations
========================================================================== */
.sv-gallery [aria-hidden="false"] .sv-gallery__caption-copy {
  transform: translateX(0);
  opacity: 1;
}
.sv-gallery [aria-hidden="false"] .sv-gallery__caption::before {
  top: 0;
  bottom: 0;
}
/* 'Lightbox' Overrides
========================================================================== */
.sv-gallery__lightbox {
  padding: 5.5625rem 0 0;
}
.sv-gallery__lightbox .sv-image-treatment {
  max-height: calc(100vh - 11.125rem);
  /* To ensure the caption is shown */
}
.sv-gallery__lightbox .sv-gallery {
  max-height: calc(100vh - 5.5625rem);
  max-width: 78rem;
}
.sv-gallery__lightbox .sv-gallery__paging {
  color: #ffdf00;
  background: transparent;
}
.sv-gallery__lightbox .sv-gallery__paging::before {
  display: none;
}
.sv-gallery__lightbox .sv-gallery__caption-copy {
  color: #fff;
}
.sv-gallery__lightbox .sv-gallery__caption::before {
  background-color: #fff;
}
/* ==========================================================================
  Header

  * Smallest viewport (mobile first)
  * >= Below max viewport
  * >= Small viewport
  * >= Small and < Large viewport
  * >= Large viewport
  ========================================================================== */
/* Smallest viewport (mobile first)
 ========================================================================== */
.sv-header {
  height: 3.125rem;
}
.sv-header.sv--has-breadcrumbs {
  height: 5.6875rem;
}
.sv-header__wrap {
  position: fixed;
  width: 100%;
  z-index: 100;
  margin-top: -1px;
  background: #fff;
  border-bottom: 1px solid #e2e3e5;
}
.sv-header__inner {
  margin-top: -1px;
  max-width: 78rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.sv-header__inner:before{
  content: '';
  display: table;
}
.sv-header__inner:after{
  content: '';
  display: table;
  clear: both;
}
.sv-header__home {
  float: left;
  position: relative;
  z-index: 2;
  bottom: -1px;
}
.sv-header__logo {
  height: 3.125rem;
}
.sv-header__tool-set {
  float: right;
  font-size: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sv-header__tool-set:before{
  content: '';
  display: table;
}
.sv-header__tool-set:after{
  content: '';
  display: table;
  clear: both;
}
.sv-header__tool-item {
  float: left;
  margin: 0;
  padding: 0.625rem 0;
  height: 3.125rem;
}
.sv-header__tool-item.sv--search .sv-header__tool-action span {
  padding-right: 1rem;
}
.sv-header__tool-item.sv--search .sv-header__tool-action span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1rem;
  width: 1rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%234c4d50%3B%22%3E%3Cpath%20d%3D%22M1216%20832q0-185-131.5-316.5t-316.5-131.5-316.5%20131.5-131.5%20316.5%20131.5%20316.5%20316.5%20131.5%20316.5-131.5%20131.5-316.5zm512%20832q0%2052-38%2090t-90%2038q-54%200-90-38l-343-342q-179%20124-399%20124-143%200-273.5-55.5t-225-150-150-225-55.5-273.5%2055.5-273.5%20150-225%20225-150%20273.5-55.5%20273.5%2055.5%20225%20150%20150%20225%2055.5%20273.5q0%20220-124%20399l343%20343q37%2037%2037%2090z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-header__tool-item.sv--login .sv-header__tool-action {
  display: flex;
  justify-content: center;
  flex-direction: column;
  line-height: 1.375rem;
}
.sv-header__tool-item.sv--login .sv-header__tool-action span {
  padding-right: 1rem;
}
.sv-header__tool-item.sv--login .sv-header__tool-action span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1rem;
  width: 1rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%234c4d50%3B%22%3E%3Cpath%20d%3D%22M1600%201405q0%20120-73%20189.5t-194%2069.5h-874q-121%200-194-69.5t-73-189.5q0-53%203.5-103.5t14-109%2026.5-108.5%2043-97.5%2062-81%2085.5-53.5%20111.5-20q9%200%2042%2021.5t74.5%2048%20108%2048%20133.5%2021.5%20133.5-21.5%20108-48%2074.5-48%2042-21.5q61%200%20111.5%2020t85.5%2053.5%2062%2081%2043%2097.5%2026.5%20108.5%2014%20109%203.5%20103.5zm-320-893q0%20159-112.5%20271.5t-271.5%20112.5-271.5-112.5-112.5-271.5%20112.5-271.5%20271.5-112.5%20271.5%20112.5%20112.5%20271.5z%22%2F%3E%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-header__tool-item.sv--search .sv-header__tool-action span, .sv-header__tool-item.sv--menu .sv-header__tool-action span {
  display: inline-block;
  height: 1.375rem;
  line-height: 1.375rem;
}
/* TODO:
        consider using solid before/after blocks for burger (rather than gradient)
        in the case that this requires animatin in future */
.sv-header__tool-item.sv--menu .sv-header__tool-action span {
  width: 1.375rem;
}
.sv-header__tool-item.sv--menu .sv-header__tool-action span::after {
  /* stylelint-disable function-comma-newline-after */
  background-image: linear-gradient(
                to bottom,
                #4c4d50, #4c4d50 10%,
                #fff 10%, #fff 45%,
                #4c4d50 45%, #4c4d50 55%,
                #fff 55%, #fff 90%,
                #4c4d50 90%, #4c4d50 100%
              );
  /* stylelint-enable function-comma-newline-after */
  background-position: 50% 50%;
  background-repeat: no-repeat;
  bottom: 0;
  content: '';
  height: 1.125rem;
  position: absolute;
  right: 0;
  width: 1.375rem;
}
.sv-header__tool-item:first-of-type .sv-header__tool-action {
  border-left: 0;
}
.sv-header__tool-action {
  border-left: 1px solid #e2e3e5;
  height: 1.875rem;
  padding: 0 1rem;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 0.75rem;
  font-weight: 500;
}
.sv-header__tool-action span {
  width: 1rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.sv-header__tool-action.sv-language-selector__container {
  padding: 0.5625rem;
}
/* >= Below max viewport
 ========================================================================== */
/* >= Small viewport
 ========================================================================== */
/* >= Small and < Large viewport
 ========================================================================== */
/* >= Large viewport
 ========================================================================== */
.sv-homepage__usps {
  margin-top: 2.5rem;
}
.sv-homepage__view-articles {
  margin: 1.875rem auto !important;
  text-align: center;
  width: 100%;
}
.sv-login-form {
  padding: 0 2rem 5rem;
}
.sv--is-modal .sv-login-form {
  padding: 0 1.5rem 1rem;
}
.sv-login-form__controls {
  margin-top: 1.875rem;
}
.sv--is-modal .sv-login-form__controls {
  padding: 0;
}
.sv-login-form__controls .sv-button {
  margin: 0;
}
.sv-login-form .sv-button {
  min-width: 10.625rem;
}
.sv-login-form .sv-button.sv--loading {
  padding-left: 3.75rem;
}
.sv-login-form .sv-button.sv--loading span::before {
  content: '';
  animation: sv-spin 2s infinite linear;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%2378828b%3B%22%3E%3Cpath%20d%3D%22M526%201394q0%2053-37.5%2090.5t-90.5%2037.5q-52%200-90-38t-38-90q0-53%2037.5-90.5t90.5-37.5%2090.5%2037.5%2037.5%2090.5zm498%20206q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-704-704q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm1202%20498q0%2052-38%2090t-90%2038q-53%200-90.5-37.5t-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-964-996q0%2066-47%20113t-113%2047-113-47-47-113%2047-113%20113-47%20113%2047%2047%20113zm1170%20498q0%2053-37.5%2090.5t-90.5%2037.5-90.5-37.5-37.5-90.5%2037.5-90.5%2090.5-37.5%2090.5%2037.5%2037.5%2090.5zm-640-704q0%2080-56%20136t-136%2056-136-56-56-136%2056-136%20136-56%20136%2056%2056%20136zm530%20206q0%2093-66%20158.5t-158%2065.5q-93%200-158.5-65.5t-65.5-158.5q0-92%2065.5-158t158.5-66q92%200%20158%2066t66%20158z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  position: absolute;
  left: 1.875rem;
  top: 0.9375rem;
}
.sv-login-form__error {
  margin: 0;
  padding: 0.9375rem;
  color: #cd171e;
  border: 0.125rem solid #cd171e;
  clear: both !important;
  position: relative;
}
.sv-login-form__error > p {
  margin: 0;
}
.sv-login-form__error.sv--hidden {
  display: none;
}
.sv-login-form__error.sv--success {
  border: 0;
  color: #000;
  font-weight: 500;
  padding-left: 2.5rem;
}
.sv-login-form__error.sv--success::before {
  content: '';
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%237ed321%22%20d%3D%22M10%2C0%20C4.5%2C0%200%2C4.5%200%2C10%20C0%2C15.5%204.5%2C20%2010%2C20%20C15.5%2C20%2020%2C15.5%2020%2C10%20C20%2C4.5%2015.5%2C0%2010%2C0%20Z%20M14.8%2C7.7%20L9%2C13.7%20C8.7%2C14%208.3%2C14.1%208%2C14.1%20C7.6%2C14.1%207.3%2C14%207%2C13.7%20L5%2C11.7%20C4.4%2C11.1%204.4%2C10.2%205%2C9.6%20C5.4%2C9%206.4%2C9%207%2C9.6%20L8%2C10.5%20L12.7%2C5.6%20C13.3%2C5%2014.2%2C5%2014.8%2C5.6%20C15.4%2C6.2%2015.4%2C7.1%2014.8%2C7.7%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.875rem;
  height: 1.875rem;
  display: block;
}
.sv-market-appraisal-form .sv-form-group-header {
  margin-top: 0;
  margin-bottom: 2rem;
}
.sv-market-appraisal-form .sv-form-group-controls {
  margin-top: 0.625rem;
}
.sv-market-appraisal-form .sv-form-group-controls input, .sv-market-appraisal-form .sv-form-group-controls select, .sv-market-appraisal-form .sv-form-group-controls textarea {
  border: none;
  background-color: #e9eaeb;
}
.sv-market-appraisal-form .sv-form-group-controls input:focus, .sv-market-appraisal-form .sv-form-group-controls select:focus, .sv-market-appraisal-form .sv-form-group-controls textarea:focus {
  border: 0.125rem solid #69769e;
}
.sv-market-appraisal-form .sv--radio {
  padding-top: 0;
  margin-bottom: 1rem;
}
.sv-market-appraisal-form .sv-button {
  width: 100%;
}
.sv-market-appraisal-form .sv--checkbox {
  padding-top: 0.625rem;
  margin-bottom: 2.8rem;
}
.sv-market-appraisal {
  margin: 2rem 0 0;
}
.sv-market-property .sv-featured-content {
  margin: 1rem 0;
}
.sv-market-property .sv-featured-card {
  background: #fff;
}
/* ==========================================================================
  Micro article list

  * Base styles
  ========================================================================== */
/* Base styles
 ========================================================================== */
.sv-micro-article-list__title {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.sv-micro-article-list .sv-card.sv--micro {
  padding-top: 1.25rem;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-micro-article-list .sv-card.sv--micro:last-of-type {
  border-bottom: 1px solid #e2e3e5;
}
/* ==========================================================================
  Micro contact list

  * Base styles
  * >= sml viewport
  * >= lrg viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-micro-contact-list__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.5625rem;
  margin-bottom: 0;
}
.sv-micro-contact-list__content + .sv-micro-contact-list__button {
  margin-top: 1rem;
}
/* Hide Primary action button */
.sv-micro-contact-list__button .sv-button:not(.sv--secondary):not(.sv--tertiary) {
  display: none;
}
.sv-micro-contact-list .sv-card.sv--micro.sv--expert {
  padding-top: 1.25rem;
  /* stylelint-enable selector-max-specificity */
}
/* stylelint-disable selector-max-specificity */
.sv-micro-contact-list .sv-card.sv--micro.sv--expert:first-of-type {
  border-top: none;
  padding-top: 1.5625rem;
}
/* >= sml viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Nav

  * Smallest viewport (mobile first)
  * >= Small viewport
  * >= Large viewport
  ========================================================================== */
/* Smallest viewport (mobile first)
 ========================================================================== */
/* ==========================================================================
  Sub nav

  * Base styles
  * >= Medium viewport
  * >= Large viewport
  * >= Custom viewport
  ========================================================================== */
/* Base styles
 ========================================================================== */
/* Sub nav panel
   ----------------------- */
.sv-sub-nav {
  background: #fff;
  padding: 1rem;
  position: absolute;
  top: 4.125rem;
  z-index: 2;
  height: calc(100vh - 4.125rem);
}
/* Promo
   ----------------------- */
.sv-sub-nav__promo {
  overflow: hidden;
}
.sv-sub-nav__promo-header {
  position: relative;
  margin: 0;
  padding: 2rem;
  padding-bottom: 0;
}
.sv-sub-nav__promo-content {
  padding: 2rem;
}
.sv-sub-nav__promo-image {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.sv-sub-nav__promo-date {
  color: #fff;
  line-height: 2.3;
  text-transform: uppercase;
  font-size: 0.6875rem;
  font-weight: 700;
  float: right;
}
.sv-sub-nav__promo-title {
  overflow: auto;
  margin-top: 0;
  padding-top: 0;
  /* stylelint-enable selector-pseudo-element-no-unknown */
  min-height: 13.75rem;
  position: relative;
  z-index: 1;
  margin: 0;
  color: #fff;
  font: 2.1875rem/1.5 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
}
/* stylelint-disable selector-pseudo-element-no-unknown */
.sv-sub-nav__promo-title::after{
  content: '';
  margin: 2rem 0;
  width: 3.125rem;
  height: 0.125rem;
  border: 1px solid;
  display: block;
}
.sv-sub-nav__promo-copy {
  font-size: 0.75rem;
  margin: 2rem 0;
}
/* Section blocks
   ----------------------- */
.sv-sub-nav .sv-card.sv--cta-block {
  border-bottom: 1px solid #e2e3e5;
  margin: 0 0 2rem;
}
.sv-sub-nav .sv-card.sv--cta-block .sv-card__content {
  padding: 0 0 2rem;
}
.sv-sub-nav .sv-card.sv--cta-block .sv-card-title {
  font: 2.1875rem/1.2 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  margin: 0 0 1rem;
}
.sv-sub-nav .sv-card.sv--cta-block .sv-card-intro {
  margin-bottom: 0.75rem;
  margin-right: 0;
}
/* Link tree
   ----------------------- */
.sv-sub-nav__link-tree {
  display: inline-block;
}
.sv-sub-nav__link-tree > ul {
  list-style-type: none;
  margin-bottom: 2rem;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  width: 100%;
}
.sv-sub-nav__link-tree > ul > * {
  padding: 0;
  margin-bottom: 1rem;
  font-weight: 500;
  font-size: 0.75rem;
}
.sv-sub-nav__link-tree > ul > *:last-child {
  margin-bottom: 0;
}
.sv-sub-nav__link-tree > ul > * a {
  color: #252839;
}
/* <= Lrg viewport
 ========================================================================== */
/* >= Large viewport
 ========================================================================== */
/* >= Custom viewport
 ========================================================================== */
.sv-nav {
  background: #fff;
  left: 100%;
  height: 100vh;
  overflow: hidden;
  position: fixed;
  top: 0;
  transition: transform 200ms linear;
  width: 100%;
  z-index: 200;
}
.sv-nav.sv-nav--outer.sv-js-toggled {
  transform: translateX(-100%);
  bottom: 0;
}
.sv-nav__lead {
  border-bottom: 1px solid #e2e3e5;
  height: 3.125rem;
  position: absolute;
  background-color: #fff;
  z-index: 1;
  width: 100%;
}
.sv-nav__lead:before{
  content: '';
  display: table;
}
.sv-nav__lead:after{
  content: '';
  display: table;
  clear: both;
}
.sv-nav__close {
  border-left: 1px solid #e2e3e5;
  float: right;
  font-size: 0.5625rem;
  line-height: 1.125rem;
  margin: 0.625rem 0;
  padding: 0.375rem 1rem;
  text-transform: uppercase;
}
.sv-nav__close span {
  /* stylelint-disable at-rule-empty-line-before */
  padding-right: 1.75rem;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-nav__close span::after{
  /* stylelint-disable at-rule-empty-line-before */
  background-size: contain;
  height: 1.25rem;
  width: 1.25rem;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%234c4d50%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  right: 0;
  /* stylelint-enable at-rule-empty-line-before */
}
.sv-nav__heading {
  font: 400 0.6875rem/1.125rem 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  left: 0;
  margin: 0;
  padding-left: 1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.sv-nav__breadcrumb {
  display: none;
}
.sv-nav__items {
  min-width: 20rem;
  position: relative;
  list-style: none;
  margin: 0;
  padding: 3.125rem 0 0;
}
.sv-nav__item {
  border-bottom: 0.3125rem solid transparent;
  margin: 0;
  padding: 0;
}
.sv-nav__item::after {
  background-image: linear-gradient(
          to right,
          rgba(226,227,229, .1) 0%,
          rgba(226,227,229, 1) 50%,
          rgba(226,227,229, .1) 100%
        );
  content: '';
  display: block;
  margin: 0 auto;
  max-width: 20rem;
  height: 1px;
}
.sv-nav__item:last-child::after {
  content: none;
}
.sv-nav__label {
  color: #252839;
  display: block;
  font-weight: 500;
  font-size: 1.25rem;
  letter-spacing: -.25px;
  line-height: 1.3;
  margin: 0 0 -0.3125rem;
  padding: 1.375rem;
  text-align: center;
  text-transform: uppercase;
}
.sv-nav .sv--active .sv-nav__label {
  color: #cd171e;
}
/* >= Small viewport
 ========================================================================== */
/* >= Large viewport
 ========================================================================== */
/* ==========================================================================
  Nav panel

  * Basic styles
  * Active state styles
  ========================================================================== */
.sv-nav-panel__header {
  display: none;
}
/* Active state
 ========================================================================== */
.sv-newsletter-signup {
  /* stylelint-enable selector-max-specificity */
}
.sv-newsletter-signup__label h2 {
  color: #ffdf00;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.25rem;
  line-height: 1.625rem;
  margin-bottom: 0;
  max-width: 90%;
}
.sv-newsletter-signup__label {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: -1.25rem;
  cursor: pointer;
}
.sv-newsletter-signup__label::after {
  content: '';
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23ffdf00%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
  background-size: cover;
  position: absolute;
  right: 0;
  bottom: 0.3125rem;
  width: 1.1875rem;
  height: 1rem;
}
.sv-newsletter-signup__form-container {
  display: none;
}
.sv-newsletter-signup .sv-custom-input input {
  color: #fff;
  background: #535565;
  border: 0;
}
.sv-newsletter-signup .sv-custom-input input::-webkit-input-placeholder {
  color: #fff;
}
.sv-newsletter-signup .sv-custom-input input:-ms-input-placeholder {
  color: #fff;
}
.sv-newsletter-signup .sv-custom-input input::placeholder {
  color: #fff;
}
.sv-newsletter-signup input, .sv-newsletter-signup button {
  height: 3.125rem;
  min-height: 0;
}
.sv-newsletter-signup button {
  width: 100%;
  margin: 0;
}
.sv-newsletter-signup .sv-custom-input.sv-input-error::after, .sv-newsletter-signup .sv-custom-input.sv-form-field-valid::after {
  top: 0.9375rem;
}
.sv-newsletter-signup .sv-custom-input input:focus {
  background: #fff;
  color: #252839;
}
.sv-newsletter-signup .sv-newsletter-signup__success, .sv-newsletter-signup .sv-newsletter-signup__failure {
  display: none;
  position: relative;
}
.sv-newsletter-signup .sv-newsletter-signup__success h2, .sv-newsletter-signup .sv-newsletter-signup__failure h2 {
  padding: 0.4375rem 0 0 4.375rem;
  margin: 0;
  color: #fff;
}
.sv-newsletter-signup .sv-newsletter-signup__success::before, .sv-newsletter-signup .sv-newsletter-signup__failure::before {
  content: '';
  width: 2.9375rem;
  height: 2.9375rem;
  display: block;
  position: absolute;
}
.sv-newsletter-signup.sv-signup-visible .sv-newsletter-signup__label {
  margin-bottom: 0;
}
.sv-newsletter-signup.sv-signup-visible .sv-newsletter-signup__label h2 {
  margin-bottom: 0.9375rem;
}
.sv-newsletter-signup.sv-signup-visible .sv-newsletter-signup__label::after {
  display: none;
}
.sv-newsletter-signup.sv-signup-visible .sv-newsletter-signup__form-container {
  display: block;
}
.sv-newsletter-signup.sv-signup-result .sv-newsletter-signup__container {
  display: none !important;
}
.sv-newsletter-signup.sv-signup-success .sv-newsletter-signup__success {
  display: block;
}
.sv-newsletter-signup.sv-signup-success .sv-newsletter-signup__success::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23ffdf00%22%20d%3D%22M10%2C0%20C4.5%2C0%200%2C4.5%200%2C10%20C0%2C15.5%204.5%2C20%2010%2C20%20C15.5%2C20%2020%2C15.5%2020%2C10%20C20%2C4.5%2015.5%2C0%2010%2C0%20Z%20M14.8%2C7.7%20L9%2C13.7%20C8.7%2C14%208.3%2C14.1%208%2C14.1%20C7.6%2C14.1%207.3%2C14%207%2C13.7%20L5%2C11.7%20C4.4%2C11.1%204.4%2C10.2%205%2C9.6%20C5.4%2C9%206.4%2C9%207%2C9.6%20L8%2C10.5%20L12.7%2C5.6%20C13.3%2C5%2014.2%2C5%2014.8%2C5.6%20C15.4%2C6.2%2015.4%2C7.1%2014.8%2C7.7%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
}
.sv-newsletter-signup.sv-signup-failure .sv-newsletter-signup__failure {
  display: block;
}
.sv-newsletter-signup.sv-signup-failure .sv-newsletter-signup__failure::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2219%22%20viewBox%3D%220%200%2019%2019%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23ffdf00%22%20d%3D%22M9.5%2C19%20C4.3%2C19%200%2C14.7%200%2C9.5%20C0%2C4.3%204.3%2C0%209.5%2C0%20C14.7%2C0%2019%2C4.3%2019%2C9.5%20C19%2C14.7%2014.7%2C19%209.5%2C19%20Z%20M8.9%2C11.9%20L10.2%2C11.9%20C10.2%2C11.5%2010.2%2C11.1%2010.2%2C10.7%20C10.2%2C10.3%2010.3%2C9.8%2010.3%2C9.4%20C10.3%2C9%2010.4%2C8.6%2010.4%2C8.3%20C10.4%2C8%2010.4%2C7.7%2010.4%2C7.5%20C10.5%2C7.1%2010.5%2C6.8%2010.5%2C6.4%20C10.5%2C6%2010.6%2C5.6%2010.6%2C5.2%20C10.6%2C4.9%2010.5%2C4.6%2010.4%2C4.4%20C10.2%2C4.2%209.9%2C4%209.5%2C4%20C9.2%2C4%208.9%2C4.2%208.7%2C4.4%20C8.5%2C4.6%208.4%2C4.9%208.4%2C5.2%20C8.4%2C5.6%208.4%2C6%208.5%2C6.4%20C8.6%2C6.8%208.6%2C7.1%208.6%2C7.5%20C8.6%2C7.7%208.6%2C7.9%208.7%2C8.3%20C8.7%2C8.6%208.8%2C9%208.8%2C9.4%20C8.8%2C9.8%208.8%2C10.2%208.9%2C10.7%20C8.9%2C11.1%208.9%2C11.5%208.9%2C11.9%20Z%20M8.3%2C14.2%20C8.3%2C14.6%208.4%2C14.9%208.6%2C15.1%20C8.8%2C15.3%209.1%2C15.4%209.4%2C15.4%20C9.8%2C15.4%2010.1%2C15.3%2010.3%2C15.1%20C10.5%2C14.9%2010.6%2C14.6%2010.6%2C14.2%20C10.6%2C13.8%2010.5%2C13.5%2010.3%2C13.3%20C10.1%2C13.1%209.9%2C13%209.5%2C13%20C9.1%2C13%208.9%2C13.1%208.6%2C13.3%20C8.4%2C13.5%208.3%2C13.8%208.3%2C14.2%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
}
/* stylelint-disable selector-max-specificity */
.sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input .sv-form-error {
  background: #cd171e;
  color: #fff;
  position: relative;
  left: auto !important;
}
.sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input .sv-form-error::before {
  left: 50%;
  width: 0.5625rem;
  height: 0.5625rem;
  border-left: 0.125rem solid #cd171e;
  border-bottom: 0.125rem solid #cd171e;
  background: #cd171e;
  top: -0.3125rem;
  transform: rotate(135deg);
}
/* ==========================================================================
  Profile header

  * Base styles
  * <= sml viewport
  * >= sml viewport
  * >= lrg viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-profile-header__wrap {
  position: relative;
  overflow: hidden;
}
.sv-profile-header__content {
  position: relative;
  z-index: 1;
  height: 9.6875rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.sv-profile-header__content.sv--light {
  color: #fff;
}
.sv-profile-header__title {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 2rem;
  margin: 0;
}
.sv-profile-header__subtitle {
  color: #ffdf00;
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: 500;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.sv-profile-header__intro {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.75rem;
}
.sv-profile-header__intro.sv--no-subtitle {
  font-size: 1rem;
  margin-top: 0.3125rem;
  text-align: center;
}
.sv-profile-header__intro.sv--no-subtitle .sv-profile-header__location {
  padding-left: 0;
}
.sv-profile-header__intro.sv--no-subtitle .sv-profile-header__location::before {
  content: none;
}
.sv-profile-header__intro.sv--no-subtitle .sv-profile-header__expertise {
  display: block;
}
.sv-profile-header__expertise {
  display: none;
}
.sv-profile-header__location {
  position: relative;
  display: inline-block;
  padding-left: 0.9375rem;
}
.sv-profile-header__location::before {
  z-index: 1;
  content: '\2013';
  width: 0.625rem;
  height: 0.625rem;
  position: absolute;
  left: 0;
}
.sv-profile-header .sv-image-treatment {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
}
.sv-profile-header.sv--has-image .sv-profile-header__title {
  text-shadow: 0 0 0.9375rem rgba(0, 0, 0, .81);
}
.sv-profile-header.sv--has-image .sv-profile-header__content {
  height: 13.125rem;
}
/* >= sml viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
/* ==========================================================================
  Profile intro

  * Base styles
  * >= sml viewport
  * >= lrg viewport
  ========================================================================== */
/* Base Styles
 ========================================================================== */
.sv-profile-intro {
  margin-bottom: 0.625rem;
}
.sv-profile-intro__title {
  margin-bottom: 0;
  font-size: 1.375rem;
  font-weight: 300;
  line-height: 1.875rem;
}
.sv-profile-intro__intro {
  margin-top: 0.625rem;
  margin-bottom: 0;
}
.sv-profile-intro.sv--has-image .sv-profile-intro__title {
  margin-top: 1.5rem;
}
/* >= sml viewport
 ========================================================================== */
/* >= lrg viewport
 ========================================================================== */
.sv-services-list-preview {
  background: #f2f2f2;
  padding: 2rem 0;
}
.sv-services-list-preview__title {
  font-size: 2rem;
  line-height: 1.333;
  margin: 0 auto 4rem;
  text-align: center;
}
.sv--has-intro .sv-services-list-preview__title {
  margin-bottom: 2rem;
}
.sv-services-list-preview__intro {
  color: #4c4d50;
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0 auto 2rem;
  text-align: center;
}
.sv-services-list-preview__view-more {
  text-align: center;
  margin: 1rem auto 0;
}
.sv-services-list-preview__view-more .sv-button {
  margin: 0;
}
/* ==========================================================================
  Unique selling points

  * Base styles
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
.sv-usps {
  max-width: 75rem;
}
.sv-usps__title {
  text-align: center;
  font-size: 1.75rem;
  line-height: 1.3;
  max-width: 28.125rem;
  margin: 0 auto 2rem;
}
.sv-carousel {
  overflow: hidden;
  position: relative;
  padding-bottom: 1.25rem;
}
.sv-carousel__slide {
  opacity: 1;
  padding-right: 0.625rem;
}
.sv-carousel__slide.sv--inactive {
  opacity: .2;
  transition: cubic-bezier(0, .6, .6, 1) .3s;
}
.sv-carousel__slide > * {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.sv-carousel__track {
  display: flex;
}
.sv-carousel__track.sv--transition {
  transition: transform ease .5s 0s;
}
.sv-carousel__track.sv-contained {
  margin: 0 2.1875rem !important;
  padding: 0 !important;
}
.sv-carousel__nav {
  background: #ffdf00;
  display: block;
  position: absolute;
  z-index: 1;
  cursor: pointer;
  text-indent: -624.9375rem;
  padding: 0;
  top: 15%;
  overflow: hidden;
  width: 1.5625rem !important;
  /* button style override */
  height: 3.125rem;
  box-sizing: content-box;
  padding-right: 0.625rem;
}
.sv-carousel__nav::before {
  content: '';
  background: center center no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2010.9%2020.9%22%20style%3D%22enable-background%3Anew%200%200%2010.9%2020.9%3B%22%20xml%3Aspace%3D%22preserve%22%20height%3D%22100%25%22%20width%3D%22100%25%22%3E%0D%0A%09%20%3Cg%20transform%3D%22translate(-1427.000000%2C%20-4692.000000)%22%3E%0D%0A%20%09%09%3Cg%20id%3D%22Recommended-Articles-Slider%22%20transform%3D%22translate(2.000000%2C%20283.000000)%22%3E%0D%0A%20%09%09%09%3Cpath%20id%3D%22Arrow%22%20fill%3D%22%23252839%22%20d%3D%22M1425.4%2C4427.5c-0.5%2C0.6-0.5%2C1.5%2C0.1%2C2c0.6%2C0.5%2C1.5%2C0.5%2C2-0.1l8-8.9c0.5-0.5%2C0.5-1.4%2C0-1.9%0D%0A%20%09%09%09%09l-8-9.1c-0.5-0.6-1.4-0.7-2-0.1c-0.6%2C0.5-0.7%2C1.4-0.1%2C2l7.2%2C8.2L1425.4%2C4427.5z%22%2F%3E%0D%0A%20%09%09%3C%2Fg%3E%0D%0A%20%09%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
  background-size: 1.5625rem 1.5625rem;
  display: block;
  width: 100%;
  height: 100%;
}
.sv-carousel__nav.sv--next {
  right: 0;
}
.sv-carousel__nav.sv--prev {
  left: 0;
  transform: rotate(180deg);
}
.sv-carousel__nav.sv--inactive {
  opacity: .1;
  background: #999795;
}
.sv-carousel--static-view {
  padding: 0;
}
.sv-carousel--static-view .sv-carousel__track {
  display: flex;
}
.sv-carousel--static-view .sv-carousel__nav {
  opacity: 0;
}
.sv-carousel--static-view .sv-carousel__slide {
  margin-bottom: 1rem;
  box-sizing: border-box;
  min-width: none;
  opacity: 1;
}
.sv-carousel .sv-property-card {
  margin: 0 auto;
}
.sv-tabbed-slider .sv-tabs-panel {
  margin-bottom: 0 !important;
}
.sv-tabbed-slider .sv-tabs-panel .sv-tab-card {
  border-bottom: 0;
  margin-left: 0.875rem;
  padding: 0.1875rem 0.3125rem;
}
.sv-tabbed-slider .sv-tabs-panel .sv-tab-card:first-child {
  border-top: 0;
  margin-left: 0;
}
.sv-tabbed-slider .sv-tabs-panel .sv-tab-card.sv--active {
  border-bottom: 0.125rem solid #cd171e;
}
.sv-tabbed-slider .sv-tabs-panel .sv-tab-card__title {
  color: #999795;
  font-weight: 500;
  font-size: 0.8125rem;
  padding-left: 0;
}
/* stylelint-disable-next-line selector-max-specificity */
.sv-tabbed-slider .sv-tabs-panel .sv-tab-card.sv--active .sv-tab-card__title {
  color: #cd171e;
}
.sv-tabbed-slider .sv-section-header .sv-button.sv--tertiary {
  margin-bottom: 0;
}
/* pages a-z */
/* ==========================================================================
  Maintenance

  * Base styles
  * >= sml viewport
  * >= med viewport
  ========================================================================== */
.sv-maintenance {
  padding-top: 4rem;
  text-align: center;
}
.sv-maintenance__logo-link {
  display: block;
  width: 6.25rem;
  height: 6.25rem;
  margin: 0 auto 2rem;
}
.sv-maintenance__heading {
  font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
  font-weight: 400;
  font-size: 1.625rem;
  line-height: 1.4;
  color: #4c4d50;
  margin-bottom: 1.75rem;
}
.sv-maintenance__content {
  max-width: 28.125rem;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0 auto 4rem;
}
.sv-maintenance__time {
  font-weight: 500;
  color: #cd171e;
}
/* >= sml viewport
 ========================================================================== */
/* < med viewport
 ========================================================================== */
/* >= med viewport
 ========================================================================== */
/* ==========================================================================
  Search results

  * Base styles
  ========================================================================== */
.sv-search-results__input .sv-custom-input {
  margin-bottom: 0;
}
.sv-search-results .sv-card__primary-ctas .sv-button:last-child {
  margin-bottom: 0;
}
.sv-search-results .sv-card.sv--expert .sv-card-address {
  font-weight: 500;
  margin-bottom: 0.75rem;
}
.sv-search-results .sv-card.sv--expert .sv-card__misc {
  margin-bottom: 0.75rem;
}
/* stylelint-disable selector-max-specificity */
/* stylelint-enable selector-max-specificity */
/* vendors */
/*!
 * Generated with CSS Flag Sprite generator (https://www.flag-sprites.com/)
 */
.sv-flag::before {
  content: '';
  width: 32px;
  height: 32px;
  background-repeat: no-repeat;
  display: inline-block;
  background-image: url('https://assets.savills.com/qa/WebAssets/GlobalPropertySearch/static/flags/sprite.png');
}
.sv-flag.sv--mm::before {
  background-position: -384px -256px;
}
.sv-flag.sv--bf::before {
  background-position: -128px -32px;
}
.sv-flag.sv--ve::before {
  background-position: -128px -448px;
}
.sv-flag.sv--ee::before {
  background-position: -352px -96px;
}
.sv-flag.sv--jp::before {
  background-position: -384px -192px;
}
.sv-flag.sv--bl::before {
  background-position: -288px -32px;
}
.sv-flag.sv--mq::before {
  background-position: 0 -288px;
}
.sv-flag.sv--tm::before {
  background-position: -160px -416px;
}
.sv-flag.sv--sm::before {
  background-position: -128px -384px;
}
.sv-flag.sv--be::before {
  background-position: -96px -32px;
}
.sv-flag.sv--lr::before {
  background-position: -416px -224px;
}
.sv-flag.sv--hr::before {
  background-position: -384px -160px;
}
.sv-flag.sv--et::before {
  background-position: 0 -128px;
}
.sv-flag.sv--dm::before {
  background-position: -224px -96px;
}
.sv-flag.sv--bg::before {
  background-position: -160px -32px;
}
.sv-flag.sv--cg::before {
  background-position: -192px -64px;
}
.sv-flag.sv--ne::before {
  background-position: -384px -288px;
}
.sv-flag.sv--by::before {
  background-position: -32px -64px;
}
.sv-flag.sv--mt::before {
  background-position: -96px -288px;
}
.sv-flag.sv--mu::before {
  background-position: -128px -288px;
}
.sv-flag.sv--tw::before {
  background-position: -352px -416px;
}
.sv-flag.sv--gs::before {
  background-position: -160px -160px;
}
.sv-flag.sv--ec::before {
  background-position: -320px -96px;
}
.sv-flag.sv--gu::before {
  background-position: -224px -160px;
}
.sv-flag.sv--gq::before {
  background-position: -96px -160px;
}
.sv-flag.sv--fo::before {
  background-position: -192px -128px;
}
.sv-flag.sv--mf::before {
  background-position: -224px -256px;
}
.sv-flag.sv--cv::before {
  background-position: 0 -96px;
}
.sv-flag.sv--cn::before {
  background-position: -384px -64px;
}
.sv-flag.sv--kh::before {
  background-position: -480px -192px;
}
.sv-flag.sv--cu::before {
  background-position: -480px -64px;
}
.sv-flag.sv--es::before {
  background-position: -480px -96px;
}
.sv-flag.sv--hn::before {
  background-position: -352px -160px;
}
.sv-flag.sv--mw::before {
  background-position: -192px -288px;
}
.sv-flag.sv--tn::before {
  background-position: -192px -416px;
}
.sv-flag.sv--vi::before {
  background-position: -192px -448px;
}
.sv-flag.sv--ki::before {
  background-position: 0 -224px;
}
.sv-flag.sv--sr::before {
  background-position: -224px -384px;
}
.sv-flag.sv--om::before {
  background-position: -192px -320px;
}
.sv-flag.sv--hu::before {
  background-position: -448px -160px;
}
.sv-flag.sv--zm::before {
  background-position: -448px -448px;
}
.sv-flag.sv--sk::before {
  background-position: -64px -384px;
}
.sv-flag.sv--sd::before {
  background-position: -416px -352px;
}
.sv-flag.sv--sh::before {
  background-position: 0 -384px;
}
.sv-flag.sv--eh::before {
  background-position: -416px -96px;
}
.sv-flag.sv--fr::before {
  background-position: -224px -128px;
}
.sv-flag.sv--mn::before {
  background-position: -416px -256px;
}
.sv-flag.sv--nr::before {
  background-position: -96px -320px;
}
.sv-flag.sv--mk::before {
  background-position: -320px -256px;
}
.sv-flag.sv--vg::before {
  background-position: -160px -448px;
}
.sv-flag.sv--ad::before {
  background-position: 0 0;
}
.sv-flag.sv--ir::before {
  background-position: -192px -192px;
}
.sv-flag.sv--tk::before {
  background-position: -96px -416px;
}
.sv-flag.sv--za::before {
  background-position: -416px -448px;
}
.sv-flag.sv--cm::before {
  background-position: -352px -64px;
}
.sv-flag.sv--nl::before {
  background-position: 0 -320px;
}
.sv-flag.sv--se::before {
  background-position: -448px -352px;
}
.sv-flag.sv--mo::before {
  background-position: -448px -256px;
}
.sv-flag.sv--ai::before {
  background-position: -128px 0;
}
.sv-flag.sv--pa::before {
  background-position: -224px -320px;
}
.sv-flag.sv--so::before {
  background-position: -192px -384px;
}
.sv-flag.sv--tg::before {
  background-position: 0 -416px;
}
.sv-flag.sv--ro::before {
  background-position: -192px -352px;
}
.sv-flag.sv--gd::before {
  background-position: -320px -128px;
}
.sv-flag.sv--dj::before {
  background-position: -160px -96px;
}
.sv-flag.sv--tz::before {
  background-position: -384px -416px;
}
.sv-flag.sv--na::before {
  background-position: -320px -288px;
}
.sv-flag.sv--fj::before {
  background-position: -96px -128px;
}
.sv-flag.sv--sc::before {
  background-position: -384px -352px;
}
.sv-flag.sv--gg::before {
  background-position: -384px -128px;
}
.sv-flag.sv--an::before {
  background-position: -224px 0;
}
.sv-flag.sv--kr::before {
  background-position: -128px -224px;
}
.sv-flag.sv--iq::before {
  background-position: -160px -192px;
}
.sv-flag.sv--cf::before {
  background-position: -160px -64px;
}
.sv-flag.sv--sl::before {
  background-position: -96px -384px;
}
.sv-flag.sv--ws::before {
  background-position: -320px -448px;
}
.sv-flag.sv--ge::before {
  background-position: -352px -128px;
}
.sv-flag.sv--aw::before {
  background-position: -416px 0;
}
.sv-flag.sv--ps::before {
  background-position: 0 -352px;
}
.sv-flag.sv--ck::before {
  background-position: -288px -64px;
}
.sv-flag.sv--ht::before {
  background-position: -416px -160px;
}
.sv-flag.sv--km::before {
  background-position: -32px -224px;
}
.sv-flag.sv--ss::before {
  background-position: -256px -384px;
}
.sv-flag.sv--az::before {
  background-position: -480px 0;
}
.sv-flag.sv--bz::before {
  background-position: -64px -64px;
}
.sv-flag.sv--la::before {
  background-position: -256px -224px;
}
.sv-flag.sv--sg::before {
  background-position: -480px -352px;
}
.sv-flag.sv--py::before {
  background-position: -96px -352px;
}
.sv-flag.sv--gi::before {
  background-position: -448px -128px;
}
.sv-flag.sv--mc::before {
  background-position: -128px -256px;
}
.sv-flag.sv--kz::before {
  background-position: -224px -224px;
}
.sv-flag.sv--lt::before {
  background-position: -480px -224px;
}
.sv-flag.sv--va::before {
  background-position: -64px -448px;
}
.sv-flag.sv--ms::before {
  background-position: -64px -288px;
}
.sv-flag.sv--sz::before {
  background-position: -384px -384px;
}
.sv-flag.sv--tj::before {
  background-position: -64px -416px;
}
.sv-flag.sv--kg::before {
  background-position: -448px -192px;
}
.sv-flag.sv--tv::before {
  background-position: -320px -416px;
}
.sv-flag.sv--rs::before {
  background-position: -224px -352px;
}
.sv-flag.sv--je::before {
  background-position: -288px -192px;
}
.sv-flag.sv--as::before {
  background-position: -320px 0;
}
.sv-flag.sv--ma::before {
  background-position: -96px -256px;
}
.sv-flag.sv--im::before {
  background-position: -96px -192px;
}
.sv-flag.sv--mz::before {
  background-position: -288px -288px;
}
.sv-flag.sv--bo::before {
  background-position: -384px -32px;
}
.sv-flag.sv--st::before {
  background-position: -288px -384px;
}
.sv-flag.sv--td::before {
  background-position: -448px -384px;
}
.sv-flag.sv--bi::before {
  background-position: -224px -32px;
}
.sv-flag.sv--uz::before {
  background-position: -32px -448px;
}
.sv-flag.sv--sy::before {
  background-position: -352px -384px;
}
.sv-flag.sv--md::before {
  background-position: -160px -256px;
}
.sv-flag.sv--af::before {
  background-position: -64px 0;
}
.sv-flag.sv--bs::before {
  background-position: -448px -32px;
}
.sv-flag.sv--rw::before {
  background-position: -288px -352px;
}
.sv-flag.sv--cd::before {
  background-position: -128px -64px;
}
.sv-flag.sv--zw::before {
  background-position: -480px -448px;
}
.sv-flag.sv--ml::before {
  background-position: -352px -256px;
}
.sv-flag.sv--cy::before {
  background-position: -64px -96px;
}
.sv-flag.sv--cz::before {
  background-position: -96px -96px;
}
.sv-flag.sv--mg::before {
  background-position: -256px -256px;
}
.sv-flag.sv--ls::before {
  background-position: -448px -224px;
}
.sv-flag.sv--ke::before {
  background-position: -416px -192px;
}
.sv-flag.sv--pt::before {
  background-position: -32px -352px;
}
.sv-flag.sv--mh::before {
  background-position: -288px -256px;
}
.sv-flag.sv--nz::before {
  background-position: -160px -320px;
}
.sv-flag.sv--pl::before {
  background-position: -416px -320px;
}
.sv-flag.sv--pw::before {
  background-position: -64px -352px;
}
.sv-flag.sv--sa::before {
  background-position: -320px -352px;
}
.sv-flag.sv--vu::before {
  background-position: -256px -448px;
}
.sv-flag.sv--mx::before {
  background-position: -224px -288px;
}
.sv-flag.sv--co::before {
  background-position: -416px -64px;
}
.sv-flag.sv--ky::before {
  background-position: -192px -224px;
}
.sv-flag.sv--pe::before {
  background-position: -256px -320px;
}
.sv-flag.sv--uy::before {
  background-position: 0 -448px;
}
.sv-flag.sv--bw::before {
  background-position: 0 -64px;
}
.sv-flag.sv--id::before {
  background-position: 0 -192px;
}
.sv-flag.sv--fk::before {
  background-position: -128px -128px;
}
.sv-flag.sv--np::before {
  background-position: -64px -320px;
}
.sv-flag.sv--is::before {
  background-position: -224px -192px;
}
.sv-flag.sv--tt::before {
  background-position: -288px -416px;
}
.sv-flag.sv--gm::before {
  background-position: 0 -160px;
}
.sv-flag.sv--ci::before {
  background-position: -256px -64px;
}
.sv-flag.sv--br::before {
  background-position: -416px -32px;
}
.sv-flag.sv--lu::before {
  background-position: 0 -256px;
}
.sv-flag.sv--mv::before {
  background-position: -160px -288px;
}
.sv-flag.sv--no::before {
  background-position: -32px -320px;
}
.sv-flag.sv--ye::before {
  background-position: -352px -448px;
}
.sv-flag.sv--me::before {
  background-position: -192px -256px;
}
.sv-flag.sv--lb::before {
  background-position: -288px -224px;
}
.sv-flag.sv--my::before {
  background-position: -256px -288px;
}
.sv-flag.sv--at::before {
  background-position: -352px 0;
}
.sv-flag.sv--gr::before {
  background-position: -128px -160px;
}
.sv-flag.sv--li::before {
  background-position: -352px -224px;
}
.sv-flag.sv--dk::before {
  background-position: -192px -96px;
}
.sv-flag.sv--gt::before {
  background-position: -192px -160px;
}
.sv-flag.sv--it::before {
  background-position: -256px -192px;
}
.sv-flag.sv--dz::before {
  background-position: -288px -96px;
}
.sv-flag.sv--ly::before {
  background-position: -64px -256px;
}
.sv-flag.sv--ca::before {
  background-position: -96px -64px;
}
.sv-flag.sv--bm::before {
  background-position: -320px -32px;
}
.sv-flag.sv--ga::before {
  background-position: -256px -128px;
}
.sv-flag.sv--lk::before {
  background-position: -384px -224px;
}
.sv-flag.sv--il::before {
  background-position: -64px -192px;
}
.sv-flag.sv--kn::before {
  background-position: -64px -224px;
}
.sv-flag.sv--pk::before {
  background-position: -384px -320px;
}
.sv-flag.sv--nc::before {
  background-position: -352px -288px;
}
.sv-flag.sv--qa::before {
  background-position: -128px -352px;
}
.sv-flag.sv--gn::before {
  background-position: -32px -160px;
}
.sv-flag.sv--yt::before {
  background-position: -384px -448px;
}
.sv-flag.sv--ar::before {
  background-position: -288px 0;
}
.sv-flag.sv--gw::before {
  background-position: -256px -160px;
}
.sv-flag.sv--vn::before {
  background-position: -224px -448px;
}
.sv-flag.sv--pg::before {
  background-position: -320px -320px;
}
.sv-flag.sv--fm::before {
  background-position: -160px -128px;
}
.sv-flag.sv--bh::before {
  background-position: -192px -32px;
}
.sv-flag.sv--jo::before {
  background-position: -352px -192px;
}
.sv-flag.sv--de::before {
  background-position: -128px -96px;
}
.sv-flag.sv--ao::before {
  background-position: -256px 0;
}
.sv-flag.sv--tr::before {
  background-position: -256px -416px;
}
.sv-flag.sv--tc::before {
  background-position: -416px -384px;
}
.sv-flag.sv--ba::before {
  background-position: 0 -32px;
}
.sv-flag.sv--ic::before {
  background-position: -480px -160px;
}
.sv-flag.sv--vc::before {
  background-position: -96px -448px;
}
.sv-flag.sv--gy::before {
  background-position: -288px -160px;
}
.sv-flag.sv--ag::before {
  background-position: -96px 0;
}
.sv-flag.sv--wf::before {
  background-position: -288px -448px;
}
.sv-flag.sv--in::before {
  background-position: -128px -192px;
}
.sv-flag.sv--ua::before {
  background-position: -416px -416px;
}
.sv-flag.sv--cr::before {
  background-position: -448px -64px;
}
.sv-flag.sv--nf::before {
  background-position: -416px -288px;
}
.sv-flag.sv--mr::before {
  background-position: -32px -288px;
}
.sv-flag.sv--sn::before {
  background-position: -160px -384px;
}
.sv-flag.sv--lv::before {
  background-position: -32px -256px;
}
.sv-flag.sv--gb::before {
  background-position: -288px -128px;
}
.sv-flag.sv--bj::before {
  background-position: -256px -32px;
}
.sv-flag.sv--ie::before {
  background-position: -32px -192px;
}
.sv-flag.sv--us::before {
  background-position: -480px -416px;
}
.sv-flag.sv--er::before {
  background-position: -448px -96px;
}
.sv-flag.sv--re::before {
  background-position: -160px -352px;
}
.sv-flag.sv--gp::before {
  background-position: -64px -160px;
}
.sv-flag.sv--ax::before {
  background-position: -448px 0;
}
.sv-flag.sv--do::before {
  background-position: -256px -96px;
}
.sv-flag.sv--tf::before {
  background-position: -480px -384px;
}
.sv-flag.sv--ph::before {
  background-position: -352px -320px;
}
.sv-flag.sv--gl::before {
  background-position: -480px -128px;
}
.sv-flag.sv--ru::before {
  background-position: -256px -352px;
}
.sv-flag.sv--ni::before {
  background-position: -480px -288px;
}
.sv-flag.sv--ch::before {
  background-position: -224px -64px;
}
.sv-flag.sv--pr::before {
  background-position: -480px -320px;
}
.sv-flag.sv--fi::before {
  background-position: -64px -128px;
}
.sv-flag.sv--nu::before {
  background-position: -128px -320px;
}
.sv-flag.sv--kw::before {
  background-position: -160px -224px;
}
.sv-flag.sv--am::before {
  background-position: -192px 0;
}
.sv-flag.sv--ug::before {
  background-position: -448px -416px;
}
.sv-flag.sv--tl::before {
  background-position: -128px -416px;
}
.sv-flag.sv--au::before {
  background-position: -384px 0;
}
.sv-flag.sv--pn::before {
  background-position: -448px -320px;
}
.sv-flag.sv--kp::before {
  background-position: -96px -224px;
}
.sv-flag.sv--al::before {
  background-position: -160px 0;
}
.sv-flag.sv--pf::before {
  background-position: -288px -320px;
}
.sv-flag.sv--ng::before {
  background-position: -448px -288px;
}
.sv-flag.sv--gh::before {
  background-position: -416px -128px;
}
.sv-flag.sv--bb::before {
  background-position: -32px -32px;
}
.sv-flag.sv--bn::before {
  background-position: -352px -32px;
}
.sv-flag.sv--eg::before {
  background-position: -384px -96px;
}
.sv-flag.sv--bt::before {
  background-position: -480px -32px;
}
.sv-flag.sv--si::before {
  background-position: -32px -384px;
}
.sv-flag.sv--jm::before {
  background-position: -320px -192px;
}
.sv-flag.sv--cw::before {
  background-position: -32px -96px;
}
.sv-flag.sv--to::before {
  background-position: -224px -416px;
}
.sv-flag.sv--mp::before {
  background-position: -480px -256px;
}
.sv-flag.sv--hk::before {
  background-position: -320px -160px;
}
.sv-flag.sv--th::before {
  background-position: -32px -416px;
}
.sv-flag.sv--lc::before {
  background-position: -320px -224px;
}
.sv-flag.sv--cl::before {
  background-position: -320px -64px;
}
.sv-flag.sv--ae::before {
  background-position: -32px 0;
}
.sv-flag.sv--bd::before {
  background-position: -64px -32px;
}
.sv-flag.sv--sb::before {
  background-position: -352px -352px;
}
.sv-flag.sv--sv::before {
  background-position: -320px -384px;
}
.sv-flag.sv--eu::before {
  background-position: -32px -128px;
}
@media screen and (min-width: 768px){
  .sv-extender-boundary-wrapper{
    padding: 0 2rem;
  }
}
@media (max-width: 319px){
  [class*=sv-view-lt-]{
    display: inline;
    display: initial;
  }
  .sv-block-grid.sv--lt-xsml-show-1 > .sv-col:nth-child(n + calc(1 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-xsml-show-2 > .sv-col:nth-child(n + calc(2 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-xsml-show-3 > .sv-col:nth-child(n + calc(3 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-xsml-show-4 > .sv-col:nth-child(n + calc(4 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-xsml-show-5 > .sv-col:nth-child(n + calc(5 + 1)){
    display: none;
  }
  .sv-share-price__label{
    display: block;
  }
}
@media (min-width: 320px){
  .sv-view-gt-xsml, [class*=sv-view-lt-]{
    display: inline;
    display: initial;
  }
  /* Breakpoint specific flow switching */
  .sv-row.sv--xsml-right > .sv-col{
    float: right !important;
    margin-right: 0 !important;
    margin-left: 1rem;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-row.sv--xsml-right > .sv-col:last-child{
    margin-left: 0;
  }
  /* Breakpoint specific height matching */
  .sv-row.sv--xsml-equal{
    display: flex;
    flex-wrap: wrap;
  }
  .sv-row.sv--xsml-equal > .sv-col{
    display: flex;
  }
  .sv-col.sv--xsml-1{
    width: calc(99.9% * 1/12 - 0.9167rem);
  }
  .sv-col.sv--xsml-1:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-1:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-1:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-1:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-2{
    width: calc(99.9% * 2/12 - 0.8333rem);
  }
  .sv-col.sv--xsml-2:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-2:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-2:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-2:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-3{
    width: calc(99.9% * 3/12 - 0.75rem);
  }
  .sv-col.sv--xsml-3:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-3:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-3:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-3:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-4{
    width: calc(99.9% * 4/12 - 0.6667rem);
  }
  .sv-col.sv--xsml-4:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-4:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-4:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-4:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-5{
    width: calc(99.9% * 5/12 - 0.5833rem);
  }
  .sv-col.sv--xsml-5:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-5:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-5:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-5:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-6{
    width: calc(99.9% * 6/12 - 0.5rem);
  }
  .sv-col.sv--xsml-6:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-6:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-6:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-6:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-7{
    width: calc(99.9% * 7/12 - 0.4167rem);
  }
  .sv-col.sv--xsml-7:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-7:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-7:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-7:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-8{
    width: calc(99.9% * 8/12 - 0.3333rem);
  }
  .sv-col.sv--xsml-8:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-8:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-8:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-8:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-9{
    width: calc(99.9% * 9/12 - 0.25rem);
  }
  .sv-col.sv--xsml-9:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-9:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-9:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-9:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-10{
    width: calc(99.9% * 10/12 - 0.1667rem);
  }
  .sv-col.sv--xsml-10:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-10:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-10:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-10:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-11{
    width: calc(99.9% * 11/12 - 1.333333333333334px);
  }
  .sv-col.sv--xsml-11:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-11:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-11:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-11:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-12{
    width: calc(99.9% * 12/12 - 0px);
  }
  .sv-col.sv--xsml-12:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--xsml-12:last-child{
    margin-right: 0;
  }
  .sv-col.sv--xsml-12:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--xsml-12:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--xsml-offset-1{
    margin-left: calc(99.9% * 0.083333333333333 - 0.9167rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-2{
    margin-left: calc(99.9% * 0.166666666666667 - 0.8333rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-3{
    margin-left: calc(99.9% * 0.25 - 0.75rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-4{
    margin-left: calc(99.9% * 0.333333333333333 - 0.6667rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-5{
    margin-left: calc(99.9% * 0.416666666666667 - 0.5833rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-6{
    margin-left: calc(99.9% * 0.5 - 0.5rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-7{
    margin-left: calc(99.9% * 0.583333333333333 - 0.4167rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-8{
    margin-left: calc(99.9% * 0.666666666666667 - 0.3333rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-9{
    margin-left: calc(99.9% * 0.75 - 0.25rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-10{
    margin-left: calc(99.9% * 0.833333333333333 - 0.1667rem + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-11{
    margin-left: calc(99.9% * 0.916666666666667 - 1.333333333333329px + 1rem) !important;
  }
  .sv-col.sv--xsml-offset-12{
    margin-left: calc(99.9% * 1 - 0px + 1rem) !important;
  }
  .sv-block-grid.sv--xsml-2 > .sv-col{
    width: calc(99.9% * 1/2 - 0.5rem);
    height: calc(99.9% * 1/2 - 0.5rem);
  }
  .sv-block-grid.sv--xsml-2 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-2 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-2 > .sv-col:nth-child(2n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-2 > .sv-col:nth-child(2n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-2 > .sv-col:nth-last-child(-n + 2){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-3 > .sv-col{
    width: calc(99.9% * 1/3 - 0.6667rem);
    height: calc(99.9% * 1/3 - 0.6667rem);
  }
  .sv-block-grid.sv--xsml-3 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-3 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-3 > .sv-col:nth-child(3n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-3 > .sv-col:nth-child(3n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-3 > .sv-col:nth-last-child(-n + 3){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-4 > .sv-col{
    width: calc(99.9% * 1/4 - 0.75rem);
    height: calc(99.9% * 1/4 - 0.75rem);
  }
  .sv-block-grid.sv--xsml-4 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-4 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-4 > .sv-col:nth-child(4n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-4 > .sv-col:nth-child(4n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-4 > .sv-col:nth-last-child(-n + 4){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-5 > .sv-col{
    width: calc(99.9% * 1/5 - 0.8rem);
    height: calc(99.9% * 1/5 - 0.8rem);
  }
  .sv-block-grid.sv--xsml-5 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-5 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-5 > .sv-col:nth-child(5n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-5 > .sv-col:nth-child(5n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-5 > .sv-col:nth-last-child(-n + 5){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-6 > .sv-col{
    width: calc(99.9% * 1/6 - 0.8333rem);
    height: calc(99.9% * 1/6 - 0.8333rem);
  }
  .sv-block-grid.sv--xsml-6 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-6 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-6 > .sv-col:nth-child(6n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-6 > .sv-col:nth-child(6n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-6 > .sv-col:nth-last-child(-n + 6){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-7 > .sv-col{
    width: calc(99.9% * 1/7 - 0.8571rem);
    height: calc(99.9% * 1/7 - 0.8571rem);
  }
  .sv-block-grid.sv--xsml-7 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-7 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-7 > .sv-col:nth-child(7n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-7 > .sv-col:nth-child(7n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-7 > .sv-col:nth-last-child(-n + 7){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-8 > .sv-col{
    width: calc(99.9% * 1/8 - 0.875rem);
    height: calc(99.9% * 1/8 - 0.875rem);
  }
  .sv-block-grid.sv--xsml-8 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-8 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-8 > .sv-col:nth-child(8n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-8 > .sv-col:nth-child(8n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-8 > .sv-col:nth-last-child(-n + 8){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-9 > .sv-col{
    width: calc(99.9% * 1/9 - 0.8889rem);
    height: calc(99.9% * 1/9 - 0.8889rem);
  }
  .sv-block-grid.sv--xsml-9 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-9 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-9 > .sv-col:nth-child(9n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-9 > .sv-col:nth-child(9n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-9 > .sv-col:nth-last-child(-n + 9){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-10 > .sv-col{
    width: calc(99.9% * 1/10 - 0.9rem);
    height: calc(99.9% * 1/10 - 0.9rem);
  }
  .sv-block-grid.sv--xsml-10 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--xsml-10 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--xsml-10 > .sv-col:nth-child(10n){
    margin-right: 0;
  }
  .sv-block-grid.sv--xsml-10 > .sv-col:nth-child(10n + 1){
    clear: both;
  }
  .sv-block-grid.sv--xsml-10 > .sv-col:nth-last-child(-n + 10){
    margin-bottom: 0;
  }
  .sv-spacer.sv--xsml-v-space-xsml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.5rem;
  }
  .sv-spacer.sv--xsml-space-xsml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.5rem;
  }
  .sv-spacer.sv--xsml-space-xsml:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.5rem;
  }
  .sv-spacer.sv--xsml-v-space-xsml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.75rem;
  }
  .sv-spacer.sv--xsml-space-xsml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.75rem;
  }
  .sv-spacer.sv--xsml-space-xsml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.75rem;
  }
  .sv-spacer.sv--xsml-v-space-sml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1rem;
  }
  .sv-spacer.sv--xsml-space-sml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1rem;
  }
  .sv-spacer.sv--xsml-space-sml:not(.sv--no-spacer).sv--reverse{
    margin-top: 1rem;
  }
  .sv-spacer.sv--xsml-v-space-sml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.25rem;
  }
  .sv-spacer.sv--xsml-space-sml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.25rem;
  }
  .sv-spacer.sv--xsml-space-sml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.25rem;
  }
  .sv-spacer.sv--xsml-v-space-med{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.5rem;
  }
  .sv-spacer.sv--xsml-space-med:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.5rem;
  }
  .sv-spacer.sv--xsml-space-med:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.5rem;
  }
  .sv-spacer.sv--xsml-v-space-med-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.75rem;
  }
  .sv-spacer.sv--xsml-space-med-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.75rem;
  }
  .sv-spacer.sv--xsml-space-med-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.75rem;
  }
  .sv-spacer.sv--xsml-v-space-lrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 2rem;
  }
  .sv-spacer.sv--xsml-space-lrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 2rem;
  }
  .sv-spacer.sv--xsml-space-lrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 2rem;
  }
  .sv-spacer.sv--xsml-v-space-lrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 3rem;
  }
  .sv-spacer.sv--xsml-space-lrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 3rem;
  }
  .sv-spacer.sv--xsml-space-lrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 3rem;
  }
  .sv-spacer.sv--xsml-v-space-xlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 4rem;
  }
  .sv-spacer.sv--xsml-space-xlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 4rem;
  }
  .sv-spacer.sv--xsml-space-xlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 4rem;
  }
  .sv-spacer.sv--xsml-v-space-xlrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 6rem;
  }
  .sv-spacer.sv--xsml-space-xlrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 6rem;
  }
  .sv-spacer.sv--xsml-space-xlrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 6rem;
  }
  .sv-spacer.sv--xsml-v-space-xxlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 8rem;
  }
  .sv-spacer.sv--xsml-space-xxlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 8rem;
  }
  .sv-spacer.sv--xsml-space-xxlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 8rem;
  }
  .sv-text-section-heading{
    font-size: 1.5625rem;
    margin-bottom: 1.5rem;
  }
  .sv-filter-search__sort-label{
    text-align: right;
  }
  .sv-nav__inner{
}
  .sv-nav__inner[data-sv-toggle$="t1"] .sv-breadcrumb--t1{
    display: inline;
  }
  .sv-nav__inner[data-sv-toggle$="t2"] .sv-breadcrumb--t2{
    display: inline;
  }
  .sv-nav__inner[data-sv-toggle$="t3"] .sv-breadcrumb--t3{
    display: inline;
  }
  .sv-nav__inner[data-sv-toggle$="t4"] .sv-breadcrumb--t4{
    display: inline;
  }
  .sv-nav__inner[data-sv-toggle$="t5"] .sv-breadcrumb--t5{
    display: inline;
  }
  .sv-nav__inner[data-sv-toggle$="t6"] .sv-breadcrumb--t6{
    display: inline;
  }
}
@media (min-width: 768px){
  .sv-view-gt-sml{
    display: inline;
    display: initial;
  }
  .sv-view-lt-xsml, .sv-view-lt-sml{
    display: none;
  }
  .sv-button{
    width: auto;
  }
  .sv-button.sv--share-window{
    display: inline-block;
  }
  .sv-favourite.sv--remove-property{
    height: 1rem;
    right: 1rem;
    top: 1rem;
    width: 1rem;
  }
  .sv-favourite.sv--remove-property::after, .sv-favourite.sv--remove-property::before{
    margin-left: 0;
  }
  .sv-custom-input.sv--lrg input{
    font-size: 2.5rem;
  }
  .sv-form-group-header{
    margin: 0 0 2rem;
  }
  .sv-form-group-header__label{
    font-size: 1.5rem;
  }
  /* Breakpoint specific flow switching */
  .sv-row.sv--sml-right > .sv-col{
    float: right !important;
    margin-right: 0 !important;
    margin-left: 1rem;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-row.sv--sml-right > .sv-col:last-child{
    margin-left: 0;
  }
  /* Breakpoint specific height matching */
  .sv-row.sv--sml-equal{
    display: flex;
    flex-wrap: wrap;
  }
  .sv-row.sv--sml-equal > .sv-col{
    display: flex;
  }
  .sv-col.sv--sml-1{
    width: calc(99.9% * 1/12 - 0.9167rem);
  }
  .sv-col.sv--sml-1:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-1:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-1:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-1:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-2{
    width: calc(99.9% * 2/12 - 0.8333rem);
  }
  .sv-col.sv--sml-2:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-2:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-2:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-2:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-3{
    width: calc(99.9% * 3/12 - 0.75rem);
  }
  .sv-col.sv--sml-3:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-3:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-3:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-3:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-4{
    width: calc(99.9% * 4/12 - 0.6667rem);
  }
  .sv-col.sv--sml-4:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-4:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-4:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-4:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-5{
    width: calc(99.9% * 5/12 - 0.5833rem);
  }
  .sv-col.sv--sml-5:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-5:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-5:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-5:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-6{
    width: calc(99.9% * 6/12 - 0.5rem);
  }
  .sv-col.sv--sml-6:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-6:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-6:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-6:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-7{
    width: calc(99.9% * 7/12 - 0.4167rem);
  }
  .sv-col.sv--sml-7:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-7:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-7:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-7:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-8{
    width: calc(99.9% * 8/12 - 0.3333rem);
  }
  .sv-col.sv--sml-8:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-8:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-8:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-8:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-9{
    width: calc(99.9% * 9/12 - 0.25rem);
  }
  .sv-col.sv--sml-9:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-9:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-9:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-9:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-10{
    width: calc(99.9% * 10/12 - 0.1667rem);
  }
  .sv-col.sv--sml-10:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-10:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-10:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-10:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-11{
    width: calc(99.9% * 11/12 - 1.333333333333334px);
  }
  .sv-col.sv--sml-11:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-11:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-11:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-11:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-12{
    width: calc(99.9% * 12/12 - 0px);
  }
  .sv-col.sv--sml-12:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--sml-12:last-child{
    margin-right: 0;
  }
  .sv-col.sv--sml-12:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--sml-12:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--sml-offset-1{
    margin-left: calc(99.9% * 0.083333333333333 - 0.9167rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-2{
    margin-left: calc(99.9% * 0.166666666666667 - 0.8333rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-3{
    margin-left: calc(99.9% * 0.25 - 0.75rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-4{
    margin-left: calc(99.9% * 0.333333333333333 - 0.6667rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-5{
    margin-left: calc(99.9% * 0.416666666666667 - 0.5833rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-6{
    margin-left: calc(99.9% * 0.5 - 0.5rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-7{
    margin-left: calc(99.9% * 0.583333333333333 - 0.4167rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-8{
    margin-left: calc(99.9% * 0.666666666666667 - 0.3333rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-9{
    margin-left: calc(99.9% * 0.75 - 0.25rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-10{
    margin-left: calc(99.9% * 0.833333333333333 - 0.1667rem + 1rem) !important;
  }
  .sv-col.sv--sml-offset-11{
    margin-left: calc(99.9% * 0.916666666666667 - 1.333333333333329px + 1rem) !important;
  }
  .sv-col.sv--sml-offset-12{
    margin-left: calc(99.9% * 1 - 0px + 1rem) !important;
  }
  .sv-col.sv--offset-top{
    margin-top: -5rem;
  }
  .sv-block-grid.sv--sml-2 > .sv-col{
    width: calc(99.9% * 1/2 - 0.5rem);
    height: calc(99.9% * 1/2 - 0.5rem);
  }
  .sv-block-grid.sv--sml-2 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-2 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-2 > .sv-col:nth-child(2n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-2 > .sv-col:nth-child(2n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-2 > .sv-col:nth-last-child(-n + 2){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-3 > .sv-col{
    width: calc(99.9% * 1/3 - 0.6667rem);
    height: calc(99.9% * 1/3 - 0.6667rem);
  }
  .sv-block-grid.sv--sml-3 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-3 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-3 > .sv-col:nth-child(3n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-3 > .sv-col:nth-child(3n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-3 > .sv-col:nth-last-child(-n + 3){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-4 > .sv-col{
    width: calc(99.9% * 1/4 - 0.75rem);
    height: calc(99.9% * 1/4 - 0.75rem);
  }
  .sv-block-grid.sv--sml-4 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-4 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-4 > .sv-col:nth-child(4n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-4 > .sv-col:nth-child(4n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-4 > .sv-col:nth-last-child(-n + 4){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-5 > .sv-col{
    width: calc(99.9% * 1/5 - 0.8rem);
    height: calc(99.9% * 1/5 - 0.8rem);
  }
  .sv-block-grid.sv--sml-5 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-5 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-5 > .sv-col:nth-child(5n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-5 > .sv-col:nth-child(5n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-5 > .sv-col:nth-last-child(-n + 5){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-6 > .sv-col{
    width: calc(99.9% * 1/6 - 0.8333rem);
    height: calc(99.9% * 1/6 - 0.8333rem);
  }
  .sv-block-grid.sv--sml-6 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-6 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-6 > .sv-col:nth-child(6n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-6 > .sv-col:nth-child(6n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-6 > .sv-col:nth-last-child(-n + 6){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-7 > .sv-col{
    width: calc(99.9% * 1/7 - 0.8571rem);
    height: calc(99.9% * 1/7 - 0.8571rem);
  }
  .sv-block-grid.sv--sml-7 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-7 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-7 > .sv-col:nth-child(7n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-7 > .sv-col:nth-child(7n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-7 > .sv-col:nth-last-child(-n + 7){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-8 > .sv-col{
    width: calc(99.9% * 1/8 - 0.875rem);
    height: calc(99.9% * 1/8 - 0.875rem);
  }
  .sv-block-grid.sv--sml-8 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-8 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-8 > .sv-col:nth-child(8n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-8 > .sv-col:nth-child(8n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-8 > .sv-col:nth-last-child(-n + 8){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-9 > .sv-col{
    width: calc(99.9% * 1/9 - 0.8889rem);
    height: calc(99.9% * 1/9 - 0.8889rem);
  }
  .sv-block-grid.sv--sml-9 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-9 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-9 > .sv-col:nth-child(9n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-9 > .sv-col:nth-child(9n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-9 > .sv-col:nth-last-child(-n + 9){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-10 > .sv-col{
    width: calc(99.9% * 1/10 - 0.9rem);
    height: calc(99.9% * 1/10 - 0.9rem);
  }
  .sv-block-grid.sv--sml-10 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--sml-10 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--sml-10 > .sv-col:nth-child(10n){
    margin-right: 0;
  }
  .sv-block-grid.sv--sml-10 > .sv-col:nth-child(10n + 1){
    clear: both;
  }
  .sv-block-grid.sv--sml-10 > .sv-col:nth-last-child(-n + 10){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--borders > .sv-col{
    border-left-width: 1px;
    border-top: 0;
    border-bottom: 0;
    padding: 0 0.3125rem;
  }
  .sv-modal{
    -ms-grid-row-align: auto;
        align-self: auto;
    max-width: 42.1875rem;
    margin: 1rem;
  }
  .sv-modal.sv--wide{
    max-width: 60rem;
  }
  .sv-property-attribute.sv--large{
    font-size: 0.875rem;
  }
  .sv-property-attribute.sv--residential.sv--large, .sv-property-attribute.sv--rural.sv--large, .sv-property-attribute.sv--commercial.sv--large{
    padding-left: 1.9813rem;
  }
  .sv-property-attribute.sv--residential.sv--large::after, .sv-property-attribute.sv--rural.sv--large::after, .sv-property-attribute.sv--commercial.sv--large::after{
    width: 1.4875rem;
    height: 1.4875rem;
  }
  .sv-property-attribute.sv--size.sv--large, .sv-property-attribute.sv--available-size.sv--large{
    padding-left: 1.725rem;
  }
  .sv-property-attribute.sv--size.sv--large::after, .sv-property-attribute.sv--available-size.sv--large::after{
    width: 1.3125rem;
    height: 1.3125rem;
  }
  .sv-property-attribute.sv--land-area.sv--large{
    padding-left: 1.9813rem;
  }
  .sv-property-attribute.sv--land-area.sv--large::after{
    width: 1.4875rem;
    height: 1.4875rem;
  }
  .sv-property-attribute.sv--bathrooms.sv--large{
    padding-left: 2.2375rem;
  }
  .sv-property-attribute.sv--bathrooms.sv--large::after{
    width: 1.6625rem;
    height: 1.6625rem;
  }
  .sv-property-attribute.sv--bedrooms.sv--large{
    padding-left: 2.0438rem;
  }
  .sv-property-attribute.sv--bedrooms.sv--large::after{
    width: 1.575rem;
    height: 1.575rem;
  }
  .sv-property-attribute.sv--receptions.sv--large{
    padding-left: 2.3rem;
  }
  .sv-property-attribute.sv--receptions.sv--large::after{
    width: 1.75rem;
    height: 1.75rem;
  }
  .sv-property-attribute.sv--grade.sv--large{
    padding-left: 2.1125rem;
  }
  .sv-property-attribute.sv--grade.sv--large::after{
    width: 1.4875rem;
    height: 1.4875rem;
  }
  .sv-property-attribute.sv--people.sv--large{
    padding-left: 2.4375rem;
  }
  .sv-property-attribute.sv--people.sv--large::after{
    width: 1.575rem;
    height: 1.575rem;
  }
  .sv-property-attribute.sv--yield.sv--large{
    padding-left: 2.3125rem;
  }
  .sv-property-attribute.sv--yield.sv--large::after{
    width: 1.4rem;
    height: 1.4rem;
  }
  .sv-property-intro .sv-property-price{
    text-align: right;
  }
  .sv--full-width.sv--type-residential.sv--search-type-rent .sv-property-price__wrap, .sv--full-width.sv--type-farm.sv--search-type-rent .sv-property-price__wrap{
    line-height: 1.75;
    /* The line-heights set in this media query need to be different for IE11
        and current use of supports sticky is a hack to overwrite the IE11 defaults */
  }
  @supports ((position: -webkit-sticky) or (position: sticky)){
    .sv--full-width.sv--type-residential.sv--search-type-rent .sv-property-price__wrap, .sv--full-width.sv--type-farm.sv--search-type-rent .sv-property-price__wrap{
      line-height: 1.4;
    }
  }
  .sv-property-intro .sv--show-original .sv-property-price__wrap{
    display: inline-block;
  }
  .sv-property-intro .sv--show-original .sv-property-price__wrap + span{
    margin-top: 0.3125rem;
  }
  .sv-property-intro .sv-property-price__wrap + span{
    display: block;
  }
  .sv-property-intro .sv-property-price__wrap-other{
    display: block;
  }
  .sv--full-width.sv--type-commercial .sv-property-price__value, .sv--full-width.sv--type-farm .sv-property-price__value, .sv--full-width.sv--type-commercial .sv-property-price__original, .sv--full-width.sv--type-farm .sv-property-price__original{
    font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
    font-weight: 300;
    font-size: 0.75rem;
  }
  .sv--full-width.sv--type-farm .sv-property-price__value, .sv--full-width.sv--type-farm .sv-property-price__original{
    line-height: 1.5;
  }
  .sv--full-width.sv--type-commercial .sv-property-price__value, .sv--full-width.sv--type-commercial .sv-property-price__original{
    line-height: 1.2;
  }
  .sv--full-width.sv--type-residential.sv--search-type-buy .sv--show-original .sv-property-price__value, .sv--full-width.sv--type-residential.sv--search-type-buy .sv--show-original .sv-property-price__original{
    margin-bottom: 0.125rem;
  }
  .sv--full-width.sv--type-new-development.sv--search-type-buy .sv--show-original .sv-property-price__value, .sv--full-width.sv--type-new-development.sv--search-type-buy .sv--show-original .sv-property-price__original{
    margin-bottom: 0.1875rem;
  }
  .sv--full-width .sv-property-price__value{
    font-size: 1.25rem;
  }
  .sv--full-width.sv--type-farm.sv--search-type-buy .sv--show-original .sv-property-price__value{
    margin-bottom: 0;
  }
  .sv--full-width.sv--type-new-development.sv--search-type-rent .sv--show-original .sv-property-price__value{
    margin-bottom: 0.1875rem;
  }
  .sv-property-intro .sv-property-price__size span{
    margin-right: 0;
    margin-left: .5rem;
  }
  .sv-property-intro .sv-property-price__size span:first-of-type{
    margin-left: 0;
  }
  .sv-property-intro.sv--full-width .sv-property-price__size{
    margin-top: 0.375rem;
    font-size: 1.75rem;
    line-height: 1.25;
  }
  .sv-property-intro .sv-property-price__other-fees::before{
    left: -0.8125rem;
  }
  .sv-property-intro .sv-property-price__other-fees{
    font-size: 1rem;
  }
  .sv-property-intro .sv-property-price__rent-basis{
    font-size: 1rem;
  }
  .sv--full-width .sv-property-price__guide{
    line-height: 2;
  }
  .sv-property-intro .sv-property-price__guide{
    font-size: 1rem;
    line-height: 1.5;
  }
  .sv--full-width:not(.sv--type-commercial) .sv--show-size .sv-property-price__guide{
    line-height: 1.5;
  }
  .sv-property-intro .sv-property-price:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide{
    font-size: 2.375rem;
    line-height: 1.25;
    white-space: normal;
  }
  .sv-quote.sv--inline{
    float: left;
    max-width: 20rem;
  }
  .sv-quote.sv--inline.sv--right-align{
    float: right;
    margin-left: 1.5625rem;
  }
  .sv-results-indicator{
    font-size: 0.875rem;
  }
  .sv-spacer:not(.sv--reverse):not(.sv--no-spacer){
    margin-bottom: 1.5rem;
  }
  .sv-spacer.sv--v-space{
    padding: 0 1.5rem;
  }
  .sv-spacer.sv--sml-v-space-xsml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.5rem;
  }
  .sv-spacer.sv--sml-space-xsml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.5rem;
  }
  .sv-spacer.sv--sml-space-xsml:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.5rem;
  }
  .sv-spacer.sv--sml-v-space-xsml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.75rem;
  }
  .sv-spacer.sv--sml-space-xsml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.75rem;
  }
  .sv-spacer.sv--sml-space-xsml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.75rem;
  }
  .sv-spacer.sv--sml-v-space-sml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1rem;
  }
  .sv-spacer.sv--sml-space-sml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1rem;
  }
  .sv-spacer.sv--sml-space-sml:not(.sv--no-spacer).sv--reverse{
    margin-top: 1rem;
  }
  .sv-spacer.sv--sml-v-space-sml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.25rem;
  }
  .sv-spacer.sv--sml-space-sml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.25rem;
  }
  .sv-spacer.sv--sml-space-sml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.25rem;
  }
  .sv-spacer.sv--sml-v-space-med{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.5rem;
  }
  .sv-spacer.sv--sml-space-med:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.5rem;
  }
  .sv-spacer.sv--sml-space-med:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.5rem;
  }
  .sv-spacer.sv--sml-v-space-med-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.75rem;
  }
  .sv-spacer.sv--sml-space-med-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.75rem;
  }
  .sv-spacer.sv--sml-space-med-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.75rem;
  }
  .sv-spacer.sv--sml-v-space-lrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 2rem;
  }
  .sv-spacer.sv--sml-space-lrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 2rem;
  }
  .sv-spacer.sv--sml-space-lrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 2rem;
  }
  .sv-spacer.sv--sml-v-space-lrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 3rem;
  }
  .sv-spacer.sv--sml-space-lrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 3rem;
  }
  .sv-spacer.sv--sml-space-lrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 3rem;
  }
  .sv-spacer.sv--sml-v-space-xlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 4rem;
  }
  .sv-spacer.sv--sml-space-xlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 4rem;
  }
  .sv-spacer.sv--sml-space-xlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 4rem;
  }
  .sv-spacer.sv--sml-v-space-xlrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 6rem;
  }
  .sv-spacer.sv--sml-space-xlrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 6rem;
  }
  .sv-spacer.sv--sml-space-xlrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 6rem;
  }
  .sv-spacer.sv--sml-v-space-xxlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 8rem;
  }
  .sv-spacer.sv--sml-space-xxlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 8rem;
  }
  .sv-spacer.sv--sml-space-xxlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 8rem;
  }
  .sv-section-bg.sv--padded{
    padding: 3.75rem 0;
  }
  .sv-text-copy, .sv-copy, .sv-list li, .vx_text:not(.sv-sub-nav__link-tree) > ul li, .vx_text:not(.sv-sub-nav__link-tree) > ol li, .sv-profile-intro__intro{
    line-height: 1.375rem;
  }
  .sv-text-section-heading{
    font-size: 1.875rem;
  }
  .sv-text-section-heading.sv--lrg{
    font-size: 2.5rem;
    margin-bottom: 2.25rem;
  }
  .sv-text-section-intro{
    font-size: 0.875rem;
  }
  .sv-header__cookie-notification-displayed .sv-breadcrumbs{
    top: 11.8125rem;
  }
  .sv-breadcrumbs{
    top: 4.0625rem;
  }
  .sv-breadcrumbs__container{
    padding-left: 2.1875rem;
  }
  .sv-header__cookie-notification-displayed .sv-breadcrumbs{
    top: 9.75rem;
  }
  .sv--listing-block .sv-card-title{
    font-size: 1.25rem;
    line-height: 1.4;
    height: 5rem;
  }
  .sv--micro .sv-card-title{
    height: auto;
  }
  .sv-card-intro{
    margin-bottom: 1rem;
  }
  .sv-card.sv--fixed-height .sv-card-title{
    height: 5.375rem;
  }
  .sv-card.sv--fixed-height.sv--listing-block{
    height: 26.25rem;
  }
  .sv-card.sv--fixed-height.sv--listing-block .sv-card-title{
    max-height: 7rem;
  }
  .sv-card.sv--fixed-height.sv--is-award .sv-card-title{
    max-height: 4.25rem;
  }
  .sv-card.sv--fixed-height.sv--is-award, .sv-card.sv--fixed-height.sv--office, .sv-card.sv--fixed-height.sv--expert{
    height: 26.125rem;
  }
  .sv-card .sv-card__image + .sv-card__content .sv-card-label{
    top: 2rem;
  }
  .sv-card__filter-labels{
    display: flex;
    flex-direction: row;
  }
  .sv-card__filter-label{
    flex: 1 0 30%;
    margin-right: 1rem;
  }
  .sv-card__filter-label:last-of-type{
    margin-right: 0;
  }
  .sv-card.sv--med .sv-card__content{
    padding: 1.5rem;
  }
  .sv-card.sv--lrg .sv-card__content{
    padding: 2rem;
  }
  .sv-card.sv--listing-row{
    padding: 2rem 0 0;
    margin: 2rem 0 0;
  }
  .sv-card.sv--listing-row.sv--padded{
    padding: 2rem;
  }
  .sv-card.sv--listing-row:last-of-type{
    margin-bottom: 2rem;
  }
  .sv-card.sv--listing-row .sv-card__image{
    margin-right: 2rem;
    flex-shrink: 1;
    max-width: 30% !important;
    /* Specificity / ordering override */
  }
  .sv-card.sv--listing-row .sv-card__primary-ctas{
    width: 13.4375rem;
    min-width: 13.4375rem;
    flex-shrink: 0;
    padding-left: 2rem;
  }
  .sv-card.sv--listing-row .sv-card__image + .sv-card__content .sv-card-label{
    top: 3rem;
  }
  .sv-card.sv--full-width{
    flex-direction: row;
  }
  .sv-card.sv--full-width .sv-card__image{
    max-width: 50% !important;
    flex-grow: 0;
  }
  /* Only render these styles on 'desktop' */
  .sv-card.sv--office, .sv-card.sv--expert{
    padding-bottom: 0;
  }
  .sv-card.sv--is-award .sv-card-title{
    font-size: 1rem;
  }
  .sv-card.sv--is-award .sv-card-intro{
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .sv-card.sv--cta-block .sv-card__content{
    padding: 2.5rem 0 3.125rem;
  }
  .sv-card.sv--cta-block .sv-card-title{
    font-size: 1.25rem;
    margin-bottom: 0.5625rem;
  }
  .sv-card.sv--cta-block .sv-card-intro{
    margin-bottom: 1.25rem;
  }
  .sv-card.sv--fixed-height .sv-card-intro{
    height: 4.0625rem;
  }
  .sv-card.sv--listing-block.sv--full-width .sv-card-tags-container{
    margin-top: 0;
  }
  .sv-card.sv--listing-row.sv--full-width{
    flex-wrap: wrap;
  }
  .sv-card.sv--listing-row.sv--full-width.sv--center-vertical{
    flex-wrap: nowrap;
    align-items: center;
  }
  /* stylelint-disable-next-line selector-max-specificity */
  .sv-card.sv--listing-row.sv--full-width .sv-card__content + .sv-card__type{
    margin-top: 2rem;
  }
  /* stylelint-disable-next-line selector-max-specificity */
  .sv-card.sv--listing-row.sv--full-width .sv-card__image + .sv-card__content{
    flex: 1 1 30%;
    width: auto;
  }
  .sv-card.sv--listing-row.sv--full-width .sv-card__content{
    order: 1;
    width: calc(100% - 14.375rem);
    justify-content: flex-start;
  }
  .sv-card.sv--listing-row.sv--full-width .sv-card__primary-ctas{
    order: 2;
  }
  .sv-card.sv--listing-row.sv--full-width .sv-card__type{
    order: 3;
    flex: 1 0 100%;
  }
  .sv-card.sv--clean{
    margin: 0.9375rem auto;
  }
  .sv-card.sv--clean .sv-card__content{
    padding-top: 0;
    padding-left: 2.5rem;
  }
  .sv-card.sv--clean .sv-card__content-inner{
    max-width: 36.5625rem;
  }
  .sv-cookie-notification{
    padding: 1.25rem;
  }
  .sv-cookie-notification__content-wrap{
    display: flex;
    align-items: center;
    max-width: 64rem;
    margin: 0 auto;
  }
  .sv-cookie-notification__warning{
    flex: 8 1;
    margin-bottom: 0;
  }
  .sv-cookie-notification__warning-link{
    flex: 8 0;
  }
  .sv-cookie-notification button{
    margin-bottom: 0;
    margin-left: 2.5rem;
  }
  .sv-contact-header{
    display: flex;
    margin-bottom: 3.125rem;
    padding: 2.5rem 0;
  }
  .sv-contact-header.sv--mini{
    margin-bottom: 3.125rem;
  }
  .sv-contact-header__image{
    flex: 0 0 35%;
  }
  .sv--mini .sv-contact-header__image{
    max-width: 6.875rem;
  }
  .sv-contact-header__details{
    flex: 1 0 65%;
    margin-left: 1.875rem;
    margin-top: 0.625rem;
  }
  .sv--mini .sv-contact-header__details{
    margin-left: 1.875rem;
  }
  .sv-contact-header__name{
    margin: 1.25rem 0 0.625rem;
  }
  .sv--mini .sv-contact-header__name{
    font-size: 1.625rem;
  }
  .sv-contact-header__telephone{
    margin-top: 1.25rem;
  }
  .sv-contact-header .sv--office-contact{
    margin-top: 0;
  }
  .sv-content-header.sv--has-image .sv-content-header__content-wrap{
    height: 20.3125rem;
  }
  .sv-content-header.sv--has-image .sv-content-header__content{
    padding-top: 6.8125rem;
  }
  .sv--cookie-warning .sv-content-header.sv--has-image .sv-content-header__content{
    padding-top: calc(2.6875rem + 6vw);
  }
  .sv-content-row.sv--featured .sv-content-row__heading{
    margin-bottom: 1.5rem;
  }
  .sv-content-row{
    margin-top: 2.0625rem;
    padding-bottom: 2.0625rem;
  }
  .sv-content-row__col{
    margin-bottom: 0;
  }
  .sv-content-row__heading{
    font-size: 1rem;
    margin-bottom: 0.8125rem;
  }
  .sv-content-row__content{
    font-size: 1rem;
    line-height: 1.5rem;
  }
  .sv-content-row .sv-list{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
  .sv-content-row .sv-list li{
    flex: 1 0 50%;
    max-width: 50%;
    font-size: 0.875rem;
    line-height: 1.5rem;
    margin-bottom: 0.625rem;
  }
  .sv-content-row .sv-list li:nth-last-of-type(-n+2){
    margin-bottom: 0;
  }
  .sv-content-row.sv--featured .sv-content-row__heading{
    line-height: 1.5625rem;
  }
  .sv-content-row.sv--no-border:first-of-type{
    margin-top: 4rem;
  }
  .sv-cta-links.sv--fixed-lt-lrg .sv-button{
    max-width: 16rem;
    margin-right: 1.25rem;
    margin-left: 1.25rem;
  }
  .sv-cta-links.sv--fixed-lt-lrg .sv-button.sv--tertiary{
    max-width: 16rem;
    display: block;
  }
  .sv-cta-promo{
    min-height: 26.25rem;
    /* cheating to match the standard heigt of the generic cards. TODO: find a fluid and graceful way to handle this */
  }
  .sv-expandable-item__header{
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
  }
  .sv-expandable-item__header::before{
    width: 1.375rem;
    height: 1.375rem;
    top: 1.1875rem;
    right: 1rem;
  }
  .sv-expandable-item__title{
    line-height: 1.8;
  }
  .sv-expandable-item__content p{
    font-size: 0.875rem;
  }
  .sv-facts__button{
    text-align: center;
    margin-top: 1rem;
  }
  .sv-facts__button .sv-button{
    min-width: 15.1875rem;
  }
  .sv-facts.sv--has-divider{
    margin-top: 0;
  }
  .sv--has-divider .sv-facts__background{
    height: 1px;
    top: 50%;
    background: #c9c9c9;
  }
  .sv--has-heading .sv-facts__content{
    margin-top: 2.5rem;
  }
  .sv--has-heading .sv-facts__title{
    font-size: 2.5rem;
    line-height: 1.15;
    margin-bottom: 1.25rem;
  }
  .sv--has-heading .sv-facts__intro{
    font-size: 1rem;
    line-height: 1.5;
    max-width: 84%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3.125rem;
    letter-spacing: -.4px;
  }
  .sv-fact__term, .sv-fact__value{
    max-width: none;
  }
  .sv-fact__term{
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .sv-fact__value{
    height: 3.75rem;
    overflow: hidden;
    font-size: 2.8125rem;
    line-height: 1.3;
  }
  .sv-fact__value.sv--text{
    letter-spacing: -1px;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 1.1875rem;
    line-height: 1.5;
  }
  .sv-featured-card{
    display: block;
    height: 18.75rem;
  }
  .sv-featured-card__image{
    width: 100%;
    height: 100%;
  }
  .sv-featured-card__image .sv-image-treatment{
    max-height: 100%;
  }
  .sv-featured-card__content{
    color: #fff;
    padding: 0 0 0 2rem;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .sv-featured-card__title{
    font-size: 2.125rem;
    line-height: 1.176;
    max-height: 5.25rem;
    margin: 0 0 0.5rem;
    width: 64%;
  }
  .sv-featured-card__intro{
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.666;
    margin: 0 0 1.5rem;
    max-height: 4.125rem;
    width: 60%;
  }
  .sv-featured-card__link .sv-button{
    width: auto;
    width: initial;
    margin: 0;
  }
  .sv-featured-card .sv-card-meta{
    margin: 0 0 0.5rem;
    color: #ffdf00;
    font-weight: 300;
  }
  .sv-featured-card__secondary{
    margin-left: 0.625rem;
  }
  .sv-featured-card__secondary-wide{
    display: inline-block;
  }
  .sv-featured-card__secondary-narrow{
    display: none;
  }
  .sv-featured-card.sv--new-development .sv-card-meta{
    color: #7987b5;
  }
  .sv-featured-content{
    display: flex;
    flex-direction: row;
    height: 16.875rem;
  }
  .sv-featured-content__image, .sv-featured-content__content{
    position: relative;
    width: calc(50% + 4rem);
  }
  .sv-featured-content__image{
    margin: 2rem 0 2rem;
    z-index: 0;
  }
  .sv-featured-content__image .sv-image-treatment{
    max-height: 100%;
  }
  .sv-featured-content__content{
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 1.5rem 0 2rem;
    margin-left: -4rem;
    z-index: 1;
  }
  .sv-featured-content__title, .sv-featured-content__intro{
    margin-bottom: 1rem;
  }
  .sv-featured-content__links{
    display: flex;
    flex-direction: row;
    width: 100%;
  }
  .sv-featured-content__link:not(:last-child){
    margin-bottom: 0;
    margin-right: 1rem;
  }
  .sv-featured-content.sv--swap{
    flex-direction: row-reverse;
  }
  .sv-featured-content.sv--swap .sv-featured-content__content{
    margin-left: 0;
    margin-right: -4rem;
  }
  .sv-filter-bar .sv-select__container::before{
    padding-top: 0.8125rem !important;
    padding-bottom: 0.625rem !important;
  }
  .sv-filter-search{
    border-top-width: 1px;
    font-size: 0.875rem;
  }
  .sv-filter-search__results.sv--sml{
    display: block;
  }
  .sv-filter-search__results.sv--lt-sml{
    display: none;
  }
  .sv-filter-search__filters{
    margin-right: 0;
    padding-top: 0;
  }
  .sv-filter-search .sv-results-indicator{
    text-align: left;
  }
  .sv-filter-search .sv-custom-input.sv--dropdown{
    margin-bottom: 0;
  }
  .sv-filter-search .sv--radio .sv-custom-input__check{
    line-height: 1.4;
  }
  .sv-language-selector__country{
    height: 2.625rem;
  }
  .sv-language-selector__country-flag{
    height: 2.625rem;
  }
  .sv-language-selector__country-flag.sv-flag::before{
    margin-right: 5px;
    margin-bottom: -2px;
  }
  .sv-language-selector button{
    width: 100%;
  }
  .sv-language-selector__country-name{
    display: inline-block;
    line-height: 1.5rem;
  }
  .sv-language-selector__country-dropdown, .sv-language-selector__language-dropdown{
    max-width: 20rem;
    margin: 0 auto;
  }
  .sv-list-group__label{
    font-size: 0.875rem;
  }
  .sv-map{
    height: 22.5rem;
  }
  .sv-page-banner__title{
    font-size: 2.5rem;
  }
  .sv-page-banner__intro{
    max-width: 30.3125rem;
    font-size: 0.875rem;
  }
  .sv-page-banner .sv-button{
    margin: 1.5rem 0 0;
  }
  .sv-page-banner.sv--secondary-banner{
    height: 32.125rem;
  }
  .sv-page-banner.sv--secondary-banner .sv-image-treatment{
    position: absolute;
  }
  .sv-page-banner.sv--secondary-banner .sv--type-1::before{
    display: block;
  }
  .sv-page-banner.sv--secondary-banner .sv-page-banner__content{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    max-width: 50rem;
  }
  .sv-page-banner.sv--secondary-banner .sv-page-banner__category{
    font-size: 1.125rem;
  }
  .sv-page-banner.sv--secondary-banner .sv-page-banner__title{
    color: #fff;
    font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica', 'Arial', 'sans-serif';
    margin-bottom: 1.25rem;
    margin-top: 1.25rem;
    font-size: 3.125rem;
    font-weight: 300;
    line-height: 3.75rem;
  }
  .sv-page-banner.sv--secondary-banner .sv-page-banner__intro{
    color: #fff;
    font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
    font-size: 1rem;
    margin-bottom: 2.5rem;
    line-height: 1.5rem;
  }
  .sv-page-banner.sv--secondary-banner .sv-page-banner__category{
    color: #ffdf00;
  }
  .sv-page-header{
    padding: 2.8125rem 2rem;
  }
  .sv-page-header__title{
    font-size: 2.8125rem;
  }
  .sv-page-header__intro{
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .sv-page-header.sv--secondary .sv-page-header__title{
    font-size: 1.5rem;
    padding-bottom: 2rem;
  }
  .sv-page-header.sv--secondary .sv-page-header__intro{
    font-size: 0.875rem;
  }
  .sv-page-header.sv--tertiary{
    padding: 4rem 0;
  }
  .sv-page-header.sv--secondary-heading .sv-page-header__title{
    font-size: 3rem;
  }
  .sv-page-header.sv--has-image{
    padding: 0;
  }
  .sv-page-header.sv--has-image .sv-page-header__container{
    overflow: hidden;
  }
  .sv-page-header.sv--has-image .sv-page-header__content{
    align-items: flex-end;
    display: flex;
    height: 21.875rem;
    position: relative;
    z-index: 2;
  }
  .sv-page-header.sv--has-image .sv-page-header__content-inner{
    padding: 0 2rem;
    margin-bottom: 3rem;
  }
  .sv-page-header.sv--has-image .sv-page-header__title{
    line-height: 1.2;
    margin: 0 0 1rem;
  }
  .sv-page-header.sv--has-image .sv-page-header__intro{
    display: block;
    margin: 0 1.25rem;
    font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
    font-weight: 400;
    color: #fff;
  }
  .sv-page-header.sv--has-image .sv-image-treatment{
    left: 0;
    min-height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
  }
  .sv--full-width.sv--type-residential.sv--search-type-buy .sv-details__price, .sv--full-width.sv--type-new-development.sv--search-type-buy .sv-details__price{
    margin-bottom: 0.4375rem;
  }
  .sv--full-width.sv--type-farm.sv--search-type-buy .sv-details__price, .sv-details__price .sv--full-width.sv--type-farm.sv--search-type-rent{
    margin-bottom: 0.25rem;
  }
  .sv-property-card.sv--parent{
    margin-bottom: 0;
  }
  .sv-property-card.sv--full-width .sv-card__bg.sv--card-1{
    top: 2.5%;
    width: 0.3125rem;
    left: 100%;
    height: 95%;
  }
  .sv-property-card.sv--full-width .sv-card__bg.sv--card-2{
    top: 5%;
    width: 0.625rem;
    left: 100%;
    height: 90%;
  }
  .sv-property-card.sv--full-width{
    height: 15.625rem;
    display: flex;
    flex-direction: row;
    /* stylelint-enable selector-max-specificity */
  }
  .sv-property-card.sv--full-width .sv-card__bg{
    box-shadow: 1px 0.125rem 0.1875rem rgba(0,0,0, .17);
  }
  /* stylelint-disable selector-max-specificity */
  .sv-property-card.sv--full-width .sv-slider{
    flex: 1 1 50%;
    height: 100%;
    padding-bottom: 0;
    padding-bottom: initial;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save span{
    display: inline;
    padding-left: 0.3125rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save-inline button{
    display: inline;
  }
  .sv-property-card.sv--full-width .sv-details{
    display: block;
    flex: 1 1 50%;
    height: 100%;
    max-width: 50%;
  }
  .sv-property-card.sv--full-width .sv-details__content{
    margin-top: 2.125rem;
    min-height: inherit;
  }
  .sv-property-card.sv--full-width .sv-details__address1{
    font-size: 1rem;
    margin: 0;
    overflow: hidden;
    /* TODO: Remove once ellipsis solution for search */
  }
  .sv-property-card.sv--full-width .sv-details__address2{
    display: block;
    margin-bottom: 0.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .sv-property-card.sv--full-width .sv-details__price{
    line-height: 1.1;
  }
  .sv-property-card.sv--full-width .sv-details__features{
    display: block;
    order: 4;
  }
  .sv-property-card.sv--full-width .sv-details__footer{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .sv-property-card.sv--full-width .sv-details .sv-property-attribute{
    font-size: 0.625rem;
  }
  .sv-property-card.sv--full-width.sv--type-residential .sv-details .sv-property-attribute.sv--residential{
    display: inline-block;
    margin-left: 0;
  }
  /* commercial & farm */
  .sv-property-card.sv--full-width.sv--type-farm .sv-details__address1, .sv-property-card.sv--full-width.sv--type-commercial .sv-details__address1{
    font-size: 1.375rem;
    line-height: 1.625rem;
    max-height: 3.375rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm .sv-details__size, .sv-property-card.sv--full-width.sv--type-commercial .sv-details__size{
    display: block;
  }
  .sv-property-card.sv--full-width.sv--type-farm .sv-details .sv-property-attribute.sv--rural, .sv-property-card.sv--full-width.sv--type-farm .sv-details .sv-property-attribute.sv--commercial, .sv-property-card.sv--full-width.sv--type-commercial .sv-details .sv-property-attribute.sv--rural, .sv-property-card.sv--full-width.sv--type-commercial .sv-details .sv-property-attribute.sv--commercial{
    display: inline-block;
    margin-left: 0;
  }
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-new-development.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-commercial .sv-details__content, .sv-property-card.sv--full-width.sv--type-farm .sv-details__content{
    margin-top: 0.875rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm .sv-details .sv-property-attribute.sv--size, .sv-property-card.sv--full-width.sv--type-commercial .sv-details .sv-property-attribute.sv--size{
    display: inline-block;
  }
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__content{
    margin-top: 1rem;
  }
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__price{
    line-height: 1.3;
  }
  .sv-property-card.sv--full-width.sv--type-farm{
    height: 15.625rem;
  }
  .sv-property-card.sv--full-width.sv--type-new-development{
    height: 14.6875rem;
  }
  .sv-property-card.sv--full-width.sv--type-new-development .sv-details__content{
    margin-top: 2rem;
  }
  .sv-property-card.sv--full-width.sv--type-new-development .sv-details__address1, .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-buy .sv-details__address1, .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__address1{
    max-height: 1.25rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .sv-rich-card.sv--quarternary{
    padding: 10rem 0.75rem 0;
  }
  .sv-rich-card.sv--quarternary .sv-rich-card__bg{
    height: 70%;
  }
  .sv-rich-card.sv--quarternary .sv-rich-card__detail{
    padding-top: 1.4375rem;
    padding-bottom: 1.4375rem;
  }
  .sv-rich-card.sv--quarternary .sv-card-intro{
    margin-bottom: 0.6875rem;
  }
  .sv-rich-card.sv--fixed-height .sv-card-intro{
    max-height: 7.125rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-rich-card.sv--fixed-height:not(.sv--secondary):not(.sv--tertiary) .sv-card-intro{
    margin-bottom: 1rem;
  }
  /* stylelint-enable selector-max-specificity */
  .sv-rich-card.sv--fixed-height.sv--secondary .sv-card-intro{
    max-height: 4rem;
  }
  .sv-rich-card.sv--fixed-height.sv--tertiary .sv-card-title{
    height: auto;
    max-height: 5.1875rem;
  }
  .sv-rich-card.sv--fixed-height.sv--tertiary .sv-card-intro{
    margin-bottom: 0;
  }
  .sv-rich-card.sv--fixed-height.sv--secondary .sv-card-tags-container{
    position: absolute;
    height: auto;
    width: 100%;
    bottom: 0.625rem;
    margin-bottom: 0;
  }
  .sv-rich-card__detail{
    height: 8.125rem;
  }
  .sv-selection-panel{
    font-size: 1.5rem;
  }
  .sv-selection-panel .sv--dropdown{
    margin-right: .5em;
  }
  .sv-selection-panel .sv-button{
    margin-right: 2rem;
    margin-left: 0.5rem;
  }
  .sv-selection-panel.sv--alt{
    font-size: 2.5rem;
    background-color: transparent;
    padding: 4.5rem 0 1.5rem;
  }
  .sv-selection-panel.sv--alt .sv-selection-panel__content{
    display: block;
    min-height: 0;
  }
  .sv-selection-panel.sv--alt .sv-button{
    margin-bottom: 3.125rem;
  }
  .sv-share-price__market-cap, .sv-share-price__last-close, .sv-share-price__current-value, .sv-share-price__info-cta-narrow, .sv-share-price__info-cta-wide{
    display: block;
    flex: 1 0 auto;
    text-align: center;
  }
  .sv-share-price__info-cta-narrow{
    display: block;
  }
  .sv-share-price__info-cta-wide{
    display: none;
  }
  .sv-share-this-article__share{
    width: 35.625rem;
    max-width: 35.625rem;
  }
  .sv-share-this-article__share-item{
    height: 4.0625rem;
    width: 4.0625rem;
  }
  .sv-share-this-article__copy{
    width: 35.625rem;
  }
  .sv-social__group{
    padding-top: 0;
  }
  .sv-tabs-panel{
    flex-direction: row;
    width: auto;
    width: initial;
    transform: none;
    margin-top: 2rem;
  }
  .sv-tab-card{
    flex: 1;
    border-bottom: none;
    padding: 0;
  }
  .sv-tab-card:last-child .sv-tab-card__title, .sv-tab-card:last-child .sv-tab-card__intro{
    border-right: none;
  }
  .sv-tab-card:first-child{
    border-top: none;
  }
  .sv-tab-card__header{
    display: block;
    padding-top: 1rem;
    flex: 1;
  }
  .sv-tab-card__title, .sv-tab-card__intro{
    border-right: 1px solid #c9c9c9;
  }
  .sv-tab-card__title{
    font-size: 1.25rem;
    padding-left: 0;
  }
  .sv-tab-card__intro{
    padding: 1.125rem 10%;
    flex: 1;
    font-size: 0.75rem;
  }
  .sv-tab-card .sv-image{
    padding-bottom: 1rem;
    height: 2rem;
  }
  .sv-tab-card .sv-image img{
    width: 3.75rem;
  }
  .sv-tabs-panel.sv--alt .sv-tab-card__title{
    font-size: 1.5rem;
  }
  .sv-tabs-panel.sv--content-nav{
    justify-content: space-around;
    margin-top: 0;
  }
  .sv-tabs-panel.sv--content-nav .sv-tab-card{
    flex: 0;
    flex-basis: auto;
    padding: 0.875rem 4rem 0.9375rem;
  }
  .sv-tabs-panel.sv--content-nav .sv-tab-card__header{
    padding-top: 0;
  }
  .sv-tabs-panel.sv--content-nav .sv-tab-card__title{
    font-size: 0.875rem;
  }
  .sv-usp{
    flex-direction: row;
    margin-bottom: 0;
  }
  .sv-usp > :first-child{
    border-right: 0.25rem solid #ffdf00;
  }
  .sv-usp > :last-child{
    border-right: none;
  }
  .sv-usp__imagery, .sv-usp__content{
    width: 50%;
  }
  .sv-usp__imagery{
    margin-bottom: 0;
    border-left: none;
  }
  .sv-usp__horizontal-rule{
    width: 1.875rem;
  }
  .sv-usp__image.sv--primary{
    margin-bottom: 1.5rem;
  }
  .sv-usp__content{
    padding-top: 6.5%;
    padding-left: 5%;
    padding-right: 5%;
  }
  .sv-usp__title{
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 0.875rem;
    max-width: 86%;
  }
  /* Child differences */
  .sv-usp:nth-child(2){
    flex-direction: row-reverse;
  }
  .sv-usp:nth-child(2) > :first-child{
    border-right: none;
  }
  .sv-usp:nth-child(2) > :last-child{
    border-right: 0.25rem solid #ffdf00;
  }
  .sv-usp:nth-child(2) .sv-usp__content{
    padding-left: 3%;
  }
  .sv-usp:nth-child(3) .sv-usp__image.sv--primary{
    margin-top: 1.25rem;
  }
  .sv-s404__content{
    max-width: 65rem;
    display: flex;
    margin: 7.5rem auto 25rem;
    align-items: center;
  }
  .sv-s404__content-image{
    flex: 3;
    padding-right: 0;
  }
  .sv-s404__content-text{
    flex: 5;
    padding-left: 1.25rem;
  }
  .sv-award-row{
    margin-bottom: 2rem;
  }
  .sv-award-row__header{
    margin-bottom: 2rem;
  }
  .sv-award-row__title{
    margin-top: 0.625rem;
    margin-bottom: 0;
  }
  .sv-award-row__button{
    text-align: right;
  }
  .sv-award-row__button .sv-button{
    margin-bottom: 0;
  }
  .sv-card-listings__title{
    font-size: 1.875rem;
    line-height: 4;
    margin-bottom: 0;
  }
  .sv-card-listings .sv-card.sv--listing-row{
    padding: 1.5rem 0 0;
    margin: 0.5rem 0 0;
  }
  .sv-cta-block-row__wrap{
    border-top: 1px solid #e2e3e5;
    border-bottom: 1px solid #e2e3e5;
  }
  .sv-cta-block-row .sv-col:last-child{
    border-bottom: none;
  }
  .sv-cta-block-row .sv-card{
    border-top: none;
  }
  .sv-cta-block-row + .sv-cta-block-row .sv-cta-block-row__wrap{
    border-top: none;
  }
  .sv-footer__inner{
    padding-top: 2rem;
  }
  .sv-footer__list{
    font-size: 0.6875rem;
  }
  .sv-footer__list-item{
    margin-bottom: 0;
  }
  .sv-footer__info .sv-footer__list-item{
    display: inline-block;
    margin-right: 1rem;
    max-width: 15rem;
    width: auto;
  }
  .sv-footer__heading{
    margin-bottom: 1.25rem;
  }
  .sv-header{
    height: 4.125rem;
  }
  .sv-header.sv--has-breadcrumbs{
    height: 6.75rem;
  }
  .sv-header__logo{
    height: 4.125rem;
  }
  .sv-header__tool-item{
    padding: 0.75rem 0;
    height: 4.125rem;
  }
  .sv-header__tool-item.sv--search .sv-header__tool-action span, .sv-header__tool-item.sv--login .sv-header__tool-action span{
    padding-right: 1.5rem;
  }
  .sv-header__tool-item.sv--menu .sv-header__tool-action span{
    padding-right: 1.875rem;
    width: auto;
  }
  .sv-header__tool-action{
    height: 2.625rem;
    padding: 0 0.75rem;
  }
  .sv-header__tool-action span{
    width: auto;
    overflow: visible;
    text-indent: 0;
    white-space: normal;
  }
  .sv--is-modal .sv-login-form{
    padding: 0 4.375rem 3.75rem;
  }
  .sv-login-form .sv-block-grid.sv--sml-3 > .sv-col{
    width: auto;
  }
  .sv-market-appraisal{
    margin: 4rem 0 0;
  }
  .sv-market-property .sv-featured-content{
    margin: 3rem 0 !important;
  }
  .sv-micro-contact-list__title{
    margin-bottom: 0.625rem;
  }
  /* Hide Primary action button */
  .sv-micro-contact-list__button .sv-button{
    display: none;
  }
  .sv-sub-nav__link-tree{
    margin: 0 2rem 2rem 0;
    width: calc(99% / 3 - 1.5rem);
  }
  .sv-sub-nav__link-tree:nth-of-type(3n){
    margin-right: 0;
  }
  .sv-nav__lead{
    /* stylelint-disable function-whitespace-after */
    background: url(/_images/logos/savills-square.svg) 2rem 0 no-repeat;
    background-size: 4.125rem 4.125rem;
    background-color: #fff;
    height: 4.125rem;
    padding-left: 4.125rem;
    /* stylelint-enable function-whitespace-after */
  }
  .sv-nav__heading{
    left: 6.125rem;
  }
  .sv-nav__close{
    padding: 0.75rem 1rem;
  }
  .sv-nav__label{
    font-size: 1.5625rem;
    padding: 2.125rem;
  }
  .sv-nav__items{
    padding: 4.125rem 0 0;
  }
  .sv-profile-header__content{
    height: 15.9375rem;
  }
  .sv-profile-header__title{
    font-size: 2.5rem;
    line-height: 3rem;
    margin: 1.875rem 0 0;
  }
  .sv-profile-header__subtitle{
    font-size: 1rem;
  }
  .sv-profile-header__intro, .sv-profile-header__intro.sv--no-subtitle{
    font-size: 1.125rem;
  }
  .sv-profile-header.sv--has-image .sv-profile-header__content{
    height: 20.3125rem;
  }
  .sv-profile-intro{
    margin-bottom: 1.125rem;
  }
  .sv-profile-intro__title{
    margin-top: 0;
  }
  .sv-profile-intro__intro{
    margin-top: 1.125rem;
  }
  .sv-profile-intro.sv--has-image .sv-profile-intro__title{
    margin-top: 0;
  }
  .sv-services-list-preview{
    padding: 4rem 0;
  }
  .sv-services-list-preview__title{
    font-size: 2.5rem;
    margin-left: 6rem;
    margin-right: 6rem;
  }
  .sv-services-list-preview__intro{
    margin: 0 2rem 4rem;
  }
  .sv-services-list-preview__view-more{
    margin-top: 3rem;
  }
  .sv-usps{
    margin-bottom: 2rem;
  }
  .sv-usps__title{
    font-size: 2.5rem;
    line-height: 1.25;
    max-width: 40.625rem;
    margin-bottom: 2rem;
  }
  .sv-usps__button{
    margin-top: 2rem;
    text-align: center;
  }
  .sv-usps__button .sv-button{
    min-width: 14.875rem;
  }
  .sv-tabbed-slider .sv-tabs-panel{
    margin-top: 0.5rem;
    padding: 0 !important;
  }
  .sv-tabbed-slider .sv-tabs-panel .sv-tab-card{
    flex: 0 1 auto;
    padding: 0.5rem 0.875rem;
  }
  .sv-tabbed-slider .sv-tabs-panel .sv-tab-card__header{
    padding-top: 0;
  }
  .sv-tabbed-slider .sv-tabs-panel .sv-tab-card__title{
    border-right: 0;
    font-size: 0.875rem;
  }
  .sv-maintenance{
    padding-top: 6rem;
  }
  .sv-maintenance__logo-link{
    width: 7.5rem;
    height: 7.5rem;
  }
  .sv-maintenance__heading{
    font-size: 2.25rem;
  }
  .sv-search-results .sv-card.sv--listing-row.sv--full-width .sv-card-intro{
    margin-bottom: 0;
  }
}
@media (min-width: 1024px){
  .sv-view-gt-med{
    display: inline;
    display: initial;
  }
  .sv-view-lt-xsml, .sv-view-lt-sml, .sv-view-lt-med{
    display: none;
  }
  .sv-anchor::before{
    height: 4.125rem;
    margin-top: -4.125rem;
  }
  .sv-button{
    transition: background-position .235s cubic-bezier(.86, 0, .2, 1);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23ffdf00%22%2F%3E%0D%0A%3C%2Fsvg%3E");
    background-size: 202% auto;
    /* Additional 2% to combat inconsistent rendering where right side of bg is sometimes visible by .5px */
    background-position: 100%;
    background-repeat: no-repeat;
  }
  .sv-button:hover, .sv-button:focus{
    background-position: -0.9375rem;
    color: #ffdf00;
  }
  .sv-button:active{
    background-position: 0;
    color: #ffdf00;
  }
  .sv-button.sv--link > a:hover, .sv-button.sv--link > a:focus{
    color: #ffdf00;
  }
  .sv-button.sv--link.sv--secondary > a:hover, .sv-button.sv--link.sv--secondary > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--tertiary > a:hover, .sv-button.sv--link.sv--tertiary > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--tertiary.sv--light > a:hover, .sv-button.sv--link.sv--tertiary.sv--light > a:focus{
    color: #252839;
  }
  .sv-button.sv--link.sv--tertiary.sv--yellow > a:hover, .sv-button.sv--link.sv--tertiary.sv--yellow > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--tertiary.sv--grey > a:hover, .sv-button.sv--link.sv--tertiary.sv--grey > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--dark > a:hover, .sv-button.sv--link.sv--dark > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--light > a:hover, .sv-button.sv--link.sv--light > a:focus{
    color: #fff;
  }
  .sv-button.sv--link.sv--new-development > a:hover, .sv-button.sv--link.sv--new-development > a:focus{
    color: #fff;
  }
  .sv-button.sv--icon:hover::before, .sv-button.sv--icon:focus::before{
    transform: translateX(0);
    opacity: 1;
  }
  .sv-button.sv--icon:hover::after, .sv-button.sv--icon:focus::after{
    transform: translateX(1.875rem);
    opacity: 0;
  }
  .sv-button.sv--secondary{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%2378828b%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--secondary:hover, .sv-button.sv--secondary:focus{
    color: #fff;
  }
  .sv-button.sv--secondary:hover::before, .sv-button.sv--secondary:focus::before{
    opacity: 1;
  }
  .sv-button.sv--secondary:hover::after, .sv-button.sv--secondary:focus::after{
    opacity: 0;
  }
  .sv-button.sv--secondary:active{
    color: #fff;
  }
  .sv-button.sv--secondary:active::before{
    opacity: 1;
  }
  .sv-button.sv--secondary:active::after{
    opacity: 0;
  }
  .sv-button.sv--tertiary{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22transparent%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--tertiary:hover, .sv-button.sv--tertiary:focus{
    color: #fff;
  }
  .sv-button.sv--tertiary:hover::before, .sv-button.sv--tertiary:focus::before{
    opacity: 1;
  }
  .sv-button.sv--tertiary:hover::after, .sv-button.sv--tertiary:focus::after{
    opacity: 0;
  }
  @media (min-width: 1024px){
    .sv-button.sv--tertiary:hover::after, .sv-button.sv--tertiary:focus::after{
      opacity: 1;
    }
  }
  .sv-button.sv--tertiary:hover::after, .sv-button.sv--tertiary:focus::after{
    opacity: 1;
  }
  .sv-button.sv--tertiary:active{
    color: #fff;
  }
  .sv-button.sv--tertiary:active::before{
    opacity: 1;
  }
  .sv-button.sv--tertiary:active::after{
    opacity: 0;
  }
  .sv-button.sv--tertiary.sv--light{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23fff%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22transparent%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--tertiary.sv--light:hover, .sv-button.sv--tertiary.sv--light:focus{
    color: #252839;
  }
  .sv-button.sv--tertiary.sv--light:active{
    color: #252839;
  }
  .sv-button.sv--tertiary.sv--yellow{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23ffdf00%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22transparent%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--tertiary.sv--yellow:hover > a, .sv-button.sv--tertiary.sv--yellow:focus > a{
    color: #fff;
  }
  .sv-button.sv--tertiary.sv--yellow:active > a{
    color: #fff;
  }
  .sv-button.sv--tertiary.sv--grey{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23a3a4a9%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22transparent%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--tertiary.sv--grey:hover > a, .sv-button.sv--tertiary.sv--grey:focus > a{
    color: #252839;
  }
  .sv-button.sv--tertiary.sv--grey:active > a{
    color: #252839;
  }
  .sv-button.sv--dark{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%234c4d50%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--dark:hover, .sv-button.sv--dark:focus{
    color: #fff;
  }
  .sv-button.sv--dark:hover::before, .sv-button.sv--dark:focus::before{
    opacity: 1;
  }
  .sv-button.sv--dark:hover::after, .sv-button.sv--dark:focus::after{
    opacity: 0;
  }
  .sv-button.sv--dark:active{
    color: #fff;
  }
  .sv-button.sv--dark:active::before{
    opacity: 1;
  }
  .sv-button.sv--dark:active::after{
    opacity: 0;
  }
  .sv-button.sv--light{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23fff%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--light:hover, .sv-button.sv--light:focus{
    color: #fff;
  }
  .sv-button.sv--light:hover::before, .sv-button.sv--light:focus::before{
    opacity: 1;
  }
  .sv-button.sv--light:hover::after, .sv-button.sv--light:focus::after{
    opacity: 0;
  }
  .sv-button.sv--light:active{
    color: #fff;
  }
  .sv-button.sv--light:active::before{
    opacity: 1;
  }
  .sv-button.sv--light:active::after{
    opacity: 0;
  }
  .sv-button.sv--new-development{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%222%20100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20height%3D%22100%22%20width%3D%222%22%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--left%22%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%23252839%22%2F%3E%0D%0A%20%20%3Crect%20class%3D%22sv-button-bg--right%22%20x%3D%221%22%20y%3D%220%22%20width%3D%221%22%20height%3D%22100%22%20fill%3D%22%237987b5%22%2F%3E%0D%0A%3C%2Fsvg%3E");
  }
  .sv-button.sv--new-development:hover, .sv-button.sv--new-development:focus{
    color: #fff;
  }
  .sv-button.sv--new-development:hover::before, .sv-button.sv--new-development:focus::before{
    opacity: 1;
  }
  .sv-button.sv--new-development:hover::after, .sv-button.sv--new-development:focus::after{
    opacity: 0;
  }
  .sv-button.sv--new-development:active{
    color: #fff;
  }
  .sv-button.sv--new-development:active::before{
    opacity: 1;
  }
  .sv-button.sv--new-development:active::after{
    opacity: 0;
  }
  .sv-favourite__image{
    top: 0.1875rem;
  }
  .sv-property-card.sv--full-width .sv-favourite__image{
    margin-right: 0.5rem;
  }
  .sv-property-card.sv--full-width .sv-favourite:not(.sv--remove-property) span{
    clip: auto;
    height: auto;
    margin: auto;
    overflow: visible;
    padding: 0;
    position: relative;
    width: auto;
  }
  input[type=search], input[type=text], input[type=tel], input[type=email], input[type=number], input[type=month], input[type=date], input[type=datetime], input[type=datetime-local], input[type=password], input[type=time], input[type=url], input[type=week], textarea, select{
    font-size: 0.875rem;
  }
  /* Breakpoint specific flow switching */
  .sv-row.sv--med-right > .sv-col{
    float: right !important;
    margin-right: 0 !important;
    margin-left: 1rem;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-row.sv--med-right > .sv-col:last-child{
    margin-left: 0;
  }
  /* Breakpoint specific height matching */
  .sv-row.sv--med-equal{
    display: flex;
    flex-wrap: wrap;
  }
  .sv-row.sv--med-equal > .sv-col{
    display: flex;
  }
  .sv-col.sv--med-1{
    width: calc(99.9% * 1/12 - 0.9167rem);
  }
  .sv-col.sv--med-1:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-1:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-1:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-1:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-2{
    width: calc(99.9% * 2/12 - 0.8333rem);
  }
  .sv-col.sv--med-2:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-2:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-2:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-2:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-3{
    width: calc(99.9% * 3/12 - 0.75rem);
  }
  .sv-col.sv--med-3:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-3:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-3:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-3:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-4{
    width: calc(99.9% * 4/12 - 0.6667rem);
  }
  .sv-col.sv--med-4:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-4:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-4:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-4:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-5{
    width: calc(99.9% * 5/12 - 0.5833rem);
  }
  .sv-col.sv--med-5:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-5:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-5:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-5:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-6{
    width: calc(99.9% * 6/12 - 0.5rem);
  }
  .sv-col.sv--med-6:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-6:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-6:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-6:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-7{
    width: calc(99.9% * 7/12 - 0.4167rem);
  }
  .sv-col.sv--med-7:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-7:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-7:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-7:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-8{
    width: calc(99.9% * 8/12 - 0.3333rem);
  }
  .sv-col.sv--med-8:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-8:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-8:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-8:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-9{
    width: calc(99.9% * 9/12 - 0.25rem);
  }
  .sv-col.sv--med-9:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-9:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-9:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-9:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-10{
    width: calc(99.9% * 10/12 - 0.1667rem);
  }
  .sv-col.sv--med-10:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-10:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-10:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-10:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-11{
    width: calc(99.9% * 11/12 - 1.333333333333334px);
  }
  .sv-col.sv--med-11:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-11:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-11:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-11:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-12{
    width: calc(99.9% * 12/12 - 0px);
  }
  .sv-col.sv--med-12:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--med-12:last-child{
    margin-right: 0;
  }
  .sv-col.sv--med-12:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--med-12:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--med-offset-1{
    margin-left: calc(99.9% * 0.083333333333333 - 0.9167rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-2{
    margin-left: calc(99.9% * 0.166666666666667 - 0.8333rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-3{
    margin-left: calc(99.9% * 0.25 - 0.75rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-4{
    margin-left: calc(99.9% * 0.333333333333333 - 0.6667rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-5{
    margin-left: calc(99.9% * 0.416666666666667 - 0.5833rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-6{
    margin-left: calc(99.9% * 0.5 - 0.5rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-7{
    margin-left: calc(99.9% * 0.583333333333333 - 0.4167rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-8{
    margin-left: calc(99.9% * 0.666666666666667 - 0.3333rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-9{
    margin-left: calc(99.9% * 0.75 - 0.25rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-10{
    margin-left: calc(99.9% * 0.833333333333333 - 0.1667rem + 1rem) !important;
  }
  .sv-col.sv--med-offset-11{
    margin-left: calc(99.9% * 0.916666666666667 - 1.333333333333329px + 1rem) !important;
  }
  .sv-col.sv--med-offset-12{
    margin-left: calc(99.9% * 1 - 0px + 1rem) !important;
  }
  .sv-block-grid.sv--med-2 > .sv-col{
    width: calc(99.9% * 1/2 - 0.5rem);
    height: calc(99.9% * 1/2 - 0.5rem);
  }
  .sv-block-grid.sv--med-2 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-2 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-2 > .sv-col:nth-child(2n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-2 > .sv-col:nth-child(2n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-2 > .sv-col:nth-last-child(-n + 2){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-3 > .sv-col{
    width: calc(99.9% * 1/3 - 0.6667rem);
    height: calc(99.9% * 1/3 - 0.6667rem);
  }
  .sv-block-grid.sv--med-3 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-3 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-3 > .sv-col:nth-child(3n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-3 > .sv-col:nth-child(3n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-3 > .sv-col:nth-last-child(-n + 3){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-4 > .sv-col{
    width: calc(99.9% * 1/4 - 0.75rem);
    height: calc(99.9% * 1/4 - 0.75rem);
  }
  .sv-block-grid.sv--med-4 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-4 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-4 > .sv-col:nth-child(4n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-4 > .sv-col:nth-child(4n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-4 > .sv-col:nth-last-child(-n + 4){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-5 > .sv-col{
    width: calc(99.9% * 1/5 - 0.8rem);
    height: calc(99.9% * 1/5 - 0.8rem);
  }
  .sv-block-grid.sv--med-5 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-5 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-5 > .sv-col:nth-child(5n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-5 > .sv-col:nth-child(5n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-5 > .sv-col:nth-last-child(-n + 5){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-6 > .sv-col{
    width: calc(99.9% * 1/6 - 0.8333rem);
    height: calc(99.9% * 1/6 - 0.8333rem);
  }
  .sv-block-grid.sv--med-6 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-6 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-6 > .sv-col:nth-child(6n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-6 > .sv-col:nth-child(6n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-6 > .sv-col:nth-last-child(-n + 6){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-7 > .sv-col{
    width: calc(99.9% * 1/7 - 0.8571rem);
    height: calc(99.9% * 1/7 - 0.8571rem);
  }
  .sv-block-grid.sv--med-7 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-7 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-7 > .sv-col:nth-child(7n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-7 > .sv-col:nth-child(7n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-7 > .sv-col:nth-last-child(-n + 7){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-8 > .sv-col{
    width: calc(99.9% * 1/8 - 0.875rem);
    height: calc(99.9% * 1/8 - 0.875rem);
  }
  .sv-block-grid.sv--med-8 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-8 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-8 > .sv-col:nth-child(8n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-8 > .sv-col:nth-child(8n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-8 > .sv-col:nth-last-child(-n + 8){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-9 > .sv-col{
    width: calc(99.9% * 1/9 - 0.8889rem);
    height: calc(99.9% * 1/9 - 0.8889rem);
  }
  .sv-block-grid.sv--med-9 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-9 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-9 > .sv-col:nth-child(9n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-9 > .sv-col:nth-child(9n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-9 > .sv-col:nth-last-child(-n + 9){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-10 > .sv-col{
    width: calc(99.9% * 1/10 - 0.9rem);
    height: calc(99.9% * 1/10 - 0.9rem);
  }
  .sv-block-grid.sv--med-10 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--med-10 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--med-10 > .sv-col:nth-child(10n){
    margin-right: 0;
  }
  .sv-block-grid.sv--med-10 > .sv-col:nth-child(10n + 1){
    clear: both;
  }
  .sv-block-grid.sv--med-10 > .sv-col:nth-last-child(-n + 10){
    margin-bottom: 0;
  }
  .sv-pagination__pages{
    display: block;
    font-size: 0.875rem;
    margin: 1.25rem 0;
  }
  .sv-pagination__page:first-child, .sv-pagination__page:nth-last-child(2){
    padding-right: 1.5rem;
  }
  .sv--compact .sv-pagination__page{
    padding-right: 1rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--residential, .sv-property-card.sv--full-width .sv-property-attribute.sv--rural, .sv-property-card.sv--full-width .sv-property-attribute.sv--commercial{
    padding-left: 1.5875rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--residential::after, .sv-property-card.sv--full-width .sv-property-attribute.sv--rural::after, .sv-property-card.sv--full-width .sv-property-attribute.sv--commercial::after{
    width: 1.275rem;
    height: 1.275rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--size, .sv-property-card.sv--full-width .sv-property-attribute.sv--available-size{
    padding-left: 1.3875rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--size::after, .sv-property-card.sv--full-width .sv-property-attribute.sv--available-size::after{
    width: 1.125rem;
    height: 1.125rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--land-area{
    padding-left: 1.5875rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--land-area::after{
    width: 1.275rem;
    height: 1.275rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--bathrooms{
    padding-left: 1.7875rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--bathrooms::after{
    width: 1.425rem;
    height: 1.425rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--bedrooms{
    padding-left: 1.65rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--bedrooms::after{
    width: 1.35rem;
    height: 1.35rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--receptions{
    padding-left: 1.85rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--receptions::after{
    width: 1.5rem;
    height: 1.5rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--grade{
    padding-left: 1.6625rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--grade::after{
    width: 1.275rem;
    height: 1.275rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--people{
    padding-left: 1.875rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--people::after{
    width: 1.35rem;
    height: 1.35rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--yield{
    padding-left: 1.75rem;
  }
  .sv-property-card.sv--full-width .sv-property-attribute.sv--yield::after{
    width: 1.2rem;
    height: 1.2rem;
  }
  .sv--full-width.sv--type-commercial .sv-property-price__value, .sv--full-width.sv--type-farm .sv-property-price__value, .sv--full-width.sv--type-commercial .sv-property-price__original, .sv--full-width.sv--type-farm .sv-property-price__original{
    font-size: 0.875rem;
    line-height: 1.3;
    vertical-align: baseline;
  }
  .sv--full-width .sv-property-price__value{
    font-size: 1.75rem;
  }
  .sv--full-width.sv--type-commercial.sv--search-type-buy .sv-property-price__original, .sv--full-width.sv--type-commercial.sv--search-type-rent .sv-property-price__original{
    font-size: 0.875rem;
  }
  .sv--full-width.sv--type-new-development .sv-property-price__original, .sv--full-width.sv--type-residential.sv--search-type-buy .sv-property-price__original, .sv--full-width.sv--type-residential.sv--search-type-rent .sv-property-price__original{
    font-size: 1.125rem;
  }
  .sv--full-width .sv-property-price__size{
    font-size: 1.25rem;
    line-height: 1;
    margin-bottom: 0.25rem;
  }
  .sv-property-price__other-fees{
    font-size: 0.75rem;
  }
  .sv-property-price__rent-basis{
    font-size: 0.75rem;
  }
  .sv--full-width .sv--show-size .sv-property-price__guide{
    font-size: 0.875rem;
    line-height: 1.3;
    vertical-align: baseline;
  }
  .sv-property-intro .sv--show-size .sv-property-price__guide{
    font-size: 1rem;
  }
  .sv--full-width .sv-property-price:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide{
    font-size: 1.75rem;
    line-height: 1;
  }
  .sv-property-intro .sv-property-price:not(.sv--show-price):not(.sv--show-size) .sv-property-price__guide{
    font-size: 2.375rem;
    line-height: 1.25;
  }
  .sv-spacer:not(.sv--reverse):not(.sv--no-spacer){
    margin-bottom: 4rem;
  }
  .sv-spacer.sv--v-space{
    padding: 0 2rem;
  }
  .sv-spacer.sv--med-v-space-xsml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.5rem;
  }
  .sv-spacer.sv--med-space-xsml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.5rem;
  }
  .sv-spacer.sv--med-space-xsml:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.5rem;
  }
  .sv-spacer.sv--med-v-space-xsml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.75rem;
  }
  .sv-spacer.sv--med-space-xsml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.75rem;
  }
  .sv-spacer.sv--med-space-xsml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.75rem;
  }
  .sv-spacer.sv--med-v-space-sml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1rem;
  }
  .sv-spacer.sv--med-space-sml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1rem;
  }
  .sv-spacer.sv--med-space-sml:not(.sv--no-spacer).sv--reverse{
    margin-top: 1rem;
  }
  .sv-spacer.sv--med-v-space-sml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.25rem;
  }
  .sv-spacer.sv--med-space-sml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.25rem;
  }
  .sv-spacer.sv--med-space-sml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.25rem;
  }
  .sv-spacer.sv--med-v-space-med{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.5rem;
  }
  .sv-spacer.sv--med-space-med:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.5rem;
  }
  .sv-spacer.sv--med-space-med:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.5rem;
  }
  .sv-spacer.sv--med-v-space-med-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.75rem;
  }
  .sv-spacer.sv--med-space-med-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.75rem;
  }
  .sv-spacer.sv--med-space-med-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.75rem;
  }
  .sv-spacer.sv--med-v-space-lrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 2rem;
  }
  .sv-spacer.sv--med-space-lrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 2rem;
  }
  .sv-spacer.sv--med-space-lrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 2rem;
  }
  .sv-spacer.sv--med-v-space-lrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 3rem;
  }
  .sv-spacer.sv--med-space-lrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 3rem;
  }
  .sv-spacer.sv--med-space-lrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 3rem;
  }
  .sv-spacer.sv--med-v-space-xlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 4rem;
  }
  .sv-spacer.sv--med-space-xlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 4rem;
  }
  .sv-spacer.sv--med-space-xlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 4rem;
  }
  .sv-spacer.sv--med-v-space-xlrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 6rem;
  }
  .sv-spacer.sv--med-space-xlrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 6rem;
  }
  .sv-spacer.sv--med-space-xlrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 6rem;
  }
  .sv-spacer.sv--med-v-space-xxlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 8rem;
  }
  .sv-spacer.sv--med-space-xxlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 8rem;
  }
  .sv-spacer.sv--med-space-xxlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 8rem;
  }
  .sv-text-section-heading{
    font-size: 2.5rem;
    margin-bottom: 2rem;
  }
  .sv-text-section-heading.sv--lrg{
    font-size: 3.125rem;
  }
  .sv-text-section-intro{
    font-size: 1.125rem;
  }
  .sv-address-finder .sv-button{
    margin-top: 2.5625rem;
  }
  .sv-card-meta{
    font-size: 0.75rem;
  }
  .sv-card-meta__date::before{
    margin-top: 0.125rem;
  }
  .sv-card-meta.sv--sml, .sv-card.sv--micro .sv-card-meta{
    font-size: 0.625rem;
  }
  .sv-card-meta.sv--sml__date::before{
    margin-top: 0;
  }
  /* sv--med modifier only takes shape at higher breakpoints */
  .sv-card-title.sv--med, .sv-card.sv--med .sv-card-title, .sv-card.sv--listing-row .sv-card-title{
    font-size: 1.625rem;
    line-height: 1.3;
    margin-bottom: 1rem;
  }
  .sv--listing-block .sv-card-title.sv--med{
    height: 6.25rem;
  }
  /* sv--lrg modifier only takes shape at higher breakpoints */
  .sv-card-title.sv--lrg, .sv-card.sv--lrg .sv-card-title{
    font-size: 2.1875rem;
    line-height: 1.285;
    margin-bottom: 2rem;
  }
  .sv--listing-block .sv-card-title.sv--med{
    height: 8.125rem;
  }
  /* sv--lrg modifier only takes shape at higher breakpoints */
  .sv-card-intro.sv--lrg{
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .sv-card.sv--fixed-height.sv--is-award .sv-card-title{
    max-height: 4.75rem;
  }
  .sv-card.sv--fixed-height.sv--lrg .sv-card-title{
    height: auto;
    max-height: 8.4375rem;
  }
  .sv-card.sv--fixed-height.sv--med .sv-card-title{
    height: auto;
    max-height: 6.25rem;
  }
  .sv-card.sv--listing-row.sv--padded{
    padding: 2.125rem 2.5rem;
  }
  .sv-card.sv--listing-row .sv-card__image{
    max-width: 35% !important;
    /* Specificity / ordering override */
  }
  .sv-card.sv--is-award .sv-card-title{
    font-size: 1.25rem;
  }
  .sv-card.sv--is-award .sv-card-intro{
    font-size: 0.875rem;
  }
  .sv-card.sv--cta-block .sv-card__content{
    padding-bottom: 2.625rem;
  }
  .sv-card.sv--cta-block .sv-card-title{
    color: #252839;
    font-size: 1.5rem;
    line-height: 1.75rem;
    margin-bottom: 0.875rem;
  }
  .sv-card.sv--cta-block .sv-card-intro{
    margin-bottom: 0.8125rem;
  }
  .sv-card.sv--expert .sv-card-meta{
    font-size: 0.75rem;
  }
  .sv-cookie-notification__warning, .sv-cookie-notification__warning-link{
    font-size: 1rem;
  }
  .sv-expandable-item__content p{
    font-size: 1rem;
  }
  .sv-facts__facts{
    padding-top: 3rem;
    padding-bottom: 1.75rem;
  }
  .sv-facts__button{
    margin-top: 2rem;
  }
  .sv-facts.sv--has-divider{
    transform: translateY(-1rem);
  }
  .sv--has-heading .sv-facts__content{
    margin-top: 9.5rem;
  }
  .sv--has-heading .sv-facts__title{
    font-size: 3.125rem;
    margin-bottom: 2rem;
  }
  .sv--has-heading .sv-facts__intro{
    font-size: 1.125rem;
    margin-bottom: 4.375rem;
  }
  .sv--has-heading .sv-facts__facts{
    padding-top: 2.625rem;
  }
  .sv-fact__term{
    font-size: 1rem;
    max-width: 90%;
    margin-left: 5%;
    /* IE11 flexbox issue - won't center with margin: 0 auto */
    margin-right: 5%;
    /* IE11 flexbox issue - won't center with margin: 0 auto */
  }
  .sv-fact__value{
    display: block;
    height: 5.125rem;
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
    font-size: 4.0625rem;
    line-height: .9;
    margin-bottom: 0.625rem;
  }
  .sv-fact__value.sv--text{
    margin-top: -0.375rem;
    margin-bottom: 1rem;
    font-size: 1.6875rem;
    line-height: 1.3;
  }
  .sv-featured-card{
    height: 31.25rem;
  }
  .sv-featured-card__content{
    padding: 1rem 0 1rem 2rem;
  }
  .sv-featured-card .sv-card-meta{
    font-size: 1.125rem;
    margin: 0 0 1.25rem;
  }
  .sv-featured-card__title{
    font-size: 3.125rem;
    line-height: 1.2;
    max-height: 11.25rem;
    margin: 0 0 1.25rem;
  }
  .sv-featured-card__intro{
    font-size: 1rem;
    line-height: 1.5;
    margin: 0 0 2rem;
    max-height: 6rem;
  }
  .sv-featured-content{
    height: 21.875rem;
  }
  .sv-featured-content__image{
    margin: 0;
  }
  .sv-featured-content__content{
    margin: 1.5rem 0 1.5rem -3rem;
    padding-right: 4.5rem;
    padding-left: 3rem;
    z-index: 1;
    position: relative;
    max-width: calc(50% + 1.5rem);
    max-height: 100%;
  }
  .sv-featured-content__title{
    font-size: 2.1875rem;
    line-height: 1.15;
    max-height: 5.25rem;
    overflow: hidden;
  }
  .sv-featured-content__intro{
    font-size: 1rem;
  }
  .sv-featured-content__link:not(:last-child){
    margin-right: 1.75rem;
  }
  .sv--swap .sv-featured-content__content{
    margin: 1.5rem -3rem 1.5rem 0;
  }
  .sv-filter-bar .sv-row{
    display: flex;
    align-items: center;
  }
  .sv-filter-bar select{
    padding-top: 0.75rem;
  }
  .sv-filter-search__filters{
    padding-top: 0.75rem;
  }
  .sv-filter-search__filters-col{
    padding-right: 1.5rem;
  }
  .sv-filter-search__filters-col:last-child{
    padding-right: 1rem;
  }
  .sv-filter-search__sort-label{
    padding: 0;
    text-align: left;
  }
  .sv-filter-search .sv-results-indicator{
    text-align: left;
  }
  .sv-filter-search .sv-custom-input.sv--radio{
    padding-top: 1px;
    padding-bottom: 0;
  }
  .sv-map{
    height: 25rem;
  }
  .sv-modal-window__container{
    width: 59.75rem;
    height: 46.25rem;
  }
  .sv-page-banner{
    padding: 5.3125rem 2rem;
  }
  .sv-page-banner__title{
    font-size: 3.75rem;
    line-height: 1.25;
  }
  .sv-page-banner__subtitle{
    font-size: 1.25rem;
  }
  .sv-page-banner__intro{
    font-size: 1rem;
  }
  .sv-page-banner .sv-button{
    margin: 2rem 0 0;
  }
  .sv-page-banner.sv--center{
    padding: 11.25rem 2rem;
  }
  .sv-page-header{
    padding: 5rem;
  }
  .sv-page-header__title{
    font-size: 4.0625rem;
    line-height: 1.85;
    margin-bottom: 0.75rem;
  }
  .sv-page-header__intro{
    font-size: 1.125rem;
  }
  .sv-page-header.sv--secondary{
    padding: 4rem 0 0;
  }
  .sv-page-header.sv--secondary .sv-page-header__title{
    font-size: 1.875rem;
    padding-bottom: 2.625rem;
    margin-bottom: 0;
  }
  .sv-page-header.sv--secondary .sv-page-header__intro{
    font-size: 1rem;
  }
  .sv-page-header.sv--tertiary{
    padding: 4rem 0;
  }
  .sv-page-header.sv--secondary-heading .sv-page-header__title{
    font-size: 3.125rem;
  }
  .sv--full-width.sv--type-residential.sv--search-type-buy .sv-details__price, .sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__price, .sv--full-width.sv--type-new-development.sv--search-type-buy .sv-details__price, .sv--full-width.sv--type-new-development.sv--search-type-rent .sv-details__price, .sv--full-width.sv--type-farm.sv--search-type-buy .sv-details__price, .sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__price{
    margin-bottom: 0.625rem;
  }
  .sv--full-width.sv--type-commercial .sv-details__price{
    margin-bottom: 0.875rem;
  }
  .sv--full-width.sv--type-residential .sv-details__price .sv-property-price.sv--show-guide.sv--show-price, .sv--full-width.sv--new-development .sv-details__price .sv-property-price.sv--show-guide.sv--show-price{
    margin-top: -1.625rem;
  }
  .sv-property-card.sv--full-width{
    height: 19.375rem;
    /* stylelint-enable selector-max-specificity */
  }
  .sv-property-card.sv--full-width .sv-slider__footer{
    height: 2.8125rem;
    /* stylelint-enable selector-max-specificity */
  }
  .sv-property-card.sv--full-width .sv-slider__footer.sv--bg{
    height: 2.8125rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-labels{
    left: 1.25rem;
    right: 1.25rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-actions{
    width: 13.4375rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-property-card.sv--full-width .sv-slider__footer-action{
    font-size: 0.8125rem;
    line-height: 1.375rem;
    padding-left: 1.25rem;
  }
  /* override mixin */
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--paging{
    padding-left: 1.25rem;
    padding-left: 1.875rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--paging::after{
    /* stylelint-disable at-rule-empty-line-before */
    background-size: contain;
    height: 1.25rem;
    width: 1.25rem;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2218%22%20viewBox%3D%220%200%2021%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3%2C7%20C3%2C6.5%203.5%2C6%204%2C6%20C4.5%2C6%205.1%2C6.5%205.1%2C7%20C5.1%2C7.5%204.6%2C8.1%204%2C8.1%20C3.4%2C8.1%203%2C7.6%203%2C7%20Z%20M17.7%2C4.3%20L17.7%2C17%20C17.7%2C17.2%2017.6%2C17.3%2017.4%2C17.3%20L0.3%2C17.3%20C0.1%2C17.3%200%2C17.2%200%2C17%20L0%2C4.3%20C0%2C4.1%200.1%2C4%200.3%2C4%20L17.4%2C4%20C17.6%2C4%2017.7%2C4.1%2017.7%2C4.3%20Z%20M16.5%2C5.2%20L1.2%2C5.2%20L1.2%2C14.6%20L4.4%2C11%20C4.5%2C10.9%204.5%2C10.9%204.6%2C10.9%20C4.7%2C10.9%204.8%2C10.9%204.8%2C11%20L7.7%2C13.9%20L11.8%2C7.8%20C11.9%2C7.7%2012%2C7.7%2012.1%2C7.7%20C12.2%2C7.7%2012.3%2C7.8%2012.4%2C7.8%20L16.6%2C13.3%20L16.6%2C5.2%20L16.5%2C5.2%20Z%20M20.3%2C0%20L5.3%2C0%20C5.1%2C0%205%2C0.1%205%2C0.3%20L5%2C0.9%20C5%2C1.1%205.1%2C1.2%205.3%2C1.2%20L19.4%2C1.2%20L19.4%2C10.9%20C19.4%2C11.1%2019.5%2C11.2%2019.7%2C11.2%20L20.3%2C11.2%20C20.5%2C11.2%2020.6%2C11.1%2020.6%2C10.9%20L20.6%2C0.3%20C20.6%2C0.1%2020.5%2C0%2020.3%2C0%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
    left: 0;
    /* stylelint-enable at-rule-empty-line-before */
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--paging::after{
    top: calc(50% - 1px);
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save{
    padding-left: 1.25rem;
    padding-left: 1.5625rem;
    margin-left: 1.5625rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save::after{
    /* stylelint-disable at-rule-empty-line-before */
    background-size: contain;
    height: 1.25rem;
    width: 1.25rem;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2218%22%20viewBox%3D%220%200%2019%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3.9%2C17.4%20C3.7%2C17.4%203.6%2C17.4%203.5%2C17.3%20C3.3%2C17.1%203.2%2C16.8%203.2%2C16.6%20L4.1%2C11.2%20L0.2%2C7.4%20C3.33066907e-16%2C7.2%20-0.1%2C6.9%203.33066907e-16%2C6.6%20C0.1%2C6.3%200.3%2C6.1%200.6%2C6.1%20L6%2C5.3%20L8.4%2C0.4%20C8.7%2C-0.1%209.5%2C-0.1%209.7%2C0.4%20L12.1%2C5.3%20L17.5%2C6.1%20C17.8%2C6.1%2018%2C6.3%2018.1%2C6.6%20C18.2%2C6.9%2018.1%2C7.2%2017.9%2C7.4%20L14%2C11.2%20L14.9%2C16.6%20C14.9%2C16.9%2014.8%2C17.2%2014.6%2C17.3%20C14.4%2C17.5%2014.1%2C17.5%2013.8%2C17.4%20L9%2C14.9%20L4.2%2C17.4%20C4.2%2C17.4%204.1%2C17.4%203.9%2C17.4%20Z%20M9.1%2C13.2%20C9.2%2C13.2%209.3%2C13.2%209.5%2C13.3%20L13.3%2C15.3%20L12.6%2C11%20C12.6%2C10.8%2012.6%2C10.5%2012.8%2C10.3%20L15.9%2C7.3%20L11.6%2C6.7%20C11.4%2C6.7%2011.1%2C6.5%2011%2C6.3%20L9.1%2C2.4%20L7.2%2C6.3%20C7.1%2C6.5%206.9%2C6.7%206.6%2C6.7%20L2.4%2C7.3%20L5.5%2C10.3%20C5.7%2C10.5%205.8%2C10.7%205.7%2C11%20L5%2C15.3%20L8.8%2C13.3%20C8.9%2C13.2%209%2C13.2%209.1%2C13.2%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
    left: 0;
    /* stylelint-enable at-rule-empty-line-before */
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save.sv--selected{
    padding-left: 1.25rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save.sv--selected::after{
    /* stylelint-disable at-rule-empty-line-before */
    background-size: contain;
    height: 1.25rem;
    width: 1.25rem;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219%22%20height%3D%2218%22%20viewBox%3D%220%200%2019%2018%22%3E%0D%0A%20%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M3.9%2C17.4%20C3.7%2C17.4%203.6%2C17.4%203.5%2C17.3%20C3.3%2C17.1%203.2%2C16.8%203.2%2C16.6%20L4.1%2C11.2%20L0.2%2C7.4%20C3.33066907e-16%2C7.2%20-0.1%2C6.9%203.33066907e-16%2C6.6%20C0.1%2C6.3%200.3%2C6.1%200.6%2C6.1%20L6%2C5.3%20L8.4%2C0.4%20C8.7%2C-0.1%209.5%2C-0.1%209.7%2C0.4%20L12.1%2C5.3%20L17.5%2C6.1%20C17.8%2C6.1%2018%2C6.3%2018.1%2C6.6%20C18.2%2C6.9%2018.1%2C7.2%2017.9%2C7.4%20L14%2C11.2%20L14.9%2C16.6%20C14.9%2C16.9%2014.8%2C17.2%2014.6%2C17.3%20C14.4%2C17.5%2014.1%2C17.5%2013.8%2C17.4%20L9%2C14.9%20L4.2%2C17.4%20C4.2%2C17.4%204.1%2C17.4%203.9%2C17.4%20Z%22%2F%3E%0D%0A%3C%2Fsvg%3E");
    left: 0;
    /* stylelint-enable at-rule-empty-line-before */
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save span{
    padding-left: 0;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save-inline{
    padding: 0;
    height: 2.8125rem;
    line-height: 2.8125rem;
  }
  .sv-property-card.sv--full-width .sv-slider__footer-action.sv--save-inline button{
    height: 2.8125rem;
    font-size: 0.875rem;
  }
  .sv-property-card.sv--full-width .sv-details__content{
    margin: 2.5rem 1.5rem 0;
  }
  .sv-property-card.sv--full-width .sv-details__address1{
    font-size: 1.25rem;
    line-height: 1.75rem;
    max-height: 3.5rem;
  }
  .sv-property-card.sv--full-width .sv-details__address2{
    font-size: 0.875rem;
    line-height: 1.375rem;
    margin-bottom: 1rem;
  }
  .sv-property-card.sv--full-width .sv-details__footer{
    height: 2.8125rem;
    padding: 0 1.5rem;
    margin: 0;
  }
  .sv-property-card.sv--full-width .sv-details .sv-property-attribute{
    font-size: 0.75rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__price, .sv-property-card.sv--full-width.sv--type-new-development.sv--search-type-rent .sv-details__price{
    line-height: 1.4;
  }
  .sv-property-card.sv--full-width.sv--type-commercial .sv-details__address1, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__address1{
    font-size: 1.375rem;
  }
  .sv-property-card.sv--full-width.sv--type-commercial .sv-details__size, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__size{
    font-size: 1.25rem;
    line-height: 1;
  }
  .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-buy .sv-details__size, .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-rent .sv-details__size{
    margin-bottom: 0.25rem;
  }
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-new-development.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-buy .sv-details__content, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-buy .sv-details__content{
    margin-top: 1.5rem;
  }
  .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-buy .sv-details__content, .sv-property-card.sv--full-width.sv--type-new-development.sv--search-type-buy .sv-details__content{
    margin-top: 3rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__size, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-buy .sv-details__size{
    margin-bottom: 0.3125rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm, .sv-property-card.sv--full-width.sv--type-new-development{
    height: 19.6875rem;
  }
  .sv-property-card.sv--full-width.sv--type-new-development .sv-details__address1, .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-buy .sv-details__address1, .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__address1{
    max-height: 1.75rem;
  }
  .sv-rich-card.sv--secondary{
    height: 25.625rem;
    padding: 2rem;
  }
  .sv-rich-card.sv--secondary .sv-rich-card__detail{
    padding: 0 1rem;
  }
  /* Hover panel
   ========================================================================== */
  .sv-rich-card__extra{
    padding: 2rem;
  }
  .sv-rich-card__extra .sv-card-meta__data{
    margin: 0 0 1rem;
  }
  .sv-rich-card__extra .sv-card-title{
    margin: 0 0 2rem;
  }
  .sv-rich-card__extra-intro{
    font-size: 0.875rem;
    max-height: 7.8125rem;
  }
  .sv-rich-card__extra-actions{
    bottom: 2rem;
    left: 2rem;
    right: 2rem;
  }
  .sv-rich-card__extra-actions .sv-col:last-of-type{
    margin: 0;
  }
  .sv-rich-card__extra-actions .sv-button{
    font-size: 0.75rem;
    padding: 1rem;
  }
  .sv-rich-card.sv--tertiary{
    height: 25.5rem;
    padding: 3rem 2rem 2rem;
  }
  .sv-rich-card.sv--tertiary .sv-card-meta{
    font-size: 0.875rem;
  }
  .sv-rich-card.sv--tertiary .sv-rich-card__detail{
    padding: 0 1rem;
  }
  .sv-rich-card.sv--quarternary{
    padding-top: 12.5rem;
  }
  .sv-rich-card.sv--quarternary .sv-rich-card__bg{
    height: 80%;
  }
  .sv-rich-card{
    padding: 3rem 2rem 0;
  }
  .sv-rich-card__bg{
    height: 23.125rem;
  }
  .sv-rich-card .sv-cta-link{
    font-size: 0.875rem;
  }
  /*
    detailed content
    */
  .sv-rich-card__detail{
    padding: 2rem;
    height: 13.75rem;
  }
  .sv-rich-card.sv--fixed-height .sv-card-title{
    height: 8rem;
  }
  .sv-rich-card.sv--fixed-height .sv-card-tags-container{
    margin-bottom: 2.5rem;
  }
  .sv-rich-card.sv--fixed-height.sv--secondary .sv-card-intro{
    max-height: 4.0625rem;
  }
  .sv-rich-card.sv--fixed-height.sv--tertiary .sv-card-title{
    max-height: 8.4375rem;
  }
  .sv-rich-card.sv--fixed-height.sv--tertiary .sv-card-intro{
    max-height: 4rem;
  }
  .sv-selection-panel{
    font-size: 1.75rem;
  }
  .sv-selection-panel .sv--dropdown{
    margin-right: .3em;
  }
  .sv-selection-panel .sv-button{
    margin-left: 1.5rem;
  }
  .sv-share-price__label, .sv-share-price__value, .sv-share-price__info-cta-narrow, .sv-share-price__info-cta-wide{
    font-size: 0.875rem;
  }
  .sv-share-price__info-cta-narrow{
    display: block;
  }
  .sv-share-price__info-cta-wide{
    display: none;
  }
  .sv-share-this-article__title{
    font-size: 1.875rem;
    line-height: 1.75rem;
    margin: 6rem auto 0;
  }
  .sv-share-this-article__line{
    height: 1px;
    margin: 3rem auto 0;
    width: 45.25rem;
  }
  .sv-share-this-article__text{
    height: 9rem;
    font-size: 2.5rem;
    line-height: 3rem;
    margin: 3rem auto 0;
    width: 45.25rem;
  }
  .sv-share-this-article__share{
    margin: 4.5625rem auto 0;
    width: 45.25rem;
    max-width: 45.25rem;
  }
  .sv-share-this-article__share-item{
    height: 5.3125rem;
    width: 5.3125rem;
  }
  .sv-share-this-article__copy{
    height: 4.125rem;
    margin: 1.5rem auto 0;
    width: 45.25rem;
  }
  .sv-share-this-article__copy-url{
    font-size: 0.875rem;
    height: 4rem;
    line-height: 4rem;
    width: 37.4375rem;
  }
  .sv-share-this-article__copy-button{
    font-size: 0.875rem;
    height: 4rem;
    line-height: 4rem;
    width: 7.8125rem;
  }
  .sv-share-this-article__copy-button > span{
    width: 4rem;
  }
  .sv-social__heading{
    font-size: 0.875rem;
  }
  .sv-tabs-panel.sv--alt .sv-tab-card__title{
    font-size: 2rem;
  }
  .sv-author-panel{
    margin-bottom: 0;
  }
  .sv-usp > :first-child{
    border-right-width: 0.375rem;
  }
  .sv-usp__title{
    font-size: 3.125rem;
  }
  .sv-usp__horizontal-rule{
    width: 2.5rem;
  }
  .sv-usp__content{
    padding: 5rem 5rem 0;
  }
  .sv-usp__body{
    font-size: 1rem;
  }
  .sv-usp__image.sv--primary{
    margin-bottom: 0;
  }
  /* Child differences */
  .sv-usp:nth-child(2) > :last-child{
    border-right-width: 0.375rem;
  }
  .sv-usp:nth-child(3) .sv-usp__image.sv--primary{
    margin-top: 0;
  }
  .sv-s404__content-heading{
    font-size: 2.1875rem;
  }
  .sv-article__intro.sv--abstract{
    font-size: 1.625rem;
  }
  .sv-article__divider{
    margin-bottom: 3rem;
  }
  .sv-award-row__title{
    margin-top: 0.5rem;
    font-size: 2rem;
    line-height: 1.14;
  }
  .sv-card-listings{
    margin-top: 5rem;
    margin-bottom: 3rem;
  }
  .sv-card-listings__title{
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 2rem;
  }
  .sv-footer__info{
    margin-bottom: 0;
  }
  .sv-footer__heading{
    margin-top: 0;
    font-size: 1.125rem;
    line-height: 1.15;
  }
  .sv-footer__list-item{
    display: block;
  }
  .sv-footer__info .sv-footer__list-item{
    display: block;
    max-width: none;
    margin-right: 0;
  }
  .sv-homepage .sv-featured-content{
    margin-top: 0.625rem;
    margin-bottom: 2.75rem !important;
  }
  .sv-homepage__usps{
    margin-top: 5rem;
    margin-bottom: 5.875rem !important;
  }
  .sv-market-property .sv-featured-content{
    margin: 5.625rem 0 !important;
  }
  .sv-sub-nav .sv-card.sv--cta-block:last-child{
    border-bottom: 0;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-sub-nav .sv-card.sv--cta-block:last-child .sv-card__content{
    padding-bottom: 0;
  }
  .sv-sub-nav__link-tree{
    width: calc(99% / 2 - 1.5rem);
  }
  .sv-sub-nav__link-tree:nth-of-type(3n){
    margin-right: 2rem;
  }
  .sv-sub-nav__link-tree:nth-of-type(2n){
    margin-right: 0;
  }
  .sv-newsletter-signup{
    min-height: 5.375rem;
    height: 0;
    /* IE fix to get flex-box to vertically center things. */
    display: flex;
    align-items: center;
  }
  .sv-newsletter-signup .sv-newsletter-signup__container{
    display: flex;
    align-items: flex-start;
    width: 100%;
  }
  .sv-newsletter-signup .sv-newsletter-signup__form-container{
    display: flex;
    flex: 1 0 75%;
  }
  .sv-newsletter-signup .sv-newsletter-signup__form-elements-container{
    display: flex;
    flex: 1 0 35.5%;
    position: relative;
  }
  .sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input{
    position: static;
  }
  .sv-newsletter-signup .sv-newsletter-signup__email .sv-form-field-invalid{
    height: 6.875rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input .sv-form-error{
    position: absolute;
    left: 0.625rem !important;
    top: 2.75rem;
    background: #cd171e;
    right: 0.625rem;
    color: #fff;
    width: auto;
  }
  .sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input .sv-form-error::before{
    left: 49.5%;
    width: 0.5625rem;
    height: 0.5625rem;
    border-left: 0.125rem solid #cd171e;
    border-bottom: 0.125rem solid #cd171e;
    background: #cd171e;
    top: -0.3125rem;
    transform: rotate(135deg);
  }
  /* stylelint-enable selector-max-specificity */
  .sv-newsletter-signup .sv-newsletter-signup__label{
    flex: 1 0 25%;
  }
  .sv-newsletter-signup .sv-newsletter-signup__label h2{
    max-width: none;
  }
  .sv-newsletter-signup .sv-newsletter-signup__label::after{
    display: none;
  }
  .sv-newsletter-signup .sv-newsletter-signup__form-item{
    flex: 1 0;
  }
  .sv-newsletter-signup__form-container{
    display: block;
  }
  .sv-newsletter-signup__label h2{
    margin: 0;
  }
  .sv-newsletter-signup .sv-newsletter-signup__form-item:not(.sv-newsletter-signup__submit){
    margin: 0 0.625rem;
  }
  .sv-newsletter-signup .sv-newsletter-signup__submit{
    margin-left: 0.625rem;
  }
  .sv-newsletter-signup .sv-custom-input{
    margin: 0;
  }
  .sv-services-list-preview{
    padding: 6rem 0;
  }
  .sv-services-list-preview__title{
    font-size: 3.125rem;
  }
  .sv-services-list-preview__intro{
    font-size: 1.125rem;
    margin-bottom: 6rem;
  }
  .sv-usps__title{
    font-size: 3.125rem;
    margin-bottom: 4rem;
  }
  .sv-usps__button{
    margin-top: 4rem;
  }
  .sv-carousel__slide{
    flex: 0;
  }
  .sv-maintenance{
    padding-top: 6rem;
  }
  .sv-maintenance__logo-link{
    width: 10rem;
    height: 10rem;
    margin: 0 auto 3rem;
  }
  .sv-maintenance__heading{
    font-size: 2.5rem;
    line-height: 1.6;
    margin-bottom: 3rem;
  }
  .sv-maintenance__content{
    font-size: 1rem;
    margin: 0 auto 6rem;
  }
  .sv-maintenance__tel{
    color: #252839;
  }
}
@media (min-width: 1136px){
  .sv-view-gt-lrg{
    display: inline;
    display: initial;
  }
  [class*=sv-view-lt-]{
    display: none;
  }
  .sv-anchor::before{
    height: 5.5625rem;
    margin-top: -5.5625rem;
  }
  .sv-property-card .sv-favourite, .sv-search-summary .sv-favourite, .sv-property-card .sv-favourite:active, .sv-search-summary .sv-favourite:active, .sv-property-card .sv-favourite:hover, .sv-search-summary .sv-favourite:hover, .sv-property-card .sv-favourite:focus, .sv-search-summary .sv-favourite:focus{
    font-weight: 300;
  }
  .sv-custom-input.sv--lrg input{
    font-size: 3.125rem;
    line-height: 3.75rem;
  }
  .sv-custom-input:not(.sv--error-below) .sv-form-error{
    display: block;
  }
  .sv-custom-input:not(.sv--error-below) .sv-form-error{
    position: absolute;
    border: 0.125rem solid #cd171e;
    border-radius: 0.125rem;
    font-weight: 500;
    padding: 1rem;
    top: 2.625rem;
    white-space: nowrap;
    width: auto;
    margin: 0;
    left: 102%;
  }
  .sv-custom-input:not(.sv--error-below) .sv-form-error::before{
    content: '';
    position: absolute;
    top: 1.25rem;
    left: -0.375rem;
    width: 0.5625rem;
    height: 0.5625rem;
    border-left: 0.125rem solid #cd171e;
    border-bottom: 0.125rem solid #cd171e;
    transform: rotate(45deg);
    background: #fff;
  }
  /* Breakpoint specific flow switching */
  .sv-row.sv--lrg-right > .sv-col{
    float: right !important;
    margin-right: 0 !important;
    margin-left: 1rem;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-row.sv--lrg-right > .sv-col:last-child{
    margin-left: 0;
  }
  /* Breakpoint specific height matching */
  .sv-row.sv--lrg-equal{
    display: flex;
    flex-wrap: wrap;
  }
  .sv-row.sv--lrg-equal > .sv-col{
    display: flex;
  }
  .sv-col.sv--lrg-1{
    width: calc(99.9% * 1/12 - 0.9167rem);
  }
  .sv-col.sv--lrg-1:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-1:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-1:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-1:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-2{
    width: calc(99.9% * 2/12 - 0.8333rem);
  }
  .sv-col.sv--lrg-2:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-2:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-2:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-2:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-3{
    width: calc(99.9% * 3/12 - 0.75rem);
  }
  .sv-col.sv--lrg-3:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-3:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-3:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-3:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-4{
    width: calc(99.9% * 4/12 - 0.6667rem);
  }
  .sv-col.sv--lrg-4:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-4:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-4:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-4:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-5{
    width: calc(99.9% * 5/12 - 0.5833rem);
  }
  .sv-col.sv--lrg-5:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-5:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-5:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-5:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-6{
    width: calc(99.9% * 6/12 - 0.5rem);
  }
  .sv-col.sv--lrg-6:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-6:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-6:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-6:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-7{
    width: calc(99.9% * 7/12 - 0.4167rem);
  }
  .sv-col.sv--lrg-7:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-7:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-7:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-7:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-8{
    width: calc(99.9% * 8/12 - 0.3333rem);
  }
  .sv-col.sv--lrg-8:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-8:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-8:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-8:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-9{
    width: calc(99.9% * 9/12 - 0.25rem);
  }
  .sv-col.sv--lrg-9:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-9:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-9:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-9:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-10{
    width: calc(99.9% * 10/12 - 0.1667rem);
  }
  .sv-col.sv--lrg-10:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-10:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-10:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-10:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-11{
    width: calc(99.9% * 11/12 - 1.333333333333334px);
  }
  .sv-col.sv--lrg-11:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-11:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-11:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-11:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-12{
    width: calc(99.9% * 12/12 - 0px);
  }
  .sv-col.sv--lrg-12:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-col.sv--lrg-12:last-child{
    margin-right: 0;
  }
  .sv-col.sv--lrg-12:nth-child(NaNn){
    margin-right: 0;
    float: right;
  }
  .sv-col.sv--lrg-12:nth-child(NaNn + 1){
    clear: both;
  }
  .sv-col.sv--lrg-offset-1{
    margin-left: calc(99.9% * 0.083333333333333 - 0.9167rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-2{
    margin-left: calc(99.9% * 0.166666666666667 - 0.8333rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-3{
    margin-left: calc(99.9% * 0.25 - 0.75rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-4{
    margin-left: calc(99.9% * 0.333333333333333 - 0.6667rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-5{
    margin-left: calc(99.9% * 0.416666666666667 - 0.5833rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-6{
    margin-left: calc(99.9% * 0.5 - 0.5rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-7{
    margin-left: calc(99.9% * 0.583333333333333 - 0.4167rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-8{
    margin-left: calc(99.9% * 0.666666666666667 - 0.3333rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-9{
    margin-left: calc(99.9% * 0.75 - 0.25rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-10{
    margin-left: calc(99.9% * 0.833333333333333 - 0.1667rem + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-11{
    margin-left: calc(99.9% * 0.916666666666667 - 1.333333333333329px + 1rem) !important;
  }
  .sv-col.sv--lrg-offset-12{
    margin-left: calc(99.9% * 1 - 0px + 1rem) !important;
  }
  .sv-block-grid.sv--lrg-2 > .sv-col{
    width: calc(99.9% * 1/2 - 0.5rem);
    height: calc(99.9% * 1/2 - 0.5rem);
  }
  .sv-block-grid.sv--lrg-2 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-2 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-2 > .sv-col:nth-child(2n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-2 > .sv-col:nth-child(2n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-2 > .sv-col:nth-last-child(-n + 2){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-3 > .sv-col{
    width: calc(99.9% * 1/3 - 0.6667rem);
    height: calc(99.9% * 1/3 - 0.6667rem);
  }
  .sv-block-grid.sv--lrg-3 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-3 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-3 > .sv-col:nth-child(3n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-3 > .sv-col:nth-child(3n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-3 > .sv-col:nth-last-child(-n + 3){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-4 > .sv-col{
    width: calc(99.9% * 1/4 - 0.75rem);
    height: calc(99.9% * 1/4 - 0.75rem);
  }
  .sv-block-grid.sv--lrg-4 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-4 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-4 > .sv-col:nth-child(4n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-4 > .sv-col:nth-child(4n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-4 > .sv-col:nth-last-child(-n + 4){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-5 > .sv-col{
    width: calc(99.9% * 1/5 - 0.8rem);
    height: calc(99.9% * 1/5 - 0.8rem);
  }
  .sv-block-grid.sv--lrg-5 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-5 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-5 > .sv-col:nth-child(5n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-5 > .sv-col:nth-child(5n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-5 > .sv-col:nth-last-child(-n + 5){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-6 > .sv-col{
    width: calc(99.9% * 1/6 - 0.8333rem);
    height: calc(99.9% * 1/6 - 0.8333rem);
  }
  .sv-block-grid.sv--lrg-6 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-6 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-6 > .sv-col:nth-child(6n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-6 > .sv-col:nth-child(6n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-6 > .sv-col:nth-last-child(-n + 6){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-7 > .sv-col{
    width: calc(99.9% * 1/7 - 0.8571rem);
    height: calc(99.9% * 1/7 - 0.8571rem);
  }
  .sv-block-grid.sv--lrg-7 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-7 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-7 > .sv-col:nth-child(7n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-7 > .sv-col:nth-child(7n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-7 > .sv-col:nth-last-child(-n + 7){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-8 > .sv-col{
    width: calc(99.9% * 1/8 - 0.875rem);
    height: calc(99.9% * 1/8 - 0.875rem);
  }
  .sv-block-grid.sv--lrg-8 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-8 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-8 > .sv-col:nth-child(8n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-8 > .sv-col:nth-child(8n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-8 > .sv-col:nth-last-child(-n + 8){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-9 > .sv-col{
    width: calc(99.9% * 1/9 - 0.8889rem);
    height: calc(99.9% * 1/9 - 0.8889rem);
  }
  .sv-block-grid.sv--lrg-9 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-9 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-9 > .sv-col:nth-child(9n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-9 > .sv-col:nth-child(9n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-9 > .sv-col:nth-last-child(-n + 9){
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-10 > .sv-col{
    width: calc(99.9% * 1/10 - 0.9rem);
    height: calc(99.9% * 1/10 - 0.9rem);
  }
  .sv-block-grid.sv--lrg-10 > .sv-col:nth-child(1n){
    float: left;
    margin-right: 1rem;
    margin-bottom: 1rem;
    clear: none;
  }
  .sv-block-grid.sv--lrg-10 > .sv-col:last-child{
    margin-right: 0;
    margin-bottom: 0;
  }
  .sv-block-grid.sv--lrg-10 > .sv-col:nth-child(10n){
    margin-right: 0;
  }
  .sv-block-grid.sv--lrg-10 > .sv-col:nth-child(10n + 1){
    clear: both;
  }
  .sv-block-grid.sv--lrg-10 > .sv-col:nth-last-child(-n + 10){
    margin-bottom: 0;
  }
  .sv-lightbox__wrapper .sv-slider{
    margin: 5.5625rem 0;
    height: calc(100vh - 11.125rem);
  }
  .sv-lightbox__wrapper .sv-slider__counter{
    right: 3rem;
    bottom: 1.25rem;
  }
  .sv-lightbox__wrapper .sv-slider__caption{
    left: 3rem;
    bottom: 1.75rem;
  }
  .sv-lightbox__close{
    top: 1.75rem;
    right: 3rem;
  }
  .sv--is-modal .sv-lightbox__close{
    top: 2rem;
    right: 2rem;
  }
  .sv--full-width.sv--type-residential.sv--search-type-buy .sv--show-original .sv-property-price__value{
    margin-bottom: 0;
  }
  .sv--show-original .sv-property-price__value .sv--full-width.sv--type-new-development{
    margin-bottom: 0.3125rem;
  }
  .sv--full-width.sv--type-new-development .sv-property-price__original, .sv--full-width.sv--type-residential.sv--search-type-buy .sv-property-price__original{
    font-size: 1.25rem;
  }
  .sv-spacer.sv--lrg-v-space-xsml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.5rem;
  }
  .sv-spacer.sv--lrg-space-xsml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.5rem;
  }
  .sv-spacer.sv--lrg-space-xsml:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.5rem;
  }
  .sv-spacer.sv--lrg-v-space-xsml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 0.75rem;
  }
  .sv-spacer.sv--lrg-space-xsml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 0.75rem;
  }
  .sv-spacer.sv--lrg-space-xsml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 0.75rem;
  }
  .sv-spacer.sv--lrg-v-space-sml{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1rem;
  }
  .sv-spacer.sv--lrg-space-sml:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1rem;
  }
  .sv-spacer.sv--lrg-space-sml:not(.sv--no-spacer).sv--reverse{
    margin-top: 1rem;
  }
  .sv-spacer.sv--lrg-v-space-sml-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.25rem;
  }
  .sv-spacer.sv--lrg-space-sml-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.25rem;
  }
  .sv-spacer.sv--lrg-space-sml-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.25rem;
  }
  .sv-spacer.sv--lrg-v-space-med{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.5rem;
  }
  .sv-spacer.sv--lrg-space-med:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.5rem;
  }
  .sv-spacer.sv--lrg-space-med:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.5rem;
  }
  .sv-spacer.sv--lrg-v-space-med-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 1.75rem;
  }
  .sv-spacer.sv--lrg-space-med-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 1.75rem;
  }
  .sv-spacer.sv--lrg-space-med-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 1.75rem;
  }
  .sv-spacer.sv--lrg-v-space-lrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 2rem;
  }
  .sv-spacer.sv--lrg-space-lrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 2rem;
  }
  .sv-spacer.sv--lrg-space-lrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 2rem;
  }
  .sv-spacer.sv--lrg-v-space-lrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 3rem;
  }
  .sv-spacer.sv--lrg-space-lrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 3rem;
  }
  .sv-spacer.sv--lrg-space-lrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 3rem;
  }
  .sv-spacer.sv--lrg-v-space-xlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 4rem;
  }
  .sv-spacer.sv--lrg-space-xlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 4rem;
  }
  .sv-spacer.sv--lrg-space-xlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 4rem;
  }
  .sv-spacer.sv--lrg-v-space-xlrg-mid{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 6rem;
  }
  .sv-spacer.sv--lrg-space-xlrg-mid:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 6rem;
  }
  .sv-spacer.sv--lrg-space-xlrg-mid:not(.sv--no-spacer).sv--reverse{
    margin-top: 6rem;
  }
  .sv-spacer.sv--lrg-v-space-xxlrg{
    /* in  the case of vertical spacing we use padding to allow for margin auto cebtered containers */
    padding: 0 8rem;
  }
  .sv-spacer.sv--lrg-space-xxlrg:not(.sv--no-spacer):not(.sv--reverse){
    margin-bottom: 8rem;
  }
  .sv-spacer.sv--lrg-space-xxlrg:not(.sv--no-spacer).sv--reverse{
    margin-top: 8rem;
  }
  .sv-section-bg.sv--padded-top{
    padding-top: 3rem;
  }
  .sv-section-header{
    margin-bottom: 3rem;
  }
  .sv-section-header .sv-button{
    margin-bottom: 0;
  }
  .sv-section-header__title{
    font-size: 2rem;
  }
  .sv-text-copy, .sv-copy, .sv-list li, .vx_text:not(.sv-sub-nav__link-tree) > ul li, .vx_text:not(.sv-sub-nav__link-tree) > ol li, .sv-profile-intro__intro{
    font-size: 1rem;
    line-height: 1.5rem;
    color: inherit;
  }
  .sv-leading-intro, .sv-article__intro{
    margin-top: 5.125rem;
  }
  .sv--bullets.sv--lrg, .vx_text:not(.sv-sub-nav__link-tree) > ul.sv--lrg{
    margin-left: 0.5rem;
  }
  .sv-breadcrumbs{
    top: 5.3125rem;
  }
  .sv-breadcrumbs__container{
    padding-left: 1.25rem;
  }
  .sv-header__cookie-notification-displayed .sv-breadcrumbs{
    top: 10.9375rem;
  }
  .sv-card.sv--fixed-height.sv--is-award .sv-card-title{
    max-height: 5.1875rem;
  }
  .sv-card.sv--listing-row .sv-card__primary-ctas{
    flex-shrink: 1;
  }
  .sv-card.sv--expert.sv--full-width .sv-card__content, .sv-card.sv--office.sv--full-width .sv-card__content{
    padding-top: 1rem;
  }
  .sv-card.sv--expert.sv--full-width .sv-card__primary-ctas, .sv-card.sv--office.sv--full-width .sv-card__primary-ctas{
    display: block;
  }
  .sv-card.sv--expert.sv--full-width .sv-card-link-container, .sv-card.sv--office.sv--full-width .sv-card-link-container{
    display: none;
  }
  .sv-card.sv--author .sv-card__image{
    width: auto;
    height: auto;
  }
  .sv-card.sv--author .sv-card__content{
    display: block;
  }
  .sv-card.sv--author .sv-card__misc{
    line-height: 1.3;
  }
  .sv-card.sv--author .sv-card-telephone{
    display: inline;
    display: initial;
  }
  .sv--cookie-warning .sv-nav__item a::after, .sv--cookie-warning .sv-nav__item a::before{
    top: 11.25rem;
  }
  .sv-content-header{
    margin-bottom: 2rem;
  }
  .sv--breadcrumb-adjustment{
    margin-top: -2.625rem;
  }
  .sv--breadcrumb-adjustment .sv-content-header__content{
    padding-top: 6vw;
  }
  .sv-content-header.sv--has-image .sv-content-header__content-wrap{
    height: 33.125rem;
  }
  .sv-content-panel-article{
    position: relative;
    z-index: 10;
    padding: 1.25rem;
    margin-bottom: 1rem;
    background: #fff;
    border: 1px solid #eee;
    margin-top: -5rem;
  }
  .sv-content-panel-article > *:first-child{
    margin-top: 0;
  }
  .sv-content-panel-article > *:last-child{
    margin-bottom: 0;
  }
  .sv-content-panel-article.sv--styled{
    background: #fff;
    border: 1px solid #eee;
  }
  .sv-content-panel-article.sv--dark{
    background: #252839;
  }
  .sv-content-panel-article.sv--dark > p{
    color: #fff;
  }
  .sv-content-panel-article.sv--overlay{
    margin-top: -5rem;
  }
  .sv-content-row:first-of-type{
    margin-top: 3rem;
  }
  .sv-content-row .sv-list li, .sv-content-row.sv--featured .sv-list li{
    font-size: 1rem;
    line-height: 1.875rem;
  }
  .sv-content-row.sv--featured .sv-content-row__heading{
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
  .sv-content-row.sv--no-border:first-of-type{
    margin-top: 4.5rem;
  }
  .sv-cta-links.sv--fixed-lt-lrg{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    bottom: auto;
    left: auto;
    right: auto;
    height: auto;
    background-color: #fff;
    outline: 1px solid #c9c9c9;
  }
  .sv-cta-links.sv--fixed-lt-lrg .sv-button, .sv-cta-links.sv--fixed-lt-lrg .sv-button.sv--tertiary{
    flex: none;
    max-width: none;
    width: 100%;
  }
  .sv-expandable-item__header{
    padding: 1.1875rem 0.5rem 1.3125rem 0;
  }
  .sv-expandable-item__header::before{
    width: 1.5rem;
    height: 1.5rem;
    top: 1.375rem;
    right: 0.5rem;
  }
  .sv-expandable-item__title{
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .sv--has-heading .sv-facts__background{
    max-height: 30.4375rem;
    /* This gives an overlap of 122px */
  }
  .sv-fact__value.sv--text{
    margin-top: -0.6875rem;
    margin-bottom: 1.3125rem;
    font-size: 1.875rem;
    line-height: 1.36;
  }
  .sv-image-treatment.sv--type-9::before{
    background: linear-gradient(0deg, #252839 0%, rgba(37, 40, 57, .05) 50%, rgba(37, 40, 57, .05) 70%, rgba(37, 40, 57, .64) 100%);
  }
  .sv-language-selector__country{
    overflow: visible;
  }
  .sv-language-selector .sv-flag.sv--form-flag::before, .sv-language-selector .sv-flag.sv--list-flag::before{
    transform: scale(.5);
  }
  .sv-language-selector .sv-flag.sv--form-flag{
    margin-bottom: 0;
  }
  .sv-language-selector .sv-flag.sv--form-flag::before{
    left: 5px;
    transform: translateY(-50%) scale(.5);
  }
  .sv-language-selector .sv-flag.sv--list-flag::before{
    margin-bottom: -11.5px;
  }
  .sv-language-selector{
    display: flex;
  }
  .sv-language-selector__dropdown-label, .sv-language-selector__country-flag, .sv-language-selector button{
    display: none;
  }
  .sv-language-selector__country-dropdown, .sv-language-selector__language, .sv-language-selector__language-dropdown{
    display: block;
  }
  .sv-language-selector__country{
    display: flex;
    flex: 1 0 auto;
    align-items: center;
    height: auto;
  }
  .sv-language-selector__language{
    flex: 1 0 auto;
    margin-right: -0.6875rem;
  }
  .sv-language-selector__country-dropdown{
    flex: 9 1 auto;
  }
  .sv-language-selector .sv--has-icons .sv-select__value{
    padding-left: 2.5rem;
  }
  .sv-language-selector .sv--calc-layout select, .sv-language-selector .sv--calc-layout .sv-select__value{
    min-height: 1.25rem;
  }
  .sv-language-selector .sv--calc-layout .sv-select__value{
    padding-right: 1.875rem;
    font-size: 0.75rem;
  }
  .sv-language-selector .sv--calc-layout .sv-select__option{
    padding: 0.3125rem 0.9375rem;
    font-size: 0.75rem;
  }
  .sv-language-selector .sv--dropdown{
    margin-bottom: 0;
  }
  /*
     * Desktop Native <select> styling.
     */
  .sv-language-selector .sv--calc-layout select, .sv-language-selector .sv--calc-layout .sv-select__value{
    color: inherit;
    border: none;
    font-size: 0.75rem;
    background: transparent calc(100% - 0.625rem) no-repeat;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23999795%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
    background-size: 0.625rem;
    font-weight: 500;
  }
  .sv-language-selector .sv-language-selector__country-dropdown .sv--calc-layout select{
    padding-left: 2.5rem;
  }
  .sv-language-selector__language .sv--calc-layout .sv-select__options{
    right: 0;
  }
  .sv-page-header.sv--has-image{
    padding: 0;
  }
  .sv-page-header.sv--has-image .sv-page-header__content{
    height: 38rem;
  }
  .sv-page-header.sv--has-image .sv-page-header__content-inner{
    padding: 0 5rem;
    bottom: 3.125rem;
  }
  .sv-page-header.sv--has-image .sv-page-header__title{
    font-size: 3.4375rem;
    margin: 0 0 2.125rem;
  }
  .sv-page-header.sv--has-image .sv-page-header__intro{
    display: block;
    color: #fff;
  }
  .sv-property-card.sv--full-width{
    height: 25rem;
    /* stylelint-enable selector-max-specificity */
  }
  .sv-property-card.sv--full-width .sv-details__content{
    margin: 3rem 2rem;
  }
  .sv-property-card.sv--full-width .sv-details__contacts{
    left: 2rem;
    bottom: 4rem;
    right: 2rem;
    position: absolute;
    display: block;
    overflow: hidden;
    z-index: 2;
  }
  .sv-property-card.sv--full-width .sv-details__contacts > div{
    display: inline-block;
    float: left;
    width: 50%;
  }
  .sv-property-card.sv--full-width .sv-details__contacts > div > address{
    float: left;
    margin: 0 0 0 0.8125rem;
    width: calc(100% - 6.125rem);
    font-style: normal;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-photo{
    float: left;
    width: 4.375rem;
    height: 4.375rem;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-name{
    font-family: 'DomineWebBold', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
    font-size: 0.75rem;
    margin: 0 0 0.1875rem;
    float: left;
    width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-location{
    font-size: 0.75rem;
    font-weight: 300;
    line-height: 1rem;
    margin: 0;
    float: left;
    width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-phone{
    font-size: 0.6875rem;
    font-weight: 500;
    margin: 0;
    float: left;
    width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-phone a{
    color: #252839;
  }
  .sv-property-card.sv--full-width .sv-details__contacts-link{
    display: block;
    background: #fff;
    color: #252839;
    font-size: 0.75rem;
    line-height: 1.4;
    font-weight: 300;
    border-bottom: 1px solid #cd171e;
    padding: 0;
  }
  .sv-property-card.sv--full-width .sv-details__footer{
    padding: 0 2rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-property-card.sv--full-width.sv--type-commercial .sv-details__content, .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-commercial.sv--search-type-buy .sv-details__content, .sv-property-card.sv--full-width.sv--type-residential.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-rent .sv-details__content, .sv-property-card.sv--full-width.sv--type-farm.sv--search-type-buy .sv-details__content{
    margin-top: 2rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm, .sv-property-card.sv--full-width.sv--type-new-development{
    height: 25.3125rem;
  }
  .sv-property-card.sv--full-width.sv--type-farm .sv-details .sv-property-attribute.sv--residential, .sv-property-card.sv--full-width.sv--type-new-development .sv-details .sv-property-attribute.sv--residential{
    display: inline-block;
  }
  .sv-rich-card.sv--quarternary{
    padding: 10rem 0.75rem 0;
  }
  .sv-rich-card.sv--quarternary .sv-rich-card__bg{
    height: auto;
  }
  .sv-rich-card.sv--quarternary .sv-rich-card__detail{
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .sv--active .sv-search-box{
    display: block;
    position: absolute;
    right: 0;
    z-index: 10;
    margin-top: 0.5rem;
    background: #252839;
    color: #fff;
    padding: 1rem;
  }
  .sv--active .sv-search-box .sv-custom-input{
    margin-bottom: 0;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv--active .sv-search-box .sv-custom-input.sv--search.sv--alt input{
    border-color: #252839;
    color: #fff;
    background: #535565;
  }
  .sv--active .sv-search-box .sv-custom-input.sv--search.sv--alt input::-webkit-input-placeholder{
    color: #fff;
  }
  .sv--active .sv-search-box .sv-custom-input.sv--search.sv--alt input:-ms-input-placeholder{
    color: #fff;
  }
  .sv--active .sv-search-box .sv-custom-input.sv--search.sv--alt input::placeholder{
    color: #fff;
  }
  .sv--active .sv-search-box .sv-custom-input.sv--search.sv--alt button{
    top: 1px;
    background-color: #535565;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1728%20893q0%2014-10%2024l-384%20354q-16%2014-35%206-19-9-19-29v-224h-1248q-14%200-23-9t-9-23v-192q0-14%209-23t23-9h1248v-224q0-21%2019-29t35%205l384%20350q10%2010%2010%2023z%22%2F%3E%3C%2Fsvg%3E");
  }
  .sv-search-filter{
    position: static;
    border-width: 1px 0;
    border-color: #c9c9c9;
    border-style: solid;
  }
  .sv-search-filter__content{
    display: block;
  }
  .sv-search-filter__filters{
    display: flex;
  }
  .sv-search-filter__heading{
    display: none;
  }
  .sv-search-filter__options{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .sv-search-filter__options.sv--filters{
    flex: 1;
  }
  .sv-search-filter__options.sv--filters .sv-search-filter__option:last-child{
    margin-right: 0;
  }
  .sv-search-filter__option{
    margin-right: 0.75rem;
  }
  .sv-search-filter__option .sv-custom-input.sv--radio, .sv-search-filter__option .sv-custom-input.sv--checkbox{
    margin-bottom: 0;
  }
  .sv-search-filter__button{
    width: 13.4375rem;
    flex-shrink: 0;
    padding-left: 2rem;
  }
  .sv-search-filter__button button{
    margin-bottom: 0;
  }
  .sv-selection-panel.sv--alt{
    font-size: 3.4375rem;
    padding: 16.25rem 0 4.0625rem;
  }
  .sv-selection-panel.sv--alt .sv-button{
    min-width: 13.4375rem;
    margin-top: 3.75rem;
    margin-bottom: 2.5rem;
  }
  .sv-share-price__info-cta-narrow{
    display: none;
  }
  .sv-share-price__info-cta-wide{
    display: block;
  }
  .sv-usp:nth-child(1) .sv-usp__image.sv--primary::after{
    background-size: 11.6875rem 13.25rem;
  }
  .sv-usp:nth-child(3) .sv-usp__image.sv--primary::after{
    background-size: 12.1875rem 11.9375rem;
  }
  .sv-article__leading-image{
    margin-top: 2rem;
  }
  .sv-successful-result .sv-col:first-child{
    margin-bottom: 0;
  }
  .sv-footer.sv--cta-links{
    padding-bottom: 0;
  }
  .sv-header{
    height: 5.5625rem;
  }
  .sv-header.sv--has-breadcrumbs{
    height: 8rem;
  }
  .sv-header__wrap{
    transition: .5s background-color, .5s border-bottom-color;
  }
  .sv-header__logo{
    height: 5.5625rem;
  }
  .sv-header__tool-set{
    margin-left: 7.5625rem;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
  }
  .sv-header__tool-item{
    padding-top: 0.75rem;
    padding-bottom: 0.5rem;
    height: auto;
  }
  /*
        Targetting the second to last child since the menu toggle is the last child albeit invisible
      */
  .sv-header__tool-item:nth-last-child(2){
    padding-right: 0;
  }
  .sv-header__tool-item.sv--locale .sv-header__tool-action{
    padding-top: 0;
  }
  .sv-header__tool-item.sv--search .sv-header__tool-action span{
    height: 1.25rem;
    line-height: 1.25rem;
  }
  .sv-header__tool-item.sv--search.sv--active{
    background: #252839;
  }
  .sv-header__tool-item.sv--search.sv--active .sv-header__tool-action{
    border-left-color: #252839;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-header__tool-item.sv--search.sv--active .sv-header__tool-action span{
    padding-right: 1rem;
    padding-right: 1.5rem;
  }
  .sv-header__tool-item.sv--search.sv--active .sv-header__tool-action span::after{
    /* stylelint-disable at-rule-empty-line-before */
    background-size: contain;
    height: 1rem;
    width: 1rem;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1216%20832q0-185-131.5-316.5t-316.5-131.5-316.5%20131.5-131.5%20316.5%20131.5%20316.5%20316.5%20131.5%20316.5-131.5%20131.5-316.5zm512%20832q0%2052-38%2090t-90%2038q-54%200-90-38l-343-342q-179%20124-399%20124-143%200-273.5-55.5t-225-150-150-225-55.5-273.5%2055.5-273.5%20150-225%20225-150%20273.5-55.5%20273.5%2055.5%20225%20150%20150%20225%2055.5%20273.5q0%20220-124%20399l343%20343q37%2037%2037%2090z%22%2F%3E%3C%2Fsvg%3E");
    right: 0;
    /* stylelint-enable at-rule-empty-line-before */
  }
  .sv-header__tool-item.sv--search.sv--active button{
    color: #fff;
  }
  .sv-header__tool-action{
    height: auto;
  }
  .sv-header__tool-action.sv-language-selector__container{
    padding: 0;
  }
  .sv-header .sv-nav{
    background: none;
  }
  .sv-header.sv--has-ghost{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  .sv-header.sv--ghost{
    color: #fff;
    /* stylelint-enable selector-max-specificity */
  }
  .sv-header.sv--ghost .sv-header__wrap{
    background-color: transparent;
    border-bottom-color: transparent;
    transition: .25s background-color, .25s border-bottom-color;
  }
  .sv-header.sv--ghost .sv-header__tool-action{
    border-left-color: #fff;
    color: inherit;
  }
  .sv-header.sv--ghost .sv-header__tool-item.sv--search{
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-header.sv--ghost .sv-header__tool-item.sv--search .sv-header__tool-action span::after{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1216%20832q0-185-131.5-316.5t-316.5-131.5-316.5%20131.5-131.5%20316.5%20131.5%20316.5%20316.5%20131.5%20316.5-131.5%20131.5-316.5zm512%20832q0%2052-38%2090t-90%2038q-54%200-90-38l-343-342q-179%20124-399%20124-143%200-273.5-55.5t-225-150-150-225-55.5-273.5%2055.5-273.5%20150-225%20225-150%20273.5-55.5%20273.5%2055.5%20225%20150%20150%20225%2055.5%20273.5q0%20220-124%20399l343%20343q37%2037%2037%2090z%22%2F%3E%3C%2Fsvg%3E");
  }
  .sv-header.sv--ghost .sv-header__tool-item.sv--login{
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-header.sv--ghost .sv-header__tool-item.sv--login .sv-header__tool-action span::after{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1600%201405q0%20120-73%20189.5t-194%2069.5h-874q-121%200-194-69.5t-73-189.5q0-53%203.5-103.5t14-109%2026.5-108.5%2043-97.5%2062-81%2085.5-53.5%20111.5-20q9%200%2042%2021.5t74.5%2048%20108%2048%20133.5%2021.5%20133.5-21.5%20108-48%2074.5-48%2042-21.5q61%200%20111.5%2020t85.5%2053.5%2062%2081%2043%2097.5%2026.5%20108.5%2014%20109%203.5%20103.5zm-320-893q0%20159-112.5%20271.5t-271.5%20112.5-271.5-112.5-112.5-271.5%20112.5-271.5%20271.5-112.5%20271.5%20112.5%20112.5%20271.5z%22%2F%3E%3C%2Fsvg%3E");
  }
  .sv-header.sv--ghost .sv-nav{
    background: none;
  }
  .sv-header.sv--ghost .sv-nav__item{
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-header.sv--ghost .sv-nav__item.sv--active{
    border-bottom-color: transparent;
  }
  .sv-header.sv--ghost .sv-nav__item.sv--active .sv-nav__label{
    color: #ffdf00;
  }
  .sv-header.sv--ghost .sv-nav__label{
    color: inherit;
    font-weight: 700;
    text-shadow: 0 0 0.625rem #000;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-header.sv--ghost .sv-language-selector .sv--calc-layout select, .sv-header.sv--ghost .sv-language-selector .sv--calc-layout .sv-select__value{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%221792%22%20height%3D%221792%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23fff%3B%22%3E%3Cpath%20d%3D%22M1683%20808l-742%20741q-19%2019-45%2019t-45-19l-742-741q-19-19-19-45.5t19-45.5l166-165q19-19%2045-19t45%2019l531%20531%20531-531q19-19%2045-19t45%2019l166%20165q19%2019%2019%2045.5t-19%2045.5z%22%2F%3E%3C%2Fsvg%3E");
  }
  .sv-micro-contact-list__title{
    margin-bottom: 0;
  }
  .sv-micro-contact-list__content + .sv-micro-contact-list__button{
    margin-top: 2rem;
  }
  /* Unhide all buttons */
  .sv-micro-contact-list__button .sv-button:not(.sv--secondary):not(.sv--tertiary), .sv-micro-contact-list__button .sv-button.sv--secondary, .sv-micro-contact-list__button .sv-button.sv--tertiary{
    display: block;
  }
  .sv-micro-contact-list .sv-card.sv--micro.sv--expert{
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-micro-contact-list .sv-card.sv--micro.sv--expert:last-of-type{
    padding-bottom: 0;
  }
  /* Show the sub nav on hover
     ------------------------ */
  .sv-header__cookie-notification-displayed .sv-nav .sv-nav__item > a::before, .sv-header__cookie-notification-displayed .sv-nav .sv-nav__item > a::after{
    top: 11.125rem;
  }
  .sv-nav__item > a::before, .sv-nav__item > a::after{
    /* This is a really cheeky way of getting around using js to display the content veil */
    content: '';
    width: 100vw;
    height: 100vh;
    position: fixed;
    left: 0;
    top: 5.5625rem;
    z-index: 1;
    pointer-events: none;
    visibility: hidden;
  }
  /* backdrop-filter doesnt allow bg colour, so spliting between 2 elements */
  .sv-nav__item > a::after{
    background-color: #252839;
    opacity: .5;
  }
  .sv-nav__item > a::before{
    opacity: 1;
  }
  .sv-nav__label.sv--focused{
    color: #cd171e;
    outline: none;
    transition: none;
  }
  .sv-nav__label.sv--focused::before, .sv-nav__label.sv--focused::after{
    visibility: visible;
  }
  /* Sub nav panel
     ----------------------- */
  .sv-sub-nav{
    border-top: 1px solid #e2e3e5;
    padding: 2rem 1rem;
    left: -2rem;
    right: -2rem;
    transform: none;
    top: 100%;
    max-height: calc(100vh - 5.5625rem);
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s;
    display: block;
    position: absolute;
    height: auto;
  }
  .sv-sub-nav .sv-col{
    padding: 0 1rem;
  }
  .sv-sub-nav.sv--focused{
    opacity: 1;
    visibility: visible;
    transition: opacity .25s;
  }
  .sv-nav{
    bottom: 0;
    height: auto;
    left: auto;
    overflow: visible;
    position: absolute;
    right: 0;
    top: auto;
    transition: none;
    visibility: visible;
    width: 100%;
    z-index: 1;
  }
  .sv-nav__items{
    float: right;
    padding-top: 0;
    /*
      Static position to allow sub menu to position absolutely against main nav element
      */
    position: static;
  }
  .sv-nav__items:before{
    /*
      Static position to allow sub menu to position absolutely against main nav element
      */
    content: '';
    display: table;
  }
  .sv-nav__items:after{
    /*
      Static position to allow sub menu to position absolutely against main nav element
      */
    content: '';
    display: table;
    clear: both;
  }
  .sv-nav__item{
    float: left;
    transition: border-color 150ms;
  }
  .sv-nav__item::after{
    content: none;
  }
  .sv-nav__label{
    font-size: 0.875rem;
    line-height: 1.15;
    margin: 0 0.5rem;
    padding: 0.75rem 0.5rem;
    text-align: left;
  }
  .sv-nav .sv--active{
    border-bottom-color: #cd171e;
  }
  .sv-newsletter-signup .sv-newsletter-signup__email .sv-custom-input .sv-form-error{
    top: 3.875rem !important;
  }
  .sv-profile-header__wrap{
    z-index: -1;
  }
  .sv-profile-header__wrap:not(.sv-sv--no-border){
    border-bottom: 1px solid #c9c9c9;
  }
  .sv-profile-header__content{
    height: 18.125rem;
  }
  .sv-profile-header__title{
    font-size: 3.4375rem;
    line-height: 4.375rem;
    margin-top: 0;
  }
  .sv-profile-header__subtitle{
    font-size: 1.125rem;
  }
  .sv-profile-header__intro, .sv-profile-header__intro.sv--no-subtitle{
    font-size: 1.25rem;
    text-align: center;
  }
  .sv-profile-header__expertise{
    display: inline;
  }
  .sv-profile-header__location{
    display: block;
    padding-left: 0;
  }
  .sv-profile-header__location::before{
    display: none;
  }
  .sv-profile-header.sv--has-image .sv-profile-header__content{
    height: 33.125rem;
  }
  .sv-profile-header.sv--has-image .sv-profile-header__title{
    font-size: 3.75rem;
    line-height: 4.75rem;
  }
  .sv-profile-intro{
    margin-top: 5.125rem;
    margin-bottom: 2rem;
  }
  .sv-profile-intro__title{
    font-weight: 300;
  }
  .sv-profile-intro__intro{
    margin-top: 2rem;
  }
  .sv-profile-intro:not(.sv--has-image) .sv-profile-intro__title{
    font-size: 1.875rem;
    line-height: 2.5rem;
  }
  .sv-carousel__slide{
    padding-right: 1rem;
  }
  .sv-carousel .sv-property-card .sv-slider__footer-labels{
    margin-left: 1rem;
  }
  /* stylelint-disable-next-line */
  .sv-carousel .sv-property-card .sv-slider__footer-action.sv--save-inline button{
    padding-right: 1rem;
  }
  .sv-tabbed-slider .sv-tabs-panel .sv-tab-card{
    margin-left: 1.875rem;
  }
  .sv-tabbed-slider .sv-tabs-panel .sv-tab-card__title{
    font-size: 1rem;
  }
  .sv-search-results__input .sv-custom-input{
    margin: 2rem 0;
  }
  .sv-search-results .sv-card.sv--listing-row:first-child{
    border-top: none;
  }
}
@media (min-width: 768px) and (max-width: 1135px){
  .sv-search-summary .sv-favourite, .sv-search-summary .sv-favourite:active, .sv-search-summary .sv-favourite:hover, .sv-search-summary .sv-favourite:focus{
    margin-top: -0.125rem;
  }
  .sv-contained, .sv-row, .sv-block-grid{
    padding: 0 2rem;
  }
  .sv-card.sv--listing-row .sv-card__image ~ .sv-card__content .sv-card__download-link{
    display: block;
  }
  .sv-card.sv--listing-row .sv-card__image ~ .sv-card__primary-ctas{
    display: none;
  }
  .sv-content-panel-article.sv--med-2-column .sv-micro-contact-list__content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .sv-content-panel-article.sv--med-2-column .sv-micro-contact-list .sv-card{
    width: calc(50% - 0.5rem);
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-content-panel-article.sv--med-2-column .sv-micro-contact-list .sv-card:nth-of-type(odd){
    margin-right: 1rem;
  }
  .sv-content-panel-article.sv--med-2-column .sv-micro-contact-list .sv-card:nth-of-type(2){
    border-top: 0;
  }
  .sv-search-filter.sv--active .sv-search-filter__content{
    padding-top: 6rem;
  }
  .sv--cookie-warning .sv-search-filter.sv--active .sv-search-filter__content{
    padding-top: 11.875rem;
  }
  .sv-article__author{
    margin: 1.5rem 0 0 1rem;
  }
  .sv-article__related{
    margin: 1.5rem 0 0 2rem;
  }
  .sv-article__related .sv-panel-heading{
    line-height: 1.375rem;
  }
  .sv-header__inner{
    margin: 0 2rem;
  }
  .sv-carousel .sv-property-card{
    /* stylelint-enable selector-max-specificity */
  }
  .sv-carousel .sv-property-card .sv-slider__footer.sv--bg{
    left: 0;
    right: 0;
  }
  .sv-carousel .sv-property-card .sv-slider__footer-labels{
    margin-left: 0.5rem;
  }
  /* stylelint-disable-next-line */
  .sv-carousel .sv-property-card .sv-slider__footer-action.sv--save-inline button{
    padding-right: 0.5rem;
  }
  .sv-carousel .sv-property-card .sv-details__content{
    margin: 2rem 0.625rem 0;
  }
  .sv-carousel .sv-property-card .sv-details__price-rent-basis{
    padding-left: 0;
  }
  .sv-carousel .sv-property-card .sv-details__other-fees{
    font-size: 0.625rem;
  }
  .sv-carousel .sv-property-card .sv-details__footer{
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .sv-carousel .sv-property-card .sv-details .sv-property-attribute{
    font-size: 0.625rem;
    margin: 0 0.125rem;
    padding-left: 1.375rem !important;
  }
  .sv-carousel .sv-property-card.sv--type-farm .sv-details__content, .sv-carousel .sv-property-card.sv--type-commercial .sv-details__content{
    margin-top: 1.25rem;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-carousel .sv-property-card.sv--type-farm.sv--is-parent .sv-details__footer, .sv-carousel .sv-property-card.sv--type-new-development .sv-details__footer{
    margin: 0;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}
@media (max-width: 1247px){
  .sv-contained, .sv-row, .sv-block-grid{
    padding: 0 1rem;
  }
  .sv-content-header{
    min-height: 25vw;
  }
  .sv-content-header__content{
    padding: 6vw;
  }
  .sv-content-header__category{
    font-size: 1.5vw;
    margin-bottom: 2vw;
  }
  .sv-content-header__title{
    font-size: 5vw;
  }
  .sv-content-header__date{
    font-size: 1.5vw;
    margin-top: 4vw;
  }
  .sv-header__inner{
    margin: 0 1rem;
  }
  .sv-header__tool-item:last-child{
    padding-right: 0;
  }
  .sv-header__tool-item.sv--menu .sv-header__tool-action{
    padding-right: 0;
  }
}
@media (min-width: 1248px){
  /* Breakpoint specific flow switching */
  .sv-row.sv--xlrg-right > .sv-col{
    float: right !important;
    margin-right: 0 !important;
    margin-left: 1rem;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-row.sv--xlrg-right > .sv-col:last-child{
    margin-left: 0;
  }
  /* Breakpoint specific height matching */
  .sv-row.sv--xlrg-equal{
    display: flex;
    flex-wrap: wrap;
  }
  .sv-row.sv--xlrg-equal > .sv-col{
    display: flex;
  }
  .sv-breadcrumbs__container{
    padding-left: 0;
  }
  .sv-content-header.sv--has-image .sv-content-header__content{
    padding-top: calc(4.125rem + 2.6875rem + 6vw);
  }
  .sv-featured-card__content{
    padding-left: 0;
  }
  .sv-featured-card__content-body{
    display: block;
    margin: 0 auto;
    width: 78rem;
    padding: 1rem 0;
  }
  .sv-carousel__track.sv-contained{
    margin: 0 auto !important;
  }
  .sv-search-results .sv-card .sv-card__content{
    max-width: none;
  }
}
@media (max-width: 767px){
  .sv-block-grid.sv--lt-sml-show-1 > .sv-col:nth-child(n + calc(1 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-sml-show-2 > .sv-col:nth-child(n + calc(2 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-sml-show-3 > .sv-col:nth-child(n + calc(3 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-sml-show-4 > .sv-col:nth-child(n + calc(4 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-sml-show-5 > .sv-col:nth-child(n + calc(5 + 1)){
    display: none;
  }
  .sv-block-grid.sv--borders > .sv-col{
    border-top-width: 1px;
    padding: 0.3125rem 0;
  }
  .sv-property-intro .sv--show-size .sv-property-price__guide{
    font-size: 0.75rem;
  }
  .sv-results-indicator.sv--bordered, .sv-results-indicator.sv--right{
    text-align: center !important;
  }
  .sv-section-header{
    position: relative;
  }
  .sv-card.sv--listing-row{
    padding: 1rem 0;
  }
  .sv-card.sv--listing-row .sv-card__image{
    margin-bottom: 1rem;
  }
  .sv-card.sv--listing-row .sv-card__primary-ctas{
    padding-top: 1rem;
  }
  .sv--mini .sv-contact-header__name{
    line-height: 1.375;
    margin-bottom: 0;
  }
  .sv--mini .sv-contact-header__telephone{
    margin-top: 0.375rem;
    font-size: 0.6875rem;
    line-height: 1.45;
  }
  .sv-cta-links.sv--overlay{
    margin-top: 0;
  }
  .sv-modal-window{
    display: none;
  }
  .sv-page-banner__title{
    font-size: 1.875rem;
  }
  .sv-page-banner .sv-button{
    margin: 0.875rem 0 0;
  }
  .sv-page-header{
    padding: 1.5rem 0 1rem;
  }
  .sv-page-header__title{
    font-size: 1.875rem;
  }
  .sv-page-header__intro{
    font-size: 0.75rem;
  }
  .sv-page-header.sv--tertiary{
    padding: 3.4375rem 0;
  }
  .sv-page-header.sv--has-image{
    padding: 0;
  }
  .sv-page-header.sv--has-image .sv-page-header__content{
    bottom: 0;
    position: absolute;
    width: 100%;
    z-index: 2;
  }
  .sv-page-header.sv--has-image .sv-image-treatment{
    height: 0;
    padding-bottom: 63%;
    /* stylelint-enable selector-max-specificity */
  }
  /* stylelint-disable selector-max-specificity */
  .sv-page-header.sv--has-image .sv-image-treatment img{
    width: 100%;
  }
  .sv-property-card .sv-slider__footer-labels .sv-card-label{
    max-width: 9.375rem;
  }
  /* TODO: Re-evaluate once ellipsis is implmented in search */
  .sv-property-card.sv--full-width .sv-details__address1, .sv-property-card.sv--full-width .sv-details__address2{
    max-height: none;
  }
  .sv-rich-card.sv--secondary{
    max-width: 22.5rem;
    margin-left: auto;
    margin-right: auto;
  }
  .sv-rich-card.sv--secondary:before{
    content: '';
    display: table;
  }
  .sv-rich-card.sv--secondary:after{
    content: '';
    display: table;
    clear: both;
  }
  .sv-rich-card.sv--secondary .sv-rich-card__extra-intro{
    max-height: 5.625rem !important;
  }
  .sv-rich-card.sv--secondary .sv-rich-card__intro{
    height: 3.4375rem !important;
  }
  .sv-rich-card.sv--tertiary{
    padding-bottom: 1rem;
  }
  .sv-rich-card{
    max-width: 30rem;
    margin-left: auto;
    margin-right: auto;
    margin: 0 auto;
    padding: 1rem;
    padding-bottom: 0;
  }
  .sv-rich-card:before{
    content: '';
    display: table;
  }
  .sv-rich-card:after{
    content: '';
    display: table;
    clear: both;
  }
  .sv-rich-card__bg{
    height: 65%;
  }
  .sv-rich-card__content{
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .sv-rich-card.sv--fixed-height .sv-card-title{
    height: auto;
    max-height: 5rem;
  }
  .sv-rich-card.sv--fixed-height .sv-card-intro{
    max-height: 4rem;
  }
  .sv-search-filter.sv--active .sv-search-filter__content{
    padding-top: 4rem;
  }
  .sv--cookie-warning .sv-search-filter.sv--active .sv-search-filter__content{
    padding-top: 14.6875rem;
  }
  .sv-article__related{
    padding-top: 1.5rem;
    border-top: 1px solid #e2e3e5;
  }
  .sv-homepage__usps{
    margin-bottom: 3rem !important;
  }
  .sv-homepage__featured-card{
    margin-bottom: 1.875rem !important;
  }
  .sv-homepage__featured-content{
    margin-bottom: 3.125rem !important;
  }
  .sv-homepage__insight-container{
    padding-top: 1.875rem;
  }
  .sv-homepage__insight-content{
    margin-bottom: 2.8125rem !important;
    margin-top: 2.1875rem;
  }
  .sv-homepage__view-articles{
    padding: 0 2.1875rem !important;
  }
  .sv-homepage .sv-featured-card{
    background-color: #fff;
  }
  .sv-sub-nav{
    top: 3.125rem;
    height: calc(100vh - 3.125rem);
  }
  .sv-tabbed-slider .sv-tabs-panel{
    flex-flow: row nowrap;
    overflow-x: auto;
    margin-left: 0.875rem;
    padding: 0;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    z-index: 1;
  }
  .sv-tabbed-slider__scroll-curtain{
    background: linear-gradient(to right, rgba(242, 242, 242, 0) 0%, rgba(242, 242, 242, 1) 50%);
    bottom: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 2rem;
    z-index: 2;
  }
}
@media (max-width: 1023px){
  .sv-block-grid.sv--lt-med-show-1 > .sv-col:nth-child(n + calc(1 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-med-show-2 > .sv-col:nth-child(n + calc(2 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-med-show-3 > .sv-col:nth-child(n + calc(3 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-med-show-4 > .sv-col:nth-child(n + calc(4 + 1)){
    display: none;
  }
  .sv-block-grid.sv--lt-med-show-5 > .sv-col:nth-child(n + calc(5 + 1)){
    display: none;
  }
  .sv-content-header__category, .sv-content-header__date{
    font-size: 2vw;
  }
  .sv-filter-bar .sv-col{
    text-align: center;
    padding: 0.625rem 0;
  }
  .sv-filter-bar .sv-col:only-child{
    padding: 0;
  }
  .sv-rich-card.sv--secondary{
    height: 19.0625rem;
  }
  .sv-rich-card.sv--secondary .sv-rich-card__detail{
    padding: 0 1rem;
  }
  /* Hover panel
   ========================================================================== */
  .sv-rich-card__extra{
    padding: 1rem;
  }
  .sv-rich-card__extra-intro{
    font-size: 0.75rem;
    max-height: 4.625rem;
  }
  .sv-rich-card__extra-actions{
    bottom: 0;
    left: 1rem;
    right: 1rem;
  }
  .sv-rich-card__extra-actions .sv-button{
    font-size: 0.75rem;
    padding: 0.625rem;
  }
  .sv-rich-card.sv--tertiary .sv-rich-card__detail{
    padding: 0 1rem;
  }
  .sv-rich-card.sv--tertiary .sv-rich-card__content{
    min-height: 14.375rem;
  }
  .sv-rich-card.sv--tertiary .sv-card-intro{
    font-size: 0.75rem;
    max-height: 4.375rem;
  }
  .sv-rich-card{
    margin: 0 auto;
    padding: 1rem;
    padding-bottom: 0;
  }
  .sv-rich-card .sv-card-title{
    max-width: 25rem;
  }
  .sv-rich-card .sv-cta-link{
    font-size: 0.75rem;
    margin-top: auto;
  }
  /*
    detailed content
    */
  .sv-rich-card__detail{
    padding: 1rem;
  }
  .sv-author-panel{
    margin-bottom: 2rem;
  }
  .sv-article__intro{
    font-size: 1.375rem;
    line-height: 1.3;
  }
  .sv-article__body{
    font-size: 0.875rem;
  }
  .sv-gallery__slide .sv-image-treatment{
    width: calc(100vw - 1rem);
    /* minus the spacing applied to the main container */
  }
  .sv-maintenance__tel{
    color: #313131;
    font-weight: 500;
    position: relative;
    text-decoration: none;
  }
  .sv-maintenance__tel::before{
    background-color: #ffdf00;
    bottom: -1px;
    content: '';
    display: block;
    height: 0.125rem;
    left: 0;
    position: absolute;
    width: 100%;
  }
  .sv-maintenance__tel::after{
    background-color: #313131;
    width: 0;
    transition: width 150ms ease-out;
    bottom: -1px;
    content: '';
    display: block;
    height: 0.125rem;
    left: 0;
    position: absolute;
  }
  .sv-maintenance__tel:hover::after{
    width: 100%;
  }
}
@media (min-width: 768px) and (max-width: 1023px){
  .sv-card.sv--listing-block .sv-card-tags-container.sv--inline{
    /* stylelint-enable selector-max-specificity */
    flex-direction: column;
    align-items: flex-start;
    height: auto;
  }
  /* stylelint-disable selector-max-specificity */
  .sv-card.sv--listing-block .sv-card-tags-container.sv--inline .sv-tag{
    margin-top: 0.75rem;
  }
  .sv-card.sv--listing-block .sv-card-tags-container.sv--inline .sv-tag:first-child{
    margin-top: 0;
  }
}
@media (max-width: 1135px){
  .sv--breadcrumb-adjustment .sv-profile-header__content{
    padding-top: calc(2.6875rem + 2vw);
  }
  .sv--breadcrumb-adjustment{
    margin-top: -2.625rem;
  }
  .sv-cta-links .sv-button{
    margin-bottom: 1rem;
  }
  .sv-language-selector .sv--calc-layout .sv-select__value, .sv-language-selector .sv--calc-layout select{
    width: 100% !important;
  }
  .sv-search-filter.sv--active .sv-search-filter__content{
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
    background: #fff;
    overflow-y: scroll;
  }
  .sv--active .sv-search-panel{
    display: block;
    padding: 2rem 1rem;
  }
  .sv--active .sv-search-panel__content{
    max-width: 40rem;
    margin: 0 auto;
  }
  .sv-homepage__featured-card{
    margin-bottom: 3.75rem !important;
  }
  .sv-homepage__featured-content{
    margin-bottom: 2.125rem !important;
  }
  .sv-homepage__insight-content{
    margin-bottom: 2.1875rem !important;
  }
  .sv-homepage__facts, .sv-homepage__usps{
    margin-bottom: 3.75rem !important;
  }
  /* Sub nav panel
  ----------------------- */
  .sv-sub-nav{
    left: 100%;
    width: 100%;
    visibility: hidden;
    position: fixed;
    overflow: auto;
  }
  .sv-nav__inner.sv-js-toggled .sv-nav__items{
    position: fixed;
    width: 100%;
  }
  .sv-js-toggled + .sv-sub-nav{
    position: fixed;
    transform: translateX(-100%);
    transition: visibility 0s linear 0s, transform 200ms ease-out 0s;
    visibility: visible;
  }
  .sv-sub-nav__promo-title:only-child::after{
    display: none;
  }
  .sv--active.sv-nav-panel{
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100vh;
    /* not ideal but saves 100% height being incorrectly calculated when not on screen */
    background-color: #fff;
    z-index: 2;
  }
  .sv--active .sv-nav-panel__header{
    display: flex;
    align-items: center;
    width: 100%;
    height: 3.125rem;
    padding: 0.3125rem;
    border-bottom: 1px solid #e2e3e5;
  }
  .sv--active .sv-nav-panel__title, .sv--active .sv-nav-panel__close{
    height: 1.875rem;
    padding: 0 0.9375rem;
  }
  .sv--active .sv-nav-panel__close{
    background: transparent;
  }
  .sv--active .sv-nav-panel__title{
    flex: 8 1 auto;
    text-align: left;
    font-size: 0.75rem;
    line-height: 1.875rem;
    font-family: 'DomineWebRegular', 'Domine', 'Georgia', 'Palatino Linotype', 'serif';
    color: #777;
  }
  .sv--active .sv-nav-panel__close{
    text-transform: uppercase;
    line-height: 0.75rem;
    color: #4c4d50;
    font-size: 0.5625rem;
    font-weight: 700;
    text-align: right;
    border-left: 1px solid #e2e3e5;
  }
  .sv--active .sv-nav-panel__close::after{
    content: '';
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%0D%0A%20%20%3Cg%20fill%3D%22%234c4d50%22%3E%0D%0A%20%20%20%20%3Crect%20width%3D%222%22%20height%3D%2220%22%20x%3D%226.809%22%20y%3D%22-2.222%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%20%20%3Crect%20width%3D%2220%22%20height%3D%222%22%20x%3D%22-2.191%22%20y%3D%226.778%22%20transform%3D%22rotate(-45%207.809%207.778)%22%2F%3E%0D%0A%20%20%3C%2Fg%3E%0D%0A%3C%2Fsvg%3E");
    background-size: cover;
    width: 0.9375rem;
    height: 0.9375rem;
    display: inline-block;
    margin-top: -0.1875rem;
    margin-left: 0.375rem;
    vertical-align: middle;
  }
}
@media (max-width: 600px){
  .sv-content-header__category, .sv-content-header__date{
    font-weight: 500;
    font-size: 0.75rem;
  }
  .sv-content-header__category{
    margin-bottom: 0.625rem;
  }
  .sv-content-header__date{
    margin-top: 1.25rem;
  }
  .sv-content-header__title{
    font-size: 1.5rem;
  }
}
@media (min-width: 350px) and (max-width: 1135px){
  .sv-rich-card.sv--quarternary .sv-rich-card__detail{
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media (min-width: 500px) and (max-width: 767px){
  .sv-rich-card.sv--quarternary{
    padding-top: 19.375rem;
  }
  .sv-s404__content{
    max-width: 65rem;
    display: flex;
    margin: 2.5rem auto;
    align-items: center;
  }
  .sv-s404__content-image{
    flex: 2;
    padding-right: 0;
  }
  .sv-s404__content-text{
    flex: 6;
    padding-left: 1.25rem;
  }
}
@media screen and (max-width: 767px){
  .sv-footer .sv-social{
    float: none;
    margin: 2rem auto 0;
  }
  .sv-footer .sv-social__group{
    float: right;
  }
}
@media (max-width: 1023px) and (min-width: 600px){
  .sv-sub-nav__promo{
    display: flex;
  }
  .sv-sub-nav__promo-title::after{
    display: none;
  }
  .sv-sub-nav__promo > *{
    flex: 1;
    margin: 0;
  }
}
@media and (max-width: 767px){
  .sv-carousel__nav::before{
    padding-left: 1rem;
  }
}
@media and (min-width: 320px){
  .sv-carousel--static-view .sv-carousel__slide{
    max-width: 70vw;
    margin-left: auto;
    margin-right: auto;
  }
  .sv-carousel--static-view .sv-carousel__slide:before{
    content: '';
    display: table;
  }
  .sv-carousel--static-view .sv-carousel__slide:after{
    content: '';
    display: table;
    clear: both;
  }
}
@media and (min-width: 768px){
  .sv-carousel--static-view .sv-carousel__slide{
    width: calc(99.9% * 4/12 - 0.6667rem);
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-carousel--static-view .sv-carousel__slide:last-child{
    margin-right: 0;
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(3n){
    margin-right: 0;
    float: right;
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(3n + 1){
    clear: both;
  }
}
@media and (min-width: 1024px){
  .sv-carousel--static-view .sv-carousel__slide{
    width: calc(99.9% * 3/12 - 0.75rem);
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(1n){
    float: left;
    margin-right: 1rem;
    clear: none;
  }
  .sv-carousel--static-view .sv-carousel__slide:last-child{
    margin-right: 0;
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(4n){
    margin-right: 0;
    float: right;
  }
  .sv-carousel--static-view .sv-carousel__slide:nth-child(4n + 1){
    clear: both;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdlbmVyYWwvZm9udHMuY3NzIiwibWFpbi5jc3MiLCJ1dGlscy9taXhpbnMuY3NzIiwidXRpbHMvdmFyaWFibGVzLmNzcyIsInV0aWxzL3Bpa2FkYXkuY3NzIiwiZ2VuZXJhbC9jb25kaXRpb25hbHMuY3NzIiwiZ2VuZXJhbC9yZXNldC5jc3MiLCJnZW5lcmFsL2FjY2Vzc2liaWxpdHkuY3NzIiwiYXRvbXMvYW5jaG9yLmNzcyIsImF0b21zL2J1c3kuY3NzIiwiYXRvbXMvYnV0dG9ucy5jc3MiLCJhdG9tcy9jb29raWUtaW1nLmNzcyIsImF0b21zL2RpdmlkZXJzLmNzcyIsImF0b21zL2Zhdm91cml0ZS1idXR0b24uY3NzIiwiYXRvbXMvZm9ybXMuY3NzIiwiYXRvbXMvZm9ybXMtZmllbGRzLWlucHV0cy5jc3MiLCJhdG9tcy9mb3Jtcy1maWVsZHMtY2hlY2tzLmNzcyIsImF0b21zL2Zvcm0tZ3JvdXAtaGVhZGVyLmNzcyIsIjxubyBzb3VyY2U+IiwiYXRvbXMvZ3JpZC5jc3MiLCJhdG9tcy9saWdodGJveC5jc3MiLCJhdG9tcy9tb2RhbC5jc3MiLCJhdG9tcy9wYWdpbmF0aW9uLmNzcyIsImF0b21zL3Byb3BlcnR5LWF0dHJpYnV0ZS5jc3MiLCJhdG9tcy9wcm9wZXJ0eS1wcmljZS5jc3MiLCJhdG9tcy9xdW90ZXMuY3NzIiwiYXRvbXMvcmVzdWx0cy1pbmRpY2F0b3IuY3NzIiwiYXRvbXMvc3BhY2VyLmNzcyIsImF0b21zL3NlY3Rpb24tYmcuY3NzIiwiYXRvbXMvdGFncy5jc3MiLCJhdG9tcy90eXBvZ3JhcGh5LmNzcyIsImF0b21zL3ZpZGVvLXBsYXllci5jc3MiLCJtb2xlY3VsZXMvYWRkcmVzcy1maW5kZXIuY3NzIiwibW9sZWN1bGVzL2JyZWFkY3J1bWJzLmNzcyIsImF0b21zL2NhcmQtYWRkcmVzcy5jc3MiLCJhdG9tcy9jYXJkLW1ldGEuY3NzIiwiYXRvbXMvY2FyZC10aXRsZS5jc3MiLCJhdG9tcy9jYXJkLWludHJvLmNzcyIsImF0b21zL2NhcmQtbGFiZWwuY3NzIiwiYXRvbXMvY2FyZC10YWdzLWNvbnRhaW5lci5jc3MiLCJhdG9tcy9jYXJkLXRlbGVwaG9uZS5jc3MiLCJhdG9tcy9jYXJkLWZpeGVkLWhlaWdodHMuY3NzIiwibW9sZWN1bGVzL2NhcmQuY3NzIiwibW9sZWN1bGVzL2Nvb2tpZS1ub3RpZmljYXRpb24uY3NzIiwibW9sZWN1bGVzL2NvbnRhY3QtaGVhZGVyLmNzcyIsIm1vbGVjdWxlcy9jb250ZW50LWhlYWRlci5jc3MiLCJtb2xlY3VsZXMvY29udGVudC1wYW5lbHMuY3NzIiwibW9sZWN1bGVzL2NvbnRlbnQtcm93LmNzcyIsIm1vbGVjdWxlcy9jdGEtbGlua3MuY3NzIiwibW9sZWN1bGVzL2N0YS1wcm9tby5jc3MiLCJtb2xlY3VsZXMvZGlzY2xhaW1lci5jc3MiLCJtb2xlY3VsZXMvZXhwYW5kYWJsZS1pdGVtLmNzcyIsIm1vbGVjdWxlcy9mYWN0cy5jc3MiLCJtb2xlY3VsZXMvZmVhdHVyZWQtY2FyZC5jc3MiLCJtb2xlY3VsZXMvZmVhdHVyZWQtY29udGVudC5jc3MiLCJtb2xlY3VsZXMvZmlsdGVyLWJhci5jc3MiLCJtb2xlY3VsZXMvZmlsdGVyLXNlYXJjaC5jc3MiLCJtb2xlY3VsZXMvaW1hZ2UtdHJlYXRtZW50cy5jc3MiLCJtb2xlY3VsZXMvbGFuZ3VhZ2Utc2VsZWN0b3IuY3NzIiwibW9sZWN1bGVzL2xvZ2luLW1vZGFsLmNzcyIsIm1vbGVjdWxlcy9saXN0LWdyb3VwLmNzcyIsIm1vbGVjdWxlcy9tYXAuY3NzIiwibW9sZWN1bGVzL21vZGFsLXdpbmRvdy5jc3MiLCJtb2xlY3VsZXMvcGFnZS1iYW5uZXIuY3NzIiwibW9sZWN1bGVzL3BhZ2UtaGVhZGVyLmNzcyIsIm1vbGVjdWxlcy9wcm9wZXJ0eS1jYXJkLmNzcyIsIm1vbGVjdWxlcy9yaWNoLWNhcmQtc2Vjb25kYXJ5LmNzcyIsIm1vbGVjdWxlcy9yaWNoLWNhcmQtdGVydGlhcnkuY3NzIiwibW9sZWN1bGVzL3JpY2gtY2FyZC1xdWFydGVybmFyeS5jc3MiLCJtb2xlY3VsZXMvcmljaC1jYXJkLmNzcyIsIm1vbGVjdWxlcy9zZWFyY2gtYm94LmNzcyIsIm1vbGVjdWxlcy9zZWFyY2gtZmlsdGVyLmNzcyIsIm1vbGVjdWxlcy9zZWFyY2gtcGFuZWwuY3NzIiwibW9sZWN1bGVzL3NlbGVjdGlvbi1wYW5lbC5jc3MiLCJtb2xlY3VsZXMvc2hhcmUtcHJpY2UuY3NzIiwibW9sZWN1bGVzL3NoYXJlLXRoaXMtYXJ0aWNsZS5jc3MiLCJtb2xlY3VsZXMvc29jaWFsLmNzcyIsIm1vbGVjdWxlcy90YWJzLXBhbmVsLmNzcyIsIm1vbGVjdWxlcy9hdXRob3ItcGFuZWwuY3NzIiwibW9sZWN1bGVzL3VzcC5jc3MiLCJvcmdhbmlzbXMvNDA0LmNzcyIsIm9yZ2FuaXNtcy9hcnRpY2xlLmNzcyIsIm9yZ2FuaXNtcy9hd2FyZC1yb3cuY3NzIiwib3JnYW5pc21zL2NhcmQtbGlzdGluZ3MuY3NzIiwib3JnYW5pc21zL2NvbnRhY3QtYWdlbnQuY3NzIiwib3JnYW5pc21zL2NvbnRhY3Qtb2ZmaWNlLmNzcyIsIm9yZ2FuaXNtcy9jdGEtYmxvY2stcm93LmNzcyIsIm9yZ2FuaXNtcy9leHBhbmRhYmxlLWxpc3QuY3NzIiwib3JnYW5pc21zL2Zvb3Rlci5jc3MiLCJvcmdhbmlzbXMvZm9ybS1zdWJtaXNzaW9uLXRoYW5rcy5jc3MiLCJvcmdhbmlzbXMvZ2FsbGVyeS5jc3MiLCJvcmdhbmlzbXMvaGVhZGVyLmNzcyIsIm9yZ2FuaXNtcy9ob21lcGFnZS5jc3MiLCJvcmdhbmlzbXMvbG9naW4tZm9ybS5jc3MiLCJvcmdhbmlzbXMvbWFya2V0LWFwcHJhaXNhbC5jc3MiLCJvcmdhbmlzbXMvbWFya2V0LXByb3BlcnR5LmNzcyIsIm9yZ2FuaXNtcy9taWNyby1hcnRpY2xlLWxpc3QuY3NzIiwib3JnYW5pc21zL21pY3JvLWNvbnRhY3QtbGlzdC5jc3MiLCJvcmdhbmlzbXMvbmF2LmNzcyIsIm9yZ2FuaXNtcy9uYXYtLXN1Yi1uYXYuY3NzIiwib3JnYW5pc21zL25hdi1wYW5lbC5jc3MiLCJvcmdhbmlzbXMvbmV3c2xldHRlci1zaWdudXAuY3NzIiwib3JnYW5pc21zL3Byb2ZpbGUtaGVhZGVyLmNzcyIsIm9yZ2FuaXNtcy9wcm9maWxlLWludHJvLmNzcyIsIm9yZ2FuaXNtcy9zZXJ2aWNlcy1saXN0LXByZXZpZXcuY3NzIiwib3JnYW5pc21zL3VzcHMuY3NzIiwib3JnYW5pc21zL2Nhcm91c2VsLmNzcyIsIm9yZ2FuaXNtcy90YWJiZWQtc2xpZGVyLmNzcyIsInBhZ2VzL21haW50ZW5hbmNlLmNzcyIsInBhZ2VzL3NlYXJjaC1yZXN1bHRzLmNzcyIsInZlbmRvcnMvZmxhZ3MuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBVUEscUVBQXFFO0FDVnJFOzs7Ozs7Ozs7Ozs7Ozs2RUFjNkU7QUNkN0U7Ozs7Ozs7OytFQVErRTtBQUUvRTs7Ozs7OzZFQU02RTtBQUU3RTtFQUNFLGlCQUFpQztFQUFqQyxrQkFBaUM7RUFBakMsbUJBQWlDO0VBQ2pDLGdCQUE0QjtFQUM1QixpQkFBK0I7Q0FDaEM7QUFKRDtFQUNFLFlBQWlDO0VBQWpDLGVBQWlDO0NBR2xDO0FBSkQ7RUFDRSxZQUFpQztFQUFqQyxlQUFpQztFQUFqQyxZQUFpQztDQUdsQztBQVFEOzs7Ozs7Ozs7Ozs2RUFXNkU7QUFFN0U7RUFDRSxpQkFBaUI7RUFDakIsbUJBQW1CLENBQUMsaUZBQWlGO0VBQ3JHLG9CQUFvQjtDQUNyQjtBQUVEO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixvQkFBb0I7Q0FDckI7QUFFRDs7Ozs7Ozs7NkVBUTZFO0FBRTdFO0VBQ0UsaUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixlQUFtQztFQUNuQyxzQkFBc0I7RUFDdEIscUJBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztDQUNaO0FBRUQ7NkVBQzZFO0FBRTdFO0VBQ0UsaUJBQWlCO0VBQ2pCLHdCQUF3QjtFQUN4QixvQkFBb0I7Q0FDckI7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7NkVBb0I2RTtBQUU3RTtFQUNFLHNC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QUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxvQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxtQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztF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QXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxvQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxtQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lB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O0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLG1DQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLHNDQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLHNDQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLG9DQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLHVDQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7SUFBdkMsbUJBQXVDO0lBQXZDLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7R0FDeEM7RUFGRDtJQUNFLGdCQUF1QztJQUF2QyxhQUF1QztHQUN4QztFQUZEO0lBQ0UsWUFBdUM7R0FDeEM7RUFGRDtJQUNFLGlEQUF1QztHQUN4QztFQUZE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RkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxvQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxtQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxnQkFBdUM7SUFBdkMsYUFBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0dBQ3hDO0VBRkQ7SUFDRSxzQ0FBdUM7R0FDeEM7RUFGRDtJQUNFLFlBQXVDO0lBQXZDLG1CQUF1QztJQUF2QyxZQUF1QztHQUN4QztFQUZEO0lBQ0UsZ0JBQXVDO0dBQ3hDO0VB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LGdCQUFvQjtHQUV2QjtFQWpCRDtJQWVJLGdCQUFvQjtJQUFwQixhQUFvQjtHQUV2QjtFQWpCRDtJQWVJLFlBQW9CO0dBRXZCO0NBREUiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEZvbnQgZmFjZSBkZWZpbml0aW9uc1xyXG5cclxuICAqIEdvdGhhbVxyXG4gICogRG9taW5lXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogR290aGFtXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGltcG9ydCAnaHR0cHM6Ly9jbG91ZC50eXBvZ3JhcGh5LmNvbS83MTIxMzc2LzY2OTE5NzIvY3NzL2ZvbnRzLmNzcyc7XHJcblxyXG4vKiBEb21pbmVcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ0RvbWluZVdlYkJvbGQnO1xyXG4gIHNyYzpcclxuICAgIHVybCgnaHR0cHM6Ly9hc3NldHMuc2F2aWxscy5jb20vbGl2ZXY2L1dlYkFzc2V0cy9HbG9iYWxQcm9wZXJ0eVNlYXJjaC9mb250cy9kb21pbmUvZG9taW5lLWJvbGQtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgIHVybCgnaHR0cHM6Ly9hc3NldHMuc2F2aWxscy5jb20vbGl2ZXY2L1dlYkFzc2V0cy9HbG9iYWxQcm9wZXJ0eVNlYXJjaC9mb250cy9kb21pbmUvZG9taW5lLWJvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnRG9taW5lV2ViUmVndWxhcic7XHJcbiAgc3JjOlxyXG4gICAgdXJsKCdodHRwczovL2Fzc2V0cy5zYXZpbGxzLmNvbS9saXZldjYvV2ViQXNzZXRzL0dsb2JhbFByb3BlcnR5U2VhcmNoL2ZvbnRzL2RvbWluZS9kb21pbmUtcmVndWxhci13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgdXJsKCdodHRwczovL2Fzc2V0cy5zYXZpbGxzLmNvbS9saXZldjYvV2ViQXNzZXRzL0dsb2JhbFByb3BlcnR5U2VhcmNoL2ZvbnRzL2RvbWluZS9kb21pbmUtcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIENvcmUgYnVuZGxlXHJcblxyXG4gIFN0eWxlcyBzaGFyZWQgYmV0d2VlbjpcclxuICAtIENNUyBmcm9udC1lbmQgKHByb2plY3RzL2NtcyksIGFuZFxyXG4gIC0gc2VhcmNoIGFuZCBhY2NvdW50IGZyb250LWVuZCAocHJvamVjdHMvc2VhcmNoKVxyXG5cclxuICBJZiBpbiBkb3VidDpcclxuICBBbnl0aGluZyB0aGF0IGlzIE5PVCBhIHNwZWNpZmljIHRvIGEgQ01TIGNvbnRlbnQgbW9kdWxlXHJcbiAgc2hvdWxkIG1vc3QgbGlrZWx5IGdvIGhlcmUuXHJcblxyXG4gIENhdXRpb246XHJcbiAgSWYgcmVtb3Zpbmcgc29tZXRoaW5nIGZyb20gaGVyZSwgYmUgc3VyZSB0aGF0XHJcbiAgaXQgaXMgbm90IHVzZWQgYnkgdGhlIHNlYXJjaCBhbmQgYWNjb3VudCBmcm9udC1lbmRcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBpbXBvcnQgJy4vdXRpbHMvbWl4aW5zLmNzcyc7XHJcbkBpbXBvcnQgJy4vdXRpbHMvdmFyaWFibGVzLmNzcyc7XHJcbkBpbXBvcnQgJy4vdXRpbHMvcGlrYWRheS5jc3MnO1xyXG5AaW1wb3J0ICcuL2dlbmVyYWwvY29uZGl0aW9uYWxzLmNzcyc7XHJcbkBpbXBvcnQgJy4vZ2VuZXJhbC9mb250cy5jc3MnO1xyXG5AaW1wb3J0ICcuL2dlbmVyYWwvcmVzZXQuY3NzJztcclxuQGltcG9ydCAnLi9nZW5lcmFsL2FjY2Vzc2liaWxpdHkuY3NzJztcclxuXHJcbi8qIGF0b21zIGEteiAqL1xyXG5AaW1wb3J0ICcuL2F0b21zL2FuY2hvci5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL2J1c3kuY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy9idXR0b25zLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvY29va2llLWltZy5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL2RpdmlkZXJzLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvZmF2b3VyaXRlLWJ1dHRvbi5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL2Zvcm1zLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvZm9ybS1ncm91cC1oZWFkZXIuY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy9ncmlkLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvbGlnaHRib3guY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy9tb2RhbC5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL3BhZ2luYXRpb24uY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy9wcm9wZXJ0eS1hdHRyaWJ1dGUuY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy9wcm9wZXJ0eS1wcmljZS5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL3F1b3Rlcy5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL3Jlc3VsdHMtaW5kaWNhdG9yLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvc3BhY2VyLmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvc2VjdGlvbi1iZy5jc3MnO1xyXG5AaW1wb3J0ICcuL2F0b21zL3RhZ3MuY3NzJztcclxuQGltcG9ydCAnLi9hdG9tcy90eXBvZ3JhcGh5LmNzcyc7XHJcbkBpbXBvcnQgJy4vYXRvbXMvdmlkZW8tcGxheWVyLmNzcyc7XHJcblxyXG4vKiBtb2xlY3VsZXMgYS16ICovXHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2FkZHJlc3MtZmluZGVyLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2JyZWFkY3J1bWJzLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2NhcmQuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvY29va2llLW5vdGlmaWNhdGlvbi5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9jb250YWN0LWhlYWRlci5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9jb250ZW50LWhlYWRlci5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9jb250ZW50LXBhbmVscy5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9jb250ZW50LXJvdy5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9jdGEtbGlua3MuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvY3RhLXByb21vLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2Rpc2NsYWltZXIuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvZXhwYW5kYWJsZS1pdGVtLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2ZhY3RzLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2ZlYXR1cmVkLWNhcmQuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvZmVhdHVyZWQtY29udGVudC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9maWx0ZXItYmFyLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2ZpbHRlci1zZWFyY2guY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvaW1hZ2UtdHJlYXRtZW50cy5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9sYW5ndWFnZS1zZWxlY3Rvci5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9sb2dpbi1tb2RhbC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9saXN0LWdyb3VwLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL21hcC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9tb2RhbC13aW5kb3cuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvcGFnZS1iYW5uZXIuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvcGFnZS1oZWFkZXIuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvcHJvcGVydHktY2FyZC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9yaWNoLWNhcmQuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvc2VhcmNoLWJveC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9zZWFyY2gtZmlsdGVyLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL3NlYXJjaC1wYW5lbC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy9zZWxlY3Rpb24tcGFuZWwuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvc2hhcmUtcHJpY2UuY3NzJztcclxuQGltcG9ydCAnLi9tb2xlY3VsZXMvc2hhcmUtdGhpcy1hcnRpY2xlLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL3NvY2lhbC5jc3MnO1xyXG5AaW1wb3J0ICcuL21vbGVjdWxlcy90YWJzLXBhbmVsLmNzcyc7XHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL2F1dGhvci1wYW5lbC5jc3MnOyAvKiBuZWVkcyB0byBiZSBpbXBvcnRlZCBhZnRlciBjb250ZW50LWhlYWRlciBhcyBpdCBleHRlbmRzIGl0ICovXHJcbkBpbXBvcnQgJy4vbW9sZWN1bGVzL3VzcC5jc3MnO1xyXG5cclxuLyogb3JnYW5pc21zIGEteiAqL1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy80MDQuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvYXJ0aWNsZS5jc3MnO1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy9hd2FyZC1yb3cuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvY2FyZC1saXN0aW5ncy5jc3MnO1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy9jb250YWN0LWFnZW50LmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2NvbnRhY3Qtb2ZmaWNlLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2N0YS1ibG9jay1yb3cuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvZXhwYW5kYWJsZS1saXN0LmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2Zvb3Rlci5jc3MnO1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy9mb3JtLXN1Ym1pc3Npb24tdGhhbmtzLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2dhbGxlcnkuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvaGVhZGVyLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2hvbWVwYWdlLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL2xvZ2luLWZvcm0uY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvbWFya2V0LWFwcHJhaXNhbC5jc3MnO1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy9tYXJrZXQtcHJvcGVydHkuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvbWljcm8tYXJ0aWNsZS1saXN0LmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL21pY3JvLWNvbnRhY3QtbGlzdC5jc3MnO1xyXG5AaW1wb3J0ICcuL29yZ2FuaXNtcy9uYXYuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvbmF2LXBhbmVsLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL25ld3NsZXR0ZXItc2lnbnVwLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL3Byb2ZpbGUtaGVhZGVyLmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL3Byb2ZpbGUtaW50cm8uY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvc2VydmljZXMtbGlzdC1wcmV2aWV3LmNzcyc7XHJcbkBpbXBvcnQgJy4vb3JnYW5pc21zL3VzcHMuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvY2Fyb3VzZWwuY3NzJztcclxuQGltcG9ydCAnLi9vcmdhbmlzbXMvdGFiYmVkLXNsaWRlci5jc3MnO1xyXG5cclxuLyogcGFnZXMgYS16ICovXHJcbkBpbXBvcnQgJy4vcGFnZXMvbWFpbnRlbmFuY2UuY3NzJztcclxuQGltcG9ydCAnLi9wYWdlcy9zZWFyY2gtcmVzdWx0cy5jc3MnO1xyXG5cclxuLyogdmVuZG9ycyAqL1xyXG5AaW1wb3J0ICcuL3ZlbmRvcnMvZmxhZ3MuY3NzJztcclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBNaXhpbnMgYW5kIGV4dGVuZGFibGUgY2xhc3Nlc1xyXG5cclxuICAqIEJvdW5kYXJ5IHdyYXBwZXJcclxuICAqIFRleHQgdmlzaWJpbGl0eVxyXG4gICogUGxhaW4gYWN0aW9uXHJcbiAgKiBFbGxpcHNpc1xyXG4gICogSWNvbnNcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQm91bmRhcnkgd3JhcHBlclxyXG5cclxuRW5zdXJlIGFuIGVsZW1lbnQgbWVldHMgbWluIGFuZCBtYXggd2lkdGggYm91bmRhcnkgcmVxdWlyZW1lbnRzLCBhbmQgY2VudHJlIGl0OlxyXG4gIC5teS1lbGVtZW50LXdpdGgtc3RhbmRhcmQtYm91bmRhcmllcyB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1ib3VuZGFyeS13cmFwcGVyO1xyXG4gIH1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5leHRlbmRlci1ib3VuZGFyeS13cmFwcGVyIHtcclxuICBsb3N0LWNlbnRlcjogdmFyKC0tc3YtbWF4LXdpZHRoKTtcclxuICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgbWluLXdpZHRoOiB2YXIoLS1zdi1taW4td2lkdGgpO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5leHRlbmRlci1ib3VuZGFyeS13cmFwcGVyIHtcclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBUZXh0IHZpc2liaWxpdHlcclxuXHJcbkhpZGUgdGV4dCB2aXN1YWxseSBidXQgYWNjZXNzaWJseSB0byBub24tdmlzdWFsIGludGVycHJldGF0aW9uOlxyXG4gIC5teS1lbGVtZW50LXdpdGgtaGlkZGVuLXRleHQge1xyXG4gICAgQGV4dGVuZCAuZXh0ZW5kZXItdGV4dC1oaWRlO1xyXG4gIH1cclxuXHJcbk92ZXJyaWRpbmcgKGUuZy4gYmV0d2VlbiBicmVha3BvaW50cyBvciB3aXRoIGNsYXNzIG1vZGlmaWVycyk6XHJcbiAgLm15LWVsZW1lbnQtd2l0aC1oaWRkZW4tdGV4dC5kaWZmZXJlbnQtc3RhdGUge1xyXG4gICAgQGV4dGVuZCAuZXh0ZW5kZXItdGV4dC1zaG93O1xyXG4gIH1cclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5leHRlbmRlci10ZXh0LWhpZGUge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1pbmRlbnQ6IDEwMHZ3OyAvKiAlIGlzIGJ1Z2d5IGluIEZpcmVmb3g6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTEzMDY1OTAgKi9cclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uZXh0ZW5kZXItdGV4dC1zaG93IHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICB0ZXh0LWluZGVudDogMDtcclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBQbGFpbiBhY3Rpb25cclxuQ2FuIGJlIHVzZWQgb24gYW55IGVsZW1lbnQsIGJ1dCBpbmNsdWRlcyBhIGxpZ2h0IGJ1dHRvbiByZXNldFxyXG5hcyBpdCBpcyBsaWtlbHkgaXQgd2lsbCBiZSB1c2VkIG9uIGJ1dHRvbiBlbGVtZW50cyB0b29cclxuXHJcblVzYWdlOlxyXG4gIC5teS1wbGFpbi1jYWxsLXRvLWFjdGlvbiB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1wbGFpbi1hY3Rpb247XHJcbiAgfVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmV4dGVuZGVyLXBsYWluLWFjdGlvbiB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBib3JkZXI6IDA7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBFbGxpcHNpc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmV4dGVuZGVyLWVsbGlwc2lzIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi8qIEljb25zXHJcblxyXG5CYXNpYyB1c2FnZTpcclxuICAubXktZWxlbWVudC13aXRoLWljb24tYmFja2dyb3VuZCB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1pY29uLWJhc2U7XHJcbiAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgYmFza2V0LCB5ZWxsb3dcclxuICB9XHJcblxyXG5BZHZhbmNlZCB1c2FnZTpcclxuICAubXktZWxlbWVudC13aXRoLWljb24tYmFja2dyb3VuZCB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1pY29uLWJhc2U7XHJcbiAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgYmFza2V0LCB5ZWxsb3csIDUwcHgsIDEwcHgsIGxlZnQ7XHJcbiAgfVxyXG5cclxubWl4aW4taWNvbi1jb25maWcgbWl4aW4gb3B0aW9uczpcclxuICAkbmFtZSA9IG5hbWUgb2YgcHVibGljL2ltYWdlcy9pY29ucyBTVkcgZmlsZSAod2l0aG91dCAuc3ZnIGV4dGVuc2lvbilcclxuICAkY29sb3IgPSBjb2xvciB0byBmaWxsIHRoZSBTVkcgcGF0aHNcclxuICAkc2l6ZSA9IHNxdWFyZSBjYW52YXMgc2l6ZSB0byBpbmNsdWRlIHRoZSBTVkcgYXRcclxuICAkYnVmZmVyID0gYWRkaXRpb25hbCBwYWRkaW5nIHRvIGFwcGx5IHRvIGxlZnQgb3IgcmlnaHQgb2YgaWNvbiAoZGVwZW5kcyBvbiAkcG9zaXRpb24pLCBlLmcuIHRvIGJ1ZmZlciBiZXR3ZWVuIHRleHQgYW5kIGljb25cclxuICAkcG9zaXRpb24gPSBsZWZ0LCByaWdodCwgb3IgY2VudGVyXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZXh0ZW5kZXItaWNvbi1iYXNlIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZXh0ZW5kZXItaWNvbi1iYXNlOjphZnRlciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBzcGVhazogbm9uZTtcclxuICB0b3A6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBkZWZpbmUtbWl4aW4gbWl4aW4tdGV4dC1zZXBhcmF0b3IgJGxvY2F0aW9uOiBiZWZvcmUge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG5cclxuICBAaWYgJGxvY2F0aW9uICE9IGJlZm9yZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgfVxyXG5cclxuICBAaWYgJGxvY2F0aW9uICE9IGFmdGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItcHNldWRvLWVsZW1lbnQtbm8tdW5rbm93biAqL1xyXG4gICY6OiRsb2NhdGlvbiB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLWxyZykgMDtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgaGVpZ2h0OiAycHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LW5vLXVua25vd24gKi9cclxufVxyXG5cclxuQGRlZmluZS1taXhpbiBtaXhpbi1pY29uLWNvbmZpZyAkbmFtZSwgJGNvbG9yOiBub25lLCAkc2l6ZTogMTZweCwgJGJ1ZmZlcjogMCwgJHBvc2l0aW9uOiByaWdodCwgJG91dGVyQnVmZmVyOiAwIHtcclxuICBAaWYgJHBvc2l0aW9uICE9IGNlbnRlciB7XHJcbiAgICBwYWRkaW5nLSQocG9zaXRpb24pOiBjYWxjKCRzaXplICsgJGJ1ZmZlcik7XHJcbiAgfVxyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlICovXHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgd2lkdGg6ICRzaXplO1xyXG5cclxuICAgIEBpZiAnJGNvbG9yJyA9PSAnbm9uZScge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJyRuYW1lJyk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnJG5hbWUnLCAnW2ZpbGxdOiAkY29sb3InKTtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtJHNpemUvMiksIGNhbGMoLSRzaXplLzIpKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgJChwb3NpdGlvbik6ICRvdXRlckJ1ZmZlcjtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xyXG4gIH1cclxufVxyXG5cclxuQGRlZmluZS1taXhpbiBtaXhpbi1zcHJpdGUtaWNvbi1jb25maWcgJG5hbWUsICRzaXplOiAxNnB4LCAkYnVmZmVyOiAwLCAkcG9zaXRpb246IHJpZ2h0LCAkYmFja2dyb3VuZFNpemU6IDMwMCUsICRleHRlbnNpb246IHN2ZyB7XHJcbiAgQGlmICRwb3NpdGlvbiAhPSBjZW50ZXIge1xyXG4gICAgcGFkZGluZy0kKHBvc2l0aW9uKTogY2FsYygkc2l6ZSArICRidWZmZXIpO1xyXG4gIH1cclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xyXG4gICAgd2lkdGg6ICRzaXplO1xyXG4gICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ljb25zL2N1c3RvbS8kbmFtZS4kZXh0ZW5zaW9uJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiYWNrZ3JvdW5kU2l6ZTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuXHJcbiAgICBAaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtJHNpemUvMiksIGNhbGMoLSRzaXplLzIpKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgJChwb3NpdGlvbik6IDA7XHJcbiAgICB9XHJcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qIFZpZXcgdW5pdCBmcm9tIHB4XHJcblxyXG5UT0RPOiBmaW5kIGJlc3QgcGxhY2UgdG8gcm91bmQgdGhpcyBkZWNpbWFsIG91dHB1dCB0byA0IHBsYWNlc1xyXG4qL1xyXG5AZGVmaW5lLW1peGluIG1peGluLXZpZXctdW5pdC1mcm9tLXB4ICRwcm9wLCAkcHgsICR2aWV3cG9ydCwgJHVuaXQ6IHZ3IHtcclxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi13aGl0ZXNwYWNlLWFmdGVyICovXHJcbiAgJChwcm9wKTogY2FsYygkcHggLyAoJHZpZXdwb3J0IC8gMTAwKSkkdW5pdDtcclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLXdoaXRlc3BhY2UtYWZ0ZXIgKi9cclxufVxyXG5cclxuQGRlZmluZS1taXhpbiAtLXN2LXZpc3VhbGx5LWhpZGRlbiB7XHJcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcclxuICBoZWlnaHQ6IDFweDtcclxuICBtYXJnaW46IC0xcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG59XHJcblxyXG5AZGVmaW5lLW1peGluIC0tc3YtcmVtb3ZlLXZpc3VhbGx5LWhpZGRlbiB7XHJcbiAgY2xpcDogYXV0bztcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgVmFyaWFibGVzXHJcblxyXG4gICogQ29sb3Vyc1xyXG4gICogTWVhc3VyZW1lbnRzXHJcbiAgKiBGb250c1xyXG4gICogT3RoZXJcclxuICAqIEtleWZyYW1lc1xyXG5cclxuICBub3RlOlxyXG4gIC0tcHJvcGVydGllcywgQGN1c3RvbS1tZWRpYSwgYW5kIEBhcHBseSBhcmUgdHJhbnNmb3JtZWQgKG9yIG5vdClcclxuICBieSBjc3NuZXh0LCBiYXNlZCBvbiB0aGUgYnJvd3NlcnNsaXN0IGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3RcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBDb2xvdXJzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuOnJvb3Qge1xyXG4gIC8qIGhpZ2hsaWdodCBzY2FsZSAqL1xyXG4gIC0tc3YtY29sLWhpZ2hsaWdodDogI2ZmZjtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMTogI2YzZjNmMztcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMjogI2UyZTNlNTtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMzogI2IzYjNiMztcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNDogI2EzYTRhOTtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNTogIzk5OTc5NTtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNjogI2M5YzljOTtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNzogI2JmYmZiZjtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtODogI2ZmZTMwMDtcclxuICAtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtOTogI2RlZGVkZTtcclxuXHJcbiAgLyogc2hhZG93IHNjYWxlICovXHJcbiAgLS1zdi1jb2wtc2hhZG93OiAjMDAwO1xyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTA6ICMxODFhMmM7IC8qIFRPRE86IG1heWJlIHJlb3JkZXIgdG8gZ2V0IHJpZCBvZiBcIjBcIiAqL1xyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTE6ICMyNTI4Mzk7XHJcbiAgLS1zdi1jb2wtc2hhZG93LXRpbnQtMjogIzM1Mzg0YjtcclxuICAtLXN2LWNvbC1zaGFkb3ctdGludC0zOiAjNGM0ZDUwO1xyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTQ6ICMwNjA3MTI7XHJcbiAgLS1zdi1jb2wtc2hhZG93LXRpbnQtNTogIzU1NTc2NDtcclxuICAtLXN2LWNvbC1zaGFkb3ctdGludC02OiAjNzc3O1xyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTc6ICM4ZThlOGU7XHJcbiAgLS1zdi1jb2wtc2hhZG93LXRpbnQtODogIzk5OTc5NTtcclxuXHJcbiAgLyoga2VlcGluZyBhIGdhcCBmb3IgYW4gaW5ldml0YWJsZSBpbi1iZXR3ZWVuIHNoYWRlcyBoZXJlICovXHJcblxyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTEwOiAjZjJmMmYyOyAvKiBUT09EOjsgcmVwbGFjZSBhbGwgaW5zdGFuY2VzIG9mIHRoaXMgd2l0aCBoaWdobGlnaHQtc2hhZGUtMSAqL1xyXG4gIC0tc3YtY29sLXNoYWRvdy10aW50LTExOiAjYjBiMGIwO1xyXG5cclxuICAvKiBwcmltYXJ5IHBhbGxldHRlICovXHJcbiAgLS1zdi1jb2wtcHJpbWFyeS0xOiAjMjUyODM5OyAvKiBkYXJrIGNsYXkgKi9cclxuICAtLXN2LWNvbC1wcmltYXJ5LTI6ICNmZmRmMDA7IC8qIHNjaG9vbCBidXMgeWVsbG93ICovXHJcbiAgLS1zdi1jb2wtcHJpbWFyeS0zOiAjNjk3NjllOyAvKiBkdWxsIGJsdWUgKi9cclxuICAtLXN2LWNvbC1wcmltYXJ5LTQ6ICM3ODgyOGI7IC8qIHNsYXRlIGdyZXkgKi9cclxuICAtLXN2LWNvbC1wcmltYXJ5LTU6ICNjZDE3MWU7IC8qIHJlZCAqL1xyXG5cclxuICAvKiBzZWNvbmRhcnkgcGFsbGV0dGUgKi9cclxuICAtLXN2LWNvbC1zZWNvbmRhcnktMTogI2M5ZTVlMjsgLyogbGlnaHQgYmx1ZSAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0yOiAjZGNlYWQ4OyAvKiBkdWNrIGVnZyAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0zOiAjZWJlNWQ3OyAvKiBjcmVhbSAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS00OiAjZWVlOyAvKiBsaWdodCBncmV5ICovXHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTU6ICM1NDc1YjA7IC8qIGp1c3QgYW5vdGhlciByYW5kb20gY29sb3VyIGJlY2F1c2Ugd2h5IG5vdCBmZnMhISEgKi9cclxuICAtLXN2LWNvbC1zZWNvbmRhcnktNjogI2E0YjdkZjsgLyogbGlnaHQvbWlkIGJsdWUgKi9cclxuICAtLXN2LWNvbC1zZWNvbmRhcnktNzogIzAzMGIzNjsgLyogZGFyayBibHVlICovXHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTg6ICM0MDRlN2Y7IC8qIGxpZ2h0IGRhcmsgYmx1ZSAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS05OiAjZTllYWViOyAvKiBsaWdodCBncmVhdCwgYWxtb3N0IGluIGRvdWJsZSBmaWd1cmVzICovXHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTEwOiAjYjhiOGI4OyAvKiBsaWdodGVyIGdyZXkgZG91YmxlIGZpZ3VyZXMuLi4gKi9cclxuICAtLXN2LWNvbC1zZWNvbmRhcnktMTE6ICM1OTViNjg7XHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTEyOiAjNDk0YjVhOyAvKiA6fCAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0xMzogIzUzNTU2NTtcclxuICAtLXN2LWNvbC1zZWNvbmRhcnktMTQ6ICMzZDNlNDA7XHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTE1OiAjOTc5OGEwOyAvKiDCr1xcXyjjg4QpXy/CryAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0xNjogIzU2NTc1ZDsgLyogbGlnaHQgZ3JleSB2YXJpYW50ICovXHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTE3OiAjNDE0MjRlOyAvKiBkYXJrIGdyZXkgdmFyaWFudCAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0xODogIzBmMTAyMDsgLyogcmVhbGx5IGRhcmsgYmx1ZSAqL1xyXG4gIC0tc3YtY29sLXNlY29uZGFyeS0xOTogIzJjMmQzOTtcclxuICAtLXN2LWNvbC1zZWNvbmRhcnktMjA6ICNhNGE0YTQ7XHJcbiAgLS1zdi1jb2wtc2Vjb25kYXJ5LTIxOiAjZDVkNWQ1O1xyXG4gIC0tc3YtY29sLXRvZ2dsZS1wYXNzd29yZDogIzZhNzY5ZDtcclxuICAtLXN2LWNvbC1zZWFyY2gtYnJlYWRjcnVtYnMtYm9yZGVyOiAjZDBkMGQwO1xyXG5cclxuICAvKiB1aSBwYWxsZXR0ZSAqL1xyXG4gIC0tc3YtY29sLWFsZXJ0OiAjZWQ0NDQ0OyAvKiBtZWRpdW0gcmVkICovXHJcbiAgLS1zdi1jb2wtYWxlcnQtdGludDogI2U3NmM2YzsgLyogbGlnaHQgcmVkICovXHJcbiAgLS1zdi1jb2wtc3VjY2VzczogIzFlOGMzMDsgLyogbWVkaXVtIGdyZWVuICovXHJcbiAgLS1zdi1jb2wtc3VjY2Vzcy10aW50OiAjZWZmOWYwOyAvKiBsaWdodCBncmVlbiAqL1xyXG4gIC0tc3YtY29sLW5ldy1kZXZlbG9wbWVudC0xOiAjZTVlN2VkOyAvKiAnbmV3LWRldmVsb3BtZW50JyBsaWdodCBibHVlICovXHJcbiAgLS1zdi1jb2wtbmV3LWRldmVsb3BtZW50LTI6ICM3OTg3YjU7IC8qICduZXctZGV2ZWxvcG1lbnQnIGJsdWUgKi9cclxuICAtLXN2LWNvbC1mYXJtOiAjNmM5MTczO1xyXG4gIC0tc3YtY29sLWdyZWVuOiAjMGZhNDAwO1xyXG4gIC0tc3YtY29sLWdyZWVuLTI6ICM3ZWQzMjE7XHJcbiAgLS1zdi1jb2wtbGFiZWwtY291bnQ6ICM0OTRiNTg7XHJcblxyXG4gIC8qIGRlZmF1bHQgZm9udCBjb2xvdXIgKi9cclxuICAtLXN2LWNvbC1mb250OiAjMzEzMTMxOyAvKiBkYXJrIGdyZXkgKGJsYWNrKSAqL1xyXG4gIC0tc3YtY29sLWZvbnQtbGlnaHQ6ICM0YTRhNGE7IC8qIGRhcmsgZ3JleSAqL1xyXG4gIC0tc3YtY29sLWlucHV0LXRleHQ6ICM0NjQ4NTM7XHJcbn1cclxuXHJcbi8qIE1lYXN1cmVtZW50c1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbjpyb290IHtcclxuICAtLXN2LWJhc2Utc2l6ZTogMTZweDtcclxuICAtLXN2LW1pbi13aWR0aDogMzIwcHg7XHJcbiAgLS1zdi1tYXgtd2lkdGg6IDEyNDhweDtcclxuICAtLXN2LWd1dHRlcjogMTZweDtcclxuXHJcbiAgLyogQWRkZWQgbmFtZWQgZGVmYXVsdCBndXR0ZXIgc2l6ZSBmb3IgdGhlIHB1cnBvc2UgYXNzb2NpYXRpdmUgbG9vcHMgKi9cclxuICAtLXN2LWd1dHRlci14c21sOiA4cHg7XHJcbiAgLS1zdi1ndXR0ZXItc21sOiAxNnB4O1xyXG4gIC0tc3YtZ3V0dGVyLW1lZDogMjRweDtcclxuICAtLXN2LWd1dHRlci1scmc6IDMycHg7XHJcbiAgLS1zdi1ndXR0ZXIteGxyZzogNjRweDtcclxuICAtLXN2LWd1dHRlci14eGxyZzogMTI4cHg7XHJcblxyXG4gIC8qIEFkZGVkIGludGVybWVkaWF0ZSBndXR0ZXIgc2l6ZSBmb3IgdGhlIHB1cnBvc2UgYXNzb2NpYXRpdmUgbG9vcHMgKi9cclxuICAtLXN2LWd1dHRlci14c21sLW1pZDogMTJweDtcclxuICAtLXN2LWd1dHRlci1zbWwtbWlkOiAyMHB4O1xyXG4gIC0tc3YtZ3V0dGVyLW1lZC1taWQ6IDI4cHg7XHJcbiAgLS1zdi1ndXR0ZXItbHJnLW1pZDogNDhweDtcclxuICAtLXN2LWd1dHRlci14bHJnLW1pZDogOTZweDtcclxuICAtLXN2LWd1dHRlci14eGxyZy1taWQ6IDExMnB4O1xyXG5cclxuICBAY3VzdG9tLW1lZGlhIC0tc3Ytdmlldy13aWR0aC14c21sIChtaW4td2lkdGg6IDMyMHB4KTsgLyogMTYgKiAyMCAqL1xyXG4gIEBjdXN0b20tbWVkaWEgLS1zdi12aWV3LXdpZHRoLXNtbCAobWluLXdpZHRoOiA3NjhweCk7IC8qIDE2ICogNDggKi9cclxuICBAY3VzdG9tLW1lZGlhIC0tc3Ytdmlldy13aWR0aC1tZWQgKG1pbi13aWR0aDogMTAyNHB4KTsgLyogMTYgKiA2NCAqL1xyXG4gIEBjdXN0b20tbWVkaWEgLS1zdi12aWV3LXdpZHRoLWxyZyAobWluLXdpZHRoOiAxMTM2cHgpOyAvKiAxNiAqIDcxICovXHJcbiAgQGN1c3RvbS1tZWRpYSAtLXN2LXZpZXctd2lkdGgteGxyZyAobWluLXdpZHRoOiAxMjQ4cHgpOyAvKiAxNiAqIDc4ICovXHJcbiAgQGN1c3RvbS1tZWRpYSAtLXN2LXZpZXctd2lkdGgtbHQteHNtbCAobWF4LXdpZHRoOiAzMTlweCk7XHJcbiAgQGN1c3RvbS1tZWRpYSAtLXN2LXZpZXctd2lkdGgtbHQtc21sIChtYXgtd2lkdGg6IDc2N3B4KTtcclxuICBAY3VzdG9tLW1lZGlhIC0tc3Ytdmlldy13aWR0aC1sdC1tZWQgKG1heC13aWR0aDogMTAyM3B4KTtcclxuICBAY3VzdG9tLW1lZGlhIC0tc3Ytdmlldy13aWR0aC1sdC1scmcgKG1heC13aWR0aDogMTEzNXB4KTtcclxuICBAY3VzdG9tLW1lZGlhIC0tc3Ytdmlldy13aWR0aC1sdC14bHJnIChtYXgtd2lkdGg6IDEyNDdweCk7XHJcblxyXG4gIC8qIGdsb2JhbHMgKi9cclxuICAtLXN2LWhlYWRlci1oZWlnaHQtc21sOiA1MHB4O1xyXG4gIC0tc3YtaGVhZGVyLWhlaWdodC1tZWQ6IDY2cHg7XHJcbiAgLS1zdi1oZWFkZXItaGVpZ2h0LWxyZzogODlweDtcclxufVxyXG5cclxuLyogRm9udHNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG46cm9vdCB7XHJcbiAgLyogc3RhbmRhcmQgKi9cclxuICAtLXN2LWZvbnQtc3RhY2s6ICdHb3RoYW0gU1NtIEEnLCAnR290aGFtIFNTbSBCJywgJ0hlbHZldGljYScsICdBcmlhbCcsICdzYW5zLXNlcmlmJztcclxuICAtLXN2LWZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgLS1zdi1mb250LXdlaWdodC1ib29rOiA0MDA7XHJcbiAgLS1zdi1mb250LXdlaWdodC1tZWQ6IDUwMDtcclxuICAtLXN2LWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcclxuXHJcbiAgLyogYWx0ZXJuYXRpdmUgKi9cclxuICAtLXN2LWZvbnQtc3RhY2stYWx0OiAnRG9taW5lV2ViUmVndWxhcicsICdEb21pbmUnLCAnR2VvcmdpYScsICdQYWxhdGlubyBMaW5vdHlwZScsICdzZXJpZic7XHJcbiAgLS1zdi1mb250LXdlaWdodC1hbHQ6IDQwMDtcclxuICAtLXN2LWZvbnQtc3RhY2stYWx0LWJvbGQ6ICdEb21pbmVXZWJCb2xkJywgJ0RvbWluZScsICdHZW9yZ2lhJywgJ1BhbGF0aW5vIExpbm90eXBlJywgJ3NlcmlmJztcclxuICAtLXN2LWZvbnQtd2VpZ2h0LWFsdC1ib2xkOiA3MDA7XHJcbn1cclxuXHJcbi8qIE90aGVyXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuOnJvb3Qge1xyXG4gIC8qIHRyYW5zaXRpb25zICovXHJcbiAgLS1zdi10cmFuc2l0aW9uLXNwZWVkLXM6IDE1MG1zO1xyXG4gIC0tc3YtdHJhbnNpdGlvbi1zcGVlZC1tOiAyMDBtcztcclxuICAtLXN2LXRyYW5zaXRpb24tc3BlZWQtbDogMzUwbXM7XHJcbiAgLS1zdi10aW1pbmctY3ViaWMtYmV6aWVyOiBjdWJpYy1iZXppZXIoMCwgLjYsIC42LCAxKSAuM3M7XHJcblxyXG4gIC8qIHVybHMgKi9cclxuICAtLXN2LXVybC1pbWFnZTogL2ltYWdlcztcclxuXHJcbiAgLyogei1pbmRleGVzICovXHJcbiAgLS1zdi16LWJvdHRvbTogMTtcclxuICAtLXN2LXotbWlkZGxlOiAxMDtcclxuICAtLXN2LXotdG9wOiAxMDA7XHJcbn1cclxuXHJcbi8qIEtleWZyYW1lc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBrZXlmcmFtZXMgc3Ytc3BpbiB7XHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gIH1cclxufVxyXG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5cclxuQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLyohXHJcbiAqIFBpa2FkYXlcclxuICogQ29weXJpZ2h0IMKpIDIwMTQgRGF2aWQgQnVzaGVsbCB8IEJTRCAmIE1JVCBsaWNlbnNlIHwgaHR0cDovL2RidXNoZWxsLmNvbS9cclxuICovXHJcbi5waWthLXNpbmdsZSB7XHJcbiAgei1pbmRleDogOTk5OTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgY29sb3I6ICMzMzM7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjQzlDOUM5O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xyXG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4xNyk7XHJcbn1cclxuXHJcbi8qXHJcbmNsZWFyIGNoaWxkIGZsb2F0IChwaWthLWxlbmRhciksIHVzaW5nIHRoZSBmYW1vdXMgbWljcm8gY2xlYXJmaXggaGFja1xyXG5odHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cclxuKi9cclxuLnBpa2Etc2luZ2xlOmJlZm9yZSxcclxuLnBpa2Etc2luZ2xlOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiBcIjtcclxuICBkaXNwbGF5OiB0YWJsZTtcclxufVxyXG5cclxuLnBpa2Etc2luZ2xlOmFmdGVyIHtcclxuICBjbGVhcjogYm90aFxyXG59XHJcblxyXG4ucGlrYS1zaW5nbGUge1xyXG4gICp6b29tOiAxXHJcbn1cclxuXHJcbi5waWthLXNpbmdsZS5pcy1oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5waWthLXNpbmdsZS5pcy1ib3VuZCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggLTVweCByZ2JhKDAsIDAsIDAsIC41KTtcclxufVxyXG5cclxuLnBpa2EtbGVuZGFyIHtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMjQwcHg7XHJcbiAgbWFyZ2luOiA4cHg7XHJcbn1cclxuXHJcbi5waWthLXRpdGxlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucGlrYS1sYWJlbCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICpkaXNwbGF5OiBpbmxpbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDk5OTk7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogNXB4IDNweCAwO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBsaW5lLWhlaWdodDogMjBweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4ucGlrYS10aXRsZSBzZWxlY3Qge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogOTk5ODtcclxuICBtYXJnaW46IDA7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDVweDtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XHJcbiAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLnBpa2EtcHJldixcclxuLnBpa2EtbmV4dCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIGhlaWdodDogMzBweDtcclxuICAvKiBoaWRlIHRleHQgdXNpbmcgdGV4dC1pbmRlbnQgdHJpY2ssIHVzaW5nIHdpZHRoIHZhbHVlIChpdCdzIGVub3VnaCkgKi9cclxuICB0ZXh0LWluZGVudDogMjBweDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcclxuICBvcGFjaXR5OiAuNTtcclxuICAqcG9zaXRpb246IGFic29sdXRlO1xyXG4gICp0b3A6IDA7XHJcbn1cclxuXHJcbi5waWthLXByZXY6aG92ZXIsXHJcbi5waWthLW5leHQ6aG92ZXIge1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5waWthLXByZXYsXHJcbi5pcy1ydGwgLnBpa2EtbmV4dCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVWtsRVFWUjQydTNWTVFvQUlCQURRZjhQZ2orT0Q5aEcyQ3RPTkpCMnltUWtLZTBIYndBUDB4dWNEaVFXQVJJVElERUJFbk1nTVE4UzgrQXFCSWw2a0tnSGlYcVFxQWVKZXBCby96MzhKL1UwdUFIbGFCa0JsOUk0R3dBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcclxuICAqbGVmdDogMDtcclxufVxyXG5cclxuLnBpa2EtbmV4dCxcclxuLmlzLXJ0bCAucGlrYS1wcmV2IHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVTBsRVFWUjQydTNWT3dvQU1BZ0UwZHdmQW5OalUyNmJZa0JDRkd3ZmlMOVZWV29PK0JKNEdmM2d0c0VLS29GQk5UQ29DQVlWd2FBaUdOUUdNVUhNa2pHYmdqazJtSU9OdVhvMG5DOFhuQ2YxSlhnQXJWSVpBUWg1VEtZQUFBQUFTVVZPUks1Q1lJST0nKTtcclxuICAqcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5waWthLXByZXYuaXMtZGlzYWJsZWQsXHJcbi5waWthLW5leHQuaXMtZGlzYWJsZWQge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBvcGFjaXR5OiAuMjtcclxufVxyXG5cclxuLnBpa2Etc2VsZWN0IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgKmRpc3BsYXk6IGlubGluZTtcclxufVxyXG5cclxuLnBpa2EtdGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4ucGlrYS10YWJsZSB0aCxcclxuLnBpa2EtdGFibGUgdGQge1xyXG4gIHdpZHRoOiAxNC4yODU3MTQyODU3MTQyODYlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5waWthLXRhYmxlIHRoIHtcclxuICBjb2xvcjogIzk5OTtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucGlrYS1idXR0b24ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogNXB4O1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtNik7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTkpO1xyXG59XHJcblxyXG4ucGlrYS13ZWVrIHtcclxuICBmb250LXNpemU6IDExcHg7XHJcbiAgY29sb3I6ICM5OTk7XHJcbn1cclxuXHJcbi5pcy10b2RheSAucGlrYS1idXR0b24ge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uaXMtc2VsZWN0ZWQgLnBpa2EtYnV0dG9uLFxyXG4uaGFzLWV2ZW50IC5waWthLWJ1dHRvbiB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG59XHJcblxyXG4uaGFzLWV2ZW50IC5waWthLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZDogIzAwNWRhOTtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggIzAwNzZjOTtcclxufVxyXG5cclxuLmlzLWRpc2FibGVkIC5waWthLWJ1dHRvbixcclxuLmlzLWlucmFuZ2UgLnBpa2EtYnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xyXG59XHJcblxyXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQ6ICM2Q0IzMUQ7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQ6ICMzM2FhZmY7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi5pcy1kaXNhYmxlZCAucGlrYS1idXR0b24ge1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBjb2xvcjogIzk5OTtcclxuICBvcGFjaXR5OiAuMztcclxufVxyXG5cclxuLmlzLW91dHNpZGUtY3VycmVudC1tb250aCAucGlrYS1idXR0b24ge1xyXG4gIGNvbG9yOiAjOTk5O1xyXG4gIG9wYWNpdHk6IC4zO1xyXG59XHJcblxyXG4uaXMtc2VsZWN0aW9uLWRpc2FibGVkIHtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi5waWthLWJ1dHRvbjpob3ZlcixcclxuLnBpa2Etcm93LnBpY2std2hvbGUtd2Vlazpob3ZlciAucGlrYS1idXR0b24ge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG59XHJcblxyXG4vKiBzdHlsaW5nIGZvciBhYmJyICovXHJcbi5waWthLXRhYmxlIGFiYnIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gIGN1cnNvcjogaGVscDtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxufVxyXG5cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBDb25kaXRpb25hbHNcclxuXHJcbiAgKiBWaWV3cG9ydCB2aXNpYmlsaXR5XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFZpZXdwb3J0IHZpc2liaWxpdHlcclxuZ3QgPSBncmVhdGVyIHRoYW4gdGhpcyBicmVha3BvaW50XHJcbmx0ID0gbGVzcyB0aGFuIHRoaXMgYnJlYWtwb2ludFxyXG5lcSA9IG9ubHkgd2l0aGluIHRoaXMgYnJlYWtwb2ludFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbltjbGFzcyo9c3Ytdmlldy1ndC1dLFxyXG5bY2xhc3MqPXN2LXZpZXctbHQtXSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQteHNtbCkge1xyXG4gIFtjbGFzcyo9c3Ytdmlldy1sdC1dIHtcclxuICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC14c21sKSB7XHJcbiAgLnZpZXctZ3QteHNtbCxcclxuICBbY2xhc3MqPXN2LXZpZXctbHQtXSB7XHJcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLnZpZXctZ3Qtc21sIHtcclxuICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgfVxyXG5cclxuICAudmlldy1sdC14c21sLFxyXG4gIC52aWV3LWx0LXNtbCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnZpZXctZ3QtbWVkIHtcclxuICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgfVxyXG5cclxuICAudmlldy1sdC14c21sLFxyXG4gIC52aWV3LWx0LXNtbCxcclxuICAudmlldy1sdC1tZWQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC52aWV3LWd0LWxyZyB7XHJcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gIH1cclxuXHJcbiAgW2NsYXNzKj1zdi12aWV3LWx0LV0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBSZXNldFxyXG5cclxuICAqIEJhc2VsaW5lXHJcbiAgKiBMYXlvdXRcclxuICAqIEFjdGlvbnMgYW5kIGlucHV0c1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYXNlbGluZVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmJvZHkge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICBmb250OiB2YXIoLS1zdi1iYXNlLXNpemUpIC8gMS41IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1pbi13aWR0aDogdmFyKC0tc3YtbWluLXdpZHRoKTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1uby11bmtub3duICovXHJcbiAgZm9udC1zbW9vdGhpbmc6IGFsd2F5cztcclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHByb3BlcnR5LW5vLXVua25vd24gKi9cclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5uby1zY3JvbGwge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG59XHJcblxyXG4vKiBMYXlvdXRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4qLFxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5tYWluIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuaW1nIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEFjdGlvbnMgYW5kIGlucHV0c1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmEge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuYSxcclxuYnV0dG9uIHtcclxuICAmOmFjdGl2ZSxcclxuICAmOmhvdmVyIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5idXR0b24ge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG5idXR0b24sXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCB7XHJcbiAgJltkaXNhYmxlZF0ge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gIH1cclxufVxyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGZvbnQtc2l6ZTogMTAwJTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcbiIsIi8qIGh0dHBzOi8vc2lsa3RpZGUuY29tL2ktdGhvdWdodC10aXRsZS10ZXh0LWltcHJvdmVkLWFjY2Vzc2liaWxpdHktaS13YXMtd3JvbmcvICovXHJcbi5hY2Nlc3NpYmxlLWxpbmsge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgc3BhbiB7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIHdpZHRoOiAxcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdG9wOiAtMTBweDtcclxuICB9XHJcbn1cclxuIiwiLmFuY2hvcjo6YmVmb3JlIHtcclxuICBjb250ZW50OiAnJztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBoZWlnaHQ6IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtc21sKTtcclxuICBtYXJnaW46IGNhbGModmFyKC0tc3YtaGVhZGVyLWhlaWdodC1zbWwpICogLTEpIDAgMDtcclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLmFuY2hvcjo6YmVmb3JlIHtcclxuICAgIGhlaWdodDogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpO1xyXG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LW1lZCkgKiAtMSk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuYW5jaG9yOjpiZWZvcmUge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LWxyZyk7XHJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbHJnKSAqIC0xKTtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBCdXN5IGluZGljYXRvclxyXG5cclxuICAqIEJhc2ljIHN0eWxlc1xyXG4gICogQ2VudHJlZFxyXG4gICogQ29sb3Vyc1xyXG4gICogU2l6ZXNcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmJ1c3kge1xyXG4gIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuXHJcbiAgQG1peGluIG1peGluLWljb24tY29uZmlnIHNwaW5uZXIsIHZhcigtLXN2LWNvbC1mb250KSwgODBweDtcclxuXHJcbiAgYW5pbWF0aW9uOiBzdi1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAzMnB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW46IC0xNnB4IDAgMCAtMTZweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtaW5kZW50OiAtMTAwJTtcclxuICB0b3A6IDUwJTtcclxuICB3aWR0aDogMzJweDtcclxuXHJcbiAgLyogQ29sb3Vyc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1saWdodCB7XHJcbiAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgc3Bpbm5lciwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDgwcHg7XHJcbiAgfVxyXG5cclxuICAmLFxyXG4gICYuLWxpZ2h0IHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU2l6ZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJi4tbHJnIHtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIG1hcmdpbjogLTI0cHggMCAwIC0yNHB4O1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgQnV0dG9uc1xyXG5cclxuICAqIEJhc2ljIHN0eWxlc1xyXG4gICogRnVsbCB3aWR0aFxyXG4gICogV2l0aCBpY29uXHJcbiAgKiBTbWFsbFxyXG4gICogU2Vjb25kYXJ5IGNvbG91ciBzY2hlbWVcclxuICAqIFRlcnRpYXJ5IGNvbG91ciBzY2hlbWVcclxuICAqIERhcmsgY29sb3VyIHNjaGVtZVxyXG4gICogTGlnaHQgY29sb3VyIHNjZWhlbWVcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uYnV0dG9uIHtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgcGFkZGluZzogMThweCA0MHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtcG9zaXRpb24gLjIzNXMgY3ViaWMtYmV6aWVyKC44NiwgMCwgLjIsIDEpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdidXR0b24tYmcnLCAnLnN2LWJ1dHRvbi1iZy0tbGVmdFtmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7IC5zdi1idXR0b24tYmctLXJpZ2h0W2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKScpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAyMDIlIGF1dG87IC8qIEFkZGl0aW9uYWwgMiUgdG8gY29tYmF0IGluY29uc2lzdGVudCByZW5kZXJpbmcgd2hlcmUgcmlnaHQgc2lkZSBvZiBiZyBpcyBzb21ldGltZXMgdmlzaWJsZSBieSAuNXB4ICovXHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICB9XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTVweDtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjphY3RpdmUge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMDtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpkaXNhYmxlZCxcclxuICAmLi1kaXNhYmxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTQpICFpbXBvcnRhbnQ7IC8qIFVzZSBvZiBpbXBvcnRhbnQgdG8gcHJldmVudCBoYXZpbmcgdG8gb3ZlcnJpZGUgc3R5bGVzIHdpdGggc3BlY2lmaWNpdHkgKi9cclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS00KSAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvKiBMaW5rXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5LHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xyXG4gICYuLWxpbmsge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICA+IGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogMThweCA0MHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1kaXNhYmxlZCA+IGEsXHJcbiAgICA+IGE6ZGlzYWJsZWQge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1zZWNvbmRhcnkge1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdGVydGlhcnkge1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXRlcnRpYXJ5Li1saWdodCB7XHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXRlcnRpYXJ5Li15ZWxsb3cge1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdGVydGlhcnkuLWdyZXkge1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTQpO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1kYXJrIHtcclxuICAgICAgPiBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWxpZ2h0IHtcclxuICAgICAgPiBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWZvbnQpO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1uZXctZGV2ZWxvcG1lbnQge1xyXG4gICAgICA+IGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gIC8qIFNoYXJlIHdpbmRvd1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1zaGFyZS13aW5kb3cge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC8qIEZ1bGwgd2lkdGhcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJi4tZnVsbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8qIFdpdGggaWNvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1pY29uIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgcmlnaHQ6IDMwcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpJyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNXB4KTtcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjEycztcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpJyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6ZGlzYWJsZWQsXHJcbiAgICAmLi1kaXNhYmxlZCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktNCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS00KSAhaW1wb3J0YW50O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU21hbGxcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1zbWw6bm90KC4tbGluayksXHJcbiAgJi4tc21sLi1saW5rID4gYSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAxOHB4IDIwcHg7XHJcbiAgfVxyXG5cclxuICAvKiBTZWNvbmRhcnkgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1zZWNvbmRhcnkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNCk7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnYnV0dG9uLWJnJywgJy5zdi1idXR0b24tYmctLWxlZnRbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpOyAuc3YtYnV0dG9uLWJnLS1yaWdodFtmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktNCknKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuLWRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1pY29uIHtcclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06ICNmZmYnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogVGVydGlhcnkgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi10ZXJ0aWFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpIGluc2V0OyAvKiBmYWtlICdpbnNldCBib3JkZXInIHNvIGJ1dHRvbiBoZWlnaHRzIGFyZSBlcXVhbCB3L3dvIGJvcmRlciAqL1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2J1dHRvbi1iZycsICcuc3YtYnV0dG9uLWJnLS1sZWZ0W2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTsgLnN2LWJ1dHRvbi1iZy0tcmlnaHRbZmlsbF06IHRyYW5zcGFyZW50Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuLWRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktNCkgaW5zZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuXHJcbiAgICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWljb24ge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2xvbmctYXJyb3ctcmlnaHQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSknKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogVGVydGlhcnkgTGlnaHQgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICYuLXRlcnRpYXJ5Li1saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSBpbnNldDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdidXR0b24tYmcnLCAnLnN2LWJ1dHRvbi1iZy0tbGVmdFtmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7IC5zdi1idXR0b24tYmctLXJpZ2h0W2ZpbGxdOiB0cmFuc3BhcmVudCcpO1xyXG4gICAgfVxyXG5cclxuICAgICY6ZGlzYWJsZWQsXHJcbiAgICAmLi1kaXNhYmxlZCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTQpIGluc2V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWljb24ge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKScpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdsb25nLWFycm93LXJpZ2h0JywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5cclxuICAvKiBUZXJ0aWFyeSBZZWxsb3cgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICYuLXRlcnRpYXJ5Li15ZWxsb3cge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tc3YtY29sLXByaW1hcnktMikgaW5zZXQ7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnYnV0dG9uLWJnJywgJy5zdi1idXR0b24tYmctLWxlZnRbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpOyAuc3YtYnV0dG9uLWJnLS1yaWdodFtmaWxsXTogdHJhbnNwYXJlbnQnKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmRpc2FibGVkLFxyXG4gICAgJi4tZGlzYWJsZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tc3YtY29sLXNlY29uZGFyeS00KSBpbnNldDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyID4gYSxcclxuICAgICY6Zm9jdXMgPiBhIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphY3RpdmUgPiBhIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gIC8qIFRlcnRpYXJ5IEdyZXkgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICYuLXRlcnRpYXJ5Li1ncmV5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS00KSBpbnNldDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdidXR0b24tYmcnLCAnLnN2LWJ1dHRvbi1iZy0tbGVmdFtmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS00KTsgLnN2LWJ1dHRvbi1iZy0tcmlnaHRbZmlsbF06IHRyYW5zcGFyZW50Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuLWRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktNCkgaW5zZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciA+IGEsXHJcbiAgICAmOmZvY3VzID4gYSB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSA+IGEge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gIC8qIERhcmsgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1kYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdidXR0b24tYmcnLCAnLnN2LWJ1dHRvbi1iZy0tbGVmdFtmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7IC5zdi1idXR0b24tYmctLXJpZ2h0W2ZpbGxdOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyknKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuLWRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1pY29uIHtcclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdsb25nLWFycm93LXJpZ2h0JywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogTGlnaHQgY29sb3VyIHNjaGVtZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udCk7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnYnV0dG9uLWJnJywgJy5zdi1idXR0b24tYmctLWxlZnRbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpOyAuc3YtYnV0dG9uLWJnLS1yaWdodFtmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuLWRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1pY29uIHtcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1mb250KScpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnbG9uZy1hcnJvdy1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIE5ldyBEZXZlbG9wbWVudCBTdHlsZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi1uZXctZGV2ZWxvcG1lbnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLW5ldy1kZXZlbG9wbWVudC0yKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdidXR0b24tYmcnLCAnLnN2LWJ1dHRvbi1iZy0tbGVmdFtmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7IC5zdi1idXR0b24tYmctLXJpZ2h0W2ZpbGxdOiB2YXIoLS1zdi1jb2wtbmV3LWRldmVsb3BtZW50LTIpJyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6ZGlzYWJsZWQsXHJcbiAgICAmLi1kaXNhYmxlZCB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuYnV0dG9uIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICYuLXNoYXJlLXdpbmRvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmNvb2tpZS1pbWcge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IC0xMDBweDtcclxufVxyXG4iLCIuZGl2aWRlciB7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1zZWNvbmRhcnktNCk7XHJcblxyXG4gICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gICYuLW5vLXN0eWxlIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmLi1kYXJrIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBncmV5O1xyXG4gIH1cclxufVxyXG4iLCIuZmF2b3VyaXRlLFxyXG4uZmF2b3VyaXRlOmFjdGl2ZSxcclxuLmZhdm91cml0ZTpob3ZlcixcclxuLmZhdm91cml0ZTpmb2N1cyB7XHJcbiAgcGFkZGluZzogMDtcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgLnNlYXJjaC1zdW1tYXJ5ICYge1xyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSBhbmQgKC0tc3Ytdmlldy13aWR0aC1sdC1scmcpIHtcclxuICAgICAgbWFyZ2luLXRvcDogLTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcm9wZXJ0eS1jYXJkICYsXHJcbiAgLnNlYXJjaC1zdW1tYXJ5ICYge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmF2b3VyaXRlIHtcclxuICAmLi1yZW1vdmUtcHJvcGVydHkge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICByaWdodDogMTZweDtcclxuICAgICAgdG9wOiAxNnB4O1xyXG4gICAgICB3aWR0aDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAmOjphZnRlcixcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC04KTtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgd2lkdGg6IDE2cHg7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVYKDFweCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVgoMXB4KTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgQG1peGluIC0tc3YtdmlzdWFsbHktaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBhZ2UtYWN0aW9ucyAmIHtcclxuICAgIGhlaWdodDogMjRweDtcclxuICB9XHJcblxyXG4gICZfX2ltYWdlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIHRvcDogNHB4O1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBtaW4td2lkdGg6IDE4cHg7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIHRvcDogM3B4O1xyXG5cclxuICAgICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFnZS1hY3Rpb25zICYge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXN2LWd1dHRlci14c21sKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNwYW4ge1xyXG4gICAgLnByb3BlcnR5LWNhcmQgJiB7XHJcbiAgICAgIEBtaXhpbiAtLXN2LXZpc3VhbGx5LWhpZGRlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgJjpub3QoLi1yZW1vdmUtcHJvcGVydHkpIHtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgICAgICBAbWl4aW4gLS1zdi1yZW1vdmUtdmlzdWFsbHktaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgRm9ybSBlbGVtZW50c1xyXG5cclxuICAqIEVycm9yc1xyXG4gICogQ3VzdG9tIGZpZWxkIGNvbnRhaW5lcnNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AaW1wb3J0ICcuL2Zvcm1zLWZpZWxkcy1pbnB1dHMuY3NzJztcclxuQGltcG9ydCAnLi9mb3Jtcy1maWVsZHMtY2hlY2tzLmNzcyc7XHJcblxyXG46cm9vdCB7XHJcbiAgLS1zdi1jb2wtaW5wdXQtZm9jdXMtb3V0bGluZTogIzYwODFlNTtcclxuICAtLXN2LWNvbC1pbnB1dC1mb2N1cy1ib3JkZXI6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTMpO1xyXG4gIC0tc3YtY29sLWlucHV0LWVycm9yOiB2YXIoLS1zdi1jb2wtYWxlcnQtdGludCk7XHJcbiAgLS1zdi1jb2wtaW5wdXQtYm9yZGVyOiAjZTJlM2U1O1xyXG4gIC0tc3YtaW5wdXQtc3BhY2luZzogY2FsYyh2YXIoLS1zdi1ndXR0ZXIpICogMik7XHJcbiAgLS1zdi1lcnJvci1hcnJvdy1zaXplOiA5cHg7XHJcbiAgLS1zdi1pY29uLWNpcmNsZS1yYWRpdXM6IDIwcHg7XHJcbn1cclxuXHJcbi8qIEVycm9yc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb3JtLWVycm9yIHtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLWFsZXJ0KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgcGFkZGluZy10b3A6IDhweDtcclxufVxyXG5cclxuLyogQ3VzdG9tIGZpZWxkIGNvbnRhaW5lcnNcclxuKHNlZSBmb3Jtcy1bKl0uY3NzIGZvciAuY3VzdG9tLWlucHV0IHZhcmlhbnRzKVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jdXN0b20taW5wdXQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4OyAvKiBXYW50IHRvOiBtYWludGFpbiBjb3JyZWN0IHNwYWNpbmcgd2l0aCBvciB3aXRob3V0ICdjdXN0b20taW5wdXQnIHdyYXBwZXIgKi9cclxuXHJcbiAgaW5wdXRbdHlwZV0sXHJcbiAgdGV4dGFyZWEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAmOjotbXMtY2xlYXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbGFiZWwsXHJcbiAgJl9fbGFiZWwge1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcblxyXG4gICAgLi1zdGF0aWMgJiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZm9ybS1maWVsZC12YWxpZCB7XHJcbiAgICBpbnB1dCxcclxuICAgIHRleHRhcmVhLFxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tc3YtY29sLWdyZWVuLTIpICFpbXBvcnRhbnQ7IC8qIFRvIG92ZXJyaWRlIGFuZCBjdXN0b20gc3R5bGVzIHNvIHZhbGlkYXRpb24gaXMgc3RpbGwgcHJlc2VudCAqL1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5mb3JtLWZpZWxkLWludmFsaWQge1xyXG4gICAgaW5wdXQsXHJcbiAgICB0ZXh0YXJlYSxcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpICFpbXBvcnRhbnQ7IC8qIFRvIG92ZXJyaWRlIGFuZCBjdXN0b20gc3R5bGVzIHNvIHZhbGlkYXRpb24gaXMgc3RpbGwgcHJlc2VudCAqL1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm0tZXJyb3Ige1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICBtYXJnaW46IDIzcHggMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1zdi1lcnJvci1hcnJvdy1zaXplKTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1zdi1lcnJvci1hcnJvdy1zaXplKTtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgdG9wOiAtNnB4O1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pbnB1dC1lcnJvcixcclxuICAmLmZvcm0tZmllbGQtdmFsaWQge1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgd2lkdGg6IHZhcigtLXN2LWljb24tY2lyY2xlLXJhZGl1cyk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0tc3YtaWNvbi1jaXJjbGUtcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICB0b3A6IDYwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnYWxlcnQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KScpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmlucHV0LW9wdGlvbmFsLmZvcm0tZmllbGQtdmFsaWQge1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICBpbnB1dDpmb2N1cyxcclxuICAgIHRleHRhcmVhOmZvY3VzIHtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktMykgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG5cclxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAmLmlucHV0LW9wdGlvbmFsLmZvcm0tZmllbGQtdmFsaWQuLWZvcm0tZmllbGQtcG9wdWxhdGVkIHtcclxuICAgIGlucHV0LFxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtZ3JlZW4tMikgIWltcG9ydGFudDsgLyogVG8gb3ZlcnJpZGUgYW5kIGN1c3RvbSBzdHlsZXMgc28gdmFsaWRhdGlvbiBpcyBzdGlsbCBwcmVzZW50ICovXHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gICYuZm9ybS1maWVsZC12YWxpZCB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ3ZhbGlkJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWdyZWVuLTIpJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1kcm9wZG93biB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIHRvcDogMTlweDtcclxuICAgICAgcmlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1yYWRpbyxcclxuICAmLi1jaGVja2JveCxcclxuICAmLi1kcm9wZG93biB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pbnB1dC1jbGVhbiB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19zdGF0aWMge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcblxyXG4gICZfX2xpbmsubGluayB7XHJcbiAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgJl9fdG9nZ2xlLXBhc3N3b3JkIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNXB4O1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtdG9nZ2xlLXBhc3N3b3JkKTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ3Nob3ctcGFzc3dvcmQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtdG9nZ2xlLXBhc3N3b3JkKScpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4taGlkZGVuIHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2hpZGUtcGFzc3dvcmQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtdG9nZ2xlLXBhc3N3b3JkKScpO1xyXG4gICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmN1c3RvbS1pbnB1dDpub3QoLi1lcnJvci1iZWxvdykge1xyXG4gICAgLmZvcm0tZXJyb3Ige1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS1lcnJvciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgcGFkZGluZzogMTZweDtcclxuICAgICAgdG9wOiA0MnB4O1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBsZWZ0OiAxMDIlO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAyMHB4O1xyXG4gICAgICAgIGxlZnQ6IC02cHg7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXN2LWVycm9yLWFycm93LXNpemUpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tc3YtZXJyb3ItYXJyb3ctc2l6ZSk7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgSW5wdXQgc3R5bGUgZmllbGRzXHJcblxyXG4gICogVGV4dCAmIGRyb3Bkb3duIGlucHV0IGZpZWxkcyAoY29tbW9uKVxyXG4gICogTm8gYm9yZGVyXHJcbiAgKiBTZWFyY2hcclxuICAqIERyb3Bkb3duIGZpZWxkc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xyXG5cclxuLyogVGV4dCBpbnB1dCAmIGRyb3Bkb3duIGZpZWxkcyAoY29tbW9uKVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmlucHV0W3R5cGU9c2VhcmNoXSxcclxuaW5wdXRbdHlwZT10ZXh0XSxcclxuaW5wdXRbdHlwZT10ZWxdLFxyXG5pbnB1dFt0eXBlPWVtYWlsXSxcclxuaW5wdXRbdHlwZT1udW1iZXJdLFxyXG5pbnB1dFt0eXBlPW1vbnRoXSxcclxuaW5wdXRbdHlwZT1kYXRlXSxcclxuaW5wdXRbdHlwZT1kYXRldGltZV0sXHJcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxyXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcclxuaW5wdXRbdHlwZT10aW1lXSxcclxuaW5wdXRbdHlwZT11cmxdLFxyXG5pbnB1dFt0eXBlPXdlZWtdLFxyXG50ZXh0YXJlYSxcclxuc2VsZWN0IHtcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXNlY29uZGFyeS0xMCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgbWluLWhlaWdodDogNTVweDtcclxuICBib3gtc2hhZG93OiAxcHggMXB4IDNweCAxcHggdHJhbnNwYXJlbnQ7XHJcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMnM7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtaW5wdXQtc3BhY2luZyk7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWlucHV0LWJvcmRlcik7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyxcclxuICAmLnN2LXN0YXRlLWhhcy12YWx1ZSB7XHJcbiAgICAmIH4gbGFiZWwge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1pbnB1dC10ZXh0KSAhaW1wb3J0YW50OyAvKiB1c2Ugb2YgaW1wb3J0YW50IHRvIG92ZXJpZGUgdmFyaW91cyBzdGF0ZSB0ZXh0IGNvbG9ycyAqL1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgJi5pbnB1dC1lcnJvciB7XHJcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDNweCAxcHggdmFyKC0tc3YtY29sLWFsZXJ0KTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc3YtY29sLWFsZXJ0KTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufVxyXG5cclxudGV4dGFyZWEge1xyXG4gIGhlaWdodDogMTUwcHg7XHJcbn1cclxuXHJcbi4taW5wdXQtb3B0aW9uYWwsXHJcbi4taW5wdXQtdGFnbGluZSB7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC01KTtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi4taW5wdXQtdGFnbGluZSB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5kYXRlLXBpY2tlciBpbnB1dCB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdkYXRlcGlja2VyJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXNlY29uZGFyeS0xMSknKTtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KTtcclxufVxyXG5cclxuLmRhdGUtcGlja2VyOjphZnRlciB7XHJcbiAgcmlnaHQ6IDU1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogTm8gYm9yZGVyXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmN1c3RvbS1pbnB1dC4tbm8tYm9yZGVyIHtcclxuICBpbnB1dCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWlucHV0Li1scmcge1xyXG4gIGlucHV0IHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogNzZweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5jdXN0b20taW5wdXQuLWxyZyB7XHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5jdXN0b20taW5wdXQuLWxyZyB7XHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTZWFyY2hcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY3VzdG9tLWlucHV0Li1zZWFyY2gge1xyXG4gIGlucHV0IHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNnB4KSBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdzZWFyY2gnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtOCknKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweDtcclxuICB9XHJcbn1cclxuXHJcbi5jdXN0b20taW5wdXQuLXNlYXJjaC4tYWx0IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIGJ1dHRvbiB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMjVweDtcclxuICAgIHJpZ2h0OiAxcHg7XHJcbiAgICB3aWR0aDogNDNweDtcclxuICAgIGhlaWdodDogNDNweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTZweCBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdzZWFyY2gnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSknKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweDtcclxuICB9XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIHBhZGRpbmc6IDEycHggNTBweCAxM3B4IDE4cHg7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTYpO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcblxyXG4gIGlucHV0IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDEwcHggNTBweCAxMHB4IDE4cHg7XHJcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICY6Zm9jdXMgfiBsYWJlbCxcclxuICAgICYuc3RhdGUtaGFzLXZhbHVlIH4gbGFiZWwge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qIERyb3Bkb3duc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IGluIElFICovXHJcbnNlbGVjdCB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCkgY2FsYygxMDAlIC0gMTVweCkgbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTgpJyk7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDM2cHg7XHJcblxyXG4gICY6Oi1tcy1leHBhbmQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5jdXN0b20taW5wdXQuLWRyb3Bkb3duIHtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1pbnB1dC1zcGFjaW5nKTsgLyogV2FudCB0bzogbWFpbnRhaW4gY29ycmVjdCBzcGFjaW5nIHdpdGggb3Igd2l0aG91dCAnY3VzdG9tLWlucHV0JyB3cmFwcGVyICovXHJcblxyXG4gIC5zZWxlY3RfX2NvbnRhaW5lcltkYXRhLXN2LWhhcy1zb3J0LXByZWZpeF0ge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1zb3J0LWxhYmVsKTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogOTBweDtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdF9fdmFsdWUsXHJcbiAgLnNlbGVjdF9fb3B0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgbGFiZWwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIH1cclxufVxyXG5cclxuLi1kcm9wZG93biB7XHJcbiAgJi4tY2FsYy1sYXlvdXQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgLnNlbGVjdF9fY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bl9fY2FsYyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IGluaXRpYWw7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAuNDVlbTtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAuNGVtO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWluLWhlaWdodDogMzBweDtcclxuICAgICAgbWluLXdpZHRoOiBpbml0aWFsO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLjdjaDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWN1c3RvbSB7XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RfX3ZhbHVlLFxyXG4gICAgLnNlbGVjdF9fb3B0aW9uIHtcclxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X19jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAuNDVlbTtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAuNGVtO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcclxuICAgICAgcGFkZGluZzogMCAuOWVtIDAgMDtcclxuICAgICAgbWluLWhlaWdodDogMzBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IC4wNjI1cmVtIC4wNjI1cmVtIC4xODc1cmVtIC4wNjI1cmVtICM2MDgxZTU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggMXB4IHZhcigtLXN2LWNvbC1wcmltYXJ5LTMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgcGFkZGluZy1yaWdodDogLjVjaDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X19vcHRpb25zIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcclxuICAgICAgZm9udC1zaXplOiBpbml0aWFsO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RfX29wdGlvbiB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci14c21sKSB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTEpO1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJi4tYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tb3BlbiB7XHJcbiAgICAgIC5zZWxlY3RfX29wdGlvbnMge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB6LWluZGV4OiAxMTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWF4LWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbGFuZ3VhZ2UtZHJvcGRvd24ge1xyXG4gICAgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDNweCAxNXB4IDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdF9fY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdF9fb3B0aW9uIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X19vcHRpb25zIHtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIC4xNCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZm9yICRpIGZyb20gMSB0byA1IHtcclxuICAgICYuLXByaW1hcnktJGkgLnNlbGVjdF9fdmFsdWUsXHJcbiAgICAmLi1wcmltYXJ5LSRpIHNlbGVjdCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0kaSk7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktJGkpJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1maWVsZC10b3VjaGVkIHtcclxuICBpbnB1dFt0eXBlPWRhdGVdIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgQ2hlY2sgc3R5bGUgZmllbGRzXHJcblxyXG4gICogQ2hlY2sgaW5kaWNhdG9yIChzaGFyZWQpXHJcbiAgKiBDdXN0b20gcmFkaW9zL2NoZWNrYm94ZXMgKGNvbW1vbilcclxuICAqIEN1c3RvbSByYWRpb3NcclxuICAqIEN1c3RvbSBjaGVja2JveGVzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xyXG5cclxuOnJvb3Qge1xyXG4gIC0tc3YtY29sLWN1c3RvbS1jaGVjay1pbm5lcjogIzNlM2U0MDtcclxuICAtLXN2LWNvbC1jdXN0b20tY2hlY2stb3V0ZXI6ICM5YTk4OTY7XHJcbiAgLS1zdi1jdXN0b20tY2hlY2stc2l6ZTogMjBweDtcclxuICAtLXN2LWN1c3RvbS1jaGVjay1zaXplLXNtbDogMTZweDtcclxufVxyXG5cclxuLyogQ2hlY2sgaW5kaWNhdG9yIChzaGFyZWQpXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmN1c3RvbS1pbnB1dF9fY2hlY2sge1xyXG4gIG1pbi1oZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplKTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICY6OmJlZm9yZSxcclxuICAmOjphZnRlciB7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tc3YtdHJhbnNpdGlvbi1zcGVlZC1zKTtcclxuICAgIHdpZHRoOiB2YXIoLS1zdi1jdXN0b20tY2hlY2stc2l6ZSk7XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtY3VzdG9tLWNoZWNrLW91dGVyKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWN1c3RvbS1jaGVjay1pbm5lcik7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gIH1cclxuXHJcbiAgJi4tc21sIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplLXNtbCk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplLXNtbCk7XHJcbiAgICAgIHRvcDogMnB4O1xyXG4gICAgICB3aWR0aDogdmFyKC0tc3YtY3VzdG9tLWNoZWNrLXNpemUtc21sKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEN1c3RvbSByYWRpb3MvY2hlY2tib3hlcyAoY29tbW9uKVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jdXN0b20taW5wdXQuLXJhZGlvLFxyXG4uY3VzdG9tLWlucHV0Li1jaGVja2JveCB7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtaW5wdXQtc3BhY2luZyk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gIGlucHV0IHtcclxuICAgIG9wYWNpdHk6IDA7IC8qIGhpZGVzIGlucHV0cyB3aGlsc3QgcmV0YWluaW5nIGRlc2NlbmRhbnQgc2VsZWN0b3IgY2FwYWJpbGl0aWVzICovXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICYgfiAuY3VzdG9tLWlucHV0X19jaGVjayB7XHJcbiAgICAgICAgb3BhY2l0eTogLjM7XHJcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAmIH4gLmN1c3RvbS1pbnB1dF9fY2hlY2s6OmJlZm9yZSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAzcHggMXB4IHZhcigtLXN2LWNvbC1pbnB1dC1mb2N1cy1vdXRsaW5lKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1pbnB1dC1mb2N1cy1ib3JkZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pbnB1dC1lcnJvciB7XHJcbiAgICAgICYgfiAuY3VzdG9tLWlucHV0X19jaGVjazo6YmVmb3JlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAxcHggMXB4IDNweCAxcHggdmFyKC0tc3YtY29sLWFsZXJ0KTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1hbGVydCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEN1c3RvbSByYWRpb3NcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY3VzdG9tLWlucHV0Li1yYWRpbyB7XHJcbiAgaW5wdXQge1xyXG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1pbnB1dF9fY2hlY2s6OmFmdGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY3VzdG9tLWlucHV0X19jaGVjazo6YmVmb3JlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuY3VzdG9tLWlucHV0X19jaGVjazo6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgbWFyZ2luOiA0cHg7XHJcbiAgfVxyXG5cclxuICAuY3VzdG9tLWlucHV0X19jaGVjay4tc21sOjphZnRlciB7XHJcbiAgICB3aWR0aDogNnB4O1xyXG4gICAgaGVpZ2h0OiA2cHg7XHJcbiAgICBtYXJnaW46IDVweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEN1c3RvbSBjaGVja2JveGVzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmN1c3RvbS1pbnB1dC4tY2hlY2tib3gge1xyXG4gIG1pbi1oZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplKTtcclxuXHJcbiAgaW5wdXQge1xyXG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1pbnB1dF9fY2hlY2s6OmFmdGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXN0b20taW5wdXRfX2NoZWNrOjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2NoZWNrJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IC44NzVyZW07XHJcbiAgfVxyXG5cclxuICAuY3VzdG9tLWlucHV0X19jaGVjay4tc21sIHtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXN2LWN1c3RvbS1jaGVjay1zaXplLXNtbCk7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2VuZXJpYyBjYXJkIGFkZHJlc3NcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZm9ybS1ncm91cC1oZWFkZXIge1xyXG4gIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyKSAwIHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG5cclxuICAmLi1ib3JkZXIge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcblxyXG4gICAgLi1kYXJrICYge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNiksIC41KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2xhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLG51bGwsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR3JpZFxyXG5cclxuICAqIExvc3QgY29uZmlnXHJcbiAgKiBDb250YWluZXJcclxuICAqIFJvd3NcclxuICAqIENvbHVtbnMgLSBzbWFsbCAvIG1lZGl1bSAvIGxhcmdlXHJcblxyXG4gIFRoZXJlJ3MgYSBoZWF2eSB1c2FnZSBvZiBpbXBvcnRhbnQgaGVyZSB0byB3b3JrIGFyb3VuZCB0aGUgc3BlY2lmaWN0eSBvZlxyXG4gIHRoZSBsb3N0IGNzcyBkZWNsYXJhdGlvbnMuXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbjpyb290IHtcclxuICAtLXN2LWNvbHVtbi1jb3VudDogMTI7XHJcbn1cclxuXHJcbi8qIExvc3QgY29uZmlnXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGxvc3QgZ3V0dGVyIHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4vKiBDb250YWluZXJcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29udGFpbmVkLFxyXG4ucm93LFxyXG4uYmxvY2stZ3JpZCB7XHJcbiAgbG9zdC1jZW50ZXI6IHZhcigtLXN2LW1heC13aWR0aCk7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXhscmcpIHtcclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxuXHJcbiAgLi1jb250YWluZWQsXHJcbiAgLnJvdyxcclxuICAuYmxvY2stZ3JpZCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLyogUm93c1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnJvdyB7XHJcbiAgbG9zdC11dGlsaXR5OiBjbGVhcmZpeDtcclxufVxyXG5cclxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gKHhzbWwsIHNtbCwgbWVkLCBscmcsIHhscmcpIHtcclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC0kKGJyZWFrcG9pbnQpKSB7XHJcbiAgICAvKiBCcmVha3BvaW50IHNwZWNpZmljIGZsb3cgc3dpdGNoaW5nICovXHJcbiAgICAucm93Li0kKGJyZWFrcG9pbnQpLXJpZ2h0ID4gLmNvbCB7XHJcbiAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEJyZWFrcG9pbnQgc3BlY2lmaWMgaGVpZ2h0IG1hdGNoaW5nICovXHJcbiAgICAucm93Li0kKGJyZWFrcG9pbnQpLWVxdWFsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgJiA+IC5jb2wge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIENvbHVtbnNcclxuICAobWluaW11bSB2aWV3cG9ydCBzaXplcylcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29sIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGxvc3QtdXRpbGl0eTogY2xlYXJmaXg7XHJcblxyXG4gIC8qIENvbHVtbiBjZW50ZXJpbmcgKi9cclxuICAmLi1jZW50ZXIge1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiAoeHNtbCwgc21sLCBtZWQsIGxyZykge1xyXG4gIC8qIFJlbmRlciBvdXQgYnJlYWtwb2ludCBzcGVjaWZpYyBjb2x1bW4gc2l6ZXMgKi9cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC0kKGJyZWFrcG9pbnQpKSB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0byAxMiB7XHJcbiAgICAgIC5jb2wuLSQoYnJlYWtwb2ludCktJGkge1xyXG4gICAgICAgIGxvc3QtY29sdW1uOiAkaS92YXIoLS1zdi1jb2x1bW4tY291bnQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG4gIE9mZnNldFxyXG4qL1xyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiAoeHNtbCwgc21sLCBtZWQsIGxyZykge1xyXG4gIC8qIFJlbmRlciBvdXQgYnJlYWtwb2ludCBzcGVjaWZpYyBjb2x1bW4gc2l6ZXMgKi9cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC0kKGJyZWFrcG9pbnQpKSB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0byAxMiB7XHJcbiAgICAgIC5jb2wuLSQoYnJlYWtwb2ludCktb2Zmc2V0LSRpIHtcclxuICAgICAgICBsb3N0LW9mZnNldDogJGkvdmFyKC0tc3YtY29sdW1uLWNvdW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLypcclxuICBBcmJpdHJhcnkgbmVnYXRpdmUgdG9wIG9mZnNldCBjbGFzcyAoYXMgc2VlbiBpbiBhcnRpY2xlIHBhZ2VzIHJpZ2h0IGNvbClcclxuKi9cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmNvbC4tb2Zmc2V0LXRvcCB7XHJcbiAgICBtYXJnaW4tdG9wOiAtODBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIGJsb2NrLWdyaWQgdW5pZm9ybSBncmlkcyBjb250cm9sbGVkIGZyb20gcGFyZW50IGNvbnRhaW5lciAqL1xyXG4uYmxvY2stZ3JpZCB7XHJcbiAgbG9zdC11dGlsaXR5OiBjbGVhcmZpeDtcclxuXHJcbiAgJiA+IC5jb2wge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFJlbmRlciBvdXQgYnJlYWtwb2ludCBzcGVjaWZpYyBibG9jay1ncmlkIGNvbHVtbiBzaXplcyAqL1xyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiAoeHNtbCwgc21sLCBtZWQsIGxyZykge1xyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLSQoYnJlYWtwb2ludCkpIHtcclxuICAgIEBmb3IgJGkgZnJvbSAyIHRvIDEwIHtcclxuICAgICAgLmJsb2NrLWdyaWQuLSQoYnJlYWtwb2ludCktJGkgPiAuY29sIHtcclxuICAgICAgICBsb3N0LXdhZmZsZTogMS8kaTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU2V0IGEgYmxvY2stZ3JpZCBjb2x1bW4gdmlldyBsaW1pdCBvbiBsb3dlciBicmVha3BvaW50cyAqL1xyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiAobHQteHNtbCwgbHQtc21sLCBsdC1tZWQpIHtcclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC0kKGJyZWFrcG9pbnQpKSB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0byA1IHtcclxuICAgICAgLmJsb2NrLWdyaWQuLSQoYnJlYWtwb2ludCktc2hvdy0kaSA+IC5jb2w6bnRoLWNoaWxkKG4gKyBjYWxjKCRpICsgMSkpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYmxvY2stZ3JpZC4tYm9yZGVycyA+IC5jb2wge1xyXG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyAvKiBUT0RPIGZpbmQgYmV0dGVyIHdvcmthcm91bmQgZm9yIGxvc3QgZ3JpZCBzcGVjaWZpY2l0eSAqL1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiBSZXF1aXJlZCB0byBpbmNyZWFzZSBsb3N0LWNzcyBjYWxjIHdpZHRocyB3aXRoIHBhZGRpbmcgYXMgbWFyZ2lucyBhcmUgcmVtb3ZlZCAqL1xyXG4gIGJvcmRlcjogMCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG5cclxuICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XHJcbiAgICBwYWRkaW5nOiA1cHggMDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZzogMCA1cHg7XHJcbiAgfVxyXG59XHJcbiIsIi5saWdodGJveCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDEwMTtcclxuXHJcbiAgJi4taXMtbW9kYWwge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gICZfX3dyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLi1pcy1tb2RhbCAmIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlciB7XHJcbiAgICAgIG1hcmdpbjogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpIDA7XHJcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICh2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LW1lZCkgKiAyKSk7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICBtYXJnaW46IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbHJnKSAwO1xyXG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICh2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LWxyZykgKiAyKSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zdHBfc2xpY2stbGlzdCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2NvbnRyb2wsXHJcbiAgICAgICZfX2NvdW50ZXIsXHJcbiAgICAgICZfX2NhcHRpb24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fY29udGVudCxcclxuICAgICAgJl9faW1hZ2UtY29udGFpbmVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2NvdW50ZXIge1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItc21sKTtcclxuICAgICAgICBib3R0b206IHZhcigtLXN2LWd1dHRlci14c21sLW1pZCk7XHJcblxyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgICAgICAgcmlnaHQ6IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuICAgICAgICAgIGJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXNtbC1taWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fY2FwdGlvbiB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lIDAgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAycHggd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXItc21sLW1pZCk7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgICAgICBsZWZ0OiB2YXIoLS1zdi1ndXR0ZXItc21sKTtcclxuICAgICAgICBib3R0b206IHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKTtcclxuXHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgICAgICBsZWZ0OiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICAgICAgICBib3R0b206IHZhcigtLXN2LWd1dHRlci1tZWQtbWlkKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2Nsb3NlIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogdmFyKC0tc3YtZ3V0dGVyLXhzbWwtbWlkKTtcclxuICAgIHJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItc21sKTtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgICB0b3A6IHZhcigtLXN2LWd1dHRlci1tZWQtbWlkKTtcclxuICAgICAgcmlnaHQ6IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuXHJcbiAgICAgIC4taXMtbW9kYWwgJiB7XHJcbiAgICAgICAgdG9wOiAzMnB4O1xyXG4gICAgICAgIHJpZ2h0OiAzMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDE0cHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGhlaWdodDogNHB4O1xyXG4gICAgICB3aWR0aDogMzJweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoMCwgMCwgMCwgLjQyKTtcclxuXHJcbiAgICAgIC4taXMtbW9kYWwgJiB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgIGJveC1zaGFkb3c6IC0ycHggMnB4IDNweCByZ2JhKDAsIDAsIDAsIC40Mik7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgPiBkaXYge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMTRweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2tub2Nrb3V0IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjAwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoNzAsIDcyLCA4MywgLjgpO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgfVxyXG5cclxuICAmX19pZnJhbWUge1xyXG4gICAgYm9yZGVyOiBub25lIDAgdHJhbnNwYXJlbnQ7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMjBweCk7XHJcbiAgfVxyXG5cclxuICAmX19pZnJhbWUge1xyXG4gICAgbWFyZ2luOiAwIDR2dyAzMHB4O1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDh2dyk7XHJcbiAgfVxyXG59XHJcbiIsIi5tb2RhbCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgbWF4LWhlaWdodDogMTAwJTtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgIGFsaWduLXNlbGY6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDY3NXB4O1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAgICYuLXdpZGUge1xyXG4gICAgICBtYXgtd2lkdGg6IDk2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY2xvc2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDE4cHg7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2xvc2UnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS00KScpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFBhZ2luYXRpb25cclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5wYWdpbmF0aW9uIHtcclxuICAmX19wYWdlcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyKSAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTQpO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICB9XHJcblxyXG4gICZfX3BhZ2Uge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTQpO1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQsXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnXFwwMDNjJztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdcXDAwM2UnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1kaXNhYmxlZCB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTMpO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYWN0aXZlIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcblxyXG4gICYuLWJvcmRlcmVkIHtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG4gIH1cclxuXHJcbiAgJi4tY29tcGFjdCB7XHJcbiAgICAucGFnaW5hdGlvbiB7XHJcbiAgICAgICZfX3BhZ2VzIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnBhZ2luYXRpb24ge1xyXG4gICAgJl9fcGFnZXMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKSAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3BhZ2Uge1xyXG4gICAgICAmOmZpcnN0LWNoaWxkLFxyXG4gICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1jb21wYWN0IHtcclxuICAgIC5wYWdpbmF0aW9uX19wYWdlIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBQcm9wZXJ0eSBhdHRyaWJ1dGVcclxuXHJcbiAgKiBWYXJpYWJsZXNcclxuICAqIE1peGluc1xyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIFN0eWxlIG1vZGlmaWVyc1xyXG4gICogVHlwZSBtb2RpZmllcnNcclxuICAqIENvbG9yIG1vZGlmaWVyc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG46cm9vdCB7XHJcbiAgLyogU3RhbmRhcmQgbXVsdGlwbGllcnMgKi9cclxuICAtLXZpZXctd2lkdGgtbWVkLW11bHRpcGxpZXI6IDEuMjtcclxuXHJcbiAgLyogTGFyZ2UgbW9kaWZpZXIgbXVsaXRwbGllcnMgKi9cclxuICAtLWxhcmdlLW11bHRpcGxpZXI6IDEuMTtcclxuICAtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyOiAxLjU7XHJcbiAgLS1sYXJnZS12aWV3LXdpZHRoLXNtbC1tdWx0aXBsaWVyOiAxLjQ7XHJcblxyXG4gIC8qIFByb3BlcnR5IHR5cGUgdmFycyAqL1xyXG4gIC0tcHJvcGVydHktdHlwZS1pY29uLXNpemU6IDE3cHg7XHJcbiAgLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyOiA3cHg7XHJcblxyXG4gIC8qIFNpemUgaWNvbiB2YXJzICovXHJcbiAgLS1zaXplLWljb24tc2l6ZTogMTVweDtcclxuICAtLXNpemUtaWNvbi1idWZmZXI6IDZweDtcclxuXHJcbiAgLyogTGFuZCBhcmVhIHZhcnMgKi9cclxuICAtLWxhbmQtYXJlYS1pY29uLXNpemU6IDE3cHg7XHJcbiAgLS1sYW5kLWFyZWEtaWNvbi1idWZmZXI6IDdweDtcclxuXHJcbiAgLyogQmF0aHJvb20gdmFycyAqL1xyXG4gIC0tYmF0aHJvb20taWNvbi1zaXplOiAxOXB4O1xyXG4gIC0tYmF0aHJvb20taWNvbi1idWZmZXI6IDhweDtcclxuXHJcbiAgLyogQmVkcm9vbSB2YXJzICovXHJcbiAgLS1iZWRyb29tLWljb24tc2l6ZTogMThweDtcclxuICAtLWJlZHJvb20taWNvbi1idWZmZXI6IDdweDtcclxuXHJcbiAgLyogUmVjZXB0aW9uIHZhcnMgKi9cclxuICAtLXJlY2VwdGlvbi1pY29uLXNpemU6IDIwcHg7XHJcbiAgLS1yZWNlcHRpb24taWNvbi1idWZmZXI6IDhweDtcclxuXHJcbiAgLyogR3JhZGUgdmFycyAqL1xyXG4gIC0tZ3JhZGUtaWNvbi1zaXplOiAxN3B4O1xyXG4gIC0tZ3JhZGUtaWNvbi1idWZmZXI6IDhweDtcclxuXHJcbiAgLyogTnVtYmVyIG9mIHBlb3BsZSB2YXJzICovXHJcbiAgLS1wZW9wbGUtaWNvbi1zaXplOiAxOHB4O1xyXG4gIC0tcGVvcGxlLWljb24tYnVmZmVyOiAxMHB4O1xyXG5cclxuICAvKiBZaWVsZCB2YXJzICovXHJcbiAgLS15aWVsZC1pY29uLXNpemU6IDE2cHg7XHJcbiAgLS15aWVsZC1pY29uLWJ1ZmZlcjogMTBweDtcclxufVxyXG5cclxuLyogU3VwcG9ydGluZyBtaXhpbnNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AZGVmaW5lLW1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciAkc2l6ZSwgJGJ1ZmZlciwgJG11bHRpcGxpZXIge1xyXG4gIHBhZGRpbmctbGVmdDogY2FsYygkc2l6ZSArICRidWZmZXIgKiAkbXVsdGlwbGllcik7XHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIHdpZHRoOiBjYWxjKCRzaXplICogJG11bHRpcGxpZXIpO1xyXG4gICAgaGVpZ2h0OiBjYWxjKCRzaXplICogJG11bHRpcGxpZXIpO1xyXG4gIH1cclxufVxyXG5cclxuLyogQmFzZSBzdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucHJvcGVydHktYXR0cmlidXRlIHtcclxuICBAZXh0ZW5kIC5leHRlbmRlci1pY29uLWJhc2U7XHJcblxyXG4gIGhlaWdodDogMjBweDtcclxuICBtYXJnaW46IDAgdmFyKC0tc3YtZ3V0dGVyKSAwIDA7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4gICYuLWxhcmdlIHtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU3R5bGUgbW9kaWZpZXJzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICYuLWRhcmsge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWJvb2spO1xyXG4gIH1cclxuXHJcbiAgLyogVHlwZSBtb2RpZmllcnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJi4tcmVzaWRlbnRpYWwge1xyXG4gICAgQG1peGluIG1peGluLXNwcml0ZS1pY29uLWNvbmZpZyBzcHJpdGUtcmVzaWRlbnRpYWwsIHZhcigtLXByb3BlcnR5LXR5cGUtaWNvbi1zaXplKSwgdmFyKC0tcHJvcGVydHktdHlwZS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcbiAgfVxyXG5cclxuICAmLi1ydXJhbCB7XHJcbiAgICBAbWl4aW4gbWl4aW4tc3ByaXRlLWljb24tY29uZmlnIHNwcml0ZS1ydXJhbCwgdmFyKC0tcHJvcGVydHktdHlwZS1pY29uLXNpemUpLCB2YXIoLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyKSwgbGVmdDtcclxuICB9XHJcblxyXG4gICYuLWNvbW1lcmNpYWwge1xyXG4gICAgQG1peGluIG1peGluLXNwcml0ZS1pY29uLWNvbmZpZyBzcHJpdGUtY29tbWVyY2lhbCwgdmFyKC0tcHJvcGVydHktdHlwZS1pY29uLXNpemUpLCB2YXIoLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyKSwgbGVmdDtcclxuICB9XHJcblxyXG4gICYuLXJlc2lkZW50aWFsLFxyXG4gICYuLXJ1cmFsLFxyXG4gICYuLWNvbW1lcmNpYWwge1xyXG4gICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcHJvcGVydHktdHlwZS1pY29uLXNpemUpLCB2YXIoLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyKSwgdmFyKC0tdmlldy13aWR0aC1tZWQtbXVsdGlwbGllcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1sYXJnZSB7XHJcbiAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcHJvcGVydHktdHlwZS1pY29uLXNpemUpLCB2YXIoLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyKSwgdmFyKC0tbGFyZ2UtbXVsdGlwbGllcik7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXByb3BlcnR5LXR5cGUtaWNvbi1zaXplKSwgY2FsYyh2YXIoLS1wcm9wZXJ0eS10eXBlLWljb24tYnVmZmVyKSAqIHZhcigtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyKSksIHZhcigtLWxhcmdlLXZpZXctd2lkdGgtc21sLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zaXplIHtcclxuICAgIEBtaXhpbiBtaXhpbi1zcHJpdGUtaWNvbi1jb25maWcgc3ByaXRlLXNpemUsIHZhcigtLXNpemUtaWNvbi1zaXplKSwgdmFyKC0tc2l6ZS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcbiAgfVxyXG5cclxuICAmLi1hdmFpbGFibGUtc2l6ZSB7XHJcbiAgICBAbWl4aW4gbWl4aW4tc3ByaXRlLWljb24tY29uZmlnIHNwcml0ZS1hdmFpbGFibGUtc3BhY2UsIHZhcigtLXNpemUtaWNvbi1zaXplKSwgdmFyKC0tc2l6ZS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcbiAgfVxyXG5cclxuICAmLi1zaXplLFxyXG4gICYuLWF2YWlsYWJsZS1zaXplIHtcclxuICAgIC5wcm9wZXJ0eS1jYXJkLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXNpemUtaWNvbi1zaXplKSwgdmFyKC0tc2l6ZS1pY29uLWJ1ZmZlciksIHZhcigtLXZpZXctd2lkdGgtbWVkLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tbGFyZ2Uge1xyXG4gICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXNpemUtaWNvbi1zaXplKSwgdmFyKC0tc2l6ZS1pY29uLWJ1ZmZlciksIHZhcigtLWxhcmdlLW11bHRpcGxpZXIpO1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgQG1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciB2YXIoLS1zaXplLWljb24tc2l6ZSksIGNhbGModmFyKC0tc2l6ZS1pY29uLWJ1ZmZlcikgKiB2YXIoLS1sYXJnZS1idWZmZXItbXVsaXRwbGllcikpLCB2YXIoLS1sYXJnZS12aWV3LXdpZHRoLXNtbC1tdWx0aXBsaWVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbGFuZC1hcmVhIHtcclxuICAgIEBtaXhpbiBtaXhpbi1zcHJpdGUtaWNvbi1jb25maWcgc3ByaXRlLWxhbmQtYXJlYSwgdmFyKC0tbGFuZC1hcmVhLWljb24tc2l6ZSksIHZhcigtLWxhbmQtYXJlYS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcbiAgfVxyXG5cclxuICAmLi1sYW5kLWFyZWEge1xyXG4gICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tbGFuZC1hcmVhLWljb24tc2l6ZSksIHZhcigtLWxhbmQtYXJlYS1pY29uLWJ1ZmZlciksIHZhcigtLXZpZXctd2lkdGgtbWVkLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tbGFyZ2Uge1xyXG4gICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLWxhbmQtYXJlYS1pY29uLXNpemUpLCB2YXIoLS1sYW5kLWFyZWEtaWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tbGFuZC1hcmVhLWljb24tc2l6ZSksIGNhbGModmFyKC0tbGFuZC1hcmVhLWljb24tYnVmZmVyKSAqIHZhcigtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyKSksIHZhcigtLWxhcmdlLXZpZXctd2lkdGgtc21sLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iYXRocm9vbXMge1xyXG4gICAgQG1peGluIG1peGluLXNwcml0ZS1pY29uLWNvbmZpZyBzcHJpdGUtYmF0aHJvb21zLCB2YXIoLS1iYXRocm9vbS1pY29uLXNpemUpLCB2YXIoLS1iYXRocm9vbS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcblxyXG4gICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tYmF0aHJvb20taWNvbi1zaXplKSwgdmFyKC0tYmF0aHJvb20taWNvbi1idWZmZXIpLCB2YXIoLS12aWV3LXdpZHRoLW1lZC1tdWx0aXBsaWVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWxhcmdlIHtcclxuICAgICAgQG1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciB2YXIoLS1iYXRocm9vbS1pY29uLXNpemUpLCB2YXIoLS1iYXRocm9vbS1pY29uLWJ1ZmZlciksIHZhcigtLWxhcmdlLW11bHRpcGxpZXIpO1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgQG1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciB2YXIoLS1iYXRocm9vbS1pY29uLXNpemUpLCBjYWxjKHZhcigtLWJhdGhyb29tLWljb24tYnVmZmVyKSAqIHZhcigtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyKSksIHZhcigtLWxhcmdlLXZpZXctd2lkdGgtc21sLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iZWRyb29tcyB7XHJcbiAgICBAbWl4aW4gbWl4aW4tc3ByaXRlLWljb24tY29uZmlnIHNwcml0ZS1iZWRyb29tcywgdmFyKC0tYmVkcm9vbS1pY29uLXNpemUpLCB2YXIoLS1iZWRyb29tLWljb24tYnVmZmVyKSwgbGVmdDtcclxuXHJcbiAgICAucHJvcGVydHktY2FyZC4tZnVsbC13aWR0aCAmIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgQG1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciB2YXIoLS1iZWRyb29tLWljb24tc2l6ZSksIHZhcigtLWJlZHJvb20taWNvbi1idWZmZXIpLCB2YXIoLS12aWV3LXdpZHRoLW1lZC1tdWx0aXBsaWVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWxhcmdlIHtcclxuICAgICAgQG1peGluIHByb3BlcnR5LWF0dHJpYnV0ZS1tb2RpZmllciB2YXIoLS1iZWRyb29tLWljb24tc2l6ZSksIHZhcigtLWJlZHJvb20taWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tYmVkcm9vbS1pY29uLXNpemUpLCBjYWxjKHZhcigtLWJlZHJvb20taWNvbi1idWZmZXIpICogdmFyKC0tbGFyZ2UtYnVmZmVyLW11bGl0cGxpZXIpKSwgdmFyKC0tbGFyZ2Utdmlldy13aWR0aC1zbWwtbXVsdGlwbGllcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXJlY2VwdGlvbnMge1xyXG4gICAgQG1peGluIG1peGluLXNwcml0ZS1pY29uLWNvbmZpZyBzcHJpdGUtcmVjZXB0aW9ucywgdmFyKC0tcmVjZXB0aW9uLWljb24tc2l6ZSksIHZhcigtLXJlY2VwdGlvbi1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcblxyXG4gICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcmVjZXB0aW9uLWljb24tc2l6ZSksIHZhcigtLXJlY2VwdGlvbi1pY29uLWJ1ZmZlciksIHZhcigtLXZpZXctd2lkdGgtbWVkLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tbGFyZ2Uge1xyXG4gICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXJlY2VwdGlvbi1pY29uLXNpemUpLCB2YXIoLS1yZWNlcHRpb24taWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcmVjZXB0aW9uLWljb24tc2l6ZSksIGNhbGModmFyKC0tcmVjZXB0aW9uLWljb24tYnVmZmVyKSAqIHZhcigtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyKSksIHZhcigtLWxhcmdlLXZpZXctd2lkdGgtc21sLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ncmFkZSB7XHJcbiAgICBAbWl4aW4gbWl4aW4tc3ByaXRlLWljb24tY29uZmlnIHNwcml0ZS1ncmFkZSwgdmFyKC0tZ3JhZGUtaWNvbi1zaXplKSwgdmFyKC0tZ3JhZGUtaWNvbi1idWZmZXIpLCBsZWZ0O1xyXG5cclxuICAgIC5wcm9wZXJ0eS1jYXJkLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLWdyYWRlLWljb24tc2l6ZSksIHZhcigtLWdyYWRlLWljb24tYnVmZmVyKSwgdmFyKC0tdmlldy13aWR0aC1tZWQtbXVsdGlwbGllcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1sYXJnZSB7XHJcbiAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tZ3JhZGUtaWNvbi1zaXplKSwgdmFyKC0tZ3JhZGUtaWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tZ3JhZGUtaWNvbi1zaXplKSwgY2FsYyh2YXIoLS1ncmFkZS1pY29uLWJ1ZmZlcikgKiB2YXIoLS1sYXJnZS1idWZmZXItbXVsaXRwbGllcikpLCB2YXIoLS1sYXJnZS12aWV3LXdpZHRoLXNtbC1tdWx0aXBsaWVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcGVvcGxlIHtcclxuICAgIEBtaXhpbiBtaXhpbi1zcHJpdGUtaWNvbi1jb25maWcgc3ByaXRlLW5vLW9mLXBlb3BsZSwgdmFyKC0tcGVvcGxlLWljb24tc2l6ZSksIHZhcigtLXBlb3BsZS1pY29uLWJ1ZmZlciksIGxlZnQ7XHJcblxyXG4gICAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcGVvcGxlLWljb24tc2l6ZSksIHZhcigtLXBlb3BsZS1pY29uLWJ1ZmZlciksIHZhcigtLXZpZXctd2lkdGgtbWVkLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tbGFyZ2Uge1xyXG4gICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXBlb3BsZS1pY29uLXNpemUpLCB2YXIoLS1wZW9wbGUtaWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0tcGVvcGxlLWljb24tc2l6ZSksIGNhbGModmFyKC0tcGVvcGxlLWljb24tYnVmZmVyKSAqIHZhcigtLWxhcmdlLWJ1ZmZlci1tdWxpdHBsaWVyKSksIHZhcigtLWxhcmdlLXZpZXctd2lkdGgtc21sLW11bHRpcGxpZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi15aWVsZCB7XHJcbiAgICBAbWl4aW4gbWl4aW4tc3ByaXRlLWljb24tY29uZmlnIHNwcml0ZS15aWVsZCwgdmFyKC0teWllbGQtaWNvbi1zaXplKSwgdmFyKC0teWllbGQtaWNvbi1idWZmZXIpLCBsZWZ0O1xyXG5cclxuICAgIC5wcm9wZXJ0eS1jYXJkLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBAbWl4aW4gcHJvcGVydHktYXR0cmlidXRlLW1vZGlmaWVyIHZhcigtLXlpZWxkLWljb24tc2l6ZSksIHZhcigtLXlpZWxkLWljb24tYnVmZmVyKSwgdmFyKC0tdmlldy13aWR0aC1tZWQtbXVsdGlwbGllcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1sYXJnZSB7XHJcbiAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0teWllbGQtaWNvbi1zaXplKSwgdmFyKC0teWllbGQtaWNvbi1idWZmZXIpLCB2YXIoLS1sYXJnZS1tdWx0aXBsaWVyKTtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIEBtaXhpbiBwcm9wZXJ0eS1hdHRyaWJ1dGUtbW9kaWZpZXIgdmFyKC0teWllbGQtaWNvbi1zaXplKSwgY2FsYyh2YXIoLS15aWVsZC1pY29uLWJ1ZmZlcikgKiB2YXIoLS1sYXJnZS1idWZmZXItbXVsaXRwbGllcikpLCB2YXIoLS1sYXJnZS12aWV3LXdpZHRoLXNtbC1tdWx0aXBsaWVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogQ29sb3IgbW9kaWZpZXJzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICYuLXllbGxvdzo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XHJcbiAgfVxyXG5cclxuICAmLi1yZWQ6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcclxuICB9XHJcblxyXG4gICYuLWJsdWU6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcclxuICB9XHJcblxyXG4gICYuLWdyZWVuOjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBQcm9wZXJ0eSBwcmljZVxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiBQcmljZSBXcmFwXHJcbiAgKiBQcmljZSBHdWlkZVxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucHJvcGVydHktcHJpY2Uge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogV3JhcCBlbGVtZW50XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fd3JhcCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAuLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtcmVudCAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xyXG5cclxuICAgICAgICAvKiBUaGUgbGluZS1oZWlnaHRzIHNldCBpbiB0aGlzIG1lZGlhIHF1ZXJ5IG5lZWQgdG8gYmUgZGlmZmVyZW50IGZvciBJRTExXHJcbiAgICAgICAgYW5kIGN1cnJlbnQgdXNlIG9mIHN1cHBvcnRzIHN0aWNreSBpcyBhIGhhY2sgdG8gb3ZlcndyaXRlIHRoZSBJRTExIGRlZmF1bHRzICovXHJcbiAgICAgICAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tc2hvdy1vcmlnaW5hbCAmIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLi1zaG93LXNpemUuLXNob3ctZ3VpZGUgJiB7XHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLi1zaG93LW9yaWdpbmFsICYge1xyXG4gICAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICAgICYgKyBzcGFuIHtcclxuICAgICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJiArIHNwYW4ge1xyXG4gICAgICAuLXR5cGUtcmVzaWRlbnRpYWwgJixcclxuICAgICAgLi10eXBlLW5ldy1kZXZlbG9wbWVudCAmIHtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuLXR5cGUtcmVzaWRlbnRpYWwucHJvcGVydHktY2FyZCAmLFxyXG4gICAgICAuLXR5cGUtbmV3LWRldmVsb3BtZW50LnByb3BlcnR5LWNhcmQgJiB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogV3JhcC1vdGhlciBlbGVtZW50XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fd3JhcC1vdGhlciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogVmFsdWUgKyBPcmlnaW5hbCBlbGVtZW50c1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICZfX3ZhbHVlLFxyXG4gICZfX29yaWdpbmFsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG5cclxuICAgIC4tc2hvdy1wcmljZSAmIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC4tdHlwZS1yZXNpZGVudGlhbCAmLFxyXG4gICAgLi10eXBlLW5ldy1kZXZlbG9wbWVudCAmIHtcclxuICAgICAgQGV4dGVuZCAuZXh0ZW5kZXItZWxsaXBzaXM7XHJcbiAgICB9XHJcblxyXG4gICAgLyogUmVzZXQgYWJvdmUgaWYgd2l0aGluIHByb3BlcnR5LWludHJvICovXHJcbiAgICAucHJvcGVydHktaW50cm8uLXR5cGUtcmVzaWRlbnRpYWwgJixcclxuICAgIC5wcm9wZXJ0eS1pbnRyby4tdHlwZS1uZXctZGV2ZWxvcG1lbnQgJiB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC4tdHlwZS1jb21tZXJjaWFsICYsXHJcbiAgICAuLXR5cGUtZmFybSAmIHtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLi10eXBlLWZhcm0gJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICB9XHJcblxyXG4gICAgLi10eXBlLWNvbW1lcmNpYWwgJiB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB9XHJcblxyXG4gICAgLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAgIH1cclxuXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtY29tbWVyY2lhbCAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWZhcm0gJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1mYXJtICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWNvbW1lcmNpYWwgJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtY29tbWVyY2lhbCAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWZhcm0gJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tc2hvdy1vcmlnaW5hbCAmIHtcclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICAuLWZ1bGwtd2lkdGguLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLWJ1eSAmIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgLi1mdWxsLXdpZHRoLi10eXBlLW5ldy1kZXZlbG9wbWVudC4tc2VhcmNoLXR5cGUtYnV5ICYge1xyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogVmFsdWUgZWxlbWVudFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICZfX3ZhbHVlIHtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIC4tZGFyay4tc2hvdy1zaXplLi1zaG93LXByaWNlLi1zaG93LXJlbnQtdW5pdCAmIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC4tc2hvdy1zaXplICYge1xyXG4gICAgICAucHJvcGVydHktaW50cm8uLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLi1zaG93LW9yaWdpbmFsICYge1xyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIC4tZnVsbC13aWR0aC4tdHlwZS1mYXJtLi1zZWFyY2gtdHlwZS1idXkgJiB7XHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICAuLWZ1bGwtd2lkdGguLXR5cGUtbmV3LWRldmVsb3BtZW50Li1zZWFyY2gtdHlwZS1yZW50ICYge1xyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICAuLWZ1bGwtd2lkdGguLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLWJ1eSAmIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuLWZ1bGwtd2lkdGguLXR5cGUtbmV3LWRldmVsb3BtZW50IHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIE9yaWdpbmFsIHZhbHVlIGVsZW1lbnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmX19vcmlnaW5hbCB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTYpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcblxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWNvbW1lcmNpYWwuLXNlYXJjaC10eXBlLWJ1eSAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWNvbW1lcmNpYWwuLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1uZXctZGV2ZWxvcG1lbnQgJixcclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtYnV5ICYsXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1uZXctZGV2ZWxvcG1lbnQgJixcclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtYnV5ICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFNpemUgZWxlbWVudFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICZfX3NpemUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xMjU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luOiBpbml0aWFsO1xyXG5cclxuICAgIC8qIExheW91dC9EaXNwbGF5IG1vZGlmaWVycyAqL1xyXG5cclxuICAgIC4tc2hvdy1zaXplICYge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuLWZ1bGwtd2lkdGggJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb3BlcnR5LWludHJvLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb3BlcnR5LWludHJvICYge1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogT3RoZXIgZmVlcyBlbGVtZW50XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fb3RoZXItZmVlcyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3cpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgY29udGVudDogJ1xcMDAyQic7XHJcbiAgICAgIGxlZnQ6IC0xMXB4O1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgLnByb3BlcnR5LWludHJvICYge1xyXG4gICAgICAgICAgbGVmdDogLTEzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFJlbnQgYmFzaXMgZWxlbWVudFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICZfX3JlbnQtYmFzaXMge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG5cclxuICAgIC4tc2hvdy1yZW50LWJhc2lzICYge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgLi1kYXJrLi1zaG93LXNpemUuLXNob3ctcHJpY2UuLXNob3ctcmVudC11bml0ICYge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNlY29uZGFyeS0yMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb3BlcnR5LWludHJvICYge1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogT3RoZXIgZmVlcyBlbGVtZW50XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fcmVudC11bml0IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgLi1zaG93LXJlbnQtdW5pdCAmIHtcclxuICAgICAgZGlzcGxheTogaW5pdGlhbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFByaWNlIGd1aWRlIGVsZW1lbnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmX19ndWlkZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyLjI7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLyogVE9ETzogRG8gSSBuZWVkIHRoaXM/ICovXHJcblxyXG4gICAgLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBTaGFkZSAvIENvbG9yIG1vZGlmaWVycyAqL1xyXG5cclxuICAgIC4tZGFyayAmIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5cclxuICAgIC4tZGFyazpub3QoLi1zaG93LXByaWNlKS4tc2hvdy1zaXplLi1zaG93LXJlbnQtYmFzaXMgJixcclxuICAgIC4tZGFyazpub3QoLi1zaG93LXByaWNlKTpub3QoLi1zaG93LXNpemUpICYsXHJcbiAgICAuLWRhcmsuLXNob3ctcHJpY2UuLXNob3ctc2l6ZTpub3QoLi1zaG93LXJlbnQtYmFzaXMpICYge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgLi1zaG93LXNpemU6bm90KC4tZGFyaykgJiB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb3BlcnR5LXByaWNlOm5vdCguLXNob3ctcHJpY2UpOm5vdCguLXNob3ctc2l6ZSk6bm90KC4tZGFyaykgJiB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBDb250ZW50IC8gTGF5b3V0IG1vZGlmaWVycyAqL1xyXG5cclxuICAgIC5wcm9wZXJ0eS1wcmljZTpub3QoLi1zaG93LXByaWNlKTpub3QoLi1zaG93LXNpemUpICYge1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gICAgLi1zaG93LXNpemUgJiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS41O1xyXG5cclxuICAgICAgLi10eXBlLWNvbW1lcmNpYWwgJiB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLi1mdWxsLXdpZHRoOm5vdCguLXR5cGUtY29tbWVyY2lhbCkgJiB7XHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuLXNob3ctc2l6ZTpub3QoLi1zaG93LXByaWNlKSAmIHtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgfVxyXG5cclxuICAgIC4tc2hvdy1zaXplICYge1xyXG4gICAgICAucHJvcGVydHktaW50cm8gJiB7XHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb3BlcnR5LXByaWNlOm5vdCguLXNob3ctcHJpY2UpOm5vdCguLXNob3ctc2l6ZSkgJiB7XHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgLi1mdWxsLXdpZHRoICYge1xyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIC5wcm9wZXJ0eS1pbnRybyAmIHtcclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzhweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIFRPRE86IFJldmlldyAtIGN1cnJlbnRseSB1c2VkIHRvIG92ZXJ3cml0ZSB0aGUgYWJvdmUgLi1mdWxsLXdpZHRoICovXHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBRdW90ZXNcclxuXHJcbiAgKiBEZWZhdWx0IHF1b3RlIGJsb2NrXHJcbiAgKiBBbGlnbm1lbnQgbW9kaWZpZXJcclxuICAqIElubGluZSBtb2RpZmllcnNcclxuICAqIExhbmd1YWdlIHNwZWNpZmljIHF1b3RhdGlvbiBtYXJrc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucXVvdGUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgcGFkZGluZzogNXB4IDI1cHg7XHJcbiAgbWFyZ2luOiA1MHB4IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgLyogU2lkZSBib3JkZXIgKi9cclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICB9XHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIC8qIFF1b3RhdGlvbiBtYXJrIGJhc2Ugc3R5bGluZyAqL1xyXG4gICAgY29udGVudDogJ1xcMjAxQyc7IC8qIEVuZ2xpc2ggZG91YmxlIG9wZW4gcXVvdGUgaGlnaCAqL1xyXG4gICAgbGluZS1oZWlnaHQ6IC44ODtcclxuICAgIGhlaWdodDogNzVweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTMwcHg7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG4gICAgb3BhY2l0eTogLjU5O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsgLyogY29tcGVuc2F0ZSBmb3IgZm9udCBrZXJuaW5nICovXHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAyNTBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICB9XHJcbn1cclxuXHJcbi5xdW90ZV9fdGV4dCB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0LWJvbGQpO1xyXG4gIGZvbnQtc2l6ZTogMjRweDtcclxuICBsaW5lLWhlaWdodDogMS40MTtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4ucXVvdGVfX2NpdGF0aW9uIHtcclxuICBsaW5lLWhlaWdodDogMS4zNztcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNCk7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxO1xyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJy0gJztcclxuICB9XHJcbn1cclxuXHJcbi8qIEFsaWdubWVudCBtb2RpZmllclxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5xdW90ZS4tcmlnaHQtYWxpZ24ge1xyXG4gIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAucXVvdGVfX2NpdGF0aW9uIHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIC8qIFNpZGUgYm9yZGVyICovXHJcbiAgICBsZWZ0OiBpbmhlcml0O1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICAvKiBRdW90YXRpb24gbWFyayAqL1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIElubGluZSBtb2RpZmllcnNcclxuVE9ETzogSWYgaXQgdHVybnMgb3V0IHRoZSBpZGVhbCBpbmxpbmUgcmljaCB0ZXh0IGVkaXRvciBzb2x1dGlvblxyXG5pcyBub3QgcG9zc2libGUgd2l0aGluIHRoZSBWdXR1cmUgQ01TLCByZW1vdmUgdGhpcyBtb2RpZmllci5cclxuSW4gdGhpcyBzY2VuYXJpbywgdGhlIHF1b3RlIHdvdWxkIGluc3RlYWQgYmUgY29udGFpbmVkIHdpdGhpbiB0aGUgY29sdW1uIHN5c3RlbS5cclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAucXVvdGUuLWlubGluZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1heC13aWR0aDogdmFyKC0tc3YtbWluLXdpZHRoKTtcclxuICB9XHJcblxyXG4gIC5xdW90ZS4taW5saW5lLi1yaWdodC1hbGlnbiB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIExhbmd1YWdlIHNwZWNpZmljIHF1b3RhdGlvbiBtYXJrc1xyXG4tIE1vcmUgY29uc2lkZXJhdGlvbnMgcmVxdWlyZWQ/Pz9cclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG46bGFuZyh6aC1IYW50KSAucXVvdGU6OmFmdGVyIHtcclxuICBjb250ZW50OiAnXFwzMDBFJzsgLyogVHJhZGl0aW9uYWwgQ2hpbmVzZSBkb3VibGUgb3BlbiBxdW90ZSBoaWdoICovXHJcbiAgbGluZS1oZWlnaHQ6IDEuMDE7XHJcbiAgaGVpZ2h0OiAxNTVweDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNTBweCwgMCwgMCk7XHJcbn1cclxuXHJcbjpsYW5nKGRlKSAucXVvdGU6OmFmdGVyIHtcclxuICBjb250ZW50OiAnXFwyMDFFJzsgLyogR2VybWFuIGRvdWJsZSBvcGVuIHF1b3RlIGxvdyAqL1xyXG4gIGxpbmUtaGVpZ2h0OiAuMTtcclxuICB0b3A6IGF1dG87XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgYm90dG9tOiAtMzBweDtcclxuICBoZWlnaHQ6IDEzMHB4O1xyXG59XHJcblxyXG46bGFuZyhmciksXHJcbjpsYW5nKGVzKSB7XHJcbiAgJi5xdW90ZTo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJ1xcQUInOyAvKiBGcmVuY2ggZG91YmxlIG9wZW4gcXVvdGUgaGlnaCAqL1xyXG4gICAgbGluZS1oZWlnaHQ6IC4zMztcclxuICAgIGhlaWdodDogMTE1cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgUmVzdWx0cyBpbmRpY2F0b3JcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPCBzbWwgdmlld3BvcnRcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucmVzdWx0cy1pbmRpY2F0b3Ige1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTYpO1xyXG5cclxuICBwIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gICYuLXJpZ2h0IHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgJi4tYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogMXB4IDA7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA8IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gIC5yZXN1bHRzLWluZGljYXRvciB7XHJcbiAgICAmLi1ib3JkZXJlZCxcclxuICAgICYuLXJpZ2h0IHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAucmVzdWx0cy1pbmRpY2F0b3Ige1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFNwYWNlclxyXG4gIC0gR2VuZXJpYyBob3Jpem9udGFsIHNwYWNpbmcgY2xhc3Mgd2l0aCBtb2RpZmllcnMgZm9yIGJyZWFrcG9pbnQgc3BlY2lmaWMgc2l6aW5nXHJcblxyXG4gICogQmFzZVxyXG4gICogQnJlYWtwb2ludCBzcGVmaWMgc3BhY2UgbW9kaWZpZXJzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnNwYWNlciB7XHJcbiAgLyogRGVmYXVsdHMgZm9yIGJvdHRvbSBzcGFjaW5nIHdpdGhvdXQgYnJlYWtwb2ludHMgb3Igc2l6ZSAqL1xyXG4gICY6bm90KC4tcmV2ZXJzZSk6bm90KC4tbm8tc3BhY2VyKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdi1zcGFjZSB7XHJcbiAgICAvKiBEZWZhdWx0cyBmb3IgdmVydGljYWwgc3BhY2luZyB3aXRob3V0IGJyZWFrcG9pbnRzIG9yIHNpemUgKi9cclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXJldmVyc2Uge1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICB9XHJcblxyXG4gICYuLW5vLXNwYWNlciB7XHJcbiAgICAmOm5vdCguLXJldmVyc2UpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXJldmVyc2Uge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBCcmVha3BvaW50IHNwZWNpZmljIHNwYWNlIHNpemUgbW9kaWZpZXJzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gKHhzbWwsIHNtbCwgbWVkLCBscmcpIHtcclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC0kKGJyZWFrcG9pbnQpKSB7XHJcbiAgICBAZWFjaCAkc2l6ZSBpbiAoeHNtbCwgeHNtbC1taWQsIHNtbCwgc21sLW1pZCwgbWVkLCBtZWQtbWlkLCBscmcsIGxyZy1taWQsIHhscmcsIHhscmctbWlkLCB4eGxyZykge1xyXG4gICAgICAuc3BhY2VyLi0kKGJyZWFrcG9pbnQpLXYtc3BhY2UtJChzaXplKSB7XHJcbiAgICAgICAgLyogaW4gIHRoZSBjYXNlIG9mIHZlcnRpY2FsIHNwYWNpbmcgd2UgdXNlIHBhZGRpbmcgdG8gYWxsb3cgZm9yIG1hcmdpbiBhdXRvIGNlYnRlcmVkIGNvbnRhaW5lcnMgKi9cclxuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci0kKHNpemUpKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNwYWNlci4tJChicmVha3BvaW50KS1zcGFjZS0kKHNpemUpIHtcclxuICAgICAgICAmOm5vdCguLW5vLXNwYWNlcikge1xyXG4gICAgICAgICAgJjpub3QoLi1yZXZlcnNlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci0kKHNpemUpKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLi1yZXZlcnNlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLSQoc2l6ZSkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFNlY3Rpb24gQmFja2dyb3VuZHNcclxuICAtIEFsbG93cyBiYWNrZ3JvdW5kIGNvbG91ciBzdHlsaW5nIGZvciB0ZW1wbGF0ZXNcclxuXHJcbiAgKiBCYWNrZ3JvdW5kIGZpbGxzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnNlY3Rpb24tYmcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xMCk7XHJcblxyXG4gICYuLXdyYXAge1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgfVxyXG5cclxuICAmLi1wcmltYXJ5LTEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgfVxyXG5cclxuICAmLi1wYWRkZWQge1xyXG4gICAgcGFkZGluZzogMzBweCAwO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBwYWRkaW5nOiA2MHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1wYWRkZWQtdG9wIHtcclxuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWhlYWRlciB7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgVGFnc1xyXG5cclxuICAqIERlZmF1bHQgdGFnXHJcbiAgKiBTaXplIG1vZGlmaWVyc1xyXG4gICogVGhlbWUgbW9kaWZpZXJzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi50YWcge1xyXG4gIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBtYXJnaW46IDAgNXB4IDVweCAwO1xyXG4gIHBhZGRpbmc6IDZweCAxMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAmX19jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIG1hcmdpbjogLTZweCAtMTBweCAtNnB4IDEwcHg7XHJcbiAgICBwYWRkaW5nOiA0cHggMDtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cclxuICAgIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBjbG9zZSwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDE0cHgsIDAsIGNlbnRlcjtcclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xyXG4gIH1cclxufVxyXG5cclxuLyogU2l6ZSBtb2RpZmllcnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi50YWcuLXNtbCB7XHJcbiAgZm9udC1zaXplOiAxMHB4O1xyXG5cclxuICAudGFnX19jbG9zZSB7XHJcbiAgICBoZWlnaHQ6IDIzcHg7XHJcbiAgICBwYWRkaW5nOiA0cHggMDtcclxuICAgIHdpZHRoOiAyM3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnRhZy4tbHJnIHtcclxuICBmb250LXNpemU6IDEycHg7XHJcblxyXG4gIC50YWdfX2Nsb3NlIHtcclxuICAgIGhlaWdodDogMjVweDtcclxuICAgIHBhZGRpbmc6IDZweCAwO1xyXG4gICAgd2lkdGg6IDI1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBUaGVtZSBtb2RpZmllcnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi50YWcuLWxpZ2h0IHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udCk7XHJcbn1cclxuXHJcbi50YWcuLW92ZXJsYXkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjI1KTtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxufVxyXG5cclxuLnRhZy4tc3VidGxlIHtcclxuICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNSk7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNSk7XHJcbn1cclxuXHJcbi50YWcuLXN0YW5kb3V0IHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cclxuICAudGFnX19jbG9zZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcclxuICB9XHJcbn1cclxuXHJcbi50YWcuLWxpZ2h0LFxyXG4udGFnLi1vdmVybGF5LFxyXG4udGFnLi1zdGFuZG91dCB7XHJcbiAgLnRhZ19fY2xvc2Uge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1zdi1jb2wtc2hhZG93KSwgLjEpO1xyXG5cclxuICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBjbG9zZSwgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpLCAxNHB4LCAwLCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4udGFnLi1saWdodCxcclxuLnRhZy4tc3RhbmRvdXQge1xyXG4gIC50YWdfX2Nsb3NlIHtcclxuICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBjbG9zZSwgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpLCAxNHB4LCAwLCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4udGFnLi1zdWJ0bGUge1xyXG4gIC50YWdfX2Nsb3NlIHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGNsb3NlLCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTUpLCAxNHB4LCAwLCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4udGFnLi1vdmVybGF5IHtcclxuICAudGFnX19jbG9zZSB7XHJcbiAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgY2xvc2UsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpLCAxNHB4LCAwLCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgVHlwb2dyYXBoeVxyXG5cclxuICAqIEdlbmVyaWNcclxuICAqIFN0YW5kYXJkIHRleHQgbGlua1xyXG4gICogQ29tbW9uIGJhc2UgdGV4dCBzdHlsZXNcclxuICAqIENvbW1vbiB0ZXh0IHN0eWxlcyB3aXRoIGxheW91dFxyXG4gICogQ29sb3VyIGhlbHBlcnNcclxuICAqIExpc3RzXHJcbiAgKiBSaWNoIHRleHQgZWRpdG9yIG91dHB1dFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEdlbmVyaWNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbnN1Yixcclxuc3VwIHtcclxuICBmb250LXNpemU6IDc1JTtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4ucGFuZWwtaGVhZGluZyB7XHJcbiAgZm9udC1zaXplOiAzMHB4O1xyXG59XHJcblxyXG4uc2VjdGlvbi1oZWFkZXJfX3RpdGxlIHtcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gIGZvbnQtc2l6ZTogMjhweDtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5zZWN0aW9uLWhlYWRlcl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogU3RhbmRhcmQgdGV4dCBsaW5rXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ubGluayB7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250KTtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYm90dG9tOiAtMXB4O1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gIH1cclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWZvbnQpO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLXMpIGVhc2Utb3V0O1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogQm9sZCBsaW5rcyB3aXRoIGNhcmV0IGFycm93XHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jdGEtbGluayA+IGEsXHJcbi5jdGEtbGluayA+IHNwYW4ge1xyXG4gIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuXHJcbiAgQG1peGluIG1peGluLWljb24tY29uZmlnIGNhcmV0LXJpZ2h0LCB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KSwgMTVweCwgNXB4O1xyXG5cclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTNweDtcclxuICB9XHJcbn1cclxuXHJcbi5jdGEtbGluay4tYWx0ID4gYSxcclxuLmN0YS1saW5rLi1hbHQgPiBzcGFuIHtcclxuICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgY2FyZXQtcmlnaHQsIHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAxNXB4LCAxNXB4O1xyXG5cclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbn1cclxuXHJcbi8qIENvbW1vbiBiYXNlIHRleHQgc3R5bGVzXHJcbihleGNsdWRlcyBsYXlvdXQgcHJvcGVydGllcylcclxuXHJcblVzZWZ1bCB3aGVyZSBwdXJlIGZvbnQgc3R5bGVzIHJlcXVpcmVkLlxyXG5Nb3N0IGFwcHJvcHJpYXRlIGZvciBleHRlbmRpbmcgd2l0aGluIG1haW4gbW9kdWxlIENTUyxcclxucmF0aGVyIHRoYW4gYXBwbHlpbmcgZGlyZWN0bHkgdG8gSFRNTCBlbGVtZW50c1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnRleHQtZmVhdHVyZS1oZWFkaW5nLFxyXG4udGV4dC1sZWFkaW5nLWludHJvLFxyXG4udGV4dC1jb3B5LWhlYWRpbmcsXHJcbi50ZXh0LWNvcHksXHJcbi50ZXh0LXNtYWxscHJpbnQge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG5cclxuICAvKiBtYWtlIHN1cmUgYWxsIGNvbW1vbiB0ZXh0IHN0eWxlcyBkaXNwbGF5IGxpbmtzIGFwcHJvcHJpYXRlbHkgKi9cclxuICBhIHtcclxuICAgIEBleHRlbmQgLmxpbms7XHJcbiAgfVxyXG5cclxuICBzdHJvbmcge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgfVxyXG5cclxuICBlbSB7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgfVxyXG59XHJcblxyXG4udGV4dC1mZWF0dXJlLWhlYWRpbmcge1xyXG4gIGZvbnQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdC1ib2xkKSA2MHB4LzEuMjYgdmFyKC0tc3YtZm9udC1zdGFjay1hbHQtYm9sZCk7XHJcbn1cclxuXHJcbi50ZXh0LWxlYWRpbmctaW50cm8ge1xyXG4gIGZvbnQtc2l6ZTogMzBweDtcclxuICBsaW5lLWhlaWdodDogMS4zMztcclxuXHJcbiAgJi4tc21sIHtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LWNvcHkge1xyXG4gIGZvbnQtc2l6ZTogMTRweDsgLyogZXhwbGljaXRseSBzZXQgc2l6ZSwgaW4gY2FzZSB0aGlzIGlzIGFwcGxpZWQgdG8gZWxlbWVudCB0aGF0IG5lZWRzIG92ZXJyaWRlICovXHJcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC01KTtcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LWNvcHktaGVhZGluZyB7XHJcbiAgZm9udC1zaXplOiAxNnB4OyAvKiBleHBsaWNpdGx5IHNldCBzaXplLCBpbiBjYXNlIHRoaXMgaXMgYXBwbGllZCB0byBlbGVtZW50IHRoYXQgbmVlZHMgb3ZlcnJpZGUgKi9cclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBsaW5lLWhlaWdodDogMS4yNTtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLnRleHQtc21hbGxwcmludCB7XHJcbiAgZm9udC1zaXplOiAxMXB4O1xyXG59XHJcblxyXG4udGV4dC1zZWN0aW9uLWhlYWRpbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXhzbWwpIHtcclxuICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxuXHJcbiAgJi4tbHJnIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LXNlY3Rpb24taW50cm8ge1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCk7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIENvbW1vbiB0ZXh0IGFsaWdubWVudFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLnRleHQtY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50ZXh0LWxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi50ZXh0LXJpZ2h0IHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLyogQ29tbW9uIHRleHQgc3R5bGVzIHdpdGggbGF5b3V0XHJcbihpbmNsdWRlcyBsYXlvdXQgcHJvcGVydGllcylcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZmVhdHVyZS1oZWFkaW5nLFxyXG4ubGVhZGluZy1pbnRybyxcclxuLmNvcHktaGVhZGluZyxcclxuLmNvcHksXHJcbi5zbWFsbHByaW50IHtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxufVxyXG5cclxuLmZlYXR1cmUtaGVhZGluZyB7XHJcbiAgQGV4dGVuZCAudGV4dC1mZWF0dXJlLWhlYWRpbmc7XHJcblxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ubGVhZGluZy1pbnRybyB7XHJcbiAgQGV4dGVuZCAudGV4dC1sZWFkaW5nLWludHJvO1xyXG5cclxuICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICBtYXJnaW4tdG9wOiA4MnB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNvcHkge1xyXG4gIEBleHRlbmQgLnRleHQtY29weTsgLyogbWFrZXMgc3VyZSBhbGwgY2hpbGQgc2VsZWN0b3JzIHVuZGVyIHRleHQtY29weSBhcmUgaW5jbHVkZWQsIHN1Y2ggYXMgbGlua3MgKi9cclxufVxyXG5cclxuLmNvcHktaGVhZGluZyB7XHJcbiAgQGV4dGVuZCAudGV4dC1jb3B5LWhlYWRpbmc7XHJcblxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uc21hbGxwcmludCB7XHJcbiAgQGV4dGVuZCAudGV4dC1zbWFsbHByaW50O1xyXG59XHJcblxyXG4vKiBMaXN0c1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5saXN0IHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gIGxpIHtcclxuICAgIEBleHRlbmQgLnRleHQtY29weTsgLyogbWFrZXMgc3VyZSBhbGwgY2hpbGQgc2VsZWN0b3JzIHVuZGVyIHRleHQtY29weSBhcmUgaW5jbHVkZWQsIHN1Y2ggYXMgbGlua3MgKi9cclxuXHJcbiAgICBwYWRkaW5nOiAwIDAgMCAxNnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBzcGVhazogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi4tYnVsbGV0cyB7XHJcbiAgbGkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogOXB4O1xyXG4gICAgICB3aWR0aDogNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbHJnIHtcclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3YtZ3V0dGVyLXhzbWwpO1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgICBoZWlnaHQ6IDZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi4tbnVtYmVycyB7XHJcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcclxuXHJcbiAgbGkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC02KTtcclxuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHNlY3Rpb247XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgJycpICcuJztcclxuICAgICAgZm9udDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KSAzMHB4LzEgdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMzBweDtcclxuICAgICAgdG9wOiAzcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBDb2xvdXIgaGVscGVyc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5oaWdobGlnaHQge1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxufVxyXG5cclxuLyogUmljaCB0ZXh0IGVkaXRvciBvdXRwdXRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKlxyXG4gIDpub3QoW2NsYXNzXSkgYWxsb3dzIHN0eWxlZCBlbGVtZW50cyB0byByZXRhaW4gdGhlaXIgaW50ZW5kZWQgc3R5bGluZ1xyXG4qL1xyXG4udnhfdGV4dDpub3QoLnN1Yi1uYXZfX2xpbmstdHJlZSkge1xyXG4gID4gaDEsXHJcbiAgPiBoMixcclxuICA+IGgzLFxyXG4gID4gaDQsXHJcbiAgPiBoNSxcclxuICA+IGg2IHtcclxuICAgICY6bm90KFtjbGFzc10pIHtcclxuICAgICAgQGV4dGVuZCAuY29weS1oZWFkaW5nO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiB1bCB7XHJcbiAgICBAZXh0ZW5kIC5saXN0O1xyXG4gICAgQGV4dGVuZCAuLWJ1bGxldHM7XHJcbiAgfVxyXG5cclxuICA+IG9sIHtcclxuICAgIEBleHRlbmQgLmxpc3Q7XHJcbiAgICBAZXh0ZW5kIC4tbnVtYmVycztcclxuICB9XHJcblxyXG4gID4gLmltYWdlLXRyZWF0bWVudCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcbn1cclxuIiwiLnZpZGVvIHtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgJl9fY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cclxuICB9XHJcblxyXG4gICZfX2NvcHkge1xyXG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyKSAwIDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gIH1cclxuXHJcbiAgaWZyYW1lIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxufVxyXG4iLCIuYWRkcmVzcy1maW5kZXIge1xyXG4gICZfX21hbnVhbC1lbnRyeSxcclxuICAmX19hZGRyZXNzLWxpc3Qge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcbiAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmcpIDAgMDtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fbWFudWFsLWVudHJ5IHtcclxuICAgIC5jdXN0b20taW5wdXQ6bGFzdC1vZi10eXBlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3Bvc3Rjb2RlLWNvbnRhaW5lciB7XHJcbiAgICAuZm9ybS1lcnJvciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtLWFjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC5idXR0b24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLmFkZHJlc3MtZmluZGVyIHtcclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiA0MXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYnJlYWRjcnVtYnMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICB0b3A6IDUwcHg7XHJcbiAgei1pbmRleDogOTk7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBoZWlnaHQ6IDQzcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuXHJcbiAgJl9fc2Nyb2xsZXIge1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gIH1cclxuXHJcbiAgJi4tc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIC41NSk7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogdmFyKC0tc3YtbWF4LXdpZHRoKTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBtYXJnaW46IDhweCBhdXRvO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJl9fbGluayxcclxuICAmX19jdXJyZW50LXBhZ2UsXHJcbiAgJl9fc2VwZXJhdG9yIHtcclxuICAgIGhlaWdodDogMjVweDtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktMTIpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICB9XHJcblxyXG4gICZfX2xpbmsge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG5cclxuICAmX19ob21lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnaG9tZS1icmVhZGNydW1icycsICdbZmlsbF06IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktMTIpJyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xyXG4gIH1cclxuXHJcbiAgLi1icmVhZGNydW1iLWZpeGVkIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmhlYWRlcl9fY29va2llLW5vdGlmaWNhdGlvbi1kaXNwbGF5ZWQge1xyXG4gICAgLmJyZWFkY3J1bWJzIHtcclxuICAgICAgdG9wOiAxODlweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5icmVhZGNydW1icyB7XHJcbiAgICB0b3A6IDY1cHg7XHJcblxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhlYWRlcl9fY29va2llLW5vdGlmaWNhdGlvbi1kaXNwbGF5ZWQge1xyXG4gICAgLmJyZWFkY3J1bWJzIHtcclxuICAgICAgdG9wOiAxNTZweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5icmVhZGNydW1icyB7XHJcbiAgICB0b3A6IDg1cHg7XHJcblxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhlYWRlcl9fY29va2llLW5vdGlmaWNhdGlvbi1kaXNwbGF5ZWQge1xyXG4gICAgLmJyZWFkY3J1bWJzIHtcclxuICAgICAgdG9wOiAxNzVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXhscmcpIHtcclxuICAuYnJlYWRjcnVtYnMge1xyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlcl9fY29va2llLW5vdGlmaWNhdGlvbi1kaXNwbGF5ZWQge1xyXG4gIC5icmVhZGNydW1icyB7XHJcbiAgICB0b3A6IDIwNXB4O1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEdlbmVyaWMgY2FyZCBhZGRyZXNzXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQtYWRkcmVzcyB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAmX19saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAmLi1icmVhayB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEdlbmVyaWMgY2FyZCBtZXRhIGRhdGFcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogbW9kaWZpZXJzXHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQtbWV0YSB7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBtYXJnaW46IDAgMCAxMnB4O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcblxyXG4gICZfX2xhYmVsIHtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC02KTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG5cclxuICAmX19kYXRhIHtcclxuICAgIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICAgIG1heC13aWR0aDogNTAlO1xyXG5cclxuICAgICY6b25seS1jaGlsZCB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2RhdGUge1xyXG4gICAgZGlzcGxheTogaW5oZXJpdDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgIGhlaWdodDogMTNweDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7IC8qIHRvIG1ha2UgaXQgZXhhY3RseSBjZW50ZXIsIGNvbnNpZGVyaW5nIHRoZSBib3JkZXIgKi9cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGE6bm90KC5jYXJkLW1ldGFfX2xhYmVsKSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICB9XHJcbn1cclxuXHJcbi8qIE1vZGlmaWVyc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLW1ldGEuLXNtbCB7XHJcbiAgbWFyZ2luOiAwIDAgNnB4O1xyXG59XHJcblxyXG4uY2FyZC1tZXRhLi1hbHQge1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxufVxyXG5cclxuLmNhcmQtbWV0YS4taXMtcHVibGljYXRpb24ge1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTUpO1xyXG59XHJcblxyXG4uY2FyZC1tZXRhLi1jZW50ZXItYWxpZ24ge1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuY2FyZC1tZXRhIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuXHJcbiAgICAmX19kYXRlIHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLW1ldGEuLXNtbCB7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcblxyXG4gICAgJl9fZGF0ZSB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEdlbmVyaWMgY2FyZCB0aXRsZVxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA+PSBzbWwgdmlld3BvcnRcclxuICAqID49IG1lZCB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC10aXRsZSB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICBsaW5lLWhlaWdodDogMS4yO1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udCk7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgbWFyZ2luOiAwIGF1dG8gdmFyKC0tc3YtZ3V0dGVyKTtcclxuXHJcbiAgYSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLyogPj0gc21sIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLi1saXN0aW5nLWJsb2NrIC5jYXJkLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgfVxyXG5cclxuICAuLW1pY3JvIC5jYXJkLXRpdGxlIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC8qIHN2LS1tZWQgbW9kaWZpZXIgb25seSB0YWtlcyBzaGFwZSBhdCBoaWdoZXIgYnJlYWtwb2ludHMgKi9cclxuICAuY2FyZC10aXRsZS4tbWVkIHtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgLi1saXN0aW5nLWJsb2NrIC5jYXJkLXRpdGxlLi1tZWQge1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICB9XHJcblxyXG4gIC8qIHN2LS1scmcgbW9kaWZpZXIgb25seSB0YWtlcyBzaGFwZSBhdCBoaWdoZXIgYnJlYWtwb2ludHMgKi9cclxuICAuY2FyZC10aXRsZS4tbHJnIHtcclxuICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI4NTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxuXHJcbiAgLi1saXN0aW5nLWJsb2NrIC5jYXJkLXRpdGxlLi1tZWQge1xyXG4gICAgaGVpZ2h0OiAxMzBweDtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBHZW5lcmljIGNhcmQgaW50cm9cclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICAqIFF1b3RlIHN0eWxlIG1vZGlmaWVyXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLWludHJvIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5jYXJkLWludHJvIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAvKiBzdi0tbHJnIG1vZGlmaWVyIG9ubHkgdGFrZXMgc2hhcGUgYXQgaGlnaGVyIGJyZWFrcG9pbnRzICovXHJcbiAgLmNhcmQtaW50cm8uLWxyZyB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFF1b3RlIHN0eWxlIG1vZGlmaWVyXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQtaW50cm8uLXF1b3RlIHtcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2VuZXJpYyBjYXJkIGxhYmVsXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIE1vZGlmaWVyc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC1sYWJlbCB7XHJcbiAgQGV4dGVuZCAuZXh0ZW5kZXItZWxsaXBzaXM7XHJcblxyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gIGxpbmUtaGVpZ2h0OiAyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIE1vZGlmaWVyc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQtbGFiZWwuLWlzLXB1YmxpY2F0aW9uIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTUpO1xyXG59XHJcblxyXG4uY2FyZC1sYWJlbC4tbmVnYXRpdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG59XHJcblxyXG4uY2FyZC1sYWJlbC4tcG9zaXRpdmUge1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxufVxyXG5cclxuLmNhcmQtbGFiZWwuLW5ldXRyYWwge1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG59XHJcblxyXG4uY2FyZC1sYWJlbC4tbmV3LWRldmVsb3BtZW50IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtbmV3LWRldmVsb3BtZW50LTIpO1xyXG59XHJcblxyXG4uY2FyZC1sYWJlbC4tZmFybSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWZhcm0pO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2VuZXJpYyBjYXJkIHRhZ3MgY29udGFpbmVyXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIG1vZGlmaWVyc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgaGVpZ2h0OiA3MHB4O1xyXG4gIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLWxyZykgMCAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgLnRhZyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBNb2RpZmllcnNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC10YWdzLWNvbnRhaW5lci4taW5saW5lIHtcclxuICBoZWlnaHQ6IDI1cHg7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gIC50YWcge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLXRhZ3MtY29udGFpbmVyLi1ibG9jayB7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gIC50YWcge1xyXG4gICAgbWFyZ2luLXRvcDogMTJweDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLXRhZ3MtY29udGFpbmVyLi1jZW50ZXItYWxpZ24ge1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2VuZXJpYyBjYXJkIHRlbGVwaG9uZVxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLXRlbGVwaG9uZSB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG5cclxuICAmX19saW5rIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEdlbmVyaWMgY2FyZCBmaXhlZCBoZWlnaHRcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC4tZml4ZWQtaGVpZ2h0IHtcclxuICAuY2FyZC10aXRsZSB7XHJcbiAgICBoZWlnaHQ6IDYzcHg7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIGhlaWdodDogODZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxpc3RpbmctYmxvY2sge1xyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIGhlaWdodDogNDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC1oZWlnaHQ6IDg3cHg7XHJcblxyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIC4tZHluYW1pYy1oZWlnaHQge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTEycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pcy1hd2FyZCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC1oZWlnaHQ6IDUycHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA2OHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA3NnB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA4M3B4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tb2ZmaWNlIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbWF4LWhlaWdodDogMTUwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtYWRkcmVzcyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtbGluay1jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWV4cGVydCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuY2FyZC4tZml4ZWQtaGVpZ2h0Li1pcy1hd2FyZCxcclxuICAuY2FyZC4tZml4ZWQtaGVpZ2h0Li1vZmZpY2UsXHJcbiAgLmNhcmQuLWZpeGVkLWhlaWdodC4tZXhwZXJ0IHtcclxuICAgIGhlaWdodDogNDE4cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuY2FyZC4tZml4ZWQtaGVpZ2h0Li1scmcge1xyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEzNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNhcmQuLWZpeGVkLWhlaWdodC4tbWVkIHtcclxuICAgIC5jYXJkLXRpdGxlIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi4vYXRvbXMvY2FyZC1hZGRyZXNzLmNzcyc7XHJcbkBpbXBvcnQgJy4uL2F0b21zL2NhcmQtbWV0YS5jc3MnO1xyXG5AaW1wb3J0ICcuLi9hdG9tcy9jYXJkLXRpdGxlLmNzcyc7XHJcbkBpbXBvcnQgJy4uL2F0b21zL2NhcmQtaW50cm8uY3NzJztcclxuQGltcG9ydCAnLi4vYXRvbXMvY2FyZC1sYWJlbC5jc3MnO1xyXG5AaW1wb3J0ICcuLi9hdG9tcy9jYXJkLXRhZ3MtY29udGFpbmVyLmNzcyc7XHJcbkBpbXBvcnQgJy4uL2F0b21zL2NhcmQtdGVsZXBob25lLmNzcyc7XHJcbkBpbXBvcnQgJy4uL2F0b21zL2NhcmQtZml4ZWQtaGVpZ2h0cy5jc3MnO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBHZW5lcmljIGNhcmRcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogQ2VudGVyYWxseSBhbGlnbiBtb2RpZmllclxyXG4gICogVHJhbnNwYXJlbnQgY2FyZCBtb2RpZmllclxyXG4gICogU3ViamFjZW50IGNhcmQgbW9kaWZpZXJcclxuICAqIExpc3RpbmcgY2FyZCBtb2RpZmllclxyXG4gICogRnVsbCB3aWR0aCBjYXJkIG1vZGlmaWVyXHJcbiAgKiBNaWNybyBjYXJkIG1vZGlmaWVyXHJcbiAgKiBWaWRlbyBjYXJkIG1vZGlmaWVyXHJcbiAgKiBBd2FyZCBjYXJkIG1vZGlmaWVyXHJcbiAgKiBDVEEgYmxvY2sgY2FyZCBtb2RpZmllclxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1heC13aWR0aDogNzUwcHg7XHJcbiAgfVxyXG5cclxuICAmX19sb2NhdGlvbiB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIH1cclxuXHJcbiAgLmNhcmRfX2ltYWdlICsgLmNhcmRfX2NvbnRlbnQgLmNhcmQtbGFiZWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICB0b3A6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZG93bmxvYWQtbGluayB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1pY29uLWJhc2U7XHJcblxyXG4gICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGRvd25sb2FkLCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTcpLCAyNHB4LCAwLCBjZW50ZXI7XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5OSU7XHJcbiAgICB3aWR0aDogMjRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fdHlwZSB7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50LWZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50LWZpbHRlcnMge1xyXG4gICAgbWFyZ2luLXRvcDogMzJweDtcclxuICB9XHJcblxyXG4gICZfX2ZpbHRlci1sYWJlbHMge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZmlsdGVyLWxhYmVsIHtcclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBmbGV4OiAxIDAgMzAlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XHJcblxyXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBDZW50ZXJhbGx5IGFsaWduIG1vZGlmaWVyXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC4tY2VudGVyLWFsaWduIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIC5jYXJkLW1ldGEge1xyXG4gICAgQGV4dGVuZCAuY2FyZC1tZXRhLi1jZW50ZXItYWxpZ247XHJcbiAgfVxyXG5cclxuICAuY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgICBAZXh0ZW5kIC5jYXJkLXRhZ3MtY29udGFpbmVyLi1jZW50ZXItYWxpZ247XHJcbiAgfVxyXG59XHJcblxyXG4vKiBUcmFuc3BhcmVudCBjYXJkIG1vZGlmaWVyXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC4tdHJhbnNwYXJlbnQge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vKiBTdWJqYWNlbnQgY2FyZCBtb2RpZmllclxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQuLXN1YmphY2VudC1ibG9jayB7XHJcbiAgLmNhcmQtbWV0YSB7XHJcbiAgICBAZXh0ZW5kIC5jYXJkLW1ldGEuLWFsdDtcclxuICB9XHJcbn1cclxuXHJcbi8qIExpc3RpbmcgY2FyZCBtb2RpZmllclxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQuLWxpc3RpbmctYmxvY2sge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSB7XHJcbiAgICAuY2FyZC10YWdzLWNvbnRhaW5lci4taW5saW5lIHtcclxuICAgICAgQGV4dGVuZCAuY2FyZC10YWdzLWNvbnRhaW5lci4tYmxvY2s7XHJcblxyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgLnRhZyB7XHJcbiAgICAgICAgQGV4dGVuZCAuY2FyZC10YWdzLWNvbnRhaW5lci4tYmxvY2sgLnRhZztcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogc2l6ZSBtb2RpZmllcnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLi1tZWQge1xyXG4gIC5jYXJkLXRpdGxlIHtcclxuICAgIEBleHRlbmQgLmNhcmQtdGl0bGUuLW1lZDtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLi1scmcge1xyXG4gIC5jYXJkLXRpdGxlIHtcclxuICAgIEBleHRlbmQgLmNhcmQtdGl0bGUuLWxyZztcclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIHRvbmUgbW9kaWZpZXJzXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC4taXMtcHVibGljYXRpb24ge1xyXG4gIC5jYXJkLWxhYmVsIHtcclxuICAgIEBleHRlbmQgLmNhcmQtbGFiZWwuLWlzLXB1YmxpY2F0aW9uO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtbWV0YSB7XHJcbiAgICBAZXh0ZW5kIC5jYXJkLW1ldGEuLWlzLXB1YmxpY2F0aW9uO1xyXG4gIH1cclxufVxyXG5cclxuLyogcm93IGxpc3RpbmcgbW9kaWZpZXJcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLi1saXN0aW5nLXJvdyB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLWxyZykgMCAwO1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSAwIDA7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcikgMDtcclxuICB9XHJcblxyXG4gICYuLW5vLWJvcmRlciB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gIH1cclxuXHJcbiAgJi4tcGFkZGVkIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICBwYWRkaW5nOiAzNHB4IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIGFuZCAoLS1zdi12aWV3LXdpZHRoLWx0LWxyZykge1xyXG4gICAgLmNhcmRfX2ltYWdlIH4gLmNhcmRfX2NvbnRlbnQgLmNhcmRfX2Rvd25sb2FkLWxpbmsge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZF9faW1hZ2UgfiAuY2FyZF9fcHJpbWFyeS1jdGFzIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuXHJcbiAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG5cclxuICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZC10aXRsZSB7XHJcbiAgICBAZXh0ZW5kIC5jYXJkLXRpdGxlLi1tZWQ7XHJcbiAgfVxyXG5cclxuICAuY2FyZF9faW1hZ2Uge1xyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xyXG4gICAgICBtYXgtd2lkdGg6IDMwJSAhaW1wb3J0YW50OyAvKiBTcGVjaWZpY2l0eSAvIG9yZGVyaW5nIG92ZXJyaWRlICovXHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgIG1heC13aWR0aDogMzUlICFpbXBvcnRhbnQ7IC8qIFNwZWNpZmljaXR5IC8gb3JkZXJpbmcgb3ZlcnJpZGUgKi9cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkX19jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAuY2FyZC1sYWJlbDpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuXHJcbiAgICAgICYgKyAuY2FyZC1tZXRhIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG5cclxuICAuY2FyZF9fY29udGVudCArIC5jYXJkX190eXBlIHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgfVxyXG5cclxuICAuY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gIH1cclxuXHJcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgLmNhcmRfX3ByaW1hcnktY3RhcyB7XHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgICBtaW4td2lkdGg6IDIxNXB4O1xyXG4gICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b246bGFzdC1vZi10eXBlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkX19pbWFnZSArIC5jYXJkX19jb250ZW50IC5jYXJkLWxhYmVsIHtcclxuICAgIHRvcDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIHRvcDogY2FsYyh2YXIoLS1zdi1ndXR0ZXItbHJnKSArIHZhcigtLXN2LWd1dHRlcikpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5cclxuICAmLi1scmcsXHJcbiAgJi4tbWVkIHtcclxuICAgIC5jYXJkX19jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEhvcml6b250YWwgKCdGdWxsLXdpZHRoJykgY2FyZCBtb2RpZmllclxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNhcmQuLWZ1bGwtd2lkdGgge1xyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHJcbiAgICAuY2FyZF9faW1hZ2Uge1xyXG4gICAgICBtYXgtd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xyXG4gICAgICBmbGV4LWdyb3c6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBtaWNybyBjYXJkIG1vZGlmaWVyIC0gc21hbGwgaW5saW5lIGNhcmQgdHlwaWNhbGx5IHVzZWQgZm9yIHNpZGUgbGlzdGluZ3NcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLi1taWNybyB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyKSAwO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgaGVpZ2h0OiAxMjJweDtcclxuXHJcbiAgLmNhcmRfX2ltYWdlIHtcclxuICAgIHdpZHRoOiAxMjVweDtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5jYXJkLW1ldGEge1xyXG4gICAgQGV4dGVuZCAuY2FyZC1tZXRhLi1zbWw7XHJcbiAgfVxyXG5cclxuICAuY2FyZC10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLyogRXhwZXJ0IHJlc3VsdCBjYXJkIG1vZGlmaWVyXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi5jYXJkLi1leHBlcnQge1xyXG4gIC5jYXJkX19sb2NhdGlvbixcclxuICAuY2FyZF9fbWlzYyB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gIH1cclxuXHJcbiAgLmNhcmRfX2xvY2F0aW9uIHtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5jYXJkX19taXNjIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIxcHg7XHJcbiAgfVxyXG5cclxuICAuY2FyZC1tZXRhIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDExcHg7XHJcbiAgfVxyXG5cclxuICAuY2FyZC1hZGRyZXNzIHtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICZfX2xpbmUge1xyXG4gICAgICAmLi1icmVhayB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY3RhLWxpbmsge1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC4tZXhwZXJ0LFxyXG4uY2FyZC4tb2ZmaWNlIHtcclxuICAuY2FyZF9fcHJpbWFyeS1jdGFzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuY2FyZC10aXRsZSBhIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC4tZXhwZXJ0Li1saXN0aW5nLXJvdyxcclxuLmNhcmQuLW9mZmljZS4tbGlzdGluZy1yb3cge1xyXG4gIC5jYXJkX19jb250ZW50IHtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLi1leHBlcnQuLW1pY3JvIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgcGFkZGluZzogMTZweCAwO1xyXG4gIG1pbi1oZWlnaHQ6IGF1dG87XHJcblxyXG4gIC5jYXJkX19pbWFnZSB7XHJcbiAgICBtYXgtd2lkdGg6IDk0cHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA5NHB4O1xyXG4gIH1cclxuXHJcbiAgLmNhcmRfX2xvY2F0aW9uIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICB9XHJcblxyXG4gIC5jYXJkX19saWNlbnNlIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250LWxpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICB9XHJcblxyXG4gIC5jYXJkLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgbWFyZ2luLXRvcDogLTNweDsgLyogQWxpZ24gd2l0aCB0b3Agb2YgaW1hZ2UgKi9cclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICB9XHJcblxyXG4gIC5jYXJkLXRlbGVwaG9uZSB7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogQXV0aG9yIGNhcmQgbW9kaWZpZXJcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLmNhcmQuLWF1dGhvciB7XHJcbiAgLmNhcmRfX2ltYWdlIHtcclxuICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgaGVpZ2h0OiA2NHB4O1xyXG5cclxuICAgIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZF9fbG9jYXRpb24sXHJcbiAgLmNhcmRfX2xpY2Vuc2UsXHJcbiAgLmNhcmQtdGVsZXBob25lIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuY2FyZF9fbWlzYyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiB2aWRlbyBjYXJkIC0gc2ltcGx5IGFkZHMgYW4gaWNvbiB0byB0aGUgaW1hZ2VcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLi1pcy12aWRlbyB7XHJcbiAgLmNhcmRfX2ltYWdlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCBzdmcoJ3lvdXR1YmUtcGxheScsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogOTBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIG9wYWNpdHk6IC44NTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIGF3YXJkIGNhcmRcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYXJkLi1pcy1hd2FyZCB7XHJcbiAgLmNhcmQtdGl0bGUge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250KTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBjdGEgYmxvY2sgbW9kaWZpZXIgLSBjYWxsIHRvIGFjdGlvbiBibG9jayBjYXJkXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC4tY3RhLWJsb2NrIHtcclxuICAuY2FyZF9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAyNXB4IDA7XHJcbiAgICBmbGV4OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtbWV0YSB7XHJcbiAgICBAZXh0ZW5kIC5jYXJkLW1ldGEuLWFsdDtcclxuICB9XHJcblxyXG4gIC5jYXJkLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xyXG4gICAgbWFyZ2luOiAwIDAgNHB4O1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtaW50cm8ge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjdweDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udC1saWdodCk7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC4tY2xlYW4ge1xyXG4gIC5jYXJkX19jb250ZW50IHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtaW50cm8ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogZnVsbCB3aWR0aCBtb2RpZmllclxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLyogT25seSByZW5kZXIgdGhlc2Ugc3R5bGVzIG9uICdkZXNrdG9wJyAqL1xyXG4gIC5jYXJkLi1vZmZpY2UsXHJcbiAgLmNhcmQuLWV4cGVydCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5jYXJkLi1pcy1hd2FyZCB7XHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLi1jdGEtYmxvY2sge1xyXG4gICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiA0MHB4IDAgNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWludHJvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLi1maXhlZC1oZWlnaHQge1xyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBoZWlnaHQ6IDY1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZC4tbGlzdGluZy1ibG9jay4tZnVsbC13aWR0aCB7XHJcbiAgICAuY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZC4tbGlzdGluZy1yb3cuLWZ1bGwtd2lkdGgge1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICYuLWNlbnRlci12ZXJ0aWNhbCB7XHJcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIC5jYXJkX19jb250ZW50ICsgLmNhcmRfX3R5cGUge1xyXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAuY2FyZF9faW1hZ2UgKyAuY2FyZF9fY29udGVudCB7XHJcbiAgICAgIGZsZXg6IDEgMSAzMCU7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkX19jb250ZW50IHtcclxuICAgICAgb3JkZXI6IDE7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMzBweCk7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZF9fcHJpbWFyeS1jdGFzIHtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmRfX3R5cGUge1xyXG4gICAgICBvcmRlcjogMztcclxuICAgICAgZmxleDogMSAwIDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZC4tY2xlYW4ge1xyXG4gICAgbWFyZ2luOiAxNXB4IGF1dG87XHJcblxyXG4gICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkX19jb250ZW50LWlubmVyIHtcclxuICAgICAgbWF4LXdpZHRoOiA1ODVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5jYXJkLi1pcy1hd2FyZCB7XHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLi1jdGEtYmxvY2sge1xyXG4gICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDJweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNhcmQuLWV4cGVydCB7XHJcbiAgICAuY2FyZC1tZXRhIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmNhcmQuLWV4cGVydC4tZnVsbC13aWR0aCxcclxuICAuY2FyZC4tb2ZmaWNlLi1mdWxsLXdpZHRoIHtcclxuICAgIC5jYXJkX19jb250ZW50IHtcclxuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmRfX3ByaW1hcnktY3RhcyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWxpbmstY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkLi1hdXRob3Ige1xyXG4gICAgLmNhcmRfX2ltYWdlIHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZF9fY29udGVudCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkX19taXNjIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC10ZWxlcGhvbmUge1xyXG4gICAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIENvb2tpZSBub3RpZmljYXRpb25cclxuXHJcbiAgKiBCYXNpYyBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNvb2tpZS1ub3RpZmljYXRpb24ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcGFkZGluZzogMTVweCAxNXB4IDA7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgJi4tdmlzaWJsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gICZfX2NvbnRlbnQtd3JhcCB7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLXN2LW1heC13aWR0aCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcblxyXG4gICZfX3dhcm5pbmcsXHJcbiAgJl9fd2FybmluZy1saW5rIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgfVxyXG5cclxuICAmX193YXJuaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gICZfX3dhcm5pbmctbGluayB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuY29va2llLW5vdGlmaWNhdGlvbiB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICZfX2NvbnRlbnQtd3JhcCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1heC13aWR0aDogMTAyNHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAmX193YXJuaW5nIHtcclxuICAgICAgZmxleDogOCAxO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3dhcm5pbmctbGluayB7XHJcbiAgICAgIGZsZXg6IDggMDtcclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5jb29raWUtbm90aWZpY2F0aW9uIHtcclxuICAgICZfX3dhcm5pbmcsXHJcbiAgICAmX193YXJuaW5nLWxpbmsge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuLWNvb2tpZS13YXJuaW5nIHtcclxuICAgIC5uYXZfX2l0ZW0gYTo6YWZ0ZXIsXHJcbiAgICAubmF2X19pdGVtIGE6OmJlZm9yZSB7XHJcbiAgICAgIHRvcDogMTgwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5jb250YWN0LWhlYWRlciB7XHJcbiAgcGFkZGluZzogMjBweCAwIDMwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICB9XHJcblxyXG4gICYuLWRhcmsge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gIH1cclxuXHJcbiAgJi4tbWluaSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgcGFkZGluZzogMjhweCAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2ltYWdlIHtcclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBmbGV4OiAwIDAgMzUlO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tbWluaSAmIHtcclxuICAgICAgbWF4LXdpZHRoOiA2NHB4O1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZGV0YWlscyB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBmbGV4OiAxIDAgNjUlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuLW5vLWRlZmF1bHQgJixcclxuICAgIC4tbm8tZGVmYXVsdC4tbWluaSAmIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLi1taW5pICYge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19qb2ItdGl0bGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICB9XHJcblxyXG4gICZfX25hbWUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpIDMwcHggdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgbWFyZ2luOiAxMHB4IDA7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwIDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLi1taW5pICYge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19sb2NhdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gIH1cclxuXHJcbiAgJl9fZGVwYXJ0bWVudCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcblxyXG4gICZfX3RlbGVwaG9uZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLi1kYXJrICYge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgLi1taW5pICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuLW9mZmljZS1jb250YWN0IHtcclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI6cm9vdCB7XHJcbiAgLS1icmVhZGNydW1iLWhlaWdodDogNDNweDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBDb250ZW50IGhlYWRlclxyXG5cclxuICAqIENvbnRlbnQgd3JhcHBlclxyXG4gICogU2VjdGlvbiB0aXRsZVxyXG4gICogSGVhZGVyXHJcbiAgKiBEYXRlXHJcbiAgKiBEYXJrIG1vZGlmaWVyXHJcbiAgKiBIYXMgaW1hZ2UgbW9kaWZpZXJcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uLWJyZWFkY3J1bWItYWRqdXN0bWVudCB7XHJcbiAgLmNvbnRlbnQtaGVhZGVyX19jb250ZW50IHtcclxuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWJyZWFkY3J1bWItaGVpZ2h0KSArIDZ2dyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1scmcpIHtcclxuICAuLWJyZWFkY3J1bWItYWRqdXN0bWVudCB7XHJcbiAgICAucHJvZmlsZS1oZWFkZXJfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1icmVhZGNydW1iLWhlaWdodCkgKyAydncpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogQ29udGVudCB3cmFwcGVyXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNvbnRlbnQtaGVhZGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0xKTtcclxuICBtaW4taGVpZ2h0OiA0MjVweDsgLyogQXZlcmFnZSBpbWFnZSBoZWlnaHQgYXQgdGhlIGRlc2lyZWQgYXNwZWN0IHJhdGlvICovXHJcbiAgbWF4LWhlaWdodDogNTMwcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmltYWdlLXRyZWF0bWVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgfVxyXG5cclxuICAvKiBDb250ZW50IHdyYXBwZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA3NXB4O1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICAmLXdyYXAge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogdmFyKC0tc3YtbWF4LXdpZHRoKTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU2VjdGlvbiB0aXRsZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmX19jYXRlZ29yeSB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICBmb250OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpIDE4cHgvMS4xIHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgbWFyZ2luOiAwIDAgMjRweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAvKiBIZWFkZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgQGV4dGVuZCAudGV4dC1mZWF0dXJlLWhlYWRpbmc7XHJcbiAgfVxyXG5cclxuICAvKiBEYXRlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gICZfX2RhdGUge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1pbnB1dC10ZXh0KTtcclxuICAgIGZvbnQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCkgMThweC8xLjEgdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgICBtYXJnaW46IDQ1cHggMCAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBIYXMgaW1hZ2UgbW9kaWZpZXJcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29udGVudC1oZWFkZXIuLWhhcy1pbWFnZSB7XHJcbiAgLmNvbnRlbnQtaGVhZGVyX19jb250ZW50LXdyYXAge1xyXG4gICAgbWluLWhlaWdodDogMjEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBQbGFpbiBtb2RpZmllclxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb250ZW50LWhlYWRlci4tcGxhaW4ge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaW5wdXQtYm9yZGVyKTtcclxufVxyXG5cclxuLyogRGFyayBtb2RpZmllciAtIHdoZXJlIHRoZSB0ZXh0IHNob3VsZCBzaXQgb24gdG9wIGEgZGFyayBiZyAoZWcgYSAndHJlYXRlZCcgaW1hZ2UpXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNvbnRlbnQtaGVhZGVyLi1kYXJrIHtcclxuICAuY29udGVudC1oZWFkZXIge1xyXG4gICAgJl9fY2F0ZWdvcnkge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGF0ZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmNvbnRlbnQtaGVhZGVyLi1oYXMtaW1hZ2Uge1xyXG4gICAgLmNvbnRlbnQtaGVhZGVyX19jb250ZW50LXdyYXAge1xyXG4gICAgICBoZWlnaHQ6IDMyNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LWhlYWRlcl9fY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDY2cHggKyB2YXIoLS1icmVhZGNydW1iLWhlaWdodCkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1jb29raWUtd2FybmluZyB7XHJcbiAgICAuY29udGVudC1oZWFkZXIuLWhhcy1pbWFnZSB7XHJcbiAgICAgIC5jb250ZW50LWhlYWRlcl9fY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tYnJlYWRjcnVtYi1oZWlnaHQpICsgNnZ3KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLi1icmVhZGNydW1iLWFkanVzdG1lbnQge1xyXG4gICAgbWFyZ2luLXRvcDogLTQycHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC14bHJnKSB7XHJcbiAgLmNvbnRlbnQtaGVhZGVyLi1oYXMtaW1hZ2Uge1xyXG4gICAgLmNvbnRlbnQtaGVhZGVyX19jb250ZW50IHtcclxuICAgICAgcGFkZGluZy10b3A6IGNhbGMoNjZweCArIHZhcigtLWJyZWFkY3J1bWItaGVpZ2h0KSArIDZ2dyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC14bHJnKSB7XHJcbiAgLmNvbnRlbnQtaGVhZGVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IDI1dnc7XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDZ2dztcclxuICAgIH1cclxuXHJcbiAgICAmX19jYXRlZ29yeSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS41dnc7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDJ2dztcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNXZ3O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2RhdGUge1xyXG4gICAgICBmb250LXNpemU6IDEuNXZ3O1xyXG4gICAgICBtYXJnaW4tdG9wOiA0dnc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1tZWQpIHtcclxuICAuY29udGVudC1oZWFkZXIge1xyXG4gICAgJl9fY2F0ZWdvcnksXHJcbiAgICAmX19kYXRlIHtcclxuICAgICAgZm9udC1zaXplOiAydnc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAuY29udGVudC1oZWFkZXIge1xyXG4gICAgJl9fY2F0ZWdvcnksXHJcbiAgICAmX19kYXRlIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jYXRlZ29yeSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGF0ZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuY29udGVudC1oZWFkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG5cclxuICAuLWJyZWFkY3J1bWItYWRqdXN0bWVudCB7XHJcbiAgICBtYXJnaW4tdG9wOiAtNDJweDtcclxuXHJcbiAgICAuY29udGVudC1oZWFkZXJfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNnZ3O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRlbnQtaGVhZGVyLi1oYXMtaW1hZ2Uge1xyXG4gICAgLmNvbnRlbnQtaGVhZGVyX19jb250ZW50LXdyYXAge1xyXG4gICAgICBoZWlnaHQ6IDUzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIENvbnRlbnQgcGFuZWxzXHJcblxyXG4gICogRGVmYXVsdCBjb250ZW50IHBhbmVsXHJcbiAgKiBTdHlsZWQgbW9kaWZpZXJcclxuICAqIERhcmsgbW9kaWZpZXJcclxuICAqIE92ZXJsYXkgbW9kaWZpZXJcclxuXHJcbiAgKiBBcnRpY2xlIGNvbnRlbnQgcGFuZWxcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNvbnRlbnQtcGFuZWwge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItc21sLW1pZCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuXHJcbiAgJiA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcblxyXG4gICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIFN0eWxlZCBtb2RpZmllclxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb250ZW50LXBhbmVsLi1zdHlsZWQge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1zZWNvbmRhcnktNCk7XHJcbn1cclxuXHJcbi8qIERhcmsgbW9kaWZpZXJcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29udGVudC1wYW5lbC4tZGFyayB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcblxyXG4gICYgPiBwIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICB9XHJcbn1cclxuXHJcbi8qIE92ZXJsYXkgbW9kaWZpZXJcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29udGVudC1wYW5lbC4tb3ZlcmxheSB7XHJcbiAgbWFyZ2luLXRvcDogY2FsYygodmFyKC0tc3YtZ3V0dGVyLWxyZykgKyB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCkpICogLTEpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEFydGljbGUgY29udGVudCBwYW5lbFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qID49IHNtbCA8IGxyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLmNvbnRlbnQtcGFuZWwtYXJ0aWNsZS4tbWVkLTItY29sdW1uIHtcclxuICAgIC5taWNyby1jb250YWN0LWxpc3Qge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jYXJkIHtcclxuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAodmFyKC0tc3YtZ3V0dGVyKSAvIDIpKTtcclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgJjpudGgtb2YtdHlwZShvZGQpIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmNvbnRlbnQtcGFuZWwtYXJ0aWNsZSB7XHJcbiAgICBAZXh0ZW5kIC5jb250ZW50LXBhbmVsO1xyXG4gICAgQGV4dGVuZCAuY29udGVudC1wYW5lbC4tc3R5bGVkO1xyXG4gICAgQGV4dGVuZCAuY29udGVudC1wYW5lbC4tb3ZlcmxheTtcclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiB2YXIoLS1zdi16LW1pZGRsZSk7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgQ29udGVudCByb3dcclxuXHJcbiAgKiBCYXNpYyBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbHJnIHZpZXdwb3J0XHJcbiAgKiBCbG9ja3F1b3RlIHNpYmxpbmdcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29udGVudC1yb3cge1xyXG4gIG1hcmdpbi10b3A6IDE4cHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDE4cHg7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNCk7XHJcblxyXG4gICY6bGFzdC1vZi10eXBlIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmX19jb2wge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faGVhZGluZyB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTUpO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtNSk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLS40cHg7IC8qIExldHRlciBzcGFjaW5nIGJ5IGRlZmF1bHQgaXMgb2ZmIGNvbXBhcmVkIHRvIGRlc2lnbiAqL1xyXG5cclxuICAgIGFbaHJlZl0ge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTUpO1xyXG5cclxuICAgICAgLyogRG9uJ3QgYWRkIGFuIHVuZGVybGluZSBpZiBsaW5rIGlzIHNvY2lhbCAqL1xyXG4gICAgICAmOm5vdCguc29jaWFsX19hY3Rpb24pIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saXN0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRlbnQtcm93Li1mZWF0dXJlZCB7XHJcbiAgLmNvbnRlbnQtcm93X19oZWFkaW5nIHtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhzbWwtbWlkKTtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubGlzdCB7XHJcbiAgICBsaSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50LXJvdy4tbm8tYm9yZGVyIHtcclxuICBib3JkZXItYm90dG9tOiBub25lO1xyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuY29udGVudC1yb3cge1xyXG4gICAgbWFyZ2luLXRvcDogMzNweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzM3B4O1xyXG5cclxuICAgICZfX2NvbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIH1cclxuXHJcbiAgICAubGlzdCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZmxleDogMSAwIDUwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgJjpudGgtbGFzdC1vZi10eXBlKC1uKzIpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGVudC1yb3cuLWZlYXR1cmVkIHtcclxuICAgIC5jb250ZW50LXJvd19faGVhZGluZyB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRlbnQtcm93Li1uby1ib3JkZXIge1xyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbHJnIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmNvbnRlbnQtcm93IHtcclxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGVudC1yb3csXHJcbiAgLmNvbnRlbnQtcm93Li1mZWF0dXJlZCB7XHJcbiAgICAubGlzdCB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZW50LXJvdy4tZmVhdHVyZWQge1xyXG4gICAgLmNvbnRlbnQtcm93X19oZWFkaW5nIHtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZW50LXJvdy4tbm8tYm9yZGVyIHtcclxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDcycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBCbG9ja3F1b3RlIHNpYmxpbmdcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucXVvdGUgKyAuY29udGVudC1yb3cge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBjdGEgbGlua3NcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY3RhLWxpbmtzIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLXNtbC1taWQpIHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKSAwO1xyXG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG5cclxuICAmLi1vdmVybGF5IHtcclxuICAgIG1hcmdpbi10b3A6IC12YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgfVxyXG5cclxuICAmLi1uby13cmFwcGVyIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgfVxyXG59XHJcblxyXG4uY3RhLWxpbmtzLi1maXhlZC1sdC1scmcge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBoZWlnaHQ6IDc4cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSwgLjgpO1xyXG4gIHotaW5kZXg6IDM7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBmbGV4OiAxIDEgNTAlO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgLyogVGVydGlhcnkgc28gZG9uJ3Qgc2hvdyAtIG5vdCBwcmlvcml0eSAqL1xyXG4gICAgJi4tdGVydGlhcnkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLmN0YS1saW5rcyB7XHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gIC5jdGEtbGlua3Mge1xyXG4gICAgJi4tb3ZlcmxheSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuY3RhLWxpbmtzLi1maXhlZC1sdC1scmcge1xyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1heC13aWR0aDogMjU2cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcblxyXG4gICAgICAmLi10ZXJ0aWFyeSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNTZweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmN0YS1saW5rcy4tZml4ZWQtbHQtbHJnIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJvdHRvbTogYXV0bztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcblxyXG4gICAgLmJ1dHRvbixcclxuICAgIC5idXR0b24uLXRlcnRpYXJ5IHtcclxuICAgICAgZmxleDogbm9uZTtcclxuICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBjdGEgcHJvbW9cclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY3RhLXByb21vIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgbWluLWhlaWdodDogNDIwcHg7IC8qIGNoZWF0aW5nIHRvIG1hdGNoIHRoZSBzdGFuZGFyZCBoZWlndCBvZiB0aGUgZ2VuZXJpYyBjYXJkcy4gVE9ETzogZmluZCBhIGZsdWlkIGFuZCBncmFjZWZ1bCB3YXkgdG8gaGFuZGxlIHRoaXMgKi9cclxuICB9XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcblxyXG4gIC5jdGEtbGluay4tYWx0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG59XHJcbiIsIi5kaXNjbGFpbWVyIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIHBhZGRpbmc6IDIwcHggMCAxMDBweDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuXHJcbiAgJi4tZGFyayB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgfVxyXG5cclxuICAmX190aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgIC4tZGFyayAmIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgJl9fbGluayB7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBFeHBhbmRhYmxlIGl0ZW1cclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICAqID49IGxyZyB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZXhwYW5kYWJsZS1pdGVtIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC04KTtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTgpO1xyXG5cclxuICAmX19oZWFkZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiA4cHggOHB4IDhweCAwO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgICBoZWlnaHQ6IDE3cHg7XHJcbiAgICAgIHRvcDogMTZweDtcclxuICAgICAgcmlnaHQ6IDhweDtcclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmN0aW9uLXdoaXRlc3BhY2UtYWZ0ZXIgKi9cclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHZhcigtLXN2LXVybC1pbWFnZSkvaWNvbnMvY3VzdG9tL2NvbmNldGluYS1vcGVuLnN2Zyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19oZWFkZXIuLWV4cGFuZGVkIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmdW5jdGlvbi13aGl0ZXNwYWNlLWFmdGVyICovXHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCh2YXIoLS1zdi11cmwtaW1hZ2UpL2ljb25zL2N1c3RvbS9jb25jZXRpbmEtY2xvc2Uuc3ZnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3RpdGxlLFxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgbWFyZ2luOiAwIDUwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuXHJcbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIGZpZ3VyZSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICBoMyxcclxuICAgIGg0IHtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuZXhwYW5kYWJsZS1pdGVtIHtcclxuICAgICZfX2hlYWRlciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxMXB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTFweDtcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgIHRvcDogMTlweDtcclxuICAgICAgICByaWdodDogMTZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuZXhwYW5kYWJsZS1pdGVtIHtcclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IGxyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5leHBhbmRhYmxlLWl0ZW0ge1xyXG4gICAgJl9faGVhZGVyIHtcclxuICAgICAgcGFkZGluZzogMTlweCA4cHggMjFweCAwO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgdG9wOiAyMnB4O1xyXG4gICAgICAgIHJpZ2h0OiA4cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBGYWN0cyBhbmQgZmlndXJlc1xyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA+PSBzbWwgdmlld3BvcnRcclxuICAqID49IG1lZCB2aWV3cG9ydFxyXG4gICogPj0gbHJnIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mYWN0cyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcblxyXG4gICZfX2JhY2tncm91bmQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiA1MHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gICZfX2ZhY3RzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xMCk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSB2YXIoLS1zdi1ndXR0ZXItc21sKSAwO1xyXG4gIH1cclxuXHJcbiAgJl9fYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IDRweDtcclxuICB9XHJcblxyXG4gICYuLWhhcy1kaXZpZGVyIHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxufVxyXG5cclxuLi1oYXMtaGVhZGluZyB7XHJcbiAgLmZhY3RzIHtcclxuICAgICZfX2JhY2tncm91bmQge1xyXG4gICAgICBib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlLFxyXG4gICAgJl9faW50cm8ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1zbWwpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS40NTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmFjdHMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mYWN0IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICBtYXJnaW46IDA7XHJcblxyXG4gICZfX3Rlcm0sXHJcbiAgJl9fdmFsdWUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJl9fdGVybSB7XHJcbiAgICBtYXgtd2lkdGg6IDk1JTtcclxuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gIH1cclxuXHJcbiAgJl9fdmFsdWUge1xyXG4gICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblxyXG4gICAgJi4tdGV4dCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xyXG4gICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdC1ib2xkKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdC1ib2xkKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5mYWN0cyB7XHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlci1zbWwpO1xyXG5cclxuICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNDNweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWhhcy1kaXZpZGVyIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC4taGFzLWRpdmlkZXIge1xyXG4gICAgLmZhY3RzIHtcclxuICAgICAgJl9fYmFja2dyb3VuZCB7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1oYXMtaGVhZGluZyB7XHJcbiAgICAuZmFjdHMge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2ludHJvIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICBtYXgtd2lkdGg6IDg0JTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLS40cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mYWN0IHtcclxuICAgICZfX3Rlcm0sXHJcbiAgICAmX192YWx1ZSB7XHJcbiAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmX190ZXJtIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgfVxyXG5cclxuICAgICZfX3ZhbHVlIHtcclxuICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblxyXG4gICAgICAmLi10ZXh0IHtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5mYWN0cyB7XHJcbiAgICAmX19mYWN0cyB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXN2LWd1dHRlci1scmctbWlkKSAtIDIwKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAzMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhcy1kaXZpZGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC12YXIoLS1zdi1ndXR0ZXIpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC4taGFzLWhlYWRpbmcge1xyXG4gICAgLmZhY3RzIHtcclxuICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTUycHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19mYWN0cyB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mYWN0IHtcclxuICAgICZfX3Rlcm0ge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIG1heC13aWR0aDogOTAlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogNSU7IC8qIElFMTEgZmxleGJveCBpc3N1ZSAtIHdvbid0IGNlbnRlciB3aXRoIG1hcmdpbjogMCBhdXRvICovXHJcbiAgICAgIG1hcmdpbi1yaWdodDogNSU7IC8qIElFMTEgZmxleGJveCBpc3N1ZSAtIHdvbid0IGNlbnRlciB3aXRoIG1hcmdpbjogMCBhdXRvICovXHJcbiAgICB9XHJcblxyXG4gICAgJl9fdmFsdWUge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgaGVpZ2h0OiA4MnB4O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTFweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDExcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IC45O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgJi4tdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjdweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBscmcgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuLWhhcy1oZWFkaW5nIHtcclxuICAgIC5mYWN0cyB7XHJcbiAgICAgICZfX2JhY2tncm91bmQge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDQ4N3B4OyAvKiBUaGlzIGdpdmVzIGFuIG92ZXJsYXAgb2YgMTIycHggKi9cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZhY3Qge1xyXG4gICAgJl9fdmFsdWUge1xyXG4gICAgICAmLi10ZXh0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTFweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMXB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEZlYXR1cmVkIGNhcmRcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYXNlIFN0eWxlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mZWF0dXJlZC1jYXJkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0xKTtcclxuXHJcbiAgJi4tYWx0IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIH1cclxuXHJcbiAgJi4tbmV3LWRldmVsb3BtZW50IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLXN2LWNvbC1uZXctZGV2ZWxvcG1lbnQtMik7XHJcbiAgfVxyXG5cclxuICAmX19pbWFnZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjM1cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGZsZXgtZ3JvdzogMTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI4NTtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMyAqIDM2cHgpO1xyXG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAmX19pbnRybyB7XHJcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtbWV0YSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLXNtbCk7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuXHJcbiAgICAuLW5ldy1kZXZlbG9wbWVudCAmIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1uZXctZGV2ZWxvcG1lbnQtMik7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGF0ZTo6YmVmb3JlIHtcclxuICAgICAgbWFyZ2luLXRvcDogMnB4O1xyXG4gICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci14c21sKTtcclxuICB9XHJcblxyXG4gICZfX3NlY29uZGFyeS13aWRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuZmVhdHVyZWQtY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMzAwcHg7XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgLmltYWdlLXRyZWF0bWVudCB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDM0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE3NjtcclxuICAgICAgbWF4LWhlaWdodDogY2FsYygyICogNDJweCk7XHJcbiAgICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlci14c21sKTtcclxuICAgICAgd2lkdGg6IDY0JTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY2NjtcclxuICAgICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDY2cHg7XHJcbiAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluayAuYnV0dG9uIHtcclxuICAgICAgd2lkdGg6IGluaXRpYWw7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1tZXRhIHtcclxuICAgICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLXhzbWwpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2Vjb25kYXJ5IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2Vjb25kYXJ5LXdpZGUge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2Vjb25kYXJ5LW5hcnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tbmV3LWRldmVsb3BtZW50IHtcclxuICAgICAgLmNhcmQtbWV0YSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1uZXctZGV2ZWxvcG1lbnQtMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5mZWF0dXJlZC1jYXJkIHtcclxuICAgIGhlaWdodDogNTAwcHg7XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcikgMCB2YXIoLS1zdi1ndXR0ZXIpIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLW1ldGEge1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgbWF4LWhlaWdodDogY2FsYygzICogNjBweCk7XHJcbiAgICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoNCAqIDI0cHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgteGxyZykge1xyXG4gIC5mZWF0dXJlZC1jYXJkIHtcclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudC1ib2R5IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB3aWR0aDogNzhyZW07XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcikgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBGZWF0dXJlZCBjb250ZW50XHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIExpZ2h0IG1vZGlmaWVyXHJcbiAgKiA+PSBzbWwgdmlld3BvcnRcclxuICAqID49IG1lZCB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYXNlIFN0eWxlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mZWF0dXJlZC1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICZfX2ltYWdlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1tZWQtbWlkKSB2YXIoLS1zdi1ndXR0ZXIpIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIG1heC1oZWlnaHQ6IDEwOHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgfVxyXG5cclxuICAmX19pbnRybyB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgbWF4LWhlaWdodDogMTI4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICB9XHJcblxyXG4gICZfX2xpbms6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBMaWdodCBtb2RpZmllclxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mZWF0dXJlZC1jb250ZW50Li1saWdodCB7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuXHJcbiAgLmZlYXR1cmVkLWNvbnRlbnRfX2NvbnRlbnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEwKTtcclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5mZWF0dXJlZC1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgaGVpZ2h0OiAyNzBweDtcclxuXHJcbiAgICAmX19pbWFnZSxcclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSArIGNhbGModmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpICsgdmFyKC0tc3YtZ3V0dGVyKSkpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ltYWdlIHtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSAwIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgICB6LWluZGV4OiAwO1xyXG5cclxuICAgICAgLmltYWdlLXRyZWF0bWVudCB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogMCAyNHB4IDAgMzJweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiBjYWxjKHZhcigtLXN2LWd1dHRlci1scmctbWlkKSArIHZhcigtLXN2LWd1dHRlcikpKTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSxcclxuICAgICZfX2ludHJvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19saW5rcyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xpbms6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mZWF0dXJlZC1jb250ZW50Li1zd2FwIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHJcbiAgICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIGNhbGModmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpICsgdmFyKC0tc3YtZ3V0dGVyKSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICBoZWlnaHQ6IDM1MHB4O1xyXG5cclxuICAgICZfX2ltYWdlIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1tZWQpIDAgdmFyKC0tc3YtZ3V0dGVyLW1lZCkgY2FsYygtMSAqIHZhcigtLXN2LWd1dHRlci1scmctbWlkKSk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpICsgdmFyKC0tc3YtZ3V0dGVyLW1lZCkpO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgdmFyKC0tc3YtZ3V0dGVyLW1lZCkpO1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgICAgbWF4LWhlaWdodDogODRweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19saW5rOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXN2LWd1dHRlci1tZWQtbWlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC4tc3dhcCB7XHJcbiAgICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLW1lZCkgY2FsYygtMSAqIHZhcigtLXN2LWd1dHRlci1scmctbWlkKSkgdmFyKC0tc3YtZ3V0dGVyLW1lZCkgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEZpbHRlciBCYXJcclxuICAtIEdlbmVyaWMgY29udGFpbmVyIHN0eWxlcyBmb3IgZmlsdGVyIGNvbnRyb2xzIGJhclxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5maWx0ZXItYmFyIHtcclxuICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTYpO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgLyogVE9ETzogVW5pZnkgZmlsdGVyLXNlYXJjaCAmIHRpZHkgdXAgYW5kIG1heWJlIGNyZWF0ZSBzb21lIGRyb3Bkb3duIG1vZHMgKi9cclxuXHJcbiAgLnNlbGVjdF9fY29udGFpbmVyOjpiZWZvcmUge1xyXG4gICAgcGFkZGluZy10b3A6IDEycHggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBzZWxlY3Qge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC02KTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3gtc2hhZG93OiAxcHggMXB4IDJweCAxcHggdmFyKC0tc3YtY29sLXByaW1hcnktMyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgIC5zZWxlY3RfX2NvbnRhaW5lcjo6YmVmb3JlIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEzcHggIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgcGFkZGluZy10b3A6IDEycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1tZWQpIHtcclxuICAgIC5jb2wge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuXHJcbiAgICAgICY6b25seS1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbCB7XHJcbiAgICAmID4gKiB7XHJcbiAgICAgIC8qIEFkZGluZyB1Z2x5IGltcG9ydGFudHMgaGVyZSB0byBzYWZlZ3VhcmQgYWdhaW5zdCBhbmQgaGlnaCBzcGVjaWZpY2l0eSBzZWxlY3RvcnMgZm9yIGNoaWxkIGNvbXBvbmVudHMgKi9cclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBGaWx0ZXIgc2VhcmNoXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqID49IHhzbWwgdmlld3BvcnRcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5maWx0ZXItc2VhcmNoIHtcclxuICBwYWRkaW5nOiAxMnB4IDAgMTNweDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcclxuICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC02KTtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNjtcclxuXHJcbiAgJl9fcmVzdWx0cyxcclxuICAmX19maWx0ZXJzIHtcclxuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gIH1cclxuXHJcbiAgJl9fZmlsdGVycyB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgJl9fZmlsdGVycy1jb2wge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3Jlc3VsdHMuLXNtbCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fcmVzdWx0cy4tbWFyZ2luIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAmX19zb3J0LWxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLnJlc3VsdHMtaW5kaWNhdG9yIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5jdXN0b20taW5wdXQge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICYuLXJhZGlvIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLWRyb3Bkb3duIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICAuc2VsZWN0X19jb250YWluZXI6OmJlZm9yZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBzZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC02KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDFweCAxcHggMnB4IDFweCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICY6Y2hlY2tlZCArIHNwYW4ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udC1saWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIC5jdXN0b20taW5wdXQuLXNlYXJjaC4tYWx0IHtcclxuICAgIGxhYmVsIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIHRvcDogMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1yYWRpbyB7XHJcbiAgICAuY3VzdG9tLWlucHV0X19jaGVjayB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbn1cclxuXHJcbi8qID49IHhzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC14c21sKSB7XHJcbiAgLmZpbHRlci1zZWFyY2gge1xyXG4gICAgJl9fc29ydC1sYWJlbCB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gc21sIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmZpbHRlci1zZWFyY2gge1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgICZfX3Jlc3VsdHMuLXNtbCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3Jlc3VsdHMuLWx0LXNtbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmlsdGVycyB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnJlc3VsdHMtaW5kaWNhdG9yIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAuY3VzdG9tLWlucHV0Li1kcm9wZG93biB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLi1yYWRpbyB7XHJcbiAgICAgIC5jdXN0b20taW5wdXRfX2NoZWNrIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuZmlsdGVyLXNlYXJjaCB7XHJcbiAgICAmX19maWx0ZXJzIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmlsdGVycy1jb2wge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3YtZ3V0dGVyLXNtbCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19zb3J0LWxhYmVsIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAucmVzdWx0cy1pbmRpY2F0b3Ige1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdXN0b20taW5wdXQuLXJhZGlvIHtcclxuICAgICAgcGFkZGluZy10b3A6IDFweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5pbWFnZS10cmVhdG1lbnQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICBpbWcge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIH1cclxuXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5pbWFnZS10cmVhdG1lbnQge1xyXG4gIC8qIEdyYWRpZW50cyAqL1xyXG4gICYuLXR5cGUtMSxcclxuICAmLi10eXBlLTIsXHJcbiAgJi4tdHlwZS0zLFxyXG4gICYuLXR5cGUtNCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAuODtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEdyYWRpZW50ICovXHJcbiAgJi4tdHlwZS0xIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzVkZWcsIHRyYW5zcGFyZW50IDAlLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKSAxMDAlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEdyYWRpZW50IC0gcmV2ZXJzZSAqL1xyXG4gICYuLXR5cGUtMiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNzVkZWcsIHRyYW5zcGFyZW50IDAlLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKSAxMDAlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEdyYWRpZW50IC0gdmVydGljYWwgKi9cclxuICAmLi10eXBlLTMge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdHJhbnNwYXJlbnQgMCUsIHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpIDEwMCUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogR3JhZGllbnQgLSB2ZXJ0aWNhbCAtIHJldmVyc2UgKi9cclxuICAmLi10eXBlLTQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHRyYW5zcGFyZW50IDAlLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKSAxMDAlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEZsYXRzICovXHJcbiAgJi4tdHlwZS01LFxyXG4gICYuLXR5cGUtNiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAuOTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEZsYXQgLSBQcmltYXJ5ICovXHJcbiAgJi4tdHlwZS01IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRmxhdCAtIFNlY29uZGFyeSAqL1xyXG4gICYuLXR5cGUtNiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBHcmFkaWVudCAtIGN1c3RvbSAqL1xyXG4gICYuLXR5cGUtNyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpLCAuNTUpIDMzJSwgcmdiYSh2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTcpLCAuNjQpIDEwMCUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRmxhdCAtIFByaW1hcnkgLSBmYWRlZCAqL1xyXG4gICYuLXR5cGUtOCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAuMztcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10eXBlLTkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdHJhbnNwYXJlbnQgMjAlLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKSAxMDAlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgJi4tdHlwZS05IHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgdmFyKC0tc3YtY29sLXByaW1hcnktMSkgMCUsIHJnYmEoMzcsIDQwLCA1NywgLjA1KSA1MCUsIHJnYmEoMzcsIDQwLCA1NywgLjA1KSA3MCUsIHJnYmEoMzcsIDQwLCA1NywgLjY0KSAxMDAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubGFuZ3VhZ2Utc2VsZWN0b3Ige1xyXG4gIHNlbGVjdCB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyAvKiBGaXggZm9yIHJlbmRlciBpc3N1ZSB3aXRoaW4gZml4ZWQgcG9zIG1vZGFscyAqL1xyXG4gIH1cclxuXHJcbiAgJl9fY291bnRyeSB7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC4tYWN0aXZlICYge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY291bnRyeS1mbGFnIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5mbGFnIHtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAtMXB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mbGFnIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjcpO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWZvcm0tZmxhZyxcclxuICAgICYuLWxpc3QtZmxhZyB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1mb3JtLWZsYWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLi1kcm9wZG93biB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogN3B4O1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKC43KTtcclxuXHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWxpc3QtZmxhZyB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xMS41cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jb3VudHJ5LFxyXG4gICZfX2xhbmd1YWdlIHtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY291bnRyeS1kcm9wZG93bixcclxuICAmX19sYW5ndWFnZS1kcm9wZG93biB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fZHJvcGRvd24tbGFiZWwge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgfVxyXG5cclxuICAmX19jb3VudHJ5LW5hbWUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC4tY3VzdG9tLi1vcGVuIC5zZWxlY3RfX3ZhbHVlIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktNSknKTtcclxuICB9XHJcblxyXG4gIC4tY3VzdG9tLi1vcGVuIC5zZWxlY3RfX29wdGlvbnMge1xyXG4gICAgbWF4LWhlaWdodDogMjI2cHg7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgfVxyXG5cclxuICAuLWN1c3RvbSAuc2VsZWN0X19vcHRpb24sXHJcbiAgLi1jdXN0b20gLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICB9XHJcblxyXG4gIC4tY2FsYy1sYXlvdXQgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSBjYWxjKDEwMCUgLSAxMHB4KSBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2NoZXZyb24tZG93bicsICdbZmlsbF06IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC04KScpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLi1hY3RpdmUge1xyXG4gIC5sYW5ndWFnZS1zZWxlY3Rvcl9fY291bnRyeS1mbGFnIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAubGFuZ3VhZ2Utc2VsZWN0b3JfX2NvdW50cnktZHJvcGRvd24sXHJcbiAgLmxhbmd1YWdlLXNlbGVjdG9yX19sYW5ndWFnZS1kcm9wZG93biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAubGFuZ3VhZ2Utc2VsZWN0b3JfX2xhbmd1YWdlLWRyb3Bkb3duIHtcclxuICAgIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xyXG5cclxuICAgIC5zZWxlY3RfX29wdGlvbi4tYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuXHJcbiAgLmxhbmd1YWdlLXNlbGVjdG9yX19jb3VudHJ5LWRyb3Bkb3duIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMjBweCAwO1xyXG4gIH1cclxuXHJcbiAgLmxhbmd1YWdlLXNlbGVjdG9yX19jb3VudHJ5LWRyb3Bkb3duIC4tY2FsYy1sYXlvdXQgc2VsZWN0IHtcclxuICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICB9XHJcblxyXG4gIC5sYW5ndWFnZS1zZWxlY3Rvcl9fY291bnRyeS1kcm9wZG93biAuLWNhbGMtbGF5b3V0IC5zZWxlY3RfX3ZhbHVlIHtcclxuICAgIHRleHQtaW5kZW50OiAyNXB4O1xyXG4gIH1cclxuXHJcbiAgLi1jYWxjLWxheW91dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC4tY2FsYy1sYXlvdXQgc2VsZWN0LFxyXG4gIC4tY2FsYy1sYXlvdXQgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXNlY29uZGFyeS0xMCk7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NiUgMWVtO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LWxyZykge1xyXG4gIC5sYW5ndWFnZS1zZWxlY3RvciB7XHJcbiAgICAuLWNhbGMtbGF5b3V0IC5zZWxlY3RfX3ZhbHVlLFxyXG4gICAgLi1jYWxjLWxheW91dCBzZWxlY3Qge1xyXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmxhbmd1YWdlLXNlbGVjdG9yIHtcclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvdW50cnktbmFtZSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY291bnRyeS1kcm9wZG93bixcclxuICAgICZfX2xhbmd1YWdlLWRyb3Bkb3duIHtcclxuICAgICAgbWF4LXdpZHRoOiAzMjBweDtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAubGFuZ3VhZ2Utc2VsZWN0b3Ige1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAmX19kcm9wZG93bi1sYWJlbCxcclxuICAgICZfX2NvdW50cnktZmxhZyxcclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY291bnRyeS1kcm9wZG93bixcclxuICAgICZfX2xhbmd1YWdlLFxyXG4gICAgJl9fbGFuZ3VhZ2UtZHJvcGRvd24ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmX19jb3VudHJ5IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAmX19sYW5ndWFnZSB7XHJcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMXB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvdW50cnktZHJvcGRvd24ge1xyXG4gICAgICBmbGV4OiA5IDEgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuLWhhcy1pY29ucyAuc2VsZWN0X192YWx1ZSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuLWNhbGMtbGF5b3V0IHNlbGVjdCxcclxuICAgIC4tY2FsYy1sYXlvdXQgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4tY2FsYy1sYXlvdXQgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLi1jYWxjLWxheW91dCAuc2VsZWN0X19vcHRpb24ge1xyXG4gICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4tZHJvcGRvd24ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qXHJcbiAgICAgKiBEZXNrdG9wIE5hdGl2ZSA8c2VsZWN0PiBzdHlsaW5nLlxyXG4gICAgICovXHJcblxyXG4gICAgLi1jYWxjLWxheW91dCBzZWxlY3QsXHJcbiAgICAuLWNhbGMtbGF5b3V0IC5zZWxlY3RfX3ZhbHVlIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBjYWxjKDEwMCUgLSAxMHB4KSBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTgpJyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmxhbmd1YWdlLXNlbGVjdG9yX19jb3VudHJ5LWRyb3Bkb3duIC4tY2FsYy1sYXlvdXQgc2VsZWN0IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xhbmd1YWdlIC4tY2FsYy1sYXlvdXQgLnNlbGVjdF9fb3B0aW9ucyB7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubG9naW4tbW9kYWwge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICYuLWFjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBMaXN0IGdyb3VwXHJcblxyXG4gICogQmFzaWMgc3R5bGVzXHJcbiAgKiBMaWdodCBjb2xvdXIgdmFyaWFudFxyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5saXN0LWdyb3VwIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAmX19oZWFkaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udCk7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMjVweDsgLyogYXZvaWQgbGVnaWJpbGl0eSBwcm9ibGVtcyB3aXRoIHRpbnkgdGV4dCBvbiBzb21lIE9TL2Jyb3dzZXIgY29tYm9zICovXHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAmX19zZXQge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gICZfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fbGFiZWwge1xyXG4gICAgQGV4dGVuZCAuZXh0ZW5kZXItaWNvbi1iYXNlO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250KTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udDogMTNweCB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLXMpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICB0b3A6IDhweDtcclxuICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIGlmIHRoaXMgbGFiZWwgYWxzbyBhY3RzIGFzIGFuIGFjdGlvbiwgcHJvdmlkZSBhcHByb3ByaWF0ZSBzdGF0ZXMgKi9cclxuICAgICYuLWFjdGlvbiB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIC4yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faWNvbi1wcmUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XHJcbiAgICB3aWR0aDogMThweDtcclxuICB9XHJcblxyXG4gICZfX2ljb24tcG9zdCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcclxuICAgIHdpZHRoOiAxOHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogTGlnaHQgY29sb3VyIHZhcmlhbnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ubGlzdC1ncm91cC4tbGlnaHQge1xyXG4gIC5saXN0LWdyb3VwX19oZWFkaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICB9XHJcblxyXG4gIC5saXN0LWdyb3VwX19sYWJlbCB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAubGlzdC1ncm91cCB7XHJcbiAgICAmX19sYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBNYXBcclxuXHJcbiAgKiBCYXNpYyBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm1hcCB7XHJcbiAgaGVpZ2h0OiAxNjBweDtcclxufVxyXG5cclxuLyogPj0gc21sIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLm1hcCB7XHJcbiAgICBoZWlnaHQ6IDM2MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLm1hcCB7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gIH1cclxufVxyXG4iLCIubW9kYWwtd2luZG93IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzAsIDcyLCA4MywgLjgpO1xyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXVua25vd24gKi9cclxuICBiYWNrZ3JvdW5kLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHByb3BlcnR5LW5vLXVua25vd24gKi9cclxuICB6LWluZGV4OiA5OTk5OTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgdHJhbnNpdGlvbjogLjNzO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICY6dGFyZ2V0IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIHRyYW5zaXRpb246IC4zcztcclxuICB9XHJcblxyXG4gICZfX2NvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogNzUycHg7XHJcbiAgICBoZWlnaHQ6IDU4NXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAxMCUgYXV0bztcclxuICAgIG9wYWNpdHk6IC44NTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC00KTtcclxuICB9XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgJl9fY2xvc2Uge1xyXG4gICAgQGV4dGVuZCAuZXh0ZW5kZXItaWNvbi1iYXNlO1xyXG5cclxuICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBjbG9zZSwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDE2cHgsIDAsIGNlbnRlcjtcclxuXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDIxcHg7XHJcbiAgICByaWdodDogMTdweDtcclxuICAgIGhlaWdodDogMzJweDtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgY2xvc2UsIHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAxNnB4LCAwLCBjZW50ZXI7XHJcblxyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAubW9kYWwtd2luZG93IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAubW9kYWwtd2luZG93X19jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDk1NnB4O1xyXG4gICAgaGVpZ2h0OiA3NDBweDtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBQYWdlIGJhbm5lclxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA8PSBzbWwgdmlld3BvcnRcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgKiA8PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQmFzZSBTdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucGFnZS1iYW5uZXIge1xyXG4gIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUsXHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIH1cclxuXHJcbiAgJl9faW50cm8ge1xyXG4gICAgQG1peGluIG1peGluLXRleHQtc2VwYXJhdG9yO1xyXG5cclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICB9XHJcblxyXG4gICYuLWNlbnRlciB7XHJcbiAgICAucGFnZS1iYW5uZXJfX2NvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNlY29uZGFyeS1iYW5uZXIge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAucGFnZS1iYW5uZXJfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC4tdHlwZS0xOjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlLWJhbm5lcl9fY2F0ZWdvcnkge1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtYmFubmVyX190aXRsZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAucGFnZS1iYW5uZXJfX2ludHJvIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAucGFnZS1iYW5uZXJfX2ludHJvOjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlLWJhbm5lcl9fY2F0ZWdvcnkge1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIDw9IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gIC5wYWdlLWJhbm5lciB7XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luOiAxNHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5wYWdlLWJhbm5lciB7XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgIG1heC13aWR0aDogNDg1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbWVkKSAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tc2Vjb25kYXJ5LWJhbm5lciB7XHJcbiAgICAgIGhlaWdodDogNTE0cHg7XHJcblxyXG4gICAgICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC4tdHlwZS0xOjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucGFnZS1iYW5uZXJfX2NvbnRlbnQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnBhZ2UtYmFubmVyX19jYXRlZ29yeSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucGFnZS1iYW5uZXJfX3RpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnBhZ2UtYmFubmVyX19pbnRybyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wYWdlLWJhbm5lcl9fY2F0ZWdvcnkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnBhZ2UtYmFubmVyIHtcclxuICAgIHBhZGRpbmc6IDg1cHggdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgfVxyXG5cclxuICAgICZfX3N1YnRpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmcpIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1jZW50ZXIge1xyXG4gICAgICBwYWRkaW5nOiAxODBweCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIDw9IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LW1lZCkge1xyXG4gIC5wYWdlLWJhbm5lciAuYnV0dG9uIHtcclxuICAgIEBleHRlbmQgLmJ1dHRvbi4tc21sO1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFBhZ2UgaGVhZGVyXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIDw9IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQmFzZSBTdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucGFnZS1oZWFkZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgJl9faW50cm8ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgJi4tc2Vjb25kYXJ5LWhlYWRpbmcge1xyXG4gICAgLnBhZ2UtaGVhZGVyX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNlY29uZGFyeSB7XHJcbiAgICAucGFnZS1oZWFkZXJfX3RpdGxlIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtaGVhZGVyX19pbnRybyB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRlcnRpYXJ5IHtcclxuICAgIC5wYWdlLWhlYWRlcl9fdGl0bGUge1xyXG4gICAgICBmb250OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpIDMwcHggdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtaGVhZGVyX19pbnRybyB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1zdi1iYXNlLXNpemUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taGFzLWltYWdlIHtcclxuICAgIC5wYWdlLWhlYWRlcl9fY29udGFpbmVyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlLWhlYWRlcl9fY29udGVudC1pbm5lciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAucGFnZS1oZWFkZXJfX3RpdGxlIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtaGVhZGVyX19pbnRybyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNob3ctaW50cm8tbmFycm93IHtcclxuICAgIC5wYWdlLWhlYWRlcl9faW50cm8ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtaGVhZGVyX19jb250ZW50LWlubmVyIHtcclxuICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlLWhlYWRlcl9fY29udGVudCB7XHJcbiAgICAgIGhlaWdodDogMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA8PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAucGFnZS1oZWFkZXIge1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLW1lZCkgMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXRlcnRpYXJ5IHtcclxuICAgICAgcGFkZGluZzogNTVweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBhZ2UtaGVhZGVyLi1oYXMtaW1hZ2Uge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAucGFnZS1oZWFkZXIge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjMlO1xyXG5cclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5wYWdlLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiA0NXB4IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiA0NXB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXNlY29uZGFyeSB7XHJcbiAgICAgIC5wYWdlLWhlYWRlcl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wYWdlLWhlYWRlcl9faW50cm8ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXRlcnRpYXJ5IHtcclxuICAgICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLXhscmcpIDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tc2Vjb25kYXJ5LWhlYWRpbmcge1xyXG4gICAgICAucGFnZS1oZWFkZXJfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDQ4cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wYWdlLWhlYWRlci4taGFzLWltYWdlIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLnBhZ2UtaGVhZGVyIHtcclxuICAgICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19jb250ZW50LWlubmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCAyMHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmltYWdlLXRyZWF0bWVudCB7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnBhZ2UtaGVhZGVyIHtcclxuICAgIHBhZGRpbmc6IDgwcHg7XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDY1cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg1O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIteHNtbC1taWQpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXNlY29uZGFyeSB7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci14bHJnKSAwIDA7XHJcblxyXG4gICAgICAucGFnZS1oZWFkZXJfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQycHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnBhZ2UtaGVhZGVyX19pbnRybyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdGVydGlhcnkge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIteGxyZykgMDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1zZWNvbmRhcnktaGVhZGluZyB7XHJcbiAgICAgIC5wYWdlLWhlYWRlcl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbHJnIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLnBhZ2UtaGVhZGVyLi1oYXMtaW1hZ2Uge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAucGFnZS1oZWFkZXIge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBoZWlnaHQ6IDYwOHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19jb250ZW50LWlubmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDgwcHg7XHJcbiAgICAgICAgYm90dG9tOiA1MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1NXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDM0cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2ludHJvIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBQcm9wZXJ0eSBjYXJkXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIEZ1bGwgd2lkdGhcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5wcm9wZXJ0eS1jYXJkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIG1heC13aWR0aDogMzIwcHg7XHJcbiAgaGVpZ2h0OiA0MTZweDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTkpO1xyXG5cclxuICAubGluayB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBoZWlnaHQ6IDFweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXJkX19iZyB7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCAycHggcmdiYSh2YXIoLS1zdi1jb2wtc2hhZG93KSwgLjE3KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMztcclxuXHJcbiAgICAmLi1jYXJkLTAge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWNhcmQtMSB7XHJcbiAgICAgIHRvcDogMTAwJTtcclxuICAgICAgbGVmdDogMi41JTtcclxuICAgICAgd2lkdGg6IDk1JTtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tY2FyZC0yIHtcclxuICAgICAgdG9wOiBjYWxjKDEwMCUgKyA4cHgpO1xyXG4gICAgICBsZWZ0OiA1JTtcclxuICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgIHotaW5kZXg6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMTg1cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0xKTtcclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcmlnaHQ6IC01MCU7XHJcbiAgICAgIGJvdHRvbTogLTUwJTtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmX19mb290ZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgICAgJi4tYmcge1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93KTtcclxuICAgICAgICBvcGFjaXR5OiAuMzY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19mb290ZXItbGFiZWxzIHtcclxuICAgICAgZmxleDogMTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAgICAgPiBzcGFuIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNhcmQtbGFiZWwge1xyXG4gICAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICAgICAgICBmb250LXNpemU6IDlweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3YtZ3V0dGVyLXhzbWwpO1xyXG5cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2Fyb3VzZWwgJiB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDEzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZm9vdGVyLWFjdGlvbnMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2Zvb3Rlci1hY3Rpb24ge1xyXG4gICAgICBAZXh0ZW5kIC5leHRlbmRlci1pY29uLWJhc2U7XHJcblxyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuXHJcbiAgICAgICYuLXBhZ2luZyB7XHJcbiAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGdhbGxlcnktY2FyZCwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDE3cHgsIDAsIGxlZnQ7XHJcblxyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tc2F2ZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG5cclxuICAgICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgc3RhciwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDE3cHgsIDAsIGxlZnQ7XHJcblxyXG4gICAgICAgICYuLXNlbGVjdGVkIHtcclxuICAgICAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBzdGFyLXNlbCwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDE3cHgsIDAsIGxlZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLi1zYXZlLWlubGluZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcblxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkOm5vdCguLXNhdmUtaW5saW5lKSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZGV0YWlscyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsZXg6IDE7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIG1hcmdpbjogNDBweCB2YXIoLS1zdi1ndXR0ZXIpIDA7XHJcbiAgfVxyXG5cclxuICAmX19saW5rIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fYWRkcmVzczEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IC8qIEF2ZXJhZ2UgKi9cclxuICB9XHJcblxyXG4gICZfX2FkZHJlc3MyIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIG1heC1oZWlnaHQ6IDU0cHg7XHJcbiAgfVxyXG5cclxuICAmX19zaXplIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luOiBpbml0aWFsO1xyXG4gIH1cclxuXHJcbiAgJl9fcHJpY2Uge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhzbWwpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLWJ1eSAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLW5ldy1kZXZlbG9wbWVudC4tc2VhcmNoLXR5cGUtYnV5ICYge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtZmFybS4tc2VhcmNoLXR5cGUtYnV5ICYsXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtZmFybS4tc2VhcmNoLXR5cGUtcmVudCB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtYnV5ICYsXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLXJlbnQgJixcclxuICAgIC4tZnVsbC13aWR0aC4tdHlwZS1uZXctZGV2ZWxvcG1lbnQuLXNlYXJjaC10eXBlLWJ1eSAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLW5ldy1kZXZlbG9wbWVudC4tc2VhcmNoLXR5cGUtcmVudCAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLWJ1eSAmLFxyXG4gICAgLi1mdWxsLXdpZHRoLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLXJlbnQgJiB7XHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuLWZ1bGwtd2lkdGguLXR5cGUtY29tbWVyY2lhbCAmIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9wZXJ0eS1wcmljZS4tc2hvdy1ndWlkZS4tc2hvdy1wcmljZSB7XHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgLi10eXBlLXJlc2lkZW50aWFsICYsXHJcbiAgICAgIC4tdHlwZS1uZXctZGV2ZWxvcG1lbnQgJiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTI0cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgLi1mdWxsLXdpZHRoLi10eXBlLXJlc2lkZW50aWFsICYsXHJcbiAgICAgIC4tZnVsbC13aWR0aC4tbmV3LWRldmVsb3BtZW50ICYge1xyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19mZWF0dXJlcyxcclxuICAmX19jb250YWN0cyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fZm9vdGVyIHtcclxuICAgIG9yZGVyOiA2O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiA2cHggMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNyk7XHJcbiAgfVxyXG5cclxuICAmX19mb290ZXItbGVmdCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAmX19mb290ZXItcmlnaHQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAucHJvcGVydHktYXR0cmlidXRlOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcm9wZXJ0eS1hdHRyaWJ1dGUge1xyXG4gICAgJi4tcmVzaWRlbnRpYWwsXHJcbiAgICAmLi1ydXJhbCxcclxuICAgICYuLWNvbW1lcmNpYWwsXHJcbiAgICAmLi1zaXplIHtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1zaXplLFxyXG4gICAgJi4tcGVvcGxlLFxyXG4gICAgJi4tZ3JhZGUsXHJcbiAgICAmLi1iYXRocm9vbXMsXHJcbiAgICAmLi1iZWRyb29tcyxcclxuICAgICYuLXJlY2VwdGlvbnMge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1yZXNpZGVudGlhbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tc2l6ZSB7XHJcbiAgICAgIC4tdHlwZS1jb21tZXJjaWFsICYsXHJcbiAgICAgIC4tdHlwZS1mYXJtICYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1wZW9wbGUge1xyXG4gICAgICAuLXR5cGUtcmVzaWRlbnRpYWwgJixcclxuICAgICAgLi10eXBlLW5ldy1kZXZlbG9wbWVudCAmLFxyXG4gICAgICAuLXR5cGUtZmFybSAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZ3JhZGUge1xyXG4gICAgICAuLXR5cGUtcmVzaWRlbnRpYWwgJixcclxuICAgICAgLi10eXBlLW5ldy1kZXZlbG9wbWVudCAmLFxyXG4gICAgICAuLXR5cGUtZmFybSAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYmF0aHJvb21zIHtcclxuICAgICAgLi10eXBlLWNvbW1lcmNpYWwgJiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWJlZHJvb21zIHtcclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIC4tdHlwZS1jb21tZXJjaWFsOm5vdCguLXNlY29uZGFyeS10eXBlLWhvdGVsKTpub3QoLi1zZWNvbmRhcnktdHlwZS1oZWFsdGhjYXJlKSAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICB9XHJcblxyXG4gICAgJi4tcmVjZXB0aW9ucyB7XHJcbiAgICAgIC4tdHlwZS1jb21tZXJjaWFsICYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcm9wZXJ0eS1jYXJkIHtcclxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICAgTW9kaWZpZXJzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5cclxuICAvKiBQcm9wZXJ0eSBmZWF0dXJlcyBpY29ucyB2aXNpYmlsaXR5XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gIC8qXHJcbiAgICAtLSBTZWNvbmRhcnkgdHlwZXNcclxuICAgIC4tc2Vjb25kYXJ5LXR5cGUtZGV2ZWxvcG1lbnRcclxuICAgIC4tc2Vjb25kYXJ5LXR5cGUtaW5kdXN0cmlhbFxyXG4gICAgLi1zZWNvbmRhcnktdHlwZS1sZWlzdXJlXHJcbiAgICAuLXNlY29uZGFyeS10eXBlLW9mZmljZVxyXG4gICAgLi1zZWNvbmRhcnktdHlwZS1oZWFsdGhjYXJlXHJcbiAgICAuLXNlY29uZGFyeS10eXBlLWhvdGVsXHJcbiAgICAuLXNlY29uZGFyeS10eXBlLWludmVzdG1lbnRcclxuICAgIC4tc2Vjb25kYXJ5LXR5cGUtc2VydmljZWQtb2ZmaWNlXHJcbiAgICAuLXNlY29uZGFyeS10eXBlLXJldGFpbFxyXG4gICovXHJcblxyXG4gICYuLXR5cGUtY29tbWVyY2lhbCB7XHJcbiAgICAmLi1zZWNvbmRhcnktdHlwZS1pbmR1c3RyaWFsLFxyXG4gICAgJi4tc2Vjb25kYXJ5LXR5cGUtbGVpc3VyZSxcclxuICAgICYuLXNlY29uZGFyeS10eXBlLXJldGFpbCxcclxuICAgICYuLXNlY29uZGFyeS10eXBlLXNlcnZpY2VkLW9mZmljZSB7XHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAucHJvcGVydHktYXR0cmlidXRlLi1zaXplIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1zZWNvbmRhcnktdHlwZS1ob3RlbCxcclxuICAgICYuLXNlY29uZGFyeS10eXBlLWluZHVzdHJpYWwsXHJcbiAgICAmLi1zZWNvbmRhcnktdHlwZS1sZWlzdXJlLFxyXG4gICAgJi4tc2Vjb25kYXJ5LXR5cGUtcmV0YWlsIHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgIC5wcm9wZXJ0eS1hdHRyaWJ1dGUge1xyXG4gICAgICAgICAgJi4tcGVvcGxlLFxyXG4gICAgICAgICAgJi4tZ3JhZGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXNlY29uZGFyeS10eXBlLW9mZmljZXMsXHJcbiAgICAmLi1zZWNvbmRhcnktdHlwZS1zZXJ2aWNlZC1vZmZpY2Uge1xyXG4gICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgLnByb3BlcnR5LWF0dHJpYnV0ZS4tcmVzaWRlbnRpYWwsXHJcbiAgICAgICAgLnByb3BlcnR5LWF0dHJpYnV0ZS4tcnVyYWwsXHJcbiAgICAgICAgLnByb3BlcnR5LWF0dHJpYnV0ZS4tY29tbWVyY2lhbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXNlY29uZGFyeS10eXBlLWhvdGVsLFxyXG4gICAgJi4tc2Vjb25kYXJ5LXR5cGUtaGVhbHRoY2FyZSB7XHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAucHJvcGVydHktYXR0cmlidXRlLi1iZWRyb29tcyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBDb250ZW50IGhpZXJhcmNoeVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi10eXBlLW5ldy1kZXZlbG9wbWVudCxcclxuICAmLi10eXBlLXJlc2lkZW50aWFsIHtcclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgJl9fcHJpY2Uge1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19hZGRyZXNzMSB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2FkZHJlc3MyIHtcclxuICAgICAgICBvcmRlcjogMztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdHlwZS1mYXJtIHtcclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgJl9fYWRkcmVzczEge1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19hZGRyZXNzMiB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3NpemUge1xyXG4gICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19wcmljZSB7XHJcbiAgICAgICAgb3JkZXI6IDQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIENvbnRlbnQgc3BhY2luZ1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuICAmLi10eXBlLXJlc2lkZW50aWFsLi1zZWFyY2gtdHlwZS1yZW50IHtcclxuICAgIC5kZXRhaWxzX19wcmljZSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10eXBlLWNvbW1lcmNpYWwsXHJcbiAgJi4tdHlwZS1mYXJtIHtcclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgJl9fYWRkcmVzczEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDUwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3NpemUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvcGVydHktYXR0cmlidXRlLi1jb21tZXJjaWFsLFxyXG4gICAgICAucHJvcGVydHktYXR0cmlidXRlLi1ydXJhbCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10eXBlLWNvbW1lcmNpYWwge1xyXG4gICAgLmRldGFpbHNfX3ByaWNlIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXR5cGUtZmFybSB7XHJcbiAgICAuZGV0YWlsc19fcHJpY2Uge1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLXJlbnQsXHJcbiAgJi4tdHlwZS1uZXctZGV2ZWxvcG1lbnQuLXNlYXJjaC10eXBlLXJlbnQsXHJcbiAgJi4tdHlwZS1jb21tZXJjaWFsLFxyXG4gICYuLXR5cGUtZmFybSB7XHJcbiAgICAuZGV0YWlscyB7XHJcbiAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHRoZSByZXN0ICovXHJcbiAgJi4tdHlwZS1uZXctZGV2ZWxvcG1lbnQge1xyXG4gICAgLmxpbms6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTQpO1xyXG4gICAgfVxyXG5cclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgJl9fYWRkcmVzczEge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fYWRkcmVzczIge1xyXG4gICAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG59XHJcblxyXG4ucHJvcGVydHktY2FyZCAuZ2FsbGVyeSB7XHJcbiAgJl9fdmlld3BvcnQge1xyXG4gICAgaGVpZ2h0OiAxOTBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIFBhcmVudCBtb2RpZmllclxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5wcm9wZXJ0eS1jYXJkLi1wYXJlbnQge1xyXG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNCk7XHJcblxyXG4gICYuLXR5cGUtbmV3LWRldmVsb3BtZW50IHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXN2LWNvbC1uZXctZGV2ZWxvcG1lbnQtMik7XHJcbiAgfVxyXG5cclxuICAmLi10eXBlLWZhcm0ge1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tc3YtY29sLWZhcm0pO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlcixcclxuICAuZGV0YWlscyxcclxuICAuZGV0YWlsc19fY29udGVudCxcclxuICAuZGV0YWlsc19fZm9vdGVyIHtcclxuICAgIHotaW5kZXg6IDQ7XHJcbiAgfVxyXG5cclxuICAuZGV0YWlsc19fZm9vdGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogNnB4IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1uZXctZGV2ZWxvcG1lbnQtMSk7XHJcbiAgICBib3JkZXItd2lkdGg6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBGdWxsIHdpZHRoIG1vZGlmaWVyXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGgge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1heC13aWR0aDogaW5pdGlhbDtcclxuICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gIC5jYXJkX19iZyB7XHJcbiAgICAmLi1jYXJkLTEge1xyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICB0b3A6IDIuNSU7XHJcbiAgICAgICAgd2lkdGg6IDVweDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogOTUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tY2FyZC0yIHtcclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgdG9wOiA1JTtcclxuICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogOTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpZGVyIHtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XHJcbiAgfVxyXG5cclxuICAuZGV0YWlscyB7XHJcbiAgICBmbGV4OiBub25lO1xyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMTVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXR5cGUtZmFybSAuZGV0YWlsc19fY29udGVudCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxNDBweDtcclxuICB9XHJcblxyXG4gICYuLXR5cGUtbmV3LWRldmVsb3BtZW50IC5kZXRhaWxzX19hZGRyZXNzMiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGgge1xyXG4gICAgLmRldGFpbHMge1xyXG4gICAgICAvKiBUT0RPOiBSZS1ldmFsdWF0ZSBvbmNlIGVsbGlwc2lzIGlzIGltcGxtZW50ZWQgaW4gc2VhcmNoICovXHJcbiAgICAgICZfX2FkZHJlc3MxLFxyXG4gICAgICAmX19hZGRyZXNzMiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gc21sIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLnByb3BlcnR5LWNhcmQuLWZ1bGwtd2lkdGgge1xyXG4gICAgaGVpZ2h0OiAyNTBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgIC5jYXJkX19iZyB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDFweCAycHggM3B4IHJnYmEodmFyKC0tc3YtY29sLXNoYWRvdyksIC4xNyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAuc2xpZGVyIHtcclxuICAgICAgZmxleDogMSAxIDUwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogaW5pdGlhbDtcclxuXHJcbiAgICAgICZfX2Zvb3Rlci1hY3Rpb24uLXNhdmUgc3BhbiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19mb290ZXItYWN0aW9uLi1zYXZlLWlubGluZSBidXR0b24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZsZXg6IDEgMSA1MCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzNHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2FkZHJlc3MxIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8qIFRPRE86IFJlbW92ZSBvbmNlIGVsbGlwc2lzIHNvbHV0aW9uIGZvciBzZWFyY2ggKi9cclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fYWRkcmVzczIge1xyXG4gICAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3ByaWNlIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19mZWF0dXJlcyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb3JkZXI6IDQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2Zvb3RlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvcGVydHktYXR0cmlidXRlIHtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi10eXBlLXJlc2lkZW50aWFsIHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgIC5wcm9wZXJ0eS1hdHRyaWJ1dGUuLXJlc2lkZW50aWFsIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIGNvbW1lcmNpYWwgJiBmYXJtICovXHJcblxyXG4gICAgJi4tdHlwZS1mYXJtLFxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsIHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICZfX2FkZHJlc3MxIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgICAgbWF4LWhlaWdodDogNTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3NpemUge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvcGVydHktYXR0cmlidXRlLi1ydXJhbCxcclxuICAgICAgICAucHJvcGVydHktYXR0cmlidXRlLi1jb21tZXJjaWFsIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLXJlbnQsXHJcbiAgICAmLi10eXBlLW5ldy1kZXZlbG9wbWVudC4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtY29tbWVyY2lhbCxcclxuICAgICYuLXR5cGUtZmFybSB7XHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1mYXJtLFxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsIHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgIC5wcm9wZXJ0eS1hdHRyaWJ1dGUuLXNpemUge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLXJlbnQge1xyXG4gICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fcHJpY2Uge1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi10eXBlLWZhcm0ge1xyXG4gICAgICBoZWlnaHQ6IDI1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50IHtcclxuICAgICAgaGVpZ2h0OiAyMzVweDtcclxuXHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1uZXctZGV2ZWxvcG1lbnQsXHJcbiAgICAmLi10eXBlLXJlc2lkZW50aWFsLi1zZWFyY2gtdHlwZS1idXksXHJcbiAgICAmLi10eXBlLXJlc2lkZW50aWFsLi1zZWFyY2gtdHlwZS1yZW50IHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICZfX2FkZHJlc3MxIHtcclxuICAgICAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWVsbGlwc2lzO1xyXG5cclxuICAgICAgICAgIG1heC1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5wcm9wZXJ0eS1jYXJkLi1mdWxsLXdpZHRoIHtcclxuICAgIGhlaWdodDogMzEwcHg7XHJcblxyXG4gICAgLnNsaWRlciB7XHJcbiAgICAgICZfX2Zvb3RlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG5cclxuICAgICAgICAmLi1iZyB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLWxhYmVscyB7XHJcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgJi1hY3Rpb24ge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IC8qIG92ZXJyaWRlIG1peGluICovXHJcblxyXG4gICAgICAgICAgJi4tcGFnaW5nIHtcclxuICAgICAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGdhbGxlcnktY2FyZCwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDIwcHgsIDAsIGxlZnQ7XHJcblxyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLi1zYXZlIHtcclxuICAgICAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHN0YXIsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpLCAyMHB4LCAwLCBsZWZ0O1xyXG5cclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuXHJcbiAgICAgICAgICAgICYuLXNlbGVjdGVkIHtcclxuICAgICAgICAgICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgc3Rhci1zZWwsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpLCAyMHB4LCAwLCBsZWZ0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLi1zYXZlLWlubGluZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XHJcblxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luOiA0MHB4IHZhcigtLXN2LWd1dHRlci1tZWQpIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2FkZHJlc3MxIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNTZweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fYWRkcmVzczIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19mb290ZXIge1xyXG4gICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnByb3BlcnR5LWF0dHJpYnV0ZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gICAgJi4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50Li1zZWFyY2gtdHlwZS1yZW50IHtcclxuICAgICAgLmRldGFpbHNfX3ByaWNlIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsLFxyXG4gICAgJi4tdHlwZS1mYXJtLi1zZWFyY2gtdHlwZS1yZW50IHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICZfX2FkZHJlc3MxIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3NpemUge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsLi1zZWFyY2gtdHlwZS1idXksXHJcbiAgICAmLi10eXBlLWNvbW1lcmNpYWwuLXNlYXJjaC10eXBlLXJlbnQge1xyXG4gICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgJl9fc2l6ZSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50Li1zZWFyY2gtdHlwZS1yZW50LFxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsLi1zZWFyY2gtdHlwZS1yZW50LFxyXG4gICAgJi4tdHlwZS1jb21tZXJjaWFsLi1zZWFyY2gtdHlwZS1idXksXHJcbiAgICAmLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLXJlbnQsXHJcbiAgICAmLi10eXBlLWZhcm0uLXNlYXJjaC10eXBlLWJ1eSB7XHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtcmVzaWRlbnRpYWwuLXNlYXJjaC10eXBlLWJ1eSxcclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50Li1zZWFyY2gtdHlwZS1idXkge1xyXG4gICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1mYXJtLi1zZWFyY2gtdHlwZS1yZW50LFxyXG4gICAgJi4tdHlwZS1mYXJtLi1zZWFyY2gtdHlwZS1idXkge1xyXG4gICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgJl9fc2l6ZSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1mYXJtLFxyXG4gICAgJi4tdHlwZS1uZXctZGV2ZWxvcG1lbnQge1xyXG4gICAgICBoZWlnaHQ6IDMxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50LFxyXG4gICAgJi4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtYnV5LFxyXG4gICAgJi4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtcmVudCB7XHJcbiAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAmX19hZGRyZXNzMSB7XHJcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qID49IGxyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5wcm9wZXJ0eS1jYXJkLi1mdWxsLXdpZHRoIHtcclxuICAgIGhlaWdodDogNDAwcHg7XHJcblxyXG4gICAgLmRldGFpbHMge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmctbWlkKSB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fY29udGFjdHMge1xyXG4gICAgICAgIGxlZnQ6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgICAgIGJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgICAgPiBhZGRyZXNzIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTNweDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDk4cHgpO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLW5hbWUge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0LWJvbGQpO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgM3B4O1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLWxvY2F0aW9uIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi1waG9uZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLWxpbmsge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2Zvb3RlciB7XHJcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5cclxuICAgICYuLXR5cGUtY29tbWVyY2lhbCxcclxuICAgICYuLXR5cGUtY29tbWVyY2lhbC4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtY29tbWVyY2lhbC4tc2VhcmNoLXR5cGUtYnV5LFxyXG4gICAgJi4tdHlwZS1yZXNpZGVudGlhbC4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtZmFybS4tc2VhcmNoLXR5cGUtcmVudCxcclxuICAgICYuLXR5cGUtZmFybS4tc2VhcmNoLXR5cGUtYnV5IHtcclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdHlwZS1mYXJtLFxyXG4gICAgJi4tdHlwZS1uZXctZGV2ZWxvcG1lbnQge1xyXG4gICAgICBoZWlnaHQ6IDQwNXB4O1xyXG5cclxuICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgIC5wcm9wZXJ0eS1hdHRyaWJ1dGUuLXJlc2lkZW50aWFsIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgUmljaCBjYXJkIC0gYWx0ZXJuYXRpdmUgdmFyaWFudFxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiBIb3ZlciBwYW5lbFxyXG4gICogSG92ZXIgc3RhdGVcclxuICAqIDw9IHNtbCB2aWV3cG9ydFxyXG4gICogPD0gbWVkIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnJpY2gtY2FyZC4tc2Vjb25kYXJ5IHtcclxuICAvKlxyXG4gIGRldGFpbGVkIGNvbnRlbnRcclxuICAqL1xyXG4gIC5yaWNoLWNhcmRfX2RldGFpbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5jYXJkLWludHJvIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTEpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgfVxyXG5cclxuICAucmljaC1jYXJkX19iZyB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBIb3ZlciBwYW5lbFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5yaWNoLWNhcmRfX2V4dHJhIHtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAuOCk7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250KTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSguOTUpO1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZSB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLW0pLCB0cmFuc2Zvcm0gdmFyKC0tc3YtdHJhbnNpdGlvbi1zcGVlZC1tKSBlYXNlO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgei1pbmRleDogMjtcclxuXHJcbiAgLmNhcmQtdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdC1ib2xkKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtZm9udCkgIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIG1heC1oZWlnaHQ6IDg0cHg7XHJcbiAgfVxyXG5cclxuICAuY29weS1oZWFkaW5nIHtcclxuICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucmljaC1jYXJkX19leHRyYS1pbnRybyB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5yaWNoLWNhcmRfX2V4dHJhLWFjdGlvbnMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBtYXJnaW46IDA7XHJcblxyXG4gIC5jb2wge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICB9XHJcblxyXG4gIC5idXR0b24ge1xyXG4gICAgQGV4dGVuZCAuZXh0ZW5kZXItZWxsaXBzaXM7XHJcblxyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBIb3ZlciBzdGF0ZVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5yaWNoLWNhcmQuLXNlY29uZGFyeSB7XHJcbiAgLnJpY2gtY2FyZF9fY29udGVudCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAucmljaC1jYXJkX19jb250ZW50LFxyXG4gIC5yaWNoLWNhcmRfX2RldGFpbCB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLW0pIGVhc2Utb3V0O1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIC5yaWNoLWNhcmRfX2NvbnRlbnQsXHJcbiAgICAucmljaC1jYXJkX19kZXRhaWwge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5yaWNoLWNhcmRfX2V4dHJhIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlIHZhcigtLXN2LXRyYW5zaXRpb24tc3BlZWQtbSksIHRyYW5zZm9ybSB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLW0pIGVhc2Utb3V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPD0gc21sIHZpZXdwb3J0XHJcbiAgU2NhbGUgc2l6ZXMgdXB3YXJkIGZyb20gaGVyZSBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAucmljaC1jYXJkLi1zZWNvbmRhcnkge1xyXG4gICAgbG9zdC1jZW50ZXI6IDM2MHB4O1xyXG5cclxuICAgIC5yaWNoLWNhcmRfX2V4dHJhLWludHJvIHtcclxuICAgICAgbWF4LWhlaWdodDogOTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5yaWNoLWNhcmRfX2ludHJvIHtcclxuICAgICAgaGVpZ2h0OiA1NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA8PSBtZWQgdmlld3BvcnRcclxuICBTY2FsZSBzaXplcyB1cHdhcmQgZnJvbSBoZXJlIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LW1lZCkge1xyXG4gIC5yaWNoLWNhcmQuLXNlY29uZGFyeSB7XHJcbiAgICBoZWlnaHQ6IDMwNXB4O1xyXG5cclxuICAgIC5yaWNoLWNhcmRfX2RldGFpbCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEhvdmVyIHBhbmVsXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gIC5yaWNoLWNhcmRfX2V4dHJhIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgfVxyXG5cclxuICAucmljaC1jYXJkX19leHRyYS1pbnRybyB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA3NHB4O1xyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZF9fZXh0cmEtYWN0aW9ucyB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgcmlnaHQ6IHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgcGFkZGluZzogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHhscmcgdmlld3BvcnRcclxuICBTdG9wIHNjYWxpbmcgYWxsIHNpemVzIC0gc2V0IGZpeGVkIG1heGltdW1zIG5vd1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5yaWNoLWNhcmQuLXNlY29uZGFyeSB7XHJcbiAgICBoZWlnaHQ6IDQxMHB4O1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgLnJpY2gtY2FyZF9fZGV0YWlsIHtcclxuICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogSG92ZXIgcGFuZWxcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbiAgLnJpY2gtY2FyZF9fZXh0cmEge1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgLmNhcmQtbWV0YV9fZGF0YSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBtYXJnaW46IDAgMCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmRfX2V4dHJhLWludHJvIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1heC1oZWlnaHQ6IDEyNXB4O1xyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZF9fZXh0cmEtYWN0aW9ucyB7XHJcbiAgICBib3R0b206IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgbGVmdDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICByaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgLmNvbDpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBSaWNoIGNhcmQgLSBhbHRlcm5hdGl2ZSB2YXJpYW50XHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIDw9IHNtbCB2aWV3cG9ydFxyXG4gICogPD0gbWVkIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnJpY2gtY2FyZC4tdGVydGlhcnkge1xyXG4gIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpIHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gIC8qXHJcbiAgZGV0YWlsZWQgY29udGVudFxyXG4gICovXHJcbiAgLnJpY2gtY2FyZF9fZGV0YWlsIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZF9fYmcge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtaW50cm8ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNyk7XHJcbiAgfVxyXG5cclxuICAuY2FyZC1tZXRhIHtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuXHJcbiAgICAmLi1hbHQge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucmljaC1jYXJkX19jb250ZW50LFxyXG4gIC5yaWNoLWNhcmRfX2RldGFpbCB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLW0pIGVhc2Utb3V0O1xyXG4gIH1cclxufVxyXG5cclxuLyogPD0gc21sIHZpZXdwb3J0XHJcbiAgU2NhbGUgc2l6ZXMgdXB3YXJkIGZyb20gaGVyZSBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAucmljaC1jYXJkLi10ZXJ0aWFyeSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIDw9IG1lZCB2aWV3cG9ydFxyXG4gIFNjYWxlIHNpemVzIHVwd2FyZCBmcm9tIGhlcmUgYmFzZWQgb24gdmlld3BvcnQgd2lkdGhcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSB7XHJcbiAgLnJpY2gtY2FyZC4tdGVydGlhcnkge1xyXG4gICAgLnJpY2gtY2FyZF9fZGV0YWlsIHtcclxuICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC5yaWNoLWNhcmRfX2NvbnRlbnQge1xyXG4gICAgICBtaW4taGVpZ2h0OiAyMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgbWF4LWhlaWdodDogNzBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHhscmcgdmlld3BvcnRcclxuICBTdG9wIHNjYWxpbmcgYWxsIHNpemVzIC0gc2V0IGZpeGVkIG1heGltdW1zIG5vd1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5yaWNoLWNhcmQuLXRlcnRpYXJ5IHtcclxuICAgIGhlaWdodDogNDA4cHg7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCkgdmFyKC0tc3YtZ3V0dGVyLWxyZykgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgLmNhcmQtbWV0YSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAucmljaC1jYXJkX19kZXRhaWwge1xyXG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgUmljaCBjYXJkIC0gYWx0ZXJuYXRpdmUgdmFyaWFudFxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA+PSBzbWwgdmlld3BvcnRcclxuICAqID49IGxyZyB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucmljaC1jYXJkLi1xdWFydGVybmFyeSB7XHJcbiAgcGFkZGluZzogNTUlIDEwcHggMDtcclxuXHJcbiAgLnJpY2gtY2FyZF9fYmcge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmRfX2RldGFpbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgcGFkZGluZzogMjBweCA4cHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuY2FyZC10aXRsZSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjayk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQpO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLWZvbnQpO1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtaW50cm8ge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XHJcbiAgfVxyXG5cclxuICAuY3RhLWxpbmsge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNztcclxuICB9XHJcbn1cclxuXHJcbi8qID49IDM1MHB4IGN1c3RvbSB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5yaWNoLWNhcmQuLXF1YXJ0ZXJuYXJ5IHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogMzUwcHgpIGFuZCAoLS1zdi12aWV3LXdpZHRoLWx0LWxyZykge1xyXG4gICAgLnJpY2gtY2FyZF9fZGV0YWlsIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gNTEwcHggY3VzdG9tIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnJpY2gtY2FyZC4tcXVhcnRlcm5hcnkge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA1MDBweCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAucmljaC1jYXJkLi1xdWFydGVybmFyeSB7XHJcbiAgICBwYWRkaW5nOiAxNjBweCAxMnB4IDA7XHJcblxyXG4gICAgLnJpY2gtY2FyZF9fYmcge1xyXG4gICAgICBoZWlnaHQ6IDcwJTtcclxuICAgIH1cclxuXHJcbiAgICAucmljaC1jYXJkX19kZXRhaWwge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMjNweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDIzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnJpY2gtY2FyZC4tcXVhcnRlcm5hcnkge1xyXG4gICAgcGFkZGluZy10b3A6IDIwMHB4O1xyXG5cclxuICAgIC5yaWNoLWNhcmRfX2JnIHtcclxuICAgICAgaGVpZ2h0OiA4MCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBscmcgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAucmljaC1jYXJkLi1xdWFydGVybmFyeSB7XHJcbiAgICBwYWRkaW5nOiAxNjBweCAxMnB4IDA7XHJcblxyXG4gICAgLnJpY2gtY2FyZF9fYmcge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLnJpY2gtY2FyZF9fZGV0YWlsIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCAnLi9yaWNoLWNhcmQtc2Vjb25kYXJ5LmNzcyc7XHJcbkBpbXBvcnQgJy4vcmljaC1jYXJkLXRlcnRpYXJ5LmNzcyc7XHJcbkBpbXBvcnQgJy4vcmljaC1jYXJkLXF1YXJ0ZXJuYXJ5LmNzcyc7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFJpY2ggY2FyZFxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA8PSBzbWwgdmlld3BvcnRcclxuICAqIDw9IG1lZCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5yaWNoLWNhcmQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLmNhcmQtdGl0bGUge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtaW50cm8ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtbWV0YSB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgfVxyXG5cclxuICAmX19iZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMik7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDI1MHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIG1haW4gY29udGVudFxyXG4gICovXHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAuY2FyZC1tZXRhIHtcclxuICAgICAgQGV4dGVuZCAuY2FyZC1tZXRhLi1jZW50ZXItYWxpZ247XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGFncy1jb250YWluZXIge1xyXG4gICAgICBAZXh0ZW5kIC5jYXJkLXRhZ3MtY29udGFpbmVyLi1jZW50ZXItYWxpZ247XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIGRldGFpbGVkIGNvbnRlbnRcclxuICAqL1xyXG5cclxuICAmX19kZXRhaWwge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLXNtbCk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAucmljaC1jYXJkLi1zZWNvbmRhcnkgJixcclxuICAgIC5yaWNoLWNhcmQuLXRlcnRpYXJ5ICYge1xyXG4gICAgICBoZWlnaHQ6IDEyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmN0YS1saW5rIHtcclxuICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuY2FyZC10YWdzLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJpY2gtY2FyZC4tZml4ZWQtaGVpZ2h0IHtcclxuICAuY2FyZC10aXRsZSB7XHJcbiAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucmljaC1jYXJkLi1maXhlZC1oZWlnaHQuLXNlY29uZGFyeSB7XHJcbiAgLmNhcmQtdGFncy1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA8PSBzbWwgdmlld3BvcnRcclxuICBTY2FsZSBzaXplcyB1cHdhcmQgZnJvbSBoZXJlIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgLnJpY2gtY2FyZCB7XHJcbiAgICBsb3N0LWNlbnRlcjogNDgwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAmX19iZyB7XHJcbiAgICAgIGhlaWdodDogNjUlO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmQuLWZpeGVkLWhlaWdodCB7XHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbWF4LWhlaWdodDogODBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDY0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAucmljaC1jYXJkLi1maXhlZC1oZWlnaHQge1xyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMTRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIC5yaWNoLWNhcmQuLWZpeGVkLWhlaWdodDpub3QoLi1zZWNvbmRhcnkpOm5vdCguLXRlcnRpYXJ5KSB7XHJcbiAgICAuY2FyZC1pbnRybyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gIC5yaWNoLWNhcmQuLWZpeGVkLWhlaWdodC4tc2Vjb25kYXJ5IHtcclxuICAgIC5jYXJkLWludHJvIHtcclxuICAgICAgbWF4LWhlaWdodDogNjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmQuLWZpeGVkLWhlaWdodC4tdGVydGlhcnkge1xyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC1oZWlnaHQ6IDgzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZC4tZml4ZWQtaGVpZ2h0Li1zZWNvbmRhcnkge1xyXG4gICAgLmNhcmQtdGFncy1jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmQge1xyXG4gICAgJl9fZGV0YWlsIHtcclxuICAgICAgaGVpZ2h0OiAxMzBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIDw9IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LW1lZCkge1xyXG4gIC5yaWNoLWNhcmQge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGEtbGluayB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAvKlxyXG4gICAgZGV0YWlsZWQgY29udGVudFxyXG4gICAgKi9cclxuXHJcbiAgICAmX19kZXRhaWwge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnJpY2gtY2FyZCB7XHJcbiAgICBwYWRkaW5nOiA0OHB4IHZhcigtLXN2LWd1dHRlci1scmcpIDA7XHJcblxyXG4gICAgJl9fYmcge1xyXG4gICAgICBoZWlnaHQ6IDM3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jdGEtbGluayB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAvKlxyXG4gICAgZGV0YWlsZWQgY29udGVudFxyXG4gICAgKi9cclxuXHJcbiAgICAmX19kZXRhaWwge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgICAgaGVpZ2h0OiAyMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yaWNoLWNhcmQuLWZpeGVkLWhlaWdodCB7XHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIGhlaWdodDogMTI4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGFncy1jb250YWluZXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZC4tZml4ZWQtaGVpZ2h0Li1zZWNvbmRhcnkge1xyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXgtaGVpZ2h0OiA2NXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJpY2gtY2FyZC4tZml4ZWQtaGVpZ2h0Li10ZXJ0aWFyeSB7XHJcbiAgICAuY2FyZC10aXRsZSB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEzNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWludHJvIHtcclxuICAgICAgbWF4LWhlaWdodDogNjRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBTZWFyY2ggYm94XHJcblxyXG4gICogQmFzaWMgc3R5bGVzXHJcbiAgKiBBY3RpdmUgc3RhdGUgc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5zZWFyY2gtYm94IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBBY3RpdmUgc3RhdGVcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuLWFjdGl2ZSAuc2VhcmNoLWJveCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgLmN1c3RvbS1pbnB1dCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgJi4tc2VhcmNoIHtcclxuICAgICAgICAmLi1hbHQge1xyXG4gICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktMTMpO1xyXG5cclxuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTEzKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdsb25nLWFycm93LXJpZ2h0JywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBTZWFyY2ggZmlsdGVyXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnNlYXJjaC1maWx0ZXIge1xyXG4gIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcikgMDtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuXHJcbiAgJl9fY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9faGVhZGluZyB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCk7XHJcbiAgfVxyXG5cclxuICAmX19vcHRpb24ge1xyXG4gICAgLmN1c3RvbS1pbnB1dC4tcmFkaW8sXHJcbiAgICAuY3VzdG9tLWlucHV0Li1jaGVja2JveCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1scmcpIHtcclxuICAuc2VhcmNoLWZpbHRlci4tYWN0aXZlIHtcclxuICAgIC5zZWFyY2gtZmlsdGVyIHtcclxuICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gIC5zZWFyY2gtZmlsdGVyLi1hY3RpdmUge1xyXG4gICAgLnNlYXJjaC1maWx0ZXJfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG5cclxuICAgICAgLi1jb29raWUtd2FybmluZyAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjM1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLnNlYXJjaC1maWx0ZXIuLWFjdGl2ZSB7XHJcbiAgICAuc2VhcmNoLWZpbHRlcl9fY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXIteGxyZy1taWQpO1xyXG5cclxuICAgICAgLi1jb29raWUtd2FybmluZyAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTkwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5zZWFyY2gtZmlsdGVyIHtcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmlsdGVycyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fb3B0aW9ucyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICYuLWZpbHRlcnMge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgIC5zZWFyY2gtZmlsdGVyX19vcHRpb246bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fb3B0aW9uIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbC1taWQpO1xyXG5cclxuICAgICAgLmN1c3RvbS1pbnB1dC4tcmFkaW8sXHJcbiAgICAgIC5jdXN0b20taW5wdXQuLWNoZWNrYm94IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYnV0dG9uIHtcclxuICAgICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFNlYXJjaCBwYW5lbFxyXG5cclxuICAqIEJhc2ljIHN0eWxlc1xyXG4gICogQWN0aXZlIHN0YXRlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uc2VhcmNoLXBhbmVsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBBY3RpdmUgc3RhdGVcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1scmcpIHtcclxuICAuLWFjdGl2ZSB7XHJcbiAgICAuc2VhcmNoLXBhbmVsIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpIHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDY0MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zZWxlY3Rpb24tcGFuZWwge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xMCk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gIGxpbmUtaGVpZ2h0OiA0M3B4O1xyXG4gIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuLWZsZXgtY29sdW1uLFxyXG4gIC4tZmxleC1yb3cge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcblxyXG4gIC4tZmxleC1jb2x1bW4ge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC4tZmxleC1yb3cge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhaW5lZCAucm93IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDM7XHJcbiAgfVxyXG5cclxuICAuLWRyb3Bkb3duIHtcclxuICAgIG1hcmdpbjogMCAuNmVtIDAgMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLnNlbGVjdF9fdmFsdWUsXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idXR0b24ge1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgJi4tYWx0IHtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgcGFkZGluZzogMTZweCAwO1xyXG5cclxuICAgIC5zZWxlY3Rpb24tcGFuZWxfX2NvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X192YWx1ZSxcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdjaGV2cm9uLWRvd24nLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKScpO1xyXG4gICAgfVxyXG5cclxuICAgIC4tZHJvcGRvd24ge1xyXG4gICAgICBtYXJnaW46IDAgOHB4IDhweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0aW9uLXBhbmVsX19idXR0b24ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luOiAxNnB4IDAgMDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1hbHQuLWJyZWFkY3J1bWItYWRqdXN0bWVudCB7XHJcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3YtZ3V0dGVyLXhscmctbWlkKTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5zZWxlY3Rpb24tcGFuZWwge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG5cclxuICAgIC4tZHJvcGRvd24ge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0aW9uLXBhbmVsLi1hbHQge1xyXG4gICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiA3MnB4IDAgMjRweDtcclxuXHJcbiAgICAuc2VsZWN0aW9uLXBhbmVsX19jb250ZW50IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuc2VsZWN0aW9uLXBhbmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxuXHJcbiAgICAuLWRyb3Bkb3duIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAuM2VtO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuc2VsZWN0aW9uLXBhbmVsIHtcclxuICAgICYuLWFsdCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTVweDtcclxuICAgICAgcGFkZGluZzogMjYwcHggMCA2NXB4O1xyXG5cclxuICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyMTVweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNoYXJlLXByaWNlIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTgpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNTVweDtcclxuICBwYWRkaW5nOiAwIDE1cHg7XHJcblxyXG4gICZfX2NvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLXN2LW1heC13aWR0aCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcblxyXG4gICZfX2xhYmVsLFxyXG4gICZfX3ZhbHVlLFxyXG4gICZfX2luZm8tY3RhLW5hcnJvdyxcclxuICAmX19pbmZvLWN0YS13aWRlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgfVxyXG5cclxuICAmX19sYWJlbCB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNlY29uZGFyeS04KTtcclxuICB9XHJcblxyXG4gICZfX2N1cnJlbnQtdmFsdWUge1xyXG4gICAgZmxleDogMSAwIDY1JTtcclxuICB9XHJcblxyXG4gICZfX21hcmtldC1jYXAsXHJcbiAgJl9fbGFzdC1jbG9zZSxcclxuICAmX19pbmZvLWN0YS13aWRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmX19pbmZvLWN0YS1uYXJyb3csXHJcbiAgJl9faW5mby1jdGEtd2lkZSB7XHJcbiAgICBmbGV4OiAxIDEgMzUlO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgfVxyXG5cclxuICAmX19pY29uIHtcclxuICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTNweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAmLi1jYXJldC11cCB7IGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2FyZXQtdXAnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtZ3JlZW4pJyk7IH1cclxuICAgICYuLWNhcmV0LXJpZ2h0IHsgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdjYXJldC1yaWdodCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpJyk7IH1cclxuICAgICYuLWNhcmV0LWRvd24geyBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2NhcmV0LWRvd24nLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KScpOyB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC14c21sKSB7XHJcbiAgLnNoYXJlLXByaWNlIHtcclxuICAgICZfX2xhYmVsIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuc2hhcmUtcHJpY2Uge1xyXG4gICAgJl9fbWFya2V0LWNhcCxcclxuICAgICZfX2xhc3QtY2xvc2UsXHJcbiAgICAmX19jdXJyZW50LXZhbHVlLFxyXG4gICAgJl9faW5mby1jdGEtbmFycm93LFxyXG4gICAgJl9faW5mby1jdGEtd2lkZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8tY3RhLW5hcnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8tY3RhLXdpZGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnNoYXJlLXByaWNlIHtcclxuICAgICZfX2xhYmVsLFxyXG4gICAgJl9fdmFsdWUsXHJcbiAgICAmX19pbmZvLWN0YS1uYXJyb3csXHJcbiAgICAmX19pbmZvLWN0YS13aWRlIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8tY3RhLW5hcnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8tY3RhLXdpZGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbHJnIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLnNoYXJlLXByaWNlIHtcclxuICAgICZfX2luZm8tY3RhLW5hcnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW5mby1jdGEtd2lkZSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiLnNoYXJlLXRoaXMtYXJ0aWNsZSB7XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXIteGxyZykgYXV0byAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJl9fbGluZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmcpIGF1dG8gMDtcclxuICAgIHdpZHRoOiA1NzBweDtcclxuICB9XHJcblxyXG4gICZfX3RleHQge1xyXG4gICAgaGVpZ2h0OiAxMTNweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogMzhweDtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLWxyZykgYXV0byAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDU3MHB4O1xyXG4gIH1cclxuXHJcbiAgJl9fc2hhcmUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpIGF1dG8gMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA0MDBweDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgd2lkdGg6IDU3MHB4O1xyXG4gICAgICBtYXgtd2lkdGg6IDU3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYtaXRlbSB7XHJcbiAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuXHJcbiAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEpO1xyXG4gICAgICB0ZXh0LWluZGVudDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIGhlaWdodDogNjVweDtcclxuICAgICAgICB3aWR0aDogNjVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tZW1haWwge1xyXG4gICAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBlbWFpbCwgdmFyKC0tc3YtY29sLXByaW1hcnktMiksIDE4cHgsIDAsIGNlbnRlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tZmFjZWJvb2sge1xyXG4gICAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBmYWNlYm9vaywgdmFyKC0tc3YtY29sLXByaW1hcnktMiksIDE4cHgsIDAsIGNlbnRlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tdHdpdHRlciB7XHJcbiAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHR3aXR0ZXIsIHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAxOHB4LCAwLCBjZW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuLWxpbmtlZGluIHtcclxuICAgICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgbGlua2VkaW4sIHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAxOHB4LCAwLCBjZW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuLWdvb2dsZS1wbHVzIHtcclxuICAgICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgZ29vZ2xlLXBsdXMsIHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpLCAxOHB4LCAwLCBjZW50ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuLXBpbnRlcmVzdCB7XHJcbiAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHBpbnRlcmVzdCwgdmFyKC0tc3YtY29sLXByaW1hcnktMiksIDE4cHgsIDAsIGNlbnRlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4td2VpYm8ge1xyXG4gICAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyB3ZWlibywgdmFyKC0tc3YtY29sLXByaW1hcnktMiksIDE4cHgsIDAsIGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY29weSB7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1zaGFkb3cpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCAwIHJnYmEoMCwgMCwgMCwgLjUpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1zbWwtbWlkKSBhdXRvIDA7XHJcbiAgICB3aWR0aDogNDAwcHg7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIHdpZHRoOiA1NzBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLXVybCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXItc21sKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHdpZHRoOiA0NzBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLWJ1dHRvbiB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpO1xyXG4gICAgICB3aWR0aDogMTAwcHg7XHJcblxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuXHJcbiAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGNoYWluLCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSwgMTJweCwgMCwgbGVmdDtcclxuXHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXN2LWd1dHRlci1scmctbWlkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnNoYXJlLXRoaXMtYXJ0aWNsZSB7XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLXhscmctbWlkKSBhdXRvIDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluZSB7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmctbWlkKSBhdXRvIDA7XHJcbiAgICAgIHdpZHRoOiA3MjRweDtcclxuICAgIH1cclxuXHJcbiAgICAmX190ZXh0IHtcclxuICAgICAgaGVpZ2h0OiAxNDRweDtcclxuICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpO1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmctbWlkKSBhdXRvIDA7XHJcbiAgICAgIHdpZHRoOiA3MjRweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19zaGFyZSB7XHJcbiAgICAgIG1hcmdpbjogNzNweCBhdXRvIDA7XHJcbiAgICAgIHdpZHRoOiA3MjRweDtcclxuICAgICAgbWF4LXdpZHRoOiA3MjRweDtcclxuXHJcbiAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgaGVpZ2h0OiA4NXB4O1xyXG4gICAgICAgIHdpZHRoOiA4NXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29weSB7XHJcbiAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1zdi1ndXR0ZXIteGxyZykgKyAycHgpO1xyXG4gICAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1tZWQpIGF1dG8gMDtcclxuICAgICAgd2lkdGg6IDcyNHB4O1xyXG5cclxuICAgICAgJi11cmwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXN2LWd1dHRlci14bHJnKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gICAgICAgIHdpZHRoOiA1OTlweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi1idXR0b24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXN2LWd1dHRlci14bHJnKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gICAgICAgIHdpZHRoOiAxMjVweDtcclxuXHJcbiAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1zdi1ndXR0ZXIteGxyZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgU29jaWFsXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5zb2NpYWwge1xyXG4gIGxvc3QtdXRpbGl0eTogY2xlYXJmaXg7XHJcblxyXG4gICZfX2hlYWRpbmcge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1mb250KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgJl9fZ3JvdXAge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogNnB4IDAgMDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19pdGVtIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fYWN0aW9uIHtcclxuICAgIEBleHRlbmQgLmV4dGVuZGVyLXRleHQtaGlkZTtcclxuICAgIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuXHJcbiAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICB3aWR0aDogMzBweDtcclxuXHJcbiAgICAmLi10d2l0dGVyIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHR3aXR0ZXIsIHZhcigtLXN2LWNvbC1mb250KSwgMjVweCwgMCwgY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWZhY2Vib29rIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGZhY2Vib29rLCB2YXIoLS1zdi1jb2wtZm9udCksIDI1cHgsIDAsIGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLi15b3V0dWJlIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHlvdXR1YmUtcGxheSwgdmFyKC0tc3YtY29sLWZvbnQpLCAyNXB4LCAwLCBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc29jaWFsLi1pbnZlcnNlIHtcclxuICAuc29jaWFsX19oZWFkaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICB9XHJcblxyXG4gIC5zb2NpYWxfX2FjdGlvbiB7XHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICYuLXR3aXR0ZXIge1xyXG4gICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgdHdpdHRlciwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDI1cHgsIDAsIGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLi1mYWNlYm9vayB7XHJcbiAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBmYWNlYm9vaywgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDI1cHgsIDAsIGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLi15b3V0dWJlIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHlvdXR1YmUtcGxheSwgdmFyKC0tc3YtY29sLWhpZ2hsaWdodCksIDI1cHgsIDAsIGNlbnRlcjtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG59XHJcblxyXG4uc29jaWFsLi1ibG9jayB7XHJcbiAgLnNvY2lhbF9faXRlbSB7XHJcbiAgICB3aWR0aDogMzZweDtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIG1hcmdpbjogMCAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gIH1cclxuXHJcbiAgLnNvY2lhbF9fYWN0aW9uIHtcclxuICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgaGVpZ2h0OiAzNnB4O1xyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgJi4tdHdpdHRlciB7XHJcbiAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyB0d2l0dGVyLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKSwgMjBweCwgMCwgY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWZhY2Vib29rIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGZhY2Vib29rLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKSwgMjBweCwgMCwgY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLXlvdXR1YmUge1xyXG4gICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgeW91dHViZS1wbGF5LCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKSwgMjBweCwgMCwgY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLXdlaWJvIHtcclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHdlaWJvLCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKSwgMjBweCwgMCwgY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5zb2NpYWwge1xyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBUYWJzIHBhbmVsXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqIE1vZGlmaWVyc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4udGFicy1wYW5lbCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRhYi1jYXJkIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpO1xyXG4gIH1cclxuXHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmX19pbnRybyB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3YtZ3V0dGVyKSAwIDA7XHJcbiAgfVxyXG5cclxuICAmX19oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1ib2xkKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDFjaDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAuaW1hZ2Uge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAudGFicy1wYW5lbCB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgd2lkdGg6IGluaXRpYWw7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcblxyXG4gIC50YWItY2FyZCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkICZfX3RpdGxlLFxyXG4gICAgJjpsYXN0LWNoaWxkICZfX2ludHJvIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2hlYWRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcclxuICAgICAgZmxleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSxcclxuICAgICZfX2ludHJvIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgcGFkZGluZzogMThweCAxMCU7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEFsdGVybmF0aXZlIHN0eWxlXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnRhYnMtcGFuZWwuLWFsdCB7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICB3aWR0aDogaW5pdGlhbDtcclxuICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gIC50YWItY2FyZCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0ycHg7XHJcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2hlYWRlciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1pbnB1dC10ZXh0KTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDQzcHg7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgIG9wYWNpdHk6IC42O1xyXG4gICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFiLWNhcmQuLWFjdGl2ZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDA7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpOyAvKiBUT0RPIFVwZGF0ZSAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEwKTtcclxuXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIC50YWItY2FyZF9fdGl0bGUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcblxyXG4gICYuc3BhY2VyIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi50YWJzLXBhbmVsLWNvbnRhaW5lci4tYWx0IHtcclxuICBwYWRkaW5nLXRvcDogMzJweDtcclxufVxyXG5cclxuLnRhYnMtcGFuZWwtY29udGFpbmVyIHtcclxuICAmX193cmFwIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTYpOyAvKiBUT0RPIFVwZGF0ZSAqL1xyXG4gIH1cclxufVxyXG5cclxuLyogQ29udGVudCBuYXYgc3R5bGVcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4udGFicy1wYW5lbC4tY29udGVudC1uYXYge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgd2lkdGg6IGluaXRpYWw7XHJcbiAgdHJhbnNmb3JtOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS02KTtcclxuXHJcbiAgLnRhYi1jYXJkIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDAgMTJweDtcclxuICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTQpO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFiLWNhcmQuLWFjdGl2ZSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAudGFiLWNhcmRfX3RpdGxlIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICB9XHJcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLnRhYnMtcGFuZWwuLWFsdCB7XHJcbiAgICAudGFiLWNhcmQge1xyXG4gICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFicy1wYW5lbC4tY29udGVudC1uYXYge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgIC50YWItY2FyZCB7XHJcbiAgICAgIGZsZXg6IDA7XHJcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICAgIHBhZGRpbmc6IDE0cHggdmFyKC0tc3YtZ3V0dGVyLXhscmcpIDE1cHg7XHJcblxyXG4gICAgICAmX19oZWFkZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAudGFicy1wYW5lbC4tYWx0IHtcclxuICAgIC50YWItY2FyZCB7XHJcbiAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5qcy10YWItY29udGVudC4tYWN0aXZlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmpzLXRhYi1jb250ZW50Li1pbmFjdGl2ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIuYXV0aG9yLXBhbmVsIHtcclxuICBAZXh0ZW5kIC5jb250ZW50LXBhbmVsO1xyXG4gIEBleHRlbmQgLmNvbnRlbnQtcGFuZWwuLXN0eWxlZDtcclxuXHJcbiAgbWluLXdpZHRoOiAzMDBweDtcclxuXHJcbiAgLmNhcmQuLW1pY3JvIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDVweCAwICFpbXBvcnRhbnQ7IC8qIG92ZXJyaWRlIC5jYXJkLi1taWNybyAqL1xyXG4gIH1cclxuXHJcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIC5jYXJkLi1leHBlcnQuLW1pY3JvIC5jYXJkLXRpdGxlIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcblxyXG4gIC5kaXZpZGVyIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIC5jYXJkLXRhZ3MtY29udGFpbmVyIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gICZfX3Rlcm0ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQtYm9sZCk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgJi4tcmVhZC10aW1lIHtcclxuICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2Rlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAmLi1yZWFkLXRpbWUge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSB7XHJcbiAgLmF1dGhvci1wYW5lbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5hdXRob3ItcGFuZWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBVbmlxdWUgc2VsbGluZyBwb2ludFxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiBDaGlsZCBkaWZmZXJlbmNlcyAtIGJhc2VkIG9uIG9yZGVyIG9mIHVzcHNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gc21sIDwgbWVkIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICAqID49IGxyZyB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHksIGZ1bmN0aW9uLXdoaXRlc3BhY2UtYWZ0ZXIgKi9cclxuXHJcbi51c3Age1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcblxyXG4gICZfX2ltYWdlcnkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLW1lZCk7XHJcbiAgfVxyXG5cclxuICAmX19pbWFnZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuXHJcbiAgICAmLi1wcmltYXJ5IHtcclxuICAgICAgbWFyZ2luLXRvcDogMTguNiU7XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4tc2Vjb25kYXJ5IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgJl9faG9yaXpvbnRhbC1ydWxlIHtcclxuICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgaGVpZ2h0OiAzcHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjJweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAmX19ib2R5IHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1tZWQpO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtNSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBDaGlsZCBkaWZmZXJlbmNlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi51c3Age1xyXG4gICY6bnRoLWNoaWxkKDEpIHtcclxuICAgIC51c3BfX2ltYWdlIHtcclxuICAgICAgJi4tcHJpbWFyeSB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHZhcigtLXN2LXVybC1pbWFnZSkvb3ZlcmxheXMvdXNwLTAxLnN2Zyk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNzUlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMSUgNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpudGgtY2hpbGQoMiksXHJcbiAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgLnVzcF9faW1hZ2Uge1xyXG4gICAgICAmLi1wcmltYXJ5IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE4LjYlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLi1zZWNvbmRhcnkge1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6bnRoLWNoaWxkKDIpIHtcclxuICAgIC51c3BfX2ltYWdlIHtcclxuICAgICAgJi4tc2Vjb25kYXJ5IHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAudXNwX19pbWFnZSB7XHJcbiAgICAgICYuLXByaW1hcnkge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCh2YXIoLS1zdi11cmwtaW1hZ2UpL292ZXJsYXlzL3VzcC0wMy5zdmcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDMwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzIlIDQ0JTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC51c3Age1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICAgIH1cclxuXHJcbiAgICA+IDpsYXN0LWNoaWxkIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ltYWdlcnksXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZXJ5IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faG9yaXpvbnRhbC1ydWxlIHtcclxuICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICAmLi1wcmltYXJ5IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNi41JTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA1JTtcclxuICAgICAgcGFkZGluZy1yaWdodDogNSU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XHJcbiAgICAgIG1heC13aWR0aDogODYlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogQ2hpbGQgZGlmZmVyZW5jZXMgKi9cclxuICAudXNwIHtcclxuICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cclxuICAgICAgPiA6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC51c3BfX2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMyU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgIC51c3BfX2ltYWdlIHtcclxuICAgICAgICAmLi1wcmltYXJ5IHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAudXNwIHtcclxuICAgID4gOmZpcnN0LWNoaWxkIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faG9yaXpvbnRhbC1ydWxlIHtcclxuICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDgwcHggODBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2JvZHkge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICAmLi1wcmltYXJ5IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBDaGlsZCBkaWZmZXJlbmNlcyAqL1xyXG4gIC51c3Age1xyXG4gICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICA+IDpsYXN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgLnVzcF9faW1hZ2Uge1xyXG4gICAgICAgICYuLXByaW1hcnkge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IGxyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC51c3Age1xyXG4gICAgJjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAudXNwX19pbWFnZSB7XHJcbiAgICAgICAgJi4tcHJpbWFyeSB7XHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTg3cHggMjEycHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAudXNwX19pbWFnZSB7XHJcbiAgICAgICAgJi4tcHJpbWFyeSB7XHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTk1cHggMTkxcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zNDA0IHtcclxuICAmX19jb250ZW50IHtcclxuICAgIG1hcmdpbjogNDBweCAwO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudC1pbWFnZSxcclxuICAmX19jb250ZW50LXRleHQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudC1pbWFnZS1jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudC1oZWFkaW5nIHtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50LW1lc3NhZ2Uge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA1MDBweCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgLnM0MDQge1xyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgIG1heC13aWR0aDogMTA0MHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBtYXJnaW46IDQwcHggYXV0bztcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50LWltYWdlIHtcclxuICAgICAgZmxleDogMjtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50LXRleHQge1xyXG4gICAgICBmbGV4OiA2O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuczQwNCB7XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMTIwcHggYXV0byA0MDBweDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50LWltYWdlIHtcclxuICAgICAgZmxleDogMztcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50LXRleHQge1xyXG4gICAgICBmbGV4OiA1O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuczQwNCB7XHJcbiAgICAmX19jb250ZW50LWhlYWRpbmcge1xyXG4gICAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5hcnRpY2xlIHtcclxuICAmX19hYnN0cmFjdCB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgJl9faW50cm8ge1xyXG4gICAgQGV4dGVuZCAubGVhZGluZy1pbnRybztcclxuICB9XHJcblxyXG4gICZfX2RpdmlkZXIge1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmcpIDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgLmFydGljbGUge1xyXG4gICAgJl9fcmVsYXRlZCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1pbnB1dC1ib3JkZXIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSB7XHJcbiAgLmFydGljbGUge1xyXG4gICAgJl9faW50cm8ge1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm9keSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLmFydGljbGUge1xyXG4gICAgJl9fYXV0aG9yIHtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbWVkKSAwIDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19yZWxhdGVkIHtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbWVkKSAwIDAgdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgICAucGFuZWwtaGVhZGluZyB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5hcnRpY2xlIHtcclxuICAgICZfX2ludHJvIHtcclxuICAgICAgJi4tYWJzdHJhY3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2RpdmlkZXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuYXJ0aWNsZSB7XHJcbiAgICAmX19sZWFkaW5nLWltYWdlIHtcclxuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgQXdhcmQgcm93XHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEJhc2UgU3R5bGVzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmF3YXJkLXJvdyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXNtbCk7XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE0O1xyXG4gIH1cclxufVxyXG5cclxuLyogPj0gc21sIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLmF3YXJkLXJvdyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuXHJcbiAgICAmX19oZWFkZXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYnV0dG9uIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblxyXG4gICAgICAuYnV0dG9uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuYXdhcmQtcm93IHtcclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIENhcmQgbGlzdGluZ3NcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQmFzZSBzdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY2FyZC1saXN0aW5ncyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgfVxyXG5cclxuICAuY2FyZC4tbGlzdGluZy1yb3cge1xyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5jYXJkLWxpc3RpbmdzIHtcclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogNDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZC4tbGlzdGluZy1yb3cge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbWVkKSAwIDA7XHJcbiAgICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLXhzbWwpIDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IG1lZCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5jYXJkLWxpc3RpbmdzIHtcclxuICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuY29udGFjdC1hZ2VudC1mb3JtIHtcclxuICAuY3VzdG9tLWlucHV0LFxyXG4gIC5idXR0b24ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgLyogRml4IGZvciByZW5kZXIgaXNzdWUgd2l0aGluIGZpeGVkIHBvcyBtb2RhbHMgKi9cclxuICB9XHJcblxyXG4gIC5idXR0b24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuLWNoZWNrYm94IHtcclxuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICB9XHJcblxyXG4gIGlucHV0LFxyXG4gIHNlbGVjdCxcclxuICB0ZXh0YXJlYSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTkpO1xyXG5cclxuICAgIC4tZGFyayAmIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faGVhZGVyLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJi4tZGFyayB7XHJcbiAgICBpbnB1dCxcclxuICAgIHNlbGVjdCxcclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTE5KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zdWNjZXNzZnVsLXJlc3VsdCB7XHJcbiAgJl9fbWVzc2FnZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogNzAlO1xyXG4gICAgbWluLWhlaWdodDogNTBweDtcclxuICAgIHBhZGRpbmctbGVmdDogNjRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1ib29rKTtcclxuXHJcbiAgICAuYWNjb3VudCAmIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogNTBweDtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiA0OHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygndmFsaWQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKScpO1xyXG5cclxuICAgICAgLmFjY291bnQgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCd2YWxpZCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1ncmVlbi0yKScpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29sOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuY29udGFjdC1vZmZpY2UtZm9ybSB7XHJcbiAgLmZvcm0tZ3JvdXAtY29udHJvbHMge1xyXG4gICAgaW5wdXQsXHJcbiAgICBzZWxlY3QsXHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLXNlY29uZGFyeS05KTtcclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLi1jaGVja2JveCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgQ1RBIEJsb2NrIHJvd1xyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA+PSBzbWwgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQmFzZSBTdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY3RhLWJsb2NrLXJvdyB7XHJcbiAgLmNvbDpsYXN0LWNoaWxkIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuY3RhLWJsb2NrLXJvdyB7XHJcbiAgICAmX193cmFwIHtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb2w6bGFzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQge1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmN0YS1ibG9jay1yb3cgKyAuY3RhLWJsb2NrLXJvdyAuY3RhLWJsb2NrLXJvd19fd3JhcCB7XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEV4cGFuZGFibGUgbGlzdFxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5leHBhbmRhYmxlLWxpc3Qge1xyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmX19pdGVtIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICAmX19pdGVtICsgLmV4cGFuZGFibGUtbGlzdF9faXRlbSB7XHJcbiAgICAuZXhwYW5kYWJsZS1pdGVtIHtcclxuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAmLi1uby1ib3JkZXItdG9wIC5leHBhbmRhYmxlLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQgLmV4cGFuZGFibGUtaXRlbSB7XHJcbiAgICBib3JkZXItdG9wOiAwO1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEhlYWRlclxyXG5cclxuICAqIFNtYWxsZXN0IHZpZXdwb3J0IChtb2JpbGUgZmlyc3QpXHJcbiAgKiA+PSBNZWRpdW0gdmlld3BvcnRcclxuICAqID49IExhcmdlIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFNtYWxsZXN0IHZpZXdwb3J0IChtb2JpbGUgZmlyc3QpXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3RlciB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTIpO1xyXG4gIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTQpO1xyXG5cclxuICAmLi1jdGEtbGlua3Mge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDc4cHg7XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTQpO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tc3YtdHJhbnNpdGlvbi1zcGVlZC1zKSBlYXNlLW91dDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faW5uZXIge1xyXG4gICAgbG9zdC11dGlsaXR5OiBjbGVhcmZpeDtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpIDA7XHJcbiAgfVxyXG5cclxuICAmX19oZWFkZXIge1xyXG4gICAgLmZvb3Rlcl9faW5uZXIge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuXHJcbiAgICAuc21hbGxwcmludCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19oZWFkaW5nIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIGZvbnQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCkgMTZweC8xLjI1IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyKSAwIDEycHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fc3ViaGVhZGluZyB7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xyXG4gICAgbWFyZ2luOiAwIDAgNnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAmX19saXN0IHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gICZfX2xpc3QtaXRlbSB7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9faW5mbyB7XHJcbiAgICAuZm9vdGVyX19saXN0IHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3RlciB7XHJcbiAgICAgICZfX2hlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zb2NpYWwge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAuZm9vdGVyIHtcclxuICAgIC5zb2NpYWwge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSBhdXRvIDA7XHJcblxyXG4gICAgICAmX19ncm91cCB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBNZWRpdW0gdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuZm9vdGVyIHtcclxuICAgICZfX2lubmVyIHtcclxuICAgICAgcGFkZGluZy10b3A6IDMycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGlzdCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0LWl0ZW0ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAuZm9vdGVyX19saXN0LWl0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2hlYWRpbmcge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gTWVkaXVtIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLmZvb3RlciB7XHJcbiAgICAmX19pbmZvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmX19oZWFkaW5nIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0LWl0ZW0ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmX19pbmZvIHtcclxuICAgICAgLmZvb3Rlcl9fbGlzdC1pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBscmcgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAuZm9vdGVyIHtcclxuICAgICYuLWN0YS1saW5rcyB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuZm9ybS1zdWJtaXNzaW9uLXRoYW5rcyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMzQ1cHg7XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBHYWxsZXJ5XHJcblxyXG4gICogQmFzZVxyXG4gICogJ0FjdGl2ZScgc3RhdGUgYW5pbWF0aW9uc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZ2FsbGVyeSB7XHJcbiAgJl9fdmlld3BvcnQge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fdHJhY2sge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvKiBTbyBhcyB0byBmb3JjZSBjbGljayBoYW5kbGVyIG5vdCB0byBkcmlsbCBkb3duIHRvIHRoaXMgZWxlbWVudCAqL1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGN1YmljLWJlemllcigwLCAuNiwgLjYsIDEpIC4zcztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gICZfX2NhcHRpb24ge1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXIpIDAgMDtcclxuICAgIHBhZGRpbmc6IDAgMTE2cHggMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICYtY29weSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXN2LXRpbWluZy1jdWJpYy1iZXppZXIpIC40cztcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBib3R0b206IDUwJTtcclxuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tc3YtdGltaW5nLWN1YmljLWJlemllcikgLjNzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fcGFnaW5nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGZvbnQtc3R5bGU6IGluaGVyaXQ7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcblxyXG4gICAgLnByb3BlcnR5LWNhcmQgJiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSh2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSwgMCkgMCUsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpIDEwMCUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbmF2IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgJi1pdGVtIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0ZXh0LWluZGVudDogLTEwMDAlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHdpZHRoOiAzMyU7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnZ2FsbGVyeS1hcnJvdycsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyksIHN2ZygnZ2FsbGVyeS1hcnJvdy1zaGFkb3cnLCAnW2ZpbGxdOiByZ2JhKHZhcigtLXN2LWNvbC1zaGFkb3cpLCAuODUpJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTUlIGNlbnRlciwgMTQlIGNhbGMoNTAlICsgMnB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tcHJldiB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLi1pbmFjdGl2ZTo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jb250cm9sLWxhYmVsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcclxuICB9XHJcblxyXG4gICZfX3NsaWRlIHtcclxuICAgIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1sdC1tZWQpIHtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIHZhcigtLXN2LWd1dHRlcikpOyAvKiBtaW51cyB0aGUgc3BhY2luZyBhcHBsaWVkIHRvIHRoZSBtYWluIGNvbnRhaW5lciAqL1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYnVzeSB7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2xpZ2h0Ym94IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IHZhcigtLXN2LXotdG9wKTtcclxuICB9XHJcblxyXG4gICZfX2xpZ2h0Ym94LFxyXG4gICZfX2xpZ2h0Ym94LXZlaWwge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gICZfX2xpZ2h0Ym94LXZlaWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKSwgLjgpO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCBzdmcoJ2Nsb3NlJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAyMnB4O1xyXG4gICAgICB3aWR0aDogMjVweDtcclxuICAgICAgaGVpZ2h0OiAyNXB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICAgIHJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qICdBY3RpdmUnIHN0YXRlIGFuaW1hdGlvbnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5nYWxsZXJ5IFthcmlhLWhpZGRlbj1cImZhbHNlXCJdIHtcclxuICAuZ2FsbGVyeV9fY2FwdGlvbiB7XHJcbiAgICAmLWNvcHkge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiAnTGlnaHRib3gnIE92ZXJyaWRlc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmdhbGxlcnlfX2xpZ2h0Ym94IHtcclxuICBwYWRkaW5nOiB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LWxyZykgMCAwO1xyXG5cclxuICAuaW1hZ2UtdHJlYXRtZW50IHtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAodmFyKC0tc3YtaGVhZGVyLWhlaWdodC1scmcpICogMikpOyAvKiBUbyBlbnN1cmUgdGhlIGNhcHRpb24gaXMgc2hvd24gKi9cclxuICB9XHJcblxyXG4gIC5nYWxsZXJ5IHtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LWxyZykpO1xyXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1zdi1tYXgtd2lkdGgpO1xyXG4gIH1cclxuXHJcbiAgLmdhbGxlcnlfX3BhZ2luZyB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmdhbGxlcnlfX2NhcHRpb24ge1xyXG4gICAgJi1jb3B5IHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEhlYWRlclxyXG5cclxuICAqIFNtYWxsZXN0IHZpZXdwb3J0IChtb2JpbGUgZmlyc3QpXHJcbiAgKiA+PSBCZWxvdyBtYXggdmlld3BvcnRcclxuICAqID49IFNtYWxsIHZpZXdwb3J0XHJcbiAgKiA+PSBTbWFsbCBhbmQgPCBMYXJnZSB2aWV3cG9ydFxyXG4gICogPj0gTGFyZ2Ugdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogU21hbGxlc3Qgdmlld3BvcnQgKG1vYmlsZSBmaXJzdClcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uaGVhZGVyIHtcclxuICBoZWlnaHQ6IDUwcHg7XHJcblxyXG4gICYuLWhhcy1icmVhZGNydW1icyB7XHJcbiAgICBoZWlnaHQ6IDkxcHg7XHJcbiAgfVxyXG5cclxuICAmX193cmFwIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogdmFyKC0tc3Ytei10b3ApO1xyXG4gICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgfVxyXG5cclxuICAmX19pbm5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgbG9zdC1jZW50ZXI6IHZhcigtLXN2LW1heC13aWR0aCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAmX19ob21lIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJvdHRvbTogLTFweDtcclxuICB9XHJcblxyXG4gICZfX2xvZ28ge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LXNtbCk7XHJcbiAgfVxyXG5cclxuICAmX190b29sLXNldCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbG9zdC11dGlsaXR5OiBjbGVhcmZpeDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICAmX190b29sLWl0ZW0ge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcblxyXG4gICAgJi4tc2VhcmNoIHtcclxuICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIHNlYXJjaCwgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLWxvZ2luIHtcclxuICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBAbWl4aW4gbWl4aW4taWNvbi1jb25maWcgdXNlciwgdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXNlYXJjaCxcclxuICAgICYuLW1lbnUge1xyXG4gICAgICAuaGVhZGVyX190b29sLWFjdGlvbiB7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1tZW51IHtcclxuICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgIC8qIFRPRE86XHJcbiAgICAgICAgY29uc2lkZXIgdXNpbmcgc29saWQgYmVmb3JlL2FmdGVyIGJsb2NrcyBmb3IgYnVyZ2VyIChyYXRoZXIgdGhhbiBncmFkaWVudClcclxuICAgICAgICBpbiB0aGUgY2FzZSB0aGF0IHRoaXMgcmVxdWlyZXMgYW5pbWF0aW4gaW4gZnV0dXJlICovXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICB3aWR0aDogMjJweDtcclxuXHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWNvbW1hLW5ld2xpbmUtYWZ0ZXIgKi9cclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpcclxuICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICB0byBib3R0b20sXHJcbiAgICAgICAgICAgICAgICB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyksIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKSAxMCUsXHJcbiAgICAgICAgICAgICAgICB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSAxMCUsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpIDQ1JSxcclxuICAgICAgICAgICAgICAgIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKSA0NSUsIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKSA1NSUsXHJcbiAgICAgICAgICAgICAgICB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KSA1NSUsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpIDkwJSxcclxuICAgICAgICAgICAgICAgIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKSA5MCUsIHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0zKSAxMDAlXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1jb21tYS1uZXdsaW5lLWFmdGVyICovXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX190b29sLWFjdGlvbiB7XHJcbiAgICBAZXh0ZW5kIC5leHRlbmRlci1wbGFpbi1hY3Rpb247XHJcblxyXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgcGFkZGluZzogMCB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgIEBleHRlbmQgLmV4dGVuZGVyLWljb24tYmFzZTtcclxuICAgICAgQGV4dGVuZCAuZXh0ZW5kZXItdGV4dC1oaWRlO1xyXG5cclxuICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYubGFuZ3VhZ2Utc2VsZWN0b3JfX2NvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmc6IDlweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IEJlbG93IG1heCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXhscmcpIHtcclxuICAuaGVhZGVyIHtcclxuICAgICZfX2lubmVyIHtcclxuICAgICAgbWFyZ2luOiAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdG9vbC1pdGVtIHtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLi1tZW51IHtcclxuICAgICAgICAuaGVhZGVyX190b29sLWFjdGlvbiB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gU21hbGwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuaGVhZGVyIHtcclxuICAgIGhlaWdodDogNjZweDtcclxuXHJcbiAgICAmLi1oYXMtYnJlYWRjcnVtYnMge1xyXG4gICAgICBoZWlnaHQ6IDEwOHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xvZ28ge1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbWVkKTtcclxuICAgIH1cclxuXHJcbiAgICAmX190b29sLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIteHNtbC1taWQpIDA7XHJcbiAgICAgIGhlaWdodDogNjZweDtcclxuXHJcbiAgICAgICYuLXNlYXJjaCxcclxuICAgICAgJi4tbG9naW4ge1xyXG4gICAgICAgIC5oZWFkZXJfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tbWVudSB7XHJcbiAgICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgaGVpZ2h0OiA0MnB4O1xyXG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci14c21sLW1pZCk7XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBAZXh0ZW5kIC5leHRlbmRlci10ZXh0LXNob3c7XHJcblxyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBTbWFsbCBhbmQgPCBMYXJnZSB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkgYW5kICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLmhlYWRlciB7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgIG1hcmdpbjogMCB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IExhcmdlIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLmhlYWRlciB7XHJcbiAgICBoZWlnaHQ6IDg5cHg7XHJcblxyXG4gICAgJi4taGFzLWJyZWFkY3J1bWJzIHtcclxuICAgICAgaGVpZ2h0OiAxMjhweDtcclxuICAgIH1cclxuXHJcbiAgICAmX193cmFwIHtcclxuICAgICAgdHJhbnNpdGlvbjogLjVzIGJhY2tncm91bmQtY29sb3IsIC41cyBib3JkZXItYm90dG9tLWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xvZ28ge1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbHJnKTtcclxuICAgIH1cclxuXHJcbiAgICAmX190b29sLXNldCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbHJnKSArIHZhcigtLXN2LWd1dHRlci1scmcpKTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3Rvb2wtaXRlbSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zdi1ndXR0ZXIteHNtbC1taWQpO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhzbWwpO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgICAvKlxyXG4gICAgICAgIFRhcmdldHRpbmcgdGhlIHNlY29uZCB0byBsYXN0IGNoaWxkIHNpbmNlIHRoZSBtZW51IHRvZ2dsZSBpcyB0aGUgbGFzdCBjaGlsZCBhbGJlaXQgaW52aXNpYmxlXHJcbiAgICAgICovXHJcbiAgICAgICY6bnRoLWxhc3QtY2hpbGQoMikge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuLWxvY2FsZSB7XHJcbiAgICAgICAgLmhlYWRlcl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLi1zZWFyY2gge1xyXG4gICAgICAgIC5oZWFkZXJfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi4tYWN0aXZlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG5cclxuICAgICAgICAgIC5oZWFkZXJfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpO1xyXG5cclxuICAgICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgIEBtaXhpbiBtaXhpbi1pY29uLWNvbmZpZyBzZWFyY2gsIHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgJi5sYW5ndWFnZS1zZWxlY3Rvcl9fY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdiB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyLi1oYXMtZ2hvc3Qge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlci4tZ2hvc3Qge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG5cclxuICAgIC5oZWFkZXIge1xyXG4gICAgICAmX193cmFwIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuMjVzIGJhY2tncm91bmQtY29sb3IsIC4yNXMgYm9yZGVyLWJvdHRvbS1jb2xvcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fdG9vbC1hY3Rpb24ge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fdG9vbC1pdGVtIHtcclxuICAgICAgICAmLi1zZWFyY2gge1xyXG4gICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgICAuaGVhZGVyX190b29sLWFjdGlvbiB7XHJcbiAgICAgICAgICAgIHNwYW46OmFmdGVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ3NlYXJjaCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLi1sb2dpbiB7XHJcbiAgICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgICAgIC5oZWFkZXJfX3Rvb2wtYWN0aW9uIHtcclxuICAgICAgICAgICAgc3Bhbjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygndXNlcicsICdbZmlsbF06IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdiB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAmX19pdGVtIHtcclxuICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgICAmLi1hY3RpdmUge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICAgLm5hdl9fbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2xhYmVsIHtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxMHB4IHZhcigtLXN2LWNvbC1zaGFkb3cpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAubGFuZ3VhZ2Utc2VsZWN0b3IgLi1jYWxjLWxheW91dCB7XHJcbiAgICAgIHNlbGVjdCxcclxuICAgICAgLnNlbGVjdF9fdmFsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCknKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuIiwiLmhvbWVwYWdlIHtcclxuICAmX191c3BzIHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgfVxyXG5cclxuICAmX192aWV3LWFydGljbGVzIHtcclxuICAgIG1hcmdpbjogMzBweCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gIC5ob21lcGFnZSB7XHJcbiAgICAmX191c3BzIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ZlYXR1cmVkLWNhcmQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnNpZ2h0LWNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2luc2lnaHQtY29udGVudCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHggIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLXRvcDogMzVweDtcclxuICAgIH1cclxuXHJcbiAgICAmX192aWV3LWFydGljbGVzIHtcclxuICAgICAgcGFkZGluZzogMCAzNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmZlYXR1cmVkLWNhcmQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LWxyZykge1xyXG4gIC5ob21lcGFnZSB7XHJcbiAgICAmX19mZWF0dXJlZC1jYXJkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ZlYXR1cmVkLWNvbnRlbnQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW5zaWdodC1jb250ZW50IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ZhY3RzLFxyXG4gICAgJl9fdXNwcyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5ob21lcGFnZSB7XHJcbiAgICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ0cHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmX191c3BzIHtcclxuICAgICAgbWFyZ2luLXRvcDogODBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogOTRweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubG9naW4tZm9ybSB7XHJcbiAgcGFkZGluZzogMCAycmVtIDVyZW07XHJcblxyXG4gIC4taXMtbW9kYWwgJiB7XHJcbiAgICBwYWRkaW5nOiAwIHZhcigtLXN2LWd1dHRlci1tZWQpIHZhcigtLXN2LWd1dHRlcik7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgNzBweCA2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fY29udHJvbHMge1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuXHJcbiAgICAuLWlzLW1vZGFsICYge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIG1pbi13aWR0aDogMTcwcHg7XHJcblxyXG4gICAgJi4tbG9hZGluZyB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuXHJcbiAgICAgIHNwYW46OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBzdi1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ3NwaW5uZXInLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS00KScpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMzBweDtcclxuICAgICAgICB0b3A6IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ibG9jay1ncmlkLi1zbWwtMyA+IC5jb2wge1xyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZXJyb3Ige1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICA+IHAge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4taGlkZGVuIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1zdWNjZXNzIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdyk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1tZWQpO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygndmFsaWQnLCAnW2ZpbGxdOiB2YXIoLS1zdi1jb2wtZ3JlZW4tMiknKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5tYXJrZXQtYXBwcmFpc2FsLWZvcm0ge1xyXG4gIC5mb3JtLWdyb3VwLWhlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG5cclxuICAuZm9ybS1ncm91cC1jb250cm9scyB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG5cclxuICAgIGlucHV0LFxyXG4gICAgc2VsZWN0LFxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN2LWNvbC1zZWNvbmRhcnktOSk7XHJcblxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS0zKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1yYWRpbyB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLi1jaGVja2JveCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuOHJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5tYXJrZXQtYXBwcmFpc2FsIHtcclxuICBtYXJnaW46IHZhcigtLXN2LWd1dHRlci1scmcpIDAgMDtcclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLm1hcmtldC1hcHByYWlzYWwge1xyXG4gICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXIteGxyZykgMCAwO1xyXG4gIH1cclxufVxyXG4iLCIubWFya2V0LXByb3BlcnR5IHtcclxuICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICBtYXJnaW46IDFyZW0gMDtcclxuICB9XHJcblxyXG4gIC5mZWF0dXJlZC1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLm1hcmtldC1wcm9wZXJ0eSB7XHJcbiAgICAuZmVhdHVyZWQtY29udGVudCB7XHJcbiAgICAgIG1hcmdpbjogNDhweCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAubWFya2V0LXByb3BlcnR5IHtcclxuICAgIC5mZWF0dXJlZC1jb250ZW50IHtcclxuICAgICAgbWFyZ2luOiA5MHB4IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBNaWNybyBhcnRpY2xlIGxpc3RcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYXNlIHN0eWxlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5taWNyby1hcnRpY2xlLWxpc3Qge1xyXG4gICZfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xyXG4gIH1cclxuXHJcbiAgLmNhcmQuLW1pY3JvIHtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgTWljcm8gY29udGFjdCBsaXN0XHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbHJnIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEJhc2UgU3R5bGVzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm1pY3JvLWNvbnRhY3QtbGlzdCB7XHJcbiAgJl9fdGl0bGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fY29udGVudCArICZfX2J1dHRvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gIH1cclxuXHJcbiAgLyogSGlkZSBQcmltYXJ5IGFjdGlvbiBidXR0b24gKi9cclxuICAmX19idXR0b24gLmJ1dHRvbjpub3QoLi1zZWNvbmRhcnkpOm5vdCguLXRlcnRpYXJ5KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQuLW1pY3JvLi1leHBlcnQge1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBzbWwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAubWljcm8tY29udGFjdC1saXN0IHtcclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBIaWRlIFByaW1hcnkgYWN0aW9uIGJ1dHRvbiAqL1xyXG4gICAgJl9fYnV0dG9uIC5idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbHJnIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLm1pY3JvLWNvbnRhY3QtbGlzdCB7XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCArICZfX2J1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFVuaGlkZSBhbGwgYnV0dG9ucyAqL1xyXG4gICAgJl9fYnV0dG9uIC5idXR0b246bm90KC4tc2Vjb25kYXJ5KTpub3QoLi10ZXJ0aWFyeSksXHJcbiAgICAmX19idXR0b24gLmJ1dHRvbi4tc2Vjb25kYXJ5LFxyXG4gICAgJl9fYnV0dG9uIC5idXR0b24uLXRlcnRpYXJ5IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQuLW1pY3JvLi1leHBlcnQge1xyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgTmF2XHJcblxyXG4gICogU21hbGxlc3Qgdmlld3BvcnQgKG1vYmlsZSBmaXJzdClcclxuICAqID49IFNtYWxsIHZpZXdwb3J0XHJcbiAgKiA+PSBMYXJnZSB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBTbWFsbGVzdCB2aWV3cG9ydCAobW9iaWxlIGZpcnN0KVxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBpbXBvcnQgJy4vbmF2LS1zdWItbmF2JztcclxuXHJcbi5uYXYge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIGxlZnQ6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXN2LXRyYW5zaXRpb24tc3BlZWQtbSkgbGluZWFyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDIwMDtcclxuXHJcbiAgJi5uYXYtLW91dGVyLmpzLXRvZ2dsZWQge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgIGJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gICZfX2xlYWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtc21sKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxvc3QtdXRpbGl0eTogY2xlYXJmaXg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gICZfX2Nsb3NlIHtcclxuICAgIEBleHRlbmQgLmV4dGVuZGVyLXBsYWluLWFjdGlvbjtcclxuXHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMik7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBmb250LXNpemU6IDlweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICBwYWRkaW5nOiA2cHggMTZweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cclxuICAgICAgQGV4dGVuZCAuZXh0ZW5kZXItaWNvbi1iYXNlO1xyXG5cclxuICAgICAgQG1peGluIG1peGluLWljb24tY29uZmlnIGNsb3NlLCB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyksIDIwcHgsIDhweDtcclxuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlICovXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19oZWFkaW5nIHtcclxuICAgIGZvbnQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWFsdCkgMTFweC8xOHB4IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB9XHJcblxyXG4gICZfX2JyZWFkY3J1bWIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gICZfX2l0ZW1zIHtcclxuICAgIG1pbi13aWR0aDogdmFyKC0tc3YtbWluLXdpZHRoKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LXNtbCkgMCAwO1xyXG4gIH1cclxuXHJcbiAgJl9faXRlbSB7XHJcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTpcclxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICB0byByaWdodCxcclxuICAgICAgICAgIHJnYmEodmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKSwgLjEpIDAlLFxyXG4gICAgICAgICAgcmdiYSh2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0LXNoYWRlLTIpLCAxKSA1MCUsXHJcbiAgICAgICAgICByZ2JhKHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtMiksIC4xKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zdi1taW4td2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbGFiZWwge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLS4yNXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIG1hcmdpbjogMCAwIC01cHg7XHJcbiAgICBwYWRkaW5nOiAyMnB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcblxyXG4gIC4tYWN0aXZlIHtcclxuICAgIC5uYXZfX2xhYmVsIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gU21hbGwgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAubmF2IHtcclxuICAgICZfX2xlYWQge1xyXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi13aGl0ZXNwYWNlLWFmdGVyICovXHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCh2YXIoLS1zdi11cmwtaW1hZ2UpL2xvZ29zL3NhdmlsbHMtc3F1YXJlLnN2ZykgdmFyKC0tc3YtZ3V0dGVyLWxyZykgMCBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpIHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbWVkKTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbWVkKTtcclxuICAgICAgLyogc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi13aGl0ZXNwYWNlLWFmdGVyICovXHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGxlZnQ6IGNhbGModmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpICsgdmFyKC0tc3YtZ3V0dGVyLWxyZykpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2Nsb3NlIHtcclxuICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xhYmVsIHtcclxuICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICBwYWRkaW5nOiAzNHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgcGFkZGluZzogNjZweCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC14c21sKSB7XHJcbiAgLm5hdiB7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRvIDYge1xyXG4gICAgICAgICZbZGF0YS1zdi10b2dnbGUkPVwidCQoaSlcIl0gLmJyZWFkY3J1bWItLXQkKGkpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IExhcmdlIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLm5hdiB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgbG9zdC11dGlsaXR5OiBjbGVhcmZpeDtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuXHJcbiAgICAgIC8qXHJcbiAgICAgIFN0YXRpYyBwb3NpdGlvbiB0byBhbGxvdyBzdWIgbWVudSB0byBwb3NpdGlvbiBhYnNvbHV0ZWx5IGFnYWluc3QgbWFpbiBuYXYgZWxlbWVudFxyXG4gICAgICAqL1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXN2LXRyYW5zaXRpb24tc3BlZWQtcyk7XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2xhYmVsIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgICAgbWFyZ2luOiAwIDhweDtcclxuICAgICAgcGFkZGluZzogMTJweCA4cHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLi1hY3RpdmUge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBTdWIgbmF2XHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqID49IE1lZGl1bSB2aWV3cG9ydFxyXG4gICogPj0gTGFyZ2Ugdmlld3BvcnRcclxuICAqID49IEN1c3RvbSB2aWV3cG9ydFxyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYXNlIHN0eWxlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFN1YiBuYXYgcGFuZWxcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLnN1Yi1uYXYge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1tZWQpKTtcclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgLnN1Yi1uYXYge1xyXG4gICAgdG9wOiB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LXNtbCk7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1zdi1oZWFkZXItaGVpZ2h0LXNtbCkpO1xyXG4gIH1cclxufVxyXG5cclxuLyogUHJvbW9cclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLnN1Yi1uYXZfX3Byb21vIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAmLWhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgJi1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxuXHJcbiAgJi1pbWFnZSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgJi1kYXRlIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyLjM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxuXHJcbiAgJi10aXRsZSB7XHJcbiAgICBAbWl4aW4gbWl4aW4tdGV4dC1zZXBhcmF0b3IgYWZ0ZXI7XHJcblxyXG4gICAgbWluLWhlaWdodDogMjIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgZm9udDogMzVweC8xLjUgdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gIH1cclxuXHJcbiAgJi1jb3B5IHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLWxyZykgMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIFNlY3Rpb24gYmxvY2tzXHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uc3ViLW5hdiB7XHJcbiAgLmNhcmQuLWN0YS1ibG9jayB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWlucHV0LWJvcmRlcik7XHJcbiAgICBtYXJnaW46IDAgMCAzMnB4O1xyXG5cclxuICAgIC5jYXJkX19jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMCAwIDMycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICBmb250OiAzNXB4LzEuMiB2YXIoLS1zdi1mb250LXN0YWNrLWFsdCk7XHJcbiAgICAgIG1hcmdpbjogMCAwIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAuc3ViLW5hdiB7XHJcbiAgICAuY2FyZC4tY3RhLWJsb2NrOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAgIC5jYXJkX19jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogTGluayB0cmVlXHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5zdWItbmF2X19saW5rLXRyZWUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICBtYXJnaW46IDAgdmFyKC0tc3YtZ3V0dGVyLWxyZykgdmFyKC0tc3YtZ3V0dGVyLWxyZykgMDtcclxuICAgIHdpZHRoOiBjYWxjKDk5JSAvIDMgLSB2YXIoLS1zdi1ndXR0ZXItbWVkKSk7XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSgzbikge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgIHdpZHRoOiBjYWxjKDk5JSAvIDIgLSB2YXIoLS1zdi1ndXR0ZXItbWVkKSk7XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSgzbikge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoMm4pIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiB1bCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJiA+ICoge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIpO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIDw9IExyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLyogU3ViIG5hdiBwYW5lbFxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbiAgLnN1Yi1uYXYge1xyXG4gICAgbGVmdDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgfVxyXG5cclxuICAubmF2X19pbm5lci5qcy10b2dnbGVkIC5uYXZfX2l0ZW1zIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmpzLXRvZ2dsZWQgKyAuc3ViLW5hdiB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBsaW5lYXIgMHMsIHRyYW5zZm9ybSB2YXIoLS1zdi10cmFuc2l0aW9uLXNwZWVkLW0pIGVhc2Utb3V0IDBzO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIC5zdWItbmF2IHtcclxuICAgICZfX3Byb21vLXRpdGxlOm9ubHktY2hpbGQ6OmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IExhcmdlIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLyogU2hvdyB0aGUgc3ViIG5hdiBvbiBob3ZlclxyXG4gICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4gIC5oZWFkZXJfX2Nvb2tpZS1ub3RpZmljYXRpb24tZGlzcGxheWVkIHtcclxuICAgIC5uYXYge1xyXG4gICAgICAubmF2X19pdGVtID4gYSB7XHJcbiAgICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMTc4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmF2IHtcclxuICAgICZfX2l0ZW0gPiBhIHtcclxuICAgICAgJjo6YmVmb3JlLFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgLyogVGhpcyBpcyBhIHJlYWxseSBjaGVla3kgd2F5IG9mIGdldHRpbmcgYXJvdW5kIHVzaW5nIGpzIHRvIGRpc3BsYXkgdGhlIGNvbnRlbnQgdmVpbCAqL1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHdpZHRoOiAxMDB2dztcclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogdmFyKC0tc3YtaGVhZGVyLWhlaWdodC1scmcpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvKiBiYWNrZHJvcC1maWx0ZXIgZG9lc250IGFsbG93IGJnIGNvbG91ciwgc28gc3BsaXRpbmcgYmV0d2VlbiAyIGVsZW1lbnRzICovXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0xKTtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGFiZWwge1xyXG4gICAgICAmLi1mb2N1c2VkIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFN1YiBuYXYgcGFuZWxcclxuICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4gIC5zdWItbmF2IHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1zdi1jb2wtaW5wdXQtYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci1scmcpIHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBsZWZ0OiAtdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgICByaWdodDogLXZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdG9wOiAxMDAlO1xyXG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLXN2LWhlYWRlci1oZWlnaHQtbHJnKSk7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICYgLmNvbCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3YtZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1mb2N1c2VkIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gQ3VzdG9tIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuc3ViLW5hdl9fcHJvbW8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAmLXRpdGxlOjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJiA+ICoge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgTmF2IHBhbmVsXHJcblxyXG4gICogQmFzaWMgc3R5bGVzXHJcbiAgKiBBY3RpdmUgc3RhdGUgc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5uYXYtcGFuZWwge1xyXG4gICZfX2hlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLyogQWN0aXZlIHN0YXRlXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbHJnKSB7XHJcbiAgLi1hY3RpdmUge1xyXG4gICAgJi5uYXYtcGFuZWwge1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgaGVpZ2h0OiAxMDB2aDsgLyogbm90IGlkZWFsIGJ1dCBzYXZlcyAxMDAlIGhlaWdodCBiZWluZyBpbmNvcnJlY3RseSBjYWxjdWxhdGVkIHdoZW4gbm90IG9uIHNjcmVlbiAqL1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LXBhbmVsIHtcclxuICAgICAgJl9faGVhZGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fdGl0bGUsXHJcbiAgICAgICZfX2Nsb3NlIHtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmbGV4OiA4IDEgYXV0bztcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtNik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2Nsb3NlIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS0yKTtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ2Nsb3NlJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpJyk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5uZXdzbGV0dGVyLXNpZ251cCB7XHJcbiAgJl9fbGFiZWwgaDIge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIG1heC13aWR0aDogOTAlO1xyXG4gIH1cclxuXHJcbiAgJl9fbGFiZWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IC0yMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2ZygnY2hldnJvbi1kb3duJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktMiknKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgYm90dG9tOiA1cHg7XHJcbiAgICAgIHdpZHRoOiAxOXB4O1xyXG4gICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19mb3JtLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmN1c3RvbS1pbnB1dCBpbnB1dCB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtc2Vjb25kYXJ5LTEzKTtcclxuICAgIGJvcmRlcjogMDtcclxuICB9XHJcblxyXG4gIC5jdXN0b20taW5wdXQgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICB9XHJcblxyXG4gIGlucHV0LFxyXG4gIGJ1dHRvbiB7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgLmN1c3RvbS1pbnB1dC5pbnB1dC1lcnJvcjo6YWZ0ZXIsXHJcbiAgLmN1c3RvbS1pbnB1dC5mb3JtLWZpZWxkLXZhbGlkOjphZnRlciB7XHJcbiAgICB0b3A6IDE1cHg7XHJcbiAgfVxyXG5cclxuICAuY3VzdG9tLWlucHV0IGlucHV0OmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1oaWdobGlnaHQpO1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICB9XHJcblxyXG4gIC5uZXdzbGV0dGVyLXNpZ251cF9fc3VjY2VzcyxcclxuICAubmV3c2xldHRlci1zaWdudXBfX2ZhaWx1cmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBoMiB7XHJcbiAgICAgIHBhZGRpbmc6IDdweCAwIDAgNzBweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHdpZHRoOiA0N3B4O1xyXG4gICAgICBoZWlnaHQ6IDQ3cHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNpZ251cC12aXNpYmxlIHtcclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fbGFiZWwge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fbGFiZWwgaDIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fbGFiZWw6OmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAubmV3c2xldHRlci1zaWdudXBfX2Zvcm0tY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNpZ251cC1yZXN1bHQge1xyXG4gICAgLm5ld3NsZXR0ZXItc2lnbnVwX19jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNpZ251cC1zdWNjZXNzIHtcclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fc3VjY2VzcyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmcoJ3ZhbGlkJywgJ1tmaWxsXTogdmFyKC0tc3YtY29sLXByaW1hcnktMiknKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zaWdudXAtZmFpbHVyZSB7XHJcbiAgICAubmV3c2xldHRlci1zaWdudXBfX2ZhaWx1cmUge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKCdhbGVydCcsICdbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG4gIC5uZXdzbGV0dGVyLXNpZ251cF9fZW1haWwgLmN1c3RvbS1pbnB1dCAuZm9ybS1lcnJvciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHdpZHRoOiA5cHg7XHJcbiAgICAgIGhlaWdodDogOXB4O1xyXG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTUpO1xyXG4gICAgICB0b3A6IC01cHg7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gIC5uZXdzbGV0dGVyLXNpZ251cCB7XHJcbiAgICBtaW4taGVpZ2h0OiA4NnB4O1xyXG4gICAgaGVpZ2h0OiAwOyAvKiBJRSBmaXggdG8gZ2V0IGZsZXgtYm94IHRvIHZlcnRpY2FsbHkgY2VudGVyIHRoaW5ncy4gKi9cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fZm9ybS1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4OiAxIDAgNzUlO1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fZm9ybS1lbGVtZW50cy1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4OiAxIDAgMzUuNSU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAubmV3c2xldHRlci1zaWdudXBfX2VtYWlsIC5jdXN0b20taW5wdXQge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fZW1haWwgLmZvcm0tZmllbGQtaW52YWxpZCB7XHJcbiAgICAgIGhlaWdodDogMTEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAubmV3c2xldHRlci1zaWdudXBfX2VtYWlsIC5jdXN0b20taW5wdXQgLmZvcm0tZXJyb3Ige1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgdG9wOiA0NHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtaGlnaGxpZ2h0KTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGxlZnQ6IDQ5LjUlO1xyXG4gICAgICAgIHdpZHRoOiA5cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA5cHg7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgICAgdG9wOiAtNXB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcblxyXG4gICAgLm5ld3NsZXR0ZXItc2lnbnVwX19sYWJlbCB7XHJcbiAgICAgIGZsZXg6IDEgMCAyNSU7XHJcblxyXG4gICAgICBoMiB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fZm9ybS1pdGVtIHtcclxuICAgICAgZmxleDogMSAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2Zvcm0tY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGFiZWwgaDIge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm5ld3NsZXR0ZXItc2lnbnVwX19mb3JtLWl0ZW06bm90KC5uZXdzbGV0dGVyLXNpZ251cF9fc3VibWl0KSB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXNpZ251cF9fc3VibWl0IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmN1c3RvbS1pbnB1dCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5uZXdzbGV0dGVyLXNpZ251cCB7XHJcbiAgICAubmV3c2xldHRlci1zaWdudXBfX2VtYWlsIC5jdXN0b20taW5wdXQgLmZvcm0tZXJyb3Ige1xyXG4gICAgICB0b3A6IDYycHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBQcm9maWxlIGhlYWRlclxyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgKiA8PSBzbWwgdmlld3BvcnRcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbHJnIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEJhc2UgU3R5bGVzXHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnByb2ZpbGUtaGVhZGVyIHtcclxuICAmX193cmFwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBoZWlnaHQ6IDE1NXB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgJi4tbGlnaHQge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3YtZm9udC1zdGFjay1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fc3VidGl0bGUge1xyXG4gICAgY29sb3I6IHZhcigtLXN2LWNvbC1wcmltYXJ5LTIpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2spO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgJl9faW50cm8ge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuXHJcbiAgICAmLi1uby1zdWJ0aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAucHJvZmlsZS1oZWFkZXIge1xyXG4gICAgICAgICZfX2xvY2F0aW9uIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fZXhwZXJ0aXNlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZXhwZXJ0aXNlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmX19sb2NhdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgY29udGVudDogJ1xcMjAxMyc7XHJcbiAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbWFnZS10cmVhdG1lbnQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvZmlsZS1oZWFkZXIuLWhhcy1pbWFnZSB7XHJcbiAgLnByb2ZpbGUtaGVhZGVyIHtcclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMCwgMCwgLjgxKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgaGVpZ2h0OiAyMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5wcm9maWxlLWhlYWRlciB7XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgaGVpZ2h0OiAyNTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XHJcbiAgICAgIG1hcmdpbjogMzBweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3VidGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW50cm8sXHJcbiAgICAmX19pbnRyby4tbm8tc3VidGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvZmlsZS1oZWFkZXIuLWhhcy1pbWFnZSB7XHJcbiAgICAucHJvZmlsZS1oZWFkZXJfX2NvbnRlbnQge1xyXG4gICAgICBoZWlnaHQ6IDMyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogPj0gbHJnIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHJnKSB7XHJcbiAgLnByb2ZpbGUtaGVhZGVyIHtcclxuICAgICZfX3dyYXAge1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICAgICY6bm90KC5zdi0tbm8tYm9yZGVyKSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN2LWNvbC1oaWdobGlnaHQtc2hhZGUtNik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgaGVpZ2h0OiAyOTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTVweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3VidGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW50cm8sXHJcbiAgICAmX19pbnRyby4tbm8tc3VidGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmX19leHBlcnRpc2Uge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbG9jYXRpb24ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvZmlsZS1oZWFkZXIuLWhhcy1pbWFnZSB7XHJcbiAgICAucHJvZmlsZS1oZWFkZXJfX2NvbnRlbnQge1xyXG4gICAgICBoZWlnaHQ6IDUzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9maWxlLWhlYWRlcl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA3NnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFByb2ZpbGUgaW50cm9cclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBscmcgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQmFzZSBTdHlsZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucHJvZmlsZS1pbnRybyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICB9XHJcblxyXG4gICZfX2ludHJvIHtcclxuICAgIEBleHRlbmQgLnRleHQtY29weTtcclxuXHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gICYuLWhhcy1pbWFnZSB7XHJcbiAgICAucHJvZmlsZS1pbnRyb19fdGl0bGUge1xyXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbWVkKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5wcm9maWxlLWludHJvIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1oYXMtaW1hZ2Uge1xyXG4gICAgICAucHJvZmlsZS1pbnRyb19fdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qID49IGxyZyB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5wcm9maWxlLWludHJvIHtcclxuICAgIG1hcmdpbi10b3A6IDgycHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpub3QoLi1oYXMtaW1hZ2UpIHtcclxuICAgICAgLnByb2ZpbGUtaW50cm9fX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNlcnZpY2VzLWxpc3QtcHJldmlldyB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTEwKTtcclxuICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSAwO1xyXG5cclxuICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXN2LWd1dHRlci14bHJnKSAwO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zdi1ndXR0ZXIteGxyZy1taWQpIDA7XHJcbiAgfVxyXG5cclxuICAmX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zMzM7XHJcbiAgICBtYXJnaW46IDAgYXV0byB2YXIoLS1zdi1ndXR0ZXIteGxyZyk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXN2LWd1dHRlci14bHJnLW1pZCk7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3YtZ3V0dGVyLXhscmctbWlkKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLi1oYXMtaW50cm8gJl9fdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcbiAgfVxyXG5cclxuICAmX19pbnRybyB7XHJcbiAgICBjb2xvcjogdmFyKC0tc3YtY29sLXNoYWRvdy10aW50LTMpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBtYXJnaW46IDAgYXV0byB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgbWFyZ2luOiAwIHZhcigtLXN2LWd1dHRlci1scmcpIHZhcigtLXN2LWd1dHRlci14bHJnKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXIteGxyZy1taWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdmlldy1tb3JlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbjogdmFyKC0tc3YtZ3V0dGVyLXNtbCkgYXV0byAwO1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBVbmlxdWUgc2VsbGluZyBwb2ludHNcclxuXHJcbiAgKiBCYXNlIHN0eWxlc1xyXG4gICogPj0gc21sIHZpZXdwb3J0XHJcbiAgKiA+PSBtZWQgdmlld3BvcnRcclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnVzcHMge1xyXG4gIG1heC13aWR0aDogMTIwMHB4O1xyXG5cclxuICAmX190aXRsZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgbWF4LXdpZHRoOiA0NTBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvIHZhcigtLXN2LWd1dHRlci1scmcpO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgLnVzcHMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZyk7XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyMzhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbWVkKSB7XHJcbiAgLnVzcHMge1xyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci14bHJnKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zdi1ndXR0ZXIteGxyZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjpyb290IHtcclxuICAtLWFycm93LXdpZHRoOiAyNXB4O1xyXG59XHJcblxyXG4uY2Fyb3VzZWwge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG5cclxuICAmX19zbGlkZSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAgICAgZmxleDogMDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1pbmFjdGl2ZSB7XHJcbiAgICAgIG9wYWNpdHk6IC4yO1xyXG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS1zdi10aW1pbmctY3ViaWMtYmV6aWVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmID4gKiB7XHJcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdHJhY2sge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAmLi10cmFuc2l0aW9uIHtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UgLjVzIDBzO1xyXG4gICAgfVxyXG5cclxuICAgICYuY29udGFpbmVkIHtcclxuICAgICAgbWFyZ2luOiAwIDM1cHggIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgteGxyZykge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX25hdiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS0yKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHRvcDogMTUlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiB2YXIoLS1hcnJvdy13aWR0aCkgIWltcG9ydGFudDsgLyogYnV0dG9uIHN0eWxlIG92ZXJyaWRlICovXHJcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tYXJyb3ctd2lkdGgpICogMik7XHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGJhY2tncm91bmQ6IGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0IHN2ZygnY2hldnJvbicsICdbZmlsbF06IHZhcigtLXN2LWNvbC1wcmltYXJ5LTEpJyk7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCAyNXB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgIEBtZWRpYSBhbmQgKC0tc3Ytdmlldy13aWR0aC1sdC1zbWwpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLi1uZXh0IHtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcHJldiB7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4taW5hY3RpdmUge1xyXG4gICAgICBvcGFjaXR5OiAuMTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS01KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJvdXNlbC0tc3RhdGljLXZpZXcge1xyXG4gIHBhZGRpbmc6IDA7XHJcblxyXG4gIC5jYXJvdXNlbF9fdHJhY2sge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcblxyXG4gIC5jYXJvdXNlbF9fbmF2IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICAuY2Fyb3VzZWxfX3NsaWRlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlcik7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWluLXdpZHRoOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICBAbWVkaWEgYW5kICgtLXN2LXZpZXctd2lkdGgteHNtbCkge1xyXG4gICAgICBsb3N0LWNlbnRlcjogNzB2dztcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgYW5kICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgIGxvc3QtY29sdW1uOiA0LzEyIDM7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIGFuZCAoLS1zdi12aWV3LXdpZHRoLW1lZCkge1xyXG4gICAgICBsb3N0LWNvbHVtbjogMy8xMiA0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcm91c2VsIC5wcm9wZXJ0eS1jYXJkIHtcclxuICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSBhbmQgKC0tc3Ytdmlldy13aWR0aC1sdC1scmcpIHtcclxuICAuY2Fyb3VzZWwgLnByb3BlcnR5LWNhcmQge1xyXG4gICAgLnNsaWRlciB7XHJcbiAgICAgICZfX2Zvb3RlciB7XHJcbiAgICAgICAgJi4tYmcge1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fZm9vdGVyLWxhYmVscyB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXN2LWd1dHRlci14c21sKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fZm9vdGVyLWFjdGlvbiB7XHJcbiAgICAgICAgJi4tc2F2ZS1pbmxpbmUge1xyXG4gICAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lICovXHJcbiAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zdi1ndXR0ZXIteHNtbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRldGFpbHMge1xyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW46IDMycHggMTBweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19wcmljZS1yZW50LWJhc2lzIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX290aGVyLWZlZXMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fZm9vdGVyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucHJvcGVydHktYXR0cmlidXRlIHtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuLXR5cGUtZmFybSxcclxuICAgICYuLXR5cGUtY29tbWVyY2lhbCB7XHJcbiAgICAgIC5kZXRhaWxzX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5ICovXHJcbiAgICAmLi10eXBlLWZhcm0uLWlzLXBhcmVudCxcclxuICAgICYuLXR5cGUtbmV3LWRldmVsb3BtZW50IHtcclxuICAgICAgLmRldGFpbHNfX2Zvb3RlciB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5jYXJvdXNlbCAucHJvcGVydHktY2FyZCB7XHJcbiAgICAuc2xpZGVyIHtcclxuICAgICAgJl9fZm9vdGVyLWxhYmVscyB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXN2LWd1dHRlci1zbWwpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19mb290ZXItYWN0aW9uIHtcclxuICAgICAgICAmLi1zYXZlLWlubGluZSB7XHJcbiAgICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgKi9cclxuICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXN2LWd1dHRlci1zbWwpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIudGFiYmVkLXNsaWRlciB7XHJcbiAgLnRhYnMtcGFuZWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWx0LXNtbCkge1xyXG4gICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNHB4O1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWNhcmQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTRweDtcclxuICAgICAgcGFkZGluZzogM3B4IDVweDtcclxuXHJcbiAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCAxNHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1scmcpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi4tYWN0aXZlIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX2hlYWRlciB7XHJcbiAgICAgICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtc21sKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3YtY29sLWhpZ2hsaWdodC1zaGFkZS01KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuICAgIC50YWItY2FyZC4tYWN0aXZlIC50YWItY2FyZF9fdGl0bGUge1xyXG4gICAgICBjb2xvcjogdmFyKC0tc3YtY29sLXByaW1hcnktNSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgLmJ1dHRvbi4tdGVydGlhcnkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fc2Nyb2xsLWN1cnRhaW4ge1xyXG4gICAgQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtc21sKSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNDIsIDI0MiwgMjQyLCAwKSAwJSwgcmdiYSgyNDIsIDI0MiwgMjQyLCAxKSA1MCUpO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHdpZHRoOiAycmVtO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIE1haW50ZW5hbmNlXHJcblxyXG4gICogQmFzZSBzdHlsZXNcclxuICAqID49IHNtbCB2aWV3cG9ydFxyXG4gICogPj0gbWVkIHZpZXdwb3J0XHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5tYWludGVuYW5jZSB7XHJcbiAgcGFkZGluZy10b3A6IHZhcigtLXN2LWd1dHRlci14bHJnKTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICZfX2xvZ28tbGluayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byB2YXIoLS1zdi1ndXR0ZXItbHJnKTtcclxuICB9XHJcblxyXG4gICZfX2hlYWRpbmcge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXN2LWZvbnQtc3RhY2stYWx0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdi1mb250LXdlaWdodC1hbHQpO1xyXG4gICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtc2hhZG93LXRpbnQtMyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdi1ndXR0ZXItbWVkLW1pZCk7XHJcbiAgfVxyXG5cclxuICAmX19jb250ZW50IHtcclxuICAgIG1heC13aWR0aDogNDUwcHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gdmFyKC0tc3YtZ3V0dGVyLXhscmcpO1xyXG4gIH1cclxuXHJcbiAgJl9fdGltZSB7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tc3YtZm9udC13ZWlnaHQtbWVkKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zdi1jb2wtcHJpbWFyeS01KTtcclxuICB9XHJcbn1cclxuXHJcbi8qID49IHNtbCB2aWV3cG9ydFxyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLXNtbCkge1xyXG4gIC5tYWludGVuYW5jZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3YtZ3V0dGVyLXhscmctbWlkKTtcclxuXHJcbiAgICAmX19sb2dvLWxpbmsge1xyXG4gICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIDwgbWVkIHZpZXdwb3J0XHJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhICgtLXN2LXZpZXctd2lkdGgtbHQtbWVkKSB7XHJcbiAgLm1haW50ZW5hbmNlIHtcclxuICAgICZfX3RlbCB7XHJcbiAgICAgIEBleHRlbmQgLmxpbms7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiA+PSBtZWQgdmlld3BvcnRcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1tZWQpIHtcclxuICAubWFpbnRlbmFuY2Uge1xyXG4gICAgcGFkZGluZy10b3A6IHZhcigtLXN2LWd1dHRlci14bHJnLW1pZCk7XHJcblxyXG4gICAgJl9fbG9nby1saW5rIHtcclxuICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgICBoZWlnaHQ6IDE2MHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0byB2YXIoLS1zdi1ndXR0ZXItbHJnLW1pZCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhZGluZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLWxyZy1taWQpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIHZhcigtLXN2LWd1dHRlci14bHJnLW1pZCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGVsIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN2LWNvbC1zaGFkb3ctdGludC0xKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBTZWFyY2ggcmVzdWx0c1xyXG5cclxuICAqIEJhc2Ugc3R5bGVzXHJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5zZWFyY2gtcmVzdWx0cyB7XHJcbiAgJl9faW5wdXQgLmN1c3RvbS1pbnB1dCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQge1xyXG4gICAgJl9fcHJpbWFyeS1jdGFzIC5idXR0b246bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhwZXJ0IHtcclxuICAgICAgLmNhcmQtYWRkcmVzcyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXN2LWZvbnQtd2VpZ2h0LW1lZCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3YtZ3V0dGVyLXhzbWwtbWlkKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNhcmRfX21pc2Mge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN2LWd1dHRlci14c21sLW1pZCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSAqL1xyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC1zbWwpIHtcclxuICAuc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgLmNhcmQuLWxpc3Rpbmctcm93Li1mdWxsLXdpZHRoIHtcclxuICAgICAgLmNhcmQtaW50cm8ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHkgKi9cclxuXHJcbkBtZWRpYSAoLS1zdi12aWV3LXdpZHRoLWxyZykge1xyXG4gIC5zZWFyY2gtcmVzdWx0cyB7XHJcbiAgICAmX19pbnB1dCAuY3VzdG9tLWlucHV0IHtcclxuICAgICAgbWFyZ2luOiB2YXIoLS1zdi1ndXR0ZXItbHJnKSAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLi1saXN0aW5nLXJvdzpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKC0tc3Ytdmlldy13aWR0aC14bHJnKSB7XHJcbiAgLnNlYXJjaC1yZXN1bHRzIHtcclxuICAgIC5jYXJkIHtcclxuICAgICAgLmNhcmRfX2NvbnRlbnQge1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiFcclxuICogR2VuZXJhdGVkIHdpdGggQ1NTIEZsYWcgU3ByaXRlIGdlbmVyYXRvciAoaHR0cHM6Ly93d3cuZmxhZy1zcHJpdGVzLmNvbS8pXHJcbiAqL1xyXG5cclxuLmZsYWcge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ZsYWdzL3Nwcml0ZS5wbmcnKTtcclxuICB9XHJcblxyXG4gICYuLW1tIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODRweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iZiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi12ZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ0OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZWUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC05NnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tanAge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NHB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWJsIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODhweCAtMzJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1xIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdG0ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNtIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMzJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxyIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTZweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ociB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZXQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1kbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1jZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTY0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1uZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYnkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTY0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tdCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjg4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tdSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdHcge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWdzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1lYyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzIwcHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ndSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZ3Ege1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZm8ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1mIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1jdiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05NnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY24ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NHB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4ta2gge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWN1IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODBweCAtNjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWVzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODBweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWhuIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTJweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tdyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdG4ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXZpIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1raSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNyIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1vbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taHUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0OHB4IC0xNjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXptIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zayB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zZCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tc2gge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1laCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1mciB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbW4ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNnB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW5yIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0zMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1rIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi12ZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTQ0OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYWQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taXIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRrIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXphIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTZweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1jbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggLTY0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ubCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNlIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tbyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTI1NnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYWkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1wYSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tc28ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0zODRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRnIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcm8ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0zNTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWdkIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtMTI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1kaiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10eiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTQxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbmEge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWZqIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNjIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODRweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1nZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYW4ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rciB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTIyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taXEge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWNmIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtNjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNsIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0zODRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXdzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1nZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYXcge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNnB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1wcyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWNrIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODhweCAtNjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWh0IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTZweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zcyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjU2cHggLTM4NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYXoge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ieiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtNjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxhIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDgwcHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcHkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZ2kge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0OHB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1jIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1reiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTIyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbHQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0yMjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXZhIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1zIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXN6IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODRweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10aiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtNDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdHYge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXJzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1qZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg4cHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYXMge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tYSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTkycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1teiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg4cHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYm8ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NHB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tc3Qge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC0zODRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRkIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iaSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi11eiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zeSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggLTM4NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbWQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWFmIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1icyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ydyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg4cHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY2Qge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tencge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1sIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTJweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1jeSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWN6IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC05NnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbWcge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rZSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcHQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbWgge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW56IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1wbCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcHcge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTM1MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tc2Ege1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IC0zNTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXZ1IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAtNDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1teCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY28ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNnB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4ta3kge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0yMjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXBlIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAtMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi11eSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWJ3IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTY0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pZCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWZrIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ucCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pcyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdHQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWdtIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY2kge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYnIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNnB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbHUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1tdiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbm8ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4teWUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1lIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1sYiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg4cHggLTIyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbXkge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWF0IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTJweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZ3Ige1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xNjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxpIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTJweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1kayB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ndCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taXQge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWR6IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODhweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWx5IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWNhIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYm0ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZ2Ege1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWxrIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODRweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1pbCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTkycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rbiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjI0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1wayB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbmMge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXFhIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1nbiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi15dCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTQ0OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYXIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ndyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjU2cHggLTE2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdm4ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXBnIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1mbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYmgge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tam8ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC0xOTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWRlIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWFvIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdHIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRjIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTZweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1iYSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taWMge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0xNjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXZjIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWd5IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODhweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1hZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4td2Yge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC00NDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWluIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTkycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi11YSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTQxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY3Ige1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0OHB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbmYge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNnB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW1yIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0yODhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXNuIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1sdiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1nYiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg4cHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYmoge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4taWUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdXMge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWVyIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXJlIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ncCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1heCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWRvIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAtOTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXRmIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODBweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1waCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggLTMyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tZ2wge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXJ1IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTZweCAtMzUycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1uaSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDgwcHggLTI4OHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY2gge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcHIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0zMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWZpIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xMjhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW51IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMzIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1rdyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTIyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYW0ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi11ZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTQxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tdGwge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC00MTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWF1IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODRweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcG4ge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0OHB4IC0zMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWtwIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0yMjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWFsIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tcGYge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC0zMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLW5nIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDhweCAtMjg4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1naCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTEyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYmIge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ibiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1lZyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1idCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDgwcHggLTMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1zaSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1qbSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzIwcHggLTE5MnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY3cge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTk2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10byB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTQxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tbXAge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC0yNTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWhrIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi10aCB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1sYyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzIwcHggLTIyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tY2wge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMHB4IC02NHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tYWUge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLWJkIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0zMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi4tc2Ige1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC0zNTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuLXN2IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtMzg0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLi1ldSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ== */
/*# sourceMappingURL=savills.core.css.map*/