@charset "UTF-8";
/**
 * Variables Portal Web del Ayuntamiento de Valladolid
 */
/*
/// Tamaño de letra del título de la ventana de información en el componente de mapas
/// @type Number
$maps-infowindow-title-font-size: $font-size-small !default;

/// Tamaño de letra del cuerpo de la ventana de información en el componente de mapas
/// @type Number
$maps-infowindow-body-font-size: $font-size-smaller !default;

/// Color usado para el texto del cuerpo de la ventana de información en el componente de mapas
/// @type Color
$maps-infowindow-body-text-color: $text-color !default;

/// Tamaño de la letra de los enlaces de la ventana de información en el componente de mapas
/// @type Number
$maps-infowindow-link-font-size: $font-size-small !default;

/// Tamaño de letra de la leyenda del buscador en el componente de mapas
/// @type Number
$maps-searcher-legend-font-size: $font-size-small !default;

/// Tamaño de letra del buscador en el componente de mapas
/// @type Number
$maps-searcher-font-size: $font-size-small !default;

/// Variable que indica si el fieldset del buscador tiene borde o no
/// @type bool
$maps-searcher-fieldset-has-border: false !default;

/// Variable que indica si la leyenda del buscador tiene borde o no
/// @type bool
$maps-searcher-legend-has-border: true !default;

/// Color usado para el borde del buscador en el componente de mapas
/// @type Color
$maps-searcher-border-color: $gray-light !default;

/// Número de columnas del marker del buscador en el componente de mapas
/// @type Number
$maps-searcher-marker-columns: 3 !default;

/// Número de puntos de ruptura del marker del buscador dependiendo de la resolucion en el componente de mapas
/// @type Number
$maps-searcher-marker-breakpoints: ('xs':1,'sm':2,'md':2) !default;

/// Tamaño de letra del marker del buscador en el componente de mapas
/// @type Number
$maps-searcher-marker-font-size: $maps-searcher-font-size !default;

/// Tamaño de letra del botón del buscador en el componente de mapas
/// @type Number
$maps-searcher-button-font-size: $font-size-small !default;

/// Color usado para la letra del botón por defecto del buscador en el componente de mapas
/// @type Color
$maps-searcher-button-default-colors: $gray-dark $gray-light !default;

/// Color usado para el botón del buscador en el componente de mapas
/// @type Color
$maps-searcher-button-arrive-colors: #ffffff $brand-primary !default;

/// Altura del buscador de mapas
/// @type Number
$search-maps-height: $maps-height !default;

// La forma en la que aparecen las opciones en modo embebido (se especifica
// un mapa indexado por la resolución (xs, sm, md, lg) y para cada uno
// un par el primero el tamaño del bloque de mapa y el segundo de opciones)
$search-maps-options-disposition: $maps-options-disposition !default;

/// Tamaño de la letra del título de la ventana de información del buscador de mapas
/// @type Number
$search-maps-infowindow-title-font-size: $maps-infowindow-title-font-size !default;

/// Tamaño de la letra del cuerpo de la ventana de información del buscador de mapas
/// @type Number
$search-maps-infowindow-body-font-size: $maps-infowindow-body-font-size !default;

/// Color usado para el texto del cuerpo de la ventana de información del buscador de mapas
/// @type Color
$search-maps-infowindow-body-text-color: $maps-infowindow-body-text-color !default;

/// Tamaño de la letra de los enlaces de la ventana de información en el buscador de mapas
/// @type Number
$search-maps-infowindow-link-font-size: $maps-infowindow-link-font-size !default;

/// Tamaño de la letra de la leyenda del buscador en el buscador de mapas
/// @type Number
$search-maps-searcher-legend-font-size: $maps-searcher-legend-font-size !default;

/// Tamaño de la letra del buscador en el buscador de mapas
/// @type Number
$search-maps-searcher-font-size: $maps-searcher-font-size !default;

/// Variable que indica si el fieldset del buscador en el buscador de mapas tiene borde o no
/// @type bool
$search-maps-searcher-fieldset-has-border: $maps-searcher-fieldset-has-border !default;

/// Variable que indica si la leyenda del buscador en el buscador de mapas tiene borde o no
/// @type bool
$search-maps-searcher-legend-has-border: $maps-searcher-legend-has-border !default;

/// Color usado para el borde del buscador en el buscador de mapas
/// @type Color
$search-maps-searcher-border-color: $maps-searcher-border-color !default;

/// Número de columnas del marker del buscador en el buscador de mapas
/// @type Number
$search-maps-searcher-marker-columns: $maps-searcher-marker-columns !default;

/// Puntos de ruptura del marker del buscador dependiendo de la resolución en el buscador de mapas
/// @type Number
$search-maps-searcher-marker-breakpoints: $maps-searcher-marker-breakpoints !default;

/// Tamaño de la letra del marker del buscador en el buscador de mapas
/// @type Number
$search-maps-searcher-marker-font-size: $maps-searcher-marker-font-size !default;

/// Tamaño de la letra del botón del buscador en el buscador de mapas
/// @type Number
$search-maps-searcher-button-font-size: $maps-searcher-button-font-size !default;

/// Color usado para la letra del botón por defecto del buscador en el buscador de mapas
/// @type Color
$search-maps-searcher-button-default-colors: $maps-searcher-button-default-colors !default;

/// Color usado para la letra del botón por defecto del buscador en el buscador de mapas
/// @type Color
$search-maps-searcher-button-arrive-colors: $maps-searcher-button-arrive-colors !default;

/// Tamaño de letra del título de la ventana de información de los mapas popup
/// @type Number
$popup-maps-infowindow-title-font-size: $maps-infowindow-title-font-size !default;

/// Tamaño de letra del cuerpo de la ventana de información de los mapas popup
/// @type Number
$popup-maps-infowindow-body-font-size: $maps-infowindow-body-font-size !default;

/// Color usado para el texto del cuerpo de la ventana de información de los mapas popup
/// @type Color
$popup-maps-infowindow-body-text-color: $maps-infowindow-body-text-color !default;

/// Tamaño de letra de los enlaces en la ventana de información de los mapas popup
/// @type Number
$popup-maps-infowindow-link-font-size: $maps-infowindow-link-font-size !default;

/// Tamaño de letra de la leyenda del buscador en lo mapas popup
/// @type Number
$popup-maps-searcher-legend-font-size: $maps-searcher-legend-font-size !default;

/// Tamaño de letra del buscador en los mapas popup
/// @type Number
$popup-maps-searcher-font-size: $maps-searcher-font-size !default;
*/
/**
 * Fichero general SCSS que importa todos los ficheros de variables definidos a nivel de proyecto, a fin
 * de permitir la composición de un SASS que disponga de todos los datos del proyecto.
 *
 * @author drodriguez
 */
/**
 * Sobreescritura de ciertos elementos en funcion de parametrizaciones de proxia
 * por defecto.
 */
/**
 * Variables predefinidas de Proxia para la maquetación de datos
 */
/**
 * Mixins y variables de compatibilidad entre BS3 y BS4
 */
.nav-repeat-group.nav-tabs > .nav-item {
  float: left;
  margin-bottom: -1px; }
  .nav-repeat-group.nav-tabs > .nav-item > .nav-link {
    margin-right: 2px;
    line-height: 1.4286;
    border: 1px solid transparent;
    border-radius: 4px 4px 0 0; }
    .nav-repeat-group.nav-tabs > .nav-item > .nav-link:hover, .nav-repeat-group.nav-tabs > .nav-item > .nav-link:active, .nav-repeat-group.nav-tabs > .nav-item > .nav-link:focus, .nav-repeat-group.nav-tabs > .nav-item > .nav-link:active:hover, .nav-repeat-group.nav-tabs > .nav-item > .nav-link:active:focus {
      border-color: white white #ddd; }
    .nav-repeat-group.nav-tabs > .nav-item > .nav-link.active, .nav-repeat-group.nav-tabs > .nav-item > .nav-link.active:hover, .nav-repeat-group.nav-tabs > .nav-item > .nav-link.active:focus {
      color: #616161;
      background-color: #ffffff;
      border: 1px solid #ddd;
      border-bottom-color: transparent; }

/**
 * Mixins que tenemos y permitimos su reutilización en otros proyectos.
 */
body.proxia-restful-printable {
  background-color: transparent;
  margin: 0px;
  padding: 0px; }

iframe.proxia-restful-printable {
  height: 400px;
  width: 100%; }

div[data-proxiarestful="true"] {
  /**
 * Aspecto general del sistema de navegación de los componentes REACT
 *
 * @author David Rodríguez Alfayate (drodriguez@divisait.com)
 * @since Proxia CMS 10.2
 */
  /**
 * Aspecto general de formularios dentro del sopaorte de REACT con los controles gestionados
 * por el propio sistema, controles verificados, aspecto de radio button y checks, padding
 * sobre campos de formulario
 *
 * @author David Rodríguez Alfayate
 * @since Proxia CMS 10.2
 */
  /**
 * Soporte del selector de fecha a través del control react-date-picker
 *
 * @author David Rodríguez Alfayate
 * @since Proxia CMS 10.2
 */
  /**
 * Para controlar la apariencia de elementos autocompletados por el sistema.
 *
 * @author David Rodríguez Alfayate
 * @since Proxia CMS 10.2
 */
  /**
 * Estilos CSS para el selector general de ficheros y para el control que permite visualizar el selector
 * de ficheros vía Excel para su procesado posterior
 *
 * @author David Rodríguez Alfayate (drodriguez@divisait.com)
 */
  /**
 * Permite mostrar el control de selección de contenidos para la búsqueda de los mismos en el sistema
 *
 * @author David Rodríguez Alfayate (drodriguez@divisait.com)
 */
  /**
 * Elementos básicos de CORE de Proxia REACT que dan ciertos estilos predefinidos
 */ }
  div[data-proxiarestful="true"] .navigation.navigation-short,
  div[data-proxiarestful="true"] .navigation.navigation-long {
    margin-top: 30px; }
    div[data-proxiarestful="true"] .navigation.navigation-short .totalPageList,
    div[data-proxiarestful="true"] .navigation.navigation-long .totalPageList {
      float: left; }
    div[data-proxiarestful="true"] .navigation.navigation-short .numPageList,
    div[data-proxiarestful="true"] .navigation.navigation-long .numPageList {
      float: right; }
      div[data-proxiarestful="true"] .navigation.navigation-short .numPageList ul,
      div[data-proxiarestful="true"] .navigation.navigation-long .numPageList ul {
        margin: 0px;
        padding: 0px;
        list-style: none; }
        div[data-proxiarestful="true"] .navigation.navigation-short .numPageList ul > li,
        div[data-proxiarestful="true"] .navigation.navigation-long .numPageList ul > li {
          display: inline-block; }
          div[data-proxiarestful="true"] .navigation.navigation-short .numPageList ul > li + li,
          div[data-proxiarestful="true"] .navigation.navigation-long .numPageList ul > li + li {
            padding-left: 6px; }
    div[data-proxiarestful="true"] .navigation.navigation-short:before, div[data-proxiarestful="true"] .navigation.navigation-short:after,
    div[data-proxiarestful="true"] .navigation.navigation-long:before,
    div[data-proxiarestful="true"] .navigation.navigation-long:after {
      display: table;
      content: " "; }
    div[data-proxiarestful="true"] .navigation.navigation-short:after,
    div[data-proxiarestful="true"] .navigation.navigation-long:after {
      clear: both; }
  div[data-proxiarestful="true"] .navigation.navigation-short .numPageList > * + * {
    margin-left: 6px; }
  div[data-proxiarestful="true"] .navigation.navigation-long .totalPageList div {
    display: inline-block; }
    div[data-proxiarestful="true"] .navigation.navigation-long .totalPageList div + div {
      margin-left: 6px; }
    div[data-proxiarestful="true"] .navigation.navigation-long .totalPageList div.changePageSize input {
      padding: 0px 3px;
      border: 1px solid #767677;
      width: 80px; }
      div[data-proxiarestful="true"] .navigation.navigation-long .totalPageList div.changePageSize input + label {
        margin-left: 6px;
        font-weight: normal;
        display: inline-block; }
  div[data-proxiarestful="true"] form, div[data-proxiarestful="true"] .form, div[data-proxiarestful="true"] .form-filter {
    position: relative; }
    div[data-proxiarestful="true"] form > .loading, div[data-proxiarestful="true"] .form > .loading, div[data-proxiarestful="true"] .form-filter > .loading {
      position: absolute;
      height: 100%;
      background-color: rgba(255, 255, 255, 0.3); }
    div[data-proxiarestful="true"] form .toastr.form-error, div[data-proxiarestful="true"] .form .toastr.form-error, div[data-proxiarestful="true"] .form-filter .toastr.form-error {
      padding: 15px;
      margin: 15px;
      background: #ee0000;
      color: white;
      font-size: 16px;
      position: absolute;
      right: 0px;
      width: 250px;
      z-index: 4;
      opacity: 0.8;
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      div[data-proxiarestful="true"] form .toastr.form-error:hover, div[data-proxiarestful="true"] .form .toastr.form-error:hover, div[data-proxiarestful="true"] .form-filter .toastr.form-error:hover {
        opacity: 1; }
      div[data-proxiarestful="true"] form .toastr.form-error .toastr-icon, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-icon, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-icon {
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        align-self: center;
        padding-right: 15px; }
      div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button form .toastr.form-error .toastr-close a.printButton, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .form .toastr.form-error .toastr-close a.printButton, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .form-filter .toastr.form-error .toastr-close a.printButton {
        padding: 0px;
        margin: 0px;
        color: inherit; }
        div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn:hover, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .printable-button a.printButton:hover, div[data-proxiarestful="true"] .printable-button form .toastr.form-error .toastr-close a.printButton:hover, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn:active, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .printable-button a.printButton:active, div[data-proxiarestful="true"] .printable-button form .toastr.form-error .toastr-close a.printButton:active, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn:focus, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .printable-button a.printButton:focus, div[data-proxiarestful="true"] .printable-button form .toastr.form-error .toastr-close a.printButton:focus, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn:active:hover, div[data-proxiarestful="true"] form .toastr.form-error .toastr-close .btn:active:focus, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn:hover, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .printable-button a.printButton:hover, div[data-proxiarestful="true"] .printable-button .form .toastr.form-error .toastr-close a.printButton:hover, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn:active, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .printable-button a.printButton:active, div[data-proxiarestful="true"] .printable-button .form .toastr.form-error .toastr-close a.printButton:active, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn:focus, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .printable-button a.printButton:focus, div[data-proxiarestful="true"] .printable-button .form .toastr.form-error .toastr-close a.printButton:focus, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn:active:hover, div[data-proxiarestful="true"] .form .toastr.form-error .toastr-close .btn:active:focus, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn:hover, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .printable-button a.printButton:hover, div[data-proxiarestful="true"] .printable-button .form-filter .toastr.form-error .toastr-close a.printButton:hover, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn:active, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .printable-button a.printButton:active, div[data-proxiarestful="true"] .printable-button .form-filter .toastr.form-error .toastr-close a.printButton:active, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn:focus, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .printable-button a.printButton:focus, div[data-proxiarestful="true"] .printable-button .form-filter .toastr.form-error .toastr-close a.printButton:focus, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn:active:hover, div[data-proxiarestful="true"] .form-filter .toastr.form-error .toastr-close .btn:active:focus {
          color: inherit; }
    div[data-proxiarestful="true"] form .form-control.react-date-picker--disabled, div[data-proxiarestful="true"] .form .form-control.react-date-picker--disabled, div[data-proxiarestful="true"] .form-filter .form-control.react-date-picker--disabled {
      background-color: white; }
    div[data-proxiarestful="true"] form .input-group.verified-control, div[data-proxiarestful="true"] .form .input-group.verified-control, div[data-proxiarestful="true"] .form-filter .input-group.verified-control {
      width: 100%;
      background-color: white;
      border: 1px solid #767677; }
      div[data-proxiarestful="true"] form .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-append,
      div[data-proxiarestful="true"] form .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-addon,
      div[data-proxiarestful="true"] form .input-group.verified-control .form-control:disabled + .input-group-addon,
      div[data-proxiarestful="true"] form .input-group.verified-control .form-control:disabled + .input-group-append, div[data-proxiarestful="true"] .form .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-append,
      div[data-proxiarestful="true"] .form .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-addon,
      div[data-proxiarestful="true"] .form .input-group.verified-control .form-control:disabled + .input-group-addon,
      div[data-proxiarestful="true"] .form .input-group.verified-control .form-control:disabled + .input-group-append, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-append,
      div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control[readonly]:not(.dialog-input-control) + .input-group-addon,
      div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control:disabled + .input-group-addon,
      div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control:disabled + .input-group-append {
        background-color: white;
        opacity: 1; }
      div[data-proxiarestful="true"] form .input-group.verified-control:focus-within, div[data-proxiarestful="true"] .form .input-group.verified-control:focus-within, div[data-proxiarestful="true"] .form-filter .input-group.verified-control:focus-within {
        box-shadow: 0 0 0 2px rgba(152, 0, 70, 0.25); }
      div[data-proxiarestful="true"] form .input-group.verified-control[data-contains-error="true"], div[data-proxiarestful="true"] .form .input-group.verified-control[data-contains-error="true"], div[data-proxiarestful="true"] .form-filter .input-group.verified-control[data-contains-error="true"] {
        border-color: red; }
      div[data-proxiarestful="true"] form .input-group.verified-control .form-control, div[data-proxiarestful="true"] .form .input-group.verified-control .form-control, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control {
        box-shadow: none;
        border: 0px; }
        div[data-proxiarestful="true"] form .input-group.verified-control .form-control:not([type="radio"]):not([type="checkbox"]), div[data-proxiarestful="true"] .form .input-group.verified-control .form-control:not([type="radio"]):not([type="checkbox"]), div[data-proxiarestful="true"] .form-filter .input-group.verified-control .form-control:not([type="radio"]):not([type="checkbox"]) {
          height: 40.8571px; }
      div[data-proxiarestful="true"] form .input-group.verified-control .input-group-text, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-text, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-text {
        background-color: transparent;
        border: 0px; }
        div[data-proxiarestful="true"] form .input-group.verified-control .input-group-text .fa-times, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-text .fa-times, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-text .fa-times {
          color: red; }
        div[data-proxiarestful="true"] form .input-group.verified-control .input-group-text .fa-check, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-text .fa-check, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-text .fa-check {
          color: green; }
        div[data-proxiarestful="true"] form .input-group.verified-control .input-group-text .show, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-text .show, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-text .show {
          color: #4E6FB8;
          font-size: 10.5px;
          display: block; }
      div[data-proxiarestful="true"] form .input-group.verified-control .input-group-text.unset *, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-text.unset *, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-text.unset * {
        display: none; }
      div[data-proxiarestful="true"] form .input-group.verified-control .input-group-append,
      div[data-proxiarestful="true"] form .input-group.verified-control .input-group-addon, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-append,
      div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-addon, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-append,
      div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-addon {
        border: 0px;
        border-radius: 0px;
        min-width: 27px;
        margin-left: 0px; }
        div[data-proxiarestful="true"] form .input-group.verified-control .input-group-append > span,
        div[data-proxiarestful="true"] form .input-group.verified-control .input-group-addon > span, div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-append > span,
        div[data-proxiarestful="true"] .form .input-group.verified-control .input-group-addon > span, div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-append > span,
        div[data-proxiarestful="true"] .form-filter .input-group.verified-control .input-group-addon > span {
          display: inline-block;
          width: 100%;
          padding-left: 0px;
          padding-right: 6px; }
    div[data-proxiarestful="true"] form .form-group.form-inline label, div[data-proxiarestful="true"] .form .form-group.form-inline label, div[data-proxiarestful="true"] .form-filter .form-group.form-inline label {
      margin-right: 6px; }
    div[data-proxiarestful="true"] form input[type="checkbox"] + label,
    div[data-proxiarestful="true"] form input[type="radio"] + label, div[data-proxiarestful="true"] .form input[type="checkbox"] + label,
    div[data-proxiarestful="true"] .form input[type="radio"] + label, div[data-proxiarestful="true"] .form-filter input[type="checkbox"] + label,
    div[data-proxiarestful="true"] .form-filter input[type="radio"] + label {
      padding-left: 6px;
      font-size: 14px;
      line-height: 20px;
      font-weight: normal; }
      div[data-proxiarestful="true"] form input[type="checkbox"] + label .required,
      div[data-proxiarestful="true"] form input[type="radio"] + label .required, div[data-proxiarestful="true"] .form input[type="checkbox"] + label .required,
      div[data-proxiarestful="true"] .form input[type="radio"] + label .required, div[data-proxiarestful="true"] .form-filter input[type="checkbox"] + label .required,
      div[data-proxiarestful="true"] .form-filter input[type="radio"] + label .required {
        display: none; }
    div[data-proxiarestful="true"] form input[type="radio"] + label.error, div[data-proxiarestful="true"] .form input[type="radio"] + label.error, div[data-proxiarestful="true"] .form-filter input[type="radio"] + label.error {
      color: unset; }
    div[data-proxiarestful="true"] form label + input[type="checkbox"],
    div[data-proxiarestful="true"] form label + input[type="radio"], div[data-proxiarestful="true"] .form label + input[type="checkbox"],
    div[data-proxiarestful="true"] .form label + input[type="radio"], div[data-proxiarestful="true"] .form-filter label + input[type="checkbox"],
    div[data-proxiarestful="true"] .form-filter label + input[type="radio"] {
      margin-left: 6px; }
    div[data-proxiarestful="true"] form input[type="checkbox"],
    div[data-proxiarestful="true"] form input[type="radio"], div[data-proxiarestful="true"] .form input[type="checkbox"],
    div[data-proxiarestful="true"] .form input[type="radio"], div[data-proxiarestful="true"] .form-filter input[type="checkbox"],
    div[data-proxiarestful="true"] .form-filter input[type="radio"] {
      position: relative;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      width: 18px;
      height: 18px;
      top: 3px;
      border: 0px;
      display: inline-block;
      padding: 0px; }
      div[data-proxiarestful="true"] form input[type="checkbox"]:after,
      div[data-proxiarestful="true"] form input[type="radio"]:after, div[data-proxiarestful="true"] .form input[type="checkbox"]:after,
      div[data-proxiarestful="true"] .form input[type="radio"]:after, div[data-proxiarestful="true"] .form-filter input[type="checkbox"]:after,
      div[data-proxiarestful="true"] .form-filter input[type="radio"]:after {
        position: absolute;
        display: block;
        left: 0px;
        z-index: 1;
        content: '';
        width: 18px;
        height: 18px;
        background-color: white;
        border: 2px solid #980046; }
      div[data-proxiarestful="true"] form input[type="checkbox"]:disabled:after,
      div[data-proxiarestful="true"] form input[type="radio"]:disabled:after, div[data-proxiarestful="true"] .form input[type="checkbox"]:disabled:after,
      div[data-proxiarestful="true"] .form input[type="radio"]:disabled:after, div[data-proxiarestful="true"] .form-filter input[type="checkbox"]:disabled:after,
      div[data-proxiarestful="true"] .form-filter input[type="radio"]:disabled:after {
        background-color: white;
        border-color: #767677; }
      div[data-proxiarestful="true"] form input[type="checkbox"][type="radio"]:checked:after,
      div[data-proxiarestful="true"] form input[type="radio"][type="radio"]:checked:after, div[data-proxiarestful="true"] .form input[type="checkbox"][type="radio"]:checked:after,
      div[data-proxiarestful="true"] .form input[type="radio"][type="radio"]:checked:after, div[data-proxiarestful="true"] .form-filter input[type="checkbox"][type="radio"]:checked:after,
      div[data-proxiarestful="true"] .form-filter input[type="radio"][type="radio"]:checked:after {
        background: radial-gradient(ellipse at center, #980046 0%, #980046 35%, #980046 35%, transparent 47%, transparent 48%); }
      div[data-proxiarestful="true"] form input[type="checkbox"][type="checkbox"]:checked:after,
      div[data-proxiarestful="true"] form input[type="radio"][type="checkbox"]:checked:after, div[data-proxiarestful="true"] .form input[type="checkbox"][type="checkbox"]:checked:after,
      div[data-proxiarestful="true"] .form input[type="radio"][type="checkbox"]:checked:after, div[data-proxiarestful="true"] .form-filter input[type="checkbox"][type="checkbox"]:checked:after,
      div[data-proxiarestful="true"] .form-filter input[type="radio"][type="checkbox"]:checked:after {
        background: linear-gradient(#980046, #980046) 50% 50%/50% 50%; }
    div[data-proxiarestful="true"] form input[type="checkbox"]:after, div[data-proxiarestful="true"] .form input[type="checkbox"]:after, div[data-proxiarestful="true"] .form-filter input[type="checkbox"]:after {
      border-radius: 2px; }
    div[data-proxiarestful="true"] form input[type="radio"]:after, div[data-proxiarestful="true"] .form input[type="radio"]:after, div[data-proxiarestful="true"] .form-filter input[type="radio"]:after {
      border-radius: 18px; }
    div[data-proxiarestful="true"] form textarea, div[data-proxiarestful="true"] .form textarea, div[data-proxiarestful="true"] .form-filter textarea {
      resize: none; }
    div[data-proxiarestful="true"] form .form-control, div[data-proxiarestful="true"] .form .form-control, div[data-proxiarestful="true"] .form-filter .form-control {
      border-radius: 0px;
      border-color: #767677;
      font-size: 16px;
      line-height: 22.8571px;
      background-color: white; }
      div[data-proxiarestful="true"] form .form-control.dialog-input-control[readonly]:not(:disabled), div[data-proxiarestful="true"] .form .form-control.dialog-input-control[readonly]:not(:disabled), div[data-proxiarestful="true"] .form-filter .form-control.dialog-input-control[readonly]:not(:disabled) {
        background-color: white; }
      div[data-proxiarestful="true"] form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea), div[data-proxiarestful="true"] .form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea), div[data-proxiarestful="true"] .form-filter .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea) {
        border-width: 1px;
        height: 42.8571px; }
        div[data-proxiarestful="true"] form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):not(.react-date-picker), div[data-proxiarestful="true"] .form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):not(.react-date-picker), div[data-proxiarestful="true"] .form-filter .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):not(.react-date-picker) {
          padding: 9px 12px; }
        div[data-proxiarestful="true"] form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):disabled, div[data-proxiarestful="true"] .form .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):disabled, div[data-proxiarestful="true"] .form-filter .form-control:not([type="radio"]):not([type="checkbox"]):not(textarea):disabled {
          background: white; }
      div[data-proxiarestful="true"] form .form-control:focus, div[data-proxiarestful="true"] .form .form-control:focus, div[data-proxiarestful="true"] .form-filter .form-control:focus {
        box-shadow: 0 0 0 2px rgba(152, 0, 70, 0.25); }
    div[data-proxiarestful="true"] form .form-control.error,
    div[data-proxiarestful="true"] form .form-control[data-error="true"], div[data-proxiarestful="true"] .form .form-control.error,
    div[data-proxiarestful="true"] .form .form-control[data-error="true"], div[data-proxiarestful="true"] .form-filter .form-control.error,
    div[data-proxiarestful="true"] .form-filter .form-control[data-error="true"] {
      border-color: red; }
    div[data-proxiarestful="true"] form .error-area-description.error-active, div[data-proxiarestful="true"] .form .error-area-description.error-active, div[data-proxiarestful="true"] .form-filter .error-area-description.error-active {
      position: absolute;
      display: block;
      padding: 0;
      width: 100%;
      z-index: 3; }
      div[data-proxiarestful="true"] form .error-area-description.error-active > span, div[data-proxiarestful="true"] .form .error-area-description.error-active > span, div[data-proxiarestful="true"] .form-filter .error-area-description.error-active > span {
        margin-top: 5px;
        font-size: 10.5px;
        line-height: 15px;
        background: #ee0000;
        color: white;
        padding: 3px 6px;
        display: inline-block; }
        div[data-proxiarestful="true"] form .error-area-description.error-active > span:before, div[data-proxiarestful="true"] .form .error-area-description.error-active > span:before, div[data-proxiarestful="true"] .form-filter .error-area-description.error-active > span:before {
          position: absolute;
          width: 0;
          height: 0;
          border-color: transparent;
          border-style: solid;
          top: 5px;
          left: 9px;
          margin-top: -5px;
          border-width: 0 5px 5px;
          border-bottom-color: #ee0000;
          display: block;
          content: ''; }
    div[data-proxiarestful="true"] form div[data-anyof=true] .error .error-area-description.error-active,
    div[data-proxiarestful="true"] form legend.error .error-area-description.error-active,
    div[data-proxiarestful="true"] form .legend.error .error-area-description.error-active, div[data-proxiarestful="true"] .form div[data-anyof=true] .error .error-area-description.error-active,
    div[data-proxiarestful="true"] .form legend.error .error-area-description.error-active,
    div[data-proxiarestful="true"] .form .legend.error .error-area-description.error-active, div[data-proxiarestful="true"] .form-filter div[data-anyof=true] .error .error-area-description.error-active,
    div[data-proxiarestful="true"] .form-filter legend.error .error-area-description.error-active,
    div[data-proxiarestful="true"] .form-filter .legend.error .error-area-description.error-active {
      color: initial;
      display: inline;
      position: initial;
      position: unset;
      width: auto;
      font-weight: normal; }
      div[data-proxiarestful="true"] form div[data-anyof=true] .error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] form legend.error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] form .legend.error .error-area-description.error-active > span, div[data-proxiarestful="true"] .form div[data-anyof=true] .error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] .form legend.error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] .form .legend.error .error-area-description.error-active > span, div[data-proxiarestful="true"] .form-filter div[data-anyof=true] .error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] .form-filter legend.error .error-area-description.error-active > span,
      div[data-proxiarestful="true"] .form-filter .legend.error .error-area-description.error-active > span {
        color: #ee0000;
        background: transparent;
        display: inline; }
        div[data-proxiarestful="true"] form div[data-anyof=true] .error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] form legend.error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] form .legend.error .error-area-description.error-active > span:before, div[data-proxiarestful="true"] .form div[data-anyof=true] .error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] .form legend.error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] .form .legend.error .error-area-description.error-active > span:before, div[data-proxiarestful="true"] .form-filter div[data-anyof=true] .error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] .form-filter legend.error .error-area-description.error-active > span:before,
        div[data-proxiarestful="true"] .form-filter .legend.error .error-area-description.error-active > span:before {
          content: none; }
    div[data-proxiarestful="true"] form .form-group, div[data-proxiarestful="true"] .form .form-group, div[data-proxiarestful="true"] .form-filter .form-group {
      position: relative; }
    div[data-proxiarestful="true"] form .form-group .error-area-description, div[data-proxiarestful="true"] .form .form-group .error-area-description, div[data-proxiarestful="true"] .form-filter .form-group .error-area-description {
      display: block; }
    div[data-proxiarestful="true"] form label,
    div[data-proxiarestful="true"] form .label, div[data-proxiarestful="true"] .form label,
    div[data-proxiarestful="true"] .form .label, div[data-proxiarestful="true"] .form-filter label,
    div[data-proxiarestful="true"] .form-filter .label {
      font-weight: 600;
      font-size: 14px;
      line-height: 20px; }
    div[data-proxiarestful="true"] form .label, div[data-proxiarestful="true"] .form .label, div[data-proxiarestful="true"] .form-filter .label {
      margin-bottom: 5px; }
    div[data-proxiarestful="true"] form label.error-field,
    div[data-proxiarestful="true"] form div.error-field, div[data-proxiarestful="true"] .form label.error-field,
    div[data-proxiarestful="true"] .form div.error-field, div[data-proxiarestful="true"] .form-filter label.error-field,
    div[data-proxiarestful="true"] .form-filter div.error-field {
      color: red; }
    div[data-proxiarestful="true"] form label.error,
    div[data-proxiarestful="true"] form .label.error, div[data-proxiarestful="true"] .form label.error,
    div[data-proxiarestful="true"] .form .label.error, div[data-proxiarestful="true"] .form-filter label.error,
    div[data-proxiarestful="true"] .form-filter .label.error {
      color: red; }
    div[data-proxiarestful="true"] form div[data-anyof=true] .error, div[data-proxiarestful="true"] .form div[data-anyof=true] .error, div[data-proxiarestful="true"] .form-filter div[data-anyof=true] .error {
      color: initial; }
    div[data-proxiarestful="true"] form .btn, div[data-proxiarestful="true"] form .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button form a.printButton, div[data-proxiarestful="true"] .form .btn, div[data-proxiarestful="true"] .form .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .form a.printButton, div[data-proxiarestful="true"] .form-filter .btn, div[data-proxiarestful="true"] .form-filter .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .form-filter a.printButton {
      font-size: 16px;
      padding-left: 12px;
      padding-right: 12px;
      border-radius: 0px; }
      div[data-proxiarestful="true"] form .btn + .btn, div[data-proxiarestful="true"] form .printable-button a.printButton + .btn, div[data-proxiarestful="true"] .printable-button form a.printButton + .btn, div[data-proxiarestful="true"] form .printable-button .btn + a.printButton, div[data-proxiarestful="true"] .printable-button form .btn + a.printButton, div[data-proxiarestful="true"] form .printable-button a.printButton + a.printButton, div[data-proxiarestful="true"] .printable-button form a.printButton + a.printButton, div[data-proxiarestful="true"] form .btn + .btn-group, div[data-proxiarestful="true"] form .printable-button a.printButton + .btn-group, div[data-proxiarestful="true"] .printable-button form a.printButton + .btn-group, div[data-proxiarestful="true"] .form .btn + .btn, div[data-proxiarestful="true"] .form .printable-button a.printButton + .btn, div[data-proxiarestful="true"] .printable-button .form a.printButton + .btn, div[data-proxiarestful="true"] .form .printable-button .btn + a.printButton, div[data-proxiarestful="true"] .printable-button .form .btn + a.printButton, div[data-proxiarestful="true"] .form .printable-button a.printButton + a.printButton, div[data-proxiarestful="true"] .printable-button .form a.printButton + a.printButton, div[data-proxiarestful="true"] .form .btn + .btn-group, div[data-proxiarestful="true"] .form .printable-button a.printButton + .btn-group, div[data-proxiarestful="true"] .printable-button .form a.printButton + .btn-group, div[data-proxiarestful="true"] .form-filter .btn + .btn, div[data-proxiarestful="true"] .form-filter .printable-button a.printButton + .btn, div[data-proxiarestful="true"] .printable-button .form-filter a.printButton + .btn, div[data-proxiarestful="true"] .form-filter .printable-button .btn + a.printButton, div[data-proxiarestful="true"] .printable-button .form-filter .btn + a.printButton, div[data-proxiarestful="true"] .form-filter .printable-button a.printButton + a.printButton, div[data-proxiarestful="true"] .printable-button .form-filter a.printButton + a.printButton, div[data-proxiarestful="true"] .form-filter .btn + .btn-group, div[data-proxiarestful="true"] .form-filter .printable-button a.printButton + .btn-group, div[data-proxiarestful="true"] .printable-button .form-filter a.printButton + .btn-group {
        margin-left: 15px; }
    div[data-proxiarestful="true"] form legend, div[data-proxiarestful="true"] form .legend, div[data-proxiarestful="true"] form .title, div[data-proxiarestful="true"] .form legend, div[data-proxiarestful="true"] .form .legend, div[data-proxiarestful="true"] .form .title, div[data-proxiarestful="true"] .form-filter legend, div[data-proxiarestful="true"] .form-filter .legend, div[data-proxiarestful="true"] .form-filter .title {
      font-weight: 600;
      font-size: 22px;
      line-height: 31.4286px;
      border-bottom: 0px; }
    div[data-proxiarestful="true"] form .title, div[data-proxiarestful="true"] .form .title, div[data-proxiarestful="true"] .form-filter .title {
      margin-bottom: 6px; }
    div[data-proxiarestful="true"] form .help-info, div[data-proxiarestful="true"] .form .help-info, div[data-proxiarestful="true"] .form-filter .help-info {
      /* position: absolute;
    background-color: white;
    top: $line-height-base * $form-control-legend-font-size;*/
      margin-top: 31.4286px;
      font-size: 10.5px;
      z-index: 3; }
      div[data-proxiarestful="true"] form .help-info .content, div[data-proxiarestful="true"] .form .help-info .content, div[data-proxiarestful="true"] .form-filter .help-info .content {
        position: relative;
        border: 1px solid #F2D16B;
        background-color: #FBF0CF;
        width: 80%;
        padding: 3px; }
    div[data-proxiarestful="true"] form .form-control.select-multiple-holder, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder {
      min-height: 42.8571px;
      height: auto !important;
      padding: 6px 2px 0px !important; }
      div[data-proxiarestful="true"] form .form-control.select-multiple-holder:before, div[data-proxiarestful="true"] form .form-control.select-multiple-holder:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder:before, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder:before, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder:after {
        display: table;
        content: " "; }
      div[data-proxiarestful="true"] form .form-control.select-multiple-holder:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder:after {
        clear: both; }
      div[data-proxiarestful="true"] form .form-control.select-multiple-holder.disabled, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder.disabled, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder.disabled {
        background-color: white;
        opacity: 1; }
      div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.close-window, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.close-window, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.close-window {
        float: left;
        width: 15px;
        margin: 0 3px; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.close-window button, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.close-window button, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.close-window button {
          padding: 0px;
          display: inline-block;
          margin: 0px;
          width: 100%;
          color: #767677; }
      div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options {
        float: left;
        width: calc(100% - 15px - 6px); }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):before, div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):before, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):before, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after {
          display: table;
          content: " "; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple):after {
          clear: both; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) img, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) img, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) img {
          max-width: 100%; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > *, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > *, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > * {
          float: left;
          width: 50%; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > *:nth-child(2n+1), div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > *:nth-child(2n+1), div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value):not(.multiple) > *:nth-child(2n+1) {
          clear: both; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:before, div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:before, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:before, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after {
          display: table;
          content: " "; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple:after {
          clear: both; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple img, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple img, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple img {
          max-width: 100%; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > *, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > *, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > * {
          float: left;
          width: 33.33%; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > *:nth-child(3n+1), div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > *:nth-child(3n+1), div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value).multiple > *:nth-child(3n+1) {
          clear: both; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value), div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value), div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value) {
          margin-right: -3px;
          margin-left: -3px;
          margin-top: -6px; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value) > *, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value) > *, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options:not(.no-value) > * {
            padding-right: 3px;
            padding-left: 3px;
            padding-top: 6px; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options > *, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options > *, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options > * {
          font-size: 10.5px;
          display: inline-block; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button {
          width: 100%;
          font-size: 10.5px;
          padding: 0px 2px;
          border-radius: 2px;
          font-weight: normal;
          text-align: left;
          display: block; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:after {
            display: table;
            content: " "; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:after {
            clear: both; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:before, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:after {
            display: table;
            content: " "; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button:after, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button:after {
            clear: both; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button .txt, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button .txt, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button .txt {
            display: inline-block;
            float: left;
            width: calc(100% - 10.5px);
            white-space: nowrap;
            overflow: hidden;
            height: 15px;
            text-overflow: ellipsis; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button .icon, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button .icon, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button .icon {
            float: right; }
          div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options button + button, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options button + button, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options button + button {
            margin-left: 0px; }
        div[data-proxiarestful="true"] form .form-control.select-multiple-holder > div.select-multiple-container-options input, div[data-proxiarestful="true"] .form .form-control.select-multiple-holder > div.select-multiple-container-options input, div[data-proxiarestful="true"] .form-filter .form-control.select-multiple-holder > div.select-multiple-container-options input {
          border: 0px;
          border-radius: 0px;
          width: 100%;
          font-size: inherit;
          height: auto;
          font-size: 10.5px;
          display: block;
          text-overflow: ellipsis;
          white-space: nowrap; }
    div[data-proxiarestful="true"] form .special-svg-btn, div[data-proxiarestful="true"] .form .special-svg-btn, div[data-proxiarestful="true"] .form-filter .special-svg-btn {
      border: 0;
      background: transparent;
      padding: 4px 6px; }
      div[data-proxiarestful="true"] form .special-svg-btn:enabled, div[data-proxiarestful="true"] .form .special-svg-btn:enabled, div[data-proxiarestful="true"] .form-filter .special-svg-btn:enabled {
        cursor: pointer; }
        div[data-proxiarestful="true"] form .special-svg-btn:enabled:hover .svg-btn__button__icon, div[data-proxiarestful="true"] form .special-svg-btn:enabled:focus .svg-btn__button__icon, div[data-proxiarestful="true"] .form .special-svg-btn:enabled:hover .svg-btn__button__icon, div[data-proxiarestful="true"] .form .special-svg-btn:enabled:focus .svg-btn__button__icon, div[data-proxiarestful="true"] .form-filter .special-svg-btn:enabled:hover .svg-btn__button__icon, div[data-proxiarestful="true"] .form-filter .special-svg-btn:enabled:focus .svg-btn__button__icon {
          stroke: #0078d7;
          fill: #0078d7; }
      div[data-proxiarestful="true"] form .special-svg-btn:disabled .svg-btn__button__icon, div[data-proxiarestful="true"] .form .special-svg-btn:disabled .svg-btn__button__icon, div[data-proxiarestful="true"] .form-filter .special-svg-btn:disabled .svg-btn__button__icon {
        stroke: #6d6d6d;
        fill: #6d6d6d; }
      div[data-proxiarestful="true"] form .special-svg-btn svg, div[data-proxiarestful="true"] .form .special-svg-btn svg, div[data-proxiarestful="true"] .form-filter .special-svg-btn svg {
        display: inherit; }
  div[data-proxiarestful="true"] .btn-outline-primary {
    background-color: white;
    border-color: #980046;
    color: #980046;
    border-radius: 4px;
    padding-left: 12px;
    padding-right: 12px; }
  div[data-proxiarestful="true"] .btn-outline-secondary {
    color: #1E1E1E;
    border: 1px solid #1E1E1E;
    border-radius: 0px;
    padding-left: 12px;
    padding-right: 12px; }
  div[data-proxiarestful="true"] .cmSearchField.choiceControl {
    position: relative;
    overflow: hidden; }
    div[data-proxiarestful="true"] .cmSearchField.choiceControl:focus-within {
      overflow: unset; }
    div[data-proxiarestful="true"] .cmSearchField.choiceControl select,
    div[data-proxiarestful="true"] .cmSearchField.choiceControl select.form-control {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      text-overflow: ellipsis;
      white-space: nowrap;
      padding-right: 16px; }
      div[data-proxiarestful="true"] .cmSearchField.choiceControl select::-ms-expand,
      div[data-proxiarestful="true"] .cmSearchField.choiceControl select.form-control::-ms-expand {
        display: none; }
    div[data-proxiarestful="true"] .cmSearchField.choiceControl::before {
      content: '';
      width: 0;
      height: 0;
      border-width: 0 5px;
      border-style: solid;
      border-top-width: 6px;
      border-color: #980046 transparent transparent transparent;
      position: absolute;
      right: 10px;
      top: 16px;
      pointer-events: none; }
  div[data-proxiarestful="true"] ul.radio-group-controls {
    list-style: none;
    margin: 0px;
    padding: 0px; }
    div[data-proxiarestful="true"] ul.radio-group-controls li {
      display: inline-block; }
      div[data-proxiarestful="true"] ul.radio-group-controls li + li {
        margin-left: 6px; }
  div[data-proxiarestful="true"] .react-date-picker {
    display: inline-flex;
    position: relative; }
    div[data-proxiarestful="true"] .react-date-picker, div[data-proxiarestful="true"] .react-date-picker *, div[data-proxiarestful="true"] .react-date-picker *:before, div[data-proxiarestful="true"] .react-date-picker *:after {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
    div[data-proxiarestful="true"] .react-date-picker--disabled {
      background-color: #f0f0f0;
      color: #6d6d6d; }
    div[data-proxiarestful="true"] .react-date-picker__wrapper {
      display: flex;
      flex-grow: 1;
      flex-shrink: 0;
      border: thin solid gray; }
    div[data-proxiarestful="true"] .react-date-picker__inputGroup {
      min-width: calc(12px + 4.32em +  0.434em);
      flex-grow: 1;
      padding: 0 2px;
      box-sizing: content-box; }
      div[data-proxiarestful="true"] .react-date-picker__inputGroup__divider {
        padding: 1px 0;
        white-space: pre; }
      div[data-proxiarestful="true"] .react-date-picker__inputGroup__input {
        min-width: 0.54em;
        height: 100%;
        position: relative;
        padding: 0 1px;
        border: 0;
        background: none;
        font: inherit;
        box-sizing: content-box;
        -moz-appearance: textfield; }
        div[data-proxiarestful="true"] .react-date-picker__inputGroup__input::-webkit-outer-spin-button, div[data-proxiarestful="true"] .react-date-picker__inputGroup__input::-webkit-inner-spin-button {
          -webkit-appearance: none;
          margin: 0; }
        div[data-proxiarestful="true"] .react-date-picker__inputGroup__input:invalid {
          background: rgba(128, 0, 0, 0.3);
          color: black; }
          div[data-proxiarestful="true"] .react-date-picker__inputGroup__input:invalid::placeholder {
            color: black; }
        div[data-proxiarestful="true"] .react-date-picker__inputGroup__input--hasLeadingZero {
          margin-left: -0.54em;
          padding-left: calc(0.54em + 1px); }
    div[data-proxiarestful="true"] .react-date-picker__button {
      border: 0;
      background: transparent;
      padding: 4px 6px; }
      div[data-proxiarestful="true"] .react-date-picker__button:enabled {
        cursor: pointer; }
        div[data-proxiarestful="true"] .react-date-picker__button:enabled:hover .react-date-picker__button__icon, div[data-proxiarestful="true"] .react-date-picker__button:enabled:focus .react-date-picker__button__icon {
          stroke: #0078d7; }
      div[data-proxiarestful="true"] .react-date-picker__button:disabled .react-date-picker__button__icon {
        stroke: #6d6d6d; }
      div[data-proxiarestful="true"] .react-date-picker__button svg {
        display: inherit; }
    div[data-proxiarestful="true"] .react-date-picker__calendar {
      width: 350px;
      max-width: 100vw;
      position: absolute;
      top: 100%;
      left: 0;
      z-index: 3; }
      div[data-proxiarestful="true"] .react-date-picker__calendar--closed {
        display: none; }
      div[data-proxiarestful="true"] .react-date-picker__calendar .react-calendar {
        border-width: thin; }
  div[data-proxiarestful="true"] .react-date-picker.form-control {
    padding: 0px; }
    div[data-proxiarestful="true"] .react-date-picker.form-control > .react-date-picker__wrapper {
      padding: 6px 15px;
      border: 0px; }
  div[data-proxiarestful="true"] .react-calendar {
    width: 350px;
    max-width: 100%;
    background: white;
    border: 1px solid #a0a096;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.125em; }
    div[data-proxiarestful="true"] .react-calendar--doubleView {
      width: 700px; }
      div[data-proxiarestful="true"] .react-calendar--doubleView .react-calendar__viewContainer {
        display: flex;
        margin: -.5em; }
        div[data-proxiarestful="true"] .react-calendar--doubleView .react-calendar__viewContainer > * {
          width: 50%;
          margin: .5em; }
    div[data-proxiarestful="true"] .react-calendar, div[data-proxiarestful="true"] .react-calendar *, div[data-proxiarestful="true"] .react-calendar *:before, div[data-proxiarestful="true"] .react-calendar *:after {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
    div[data-proxiarestful="true"] .react-calendar button {
      margin: 0;
      border: 0;
      outline: none; }
      div[data-proxiarestful="true"] .react-calendar button:enabled:hover {
        cursor: pointer; }
    div[data-proxiarestful="true"] .react-calendar__navigation {
      height: 44px;
      margin-bottom: 1em; }
      div[data-proxiarestful="true"] .react-calendar__navigation button {
        min-width: 44px;
        background: none; }
        div[data-proxiarestful="true"] .react-calendar__navigation button:enabled:hover, div[data-proxiarestful="true"] .react-calendar__navigation button:enabled:focus {
          background-color: #e6e6e6; }
        div[data-proxiarestful="true"] .react-calendar__navigation button[disabled] {
          background-color: #f0f0f0; }
    div[data-proxiarestful="true"] .react-calendar__month-view__weekdays {
      text-align: center;
      text-transform: uppercase;
      font-weight: bold;
      font-size: .75em; }
      div[data-proxiarestful="true"] .react-calendar__month-view__weekdays__weekday {
        padding: .5em; }
    div[data-proxiarestful="true"] .react-calendar__month-view__weekNumbers {
      font-weight: bold; }
      div[data-proxiarestful="true"] .react-calendar__month-view__weekNumbers .react-calendar__tile {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: .75em;
        padding: calc(.75em / .75) calc(.5em / .75); }
    div[data-proxiarestful="true"] .react-calendar__month-view__days__day--weekend {
      color: #d10000; }
    div[data-proxiarestful="true"] .react-calendar__month-view__days__day--neighboringMonth {
      color: #757575; }
    div[data-proxiarestful="true"] .react-calendar__year-view .react-calendar__tile, div[data-proxiarestful="true"] .react-calendar__decade-view .react-calendar__tile, div[data-proxiarestful="true"] .react-calendar__century-view .react-calendar__tile {
      padding: 2em .5em; }
    div[data-proxiarestful="true"] .react-calendar__tile {
      max-width: 100%;
      text-align: center;
      padding: .75em .5em;
      background: none; }
      div[data-proxiarestful="true"] .react-calendar__tile:disabled {
        background-color: #f0f0f0; }
      div[data-proxiarestful="true"] .react-calendar__tile:enabled:hover, div[data-proxiarestful="true"] .react-calendar__tile:enabled:focus {
        background-color: #e6e6e6; }
      div[data-proxiarestful="true"] .react-calendar__tile--now {
        background: #ffff76; }
        div[data-proxiarestful="true"] .react-calendar__tile--now:enabled:hover, div[data-proxiarestful="true"] .react-calendar__tile--now:enabled:focus {
          background: #ffffa9; }
      div[data-proxiarestful="true"] .react-calendar__tile--hasActive {
        background: #76bbff; }
        div[data-proxiarestful="true"] .react-calendar__tile--hasActive:enabled:hover, div[data-proxiarestful="true"] .react-calendar__tile--hasActive:enabled:focus {
          background: #a9d4ff; }
      div[data-proxiarestful="true"] .react-calendar__tile--active {
        background: #006edc;
        color: white; }
        div[data-proxiarestful="true"] .react-calendar__tile--active:enabled:hover, div[data-proxiarestful="true"] .react-calendar__tile--active:enabled:focus {
          background: #1088ff; }
    div[data-proxiarestful="true"] .react-calendar--selectRange .react-calendar__tile--hover {
      background-color: #e6e6e6; }
  div[data-proxiarestful="true"] .autocomplete-items {
    padding: 12px 0px;
    background-color: white;
    z-index: 3;
    list-style: none;
    margin: 0px;
    max-height: 200px;
    overflow-y: scroll;
    width: 100%;
    width: calc(100% - 1px);
    border: 1px solid #cccccc; }
    div[data-proxiarestful="true"] .autocomplete-items > li a,
    div[data-proxiarestful="true"] .autocomplete-items > li button {
      display: block;
      width: 100%;
      padding: 6px;
      color: #646464;
      font-size: 14px;
      background-color: white;
      border: 0px;
      text-align: left; }
      div[data-proxiarestful="true"] .autocomplete-items > li a .help,
      div[data-proxiarestful="true"] .autocomplete-items > li button .help {
        padding-left: 6px; }
    div[data-proxiarestful="true"] .autocomplete-items.multiple > li a,
    div[data-proxiarestful="true"] .autocomplete-items.multiple > li button {
      border: 1px solid transparent; }
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li a:hover, div[data-proxiarestful="true"] .autocomplete-items.multiple > li a:active, div[data-proxiarestful="true"] .autocomplete-items.multiple > li a:focus, div[data-proxiarestful="true"] .autocomplete-items.multiple > li a:active:hover, div[data-proxiarestful="true"] .autocomplete-items.multiple > li a:active:focus,
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li button:hover,
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li button:active,
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li button:focus,
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li button:active:hover,
      div[data-proxiarestful="true"] .autocomplete-items.multiple > li button:active:focus {
        border: 1px solid #980046; }
    div[data-proxiarestful="true"] .autocomplete-items.multiple > li:focus a,
    div[data-proxiarestful="true"] .autocomplete-items.multiple > li:focus button {
      border: 1px solid #980046; }
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li a:hover, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li a:active, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li a:focus, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li a:active:hover, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li a:active:focus,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li button:hover,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li button:active,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li button:focus,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li button:active:hover,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li button:active:focus {
      color: white;
      background-color: #980046; }
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus a:hover, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus a:active, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus a:focus, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus a:active:hover, div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus a:active:focus,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus button:hover,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus button:active,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus button:focus,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus button:active:hover,
    div[data-proxiarestful="true"] .autocomplete-items:not(.multiple) > li:focus button:active:focus {
      color: white;
      background-color: #980046; }
    div[data-proxiarestful="true"] .autocomplete-items > li.selected a,
    div[data-proxiarestful="true"] .autocomplete-items > li.selected button {
      color: white;
      background-color: #980046; }
      div[data-proxiarestful="true"] .autocomplete-items > li.selected a .help-info,
      div[data-proxiarestful="true"] .autocomplete-items > li.selected button .help-info {
        color: #646464;
        padding-left: 6px; }
    div[data-proxiarestful="true"] .autocomplete-items > li + li.add-autocomplete:before {
      display: block;
      padding-top: 6px;
      margin: 6px;
      content: '';
      border-top: 1px solid white; }
    div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a,
    div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button {
      margin: 6px;
      width: auto;
      background-color: white;
      color: #646464;
      border: 1px solid #767677;
      border-radius: 0px;
      text-align: right; }
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a > span.icon,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button > span.icon {
        padding-right: 6px; }
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a:hover, div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a:active, div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a:focus, div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a:active:hover, div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete a:active:focus,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button:hover,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button:active,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button:focus,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button:active:hover,
      div[data-proxiarestful="true"] .autocomplete-items > li.add-autocomplete button:active:focus {
        background-color: white;
        color: #646464;
        text-decoration: underline; }
  div[data-proxiarestful="true"] div.dropzone {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 15px;
    border: 2px dotted #CDCDCD;
    background-color: #F7F7F7;
    border-radius: 2px;
    color: #CDCDCD;
    outline: none;
    transition: border .24s ease-in-out;
    position: relative; }
    div[data-proxiarestful="true"] div.dropzone .currentImage {
      position: absolute;
      top: 0px;
      max-width: 100%;
      max-height: 100%;
      z-index: 1;
      opacity: 0.3; }
    div[data-proxiarestful="true"] div.dropzone .fileArea {
      z-index: 2;
      border: 4px dashed;
      padding: 15px;
      text-align: center;
      border-radius: 15px;
      max-width: 250px;
      margin: 30px 0px;
      color: inherit; }
      div[data-proxiarestful="true"] div.dropzone .fileArea .fa {
        font-size: 34px; }
      div[data-proxiarestful="true"] div.dropzone .fileArea p {
        color: #646464; }
      div[data-proxiarestful="true"] div.dropzone .fileArea.imageArea.with-image p {
        background-color: rgba(255, 255, 255, 0.7); }
    div[data-proxiarestful="true"] div.dropzone .fileArea.imageArea {
      color: #646464; }
  div[data-proxiarestful="true"] .delete-button-area.with-image {
    text-align: right; }
  div[data-proxiarestful="true"] .delete-button-area button {
    margin-top: 6px; }
  div[data-proxiarestful="true"] div.excel-control .sampleExcel {
    margin: 15px 0px;
    font-size: 16px;
    line-height: 22.8571px;
    font-weight: 600; }
    div[data-proxiarestful="true"] div.excel-control .sampleExcel > a {
      color: #767677; }
      div[data-proxiarestful="true"] div.excel-control .sampleExcel > a:before {
        font: normal normal normal 14px/1 "FontAwesome";
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        speak: never;
        content: "";
        font-size: 28px;
        padding-right: 6px; }
  div[data-proxiarestful="true"] div.excel-control .mappings-detail {
    margin: 0px;
    padding: 0px;
    list-style: none; }
    div[data-proxiarestful="true"] div.excel-control .mappings-detail > li.header {
      margin: 15px 0px;
      font-weight: bold; }
      div[data-proxiarestful="true"] div.excel-control .mappings-detail > li.header .yours {
        text-align: right; }
      @media screen and (max-width: 767px) {
        div[data-proxiarestful="true"] div.excel-control .mappings-detail > li.header {
          display: none; } }
    @media screen and (min-width: 768px) {
      div[data-proxiarestful="true"] div.excel-control .mappings-detail > li .form-group:first-child {
        text-align: right; }
        div[data-proxiarestful="true"] div.excel-control .mappings-detail > li .form-group:first-child label {
          padding-top: 12px; } }
  div[data-proxiarestful="true"] div.excel-control .actions-area {
    text-align: right; }
  div[data-proxiarestful="true"] div.excel-control .results-view {
    background-color: #f0f0f0;
    padding: 30px; }
    div[data-proxiarestful="true"] div.excel-control .results-view .results {
      font-weight: 600;
      margin-bottom: 15px; }
    div[data-proxiarestful="true"] div.excel-control .results-view .btn-outline-primary {
      font-size: 16px; }
  div[data-proxiarestful="true"] .cmResourcesOuterBox {
    margin-top: 15px !important; }
    div[data-proxiarestful="true"] .cmResourcesOuterBox ul.cmResourceList {
      padding: 0px;
      list-style: none; }
      div[data-proxiarestful="true"] .cmResourcesOuterBox ul.cmResourceList .resourceData4 {
        padding-left: 6px; }
  div[data-proxiarestful="true"] .content-control .content-filter .btn, div[data-proxiarestful="true"] .content-control .content-filter .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .content-control .content-filter a.printButton {
    margin-top: 27px;
    background-color: white;
    font-size: 14px;
    padding: 9px;
    border-color: #9b9b9b; }
  div[data-proxiarestful="true"] .content-control .current-contents {
    margin: 0px;
    padding: 0px;
    list-style: none; }
    div[data-proxiarestful="true"] .content-control .current-contents > li {
      margin: 0px;
      background-color: #e3e3e3;
      font-size: 14px;
      margin: 6px 0;
      width: 160px;
      display: inline-block !important;
      border-radius: 6px;
      position: relative;
      padding: 0 30px 0 6px; }
      div[data-proxiarestful="true"] .content-control .current-contents > li {
        font-size: 14px;
        line-height: 20px;
        height: 80px;
        overflow: hidden;
        text-overflow: ellipsis;
        display: block;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical; }
      div[data-proxiarestful="true"] .content-control .current-contents > li .options {
        display: inline-block;
        margin-left: 15px;
        position: absolute;
        top: 0px;
        right: 6px;
        color: black; }
        div[data-proxiarestful="true"] .content-control .current-contents > li .options .fa {
          font-size: 20px;
          position: relative;
          top: 2px; }
      div[data-proxiarestful="true"] .content-control .current-contents > li + li {
        margin-left: 6px; }
  div[data-proxiarestful="true"] .content-control .search-results {
    margin: 0px;
    list-style: none;
    padding: 0px; }
    div[data-proxiarestful="true"] .content-control .search-results > li {
      position: relative;
      padding: 0px 6px 0px 30px;
      margin: 0px; }
      div[data-proxiarestful="true"] .content-control .search-results > li:before, div[data-proxiarestful="true"] .content-control .search-results > li:after {
        display: table;
        content: " "; }
      div[data-proxiarestful="true"] .content-control .search-results > li:after {
        clear: both; }
      div[data-proxiarestful="true"] .content-control .search-results > li:before {
        color: #980046;
        position: absolute;
        top: 6px;
        left: 6px;
        content: "";
        font-family: "font-valladolid"; }
      div[data-proxiarestful="true"] .content-control .search-results > li .content-data {
        width: 75%; }
      div[data-proxiarestful="true"] .content-control .search-results > li .content-path a {
        background-color: #9b9b9b;
        border: 1px solid #9b9b9b;
        display: inline-block;
        padding: 3px 15px;
        border-radius: 15px;
        font-size: 12px;
        color: white;
        margin-top: 6px;
        margin-bottom: 6px; }
        div[data-proxiarestful="true"] .content-control .search-results > li .content-path a:after {
          font-family: FontAwesome;
          content: '\f08e';
          padding-left: 6px; }
      div[data-proxiarestful="true"] .content-control .search-results > li .content-add .btn, div[data-proxiarestful="true"] .content-control .search-results > li .content-add .printable-button a.printButton, div[data-proxiarestful="true"] .printable-button .content-control .search-results > li .content-add a.printButton {
        background-color: white; }
  div[data-proxiarestful="true"] ul.master-view {
    margin: 15px 0 0 0;
    padding: 0px;
    list-style: none;
    position: relative; }
    div[data-proxiarestful="true"] ul.master-view > li {
      position: relative;
      padding: 0px 6px 0px 30px;
      margin: 0px; }
      div[data-proxiarestful="true"] ul.master-view > li:before {
        color: #980046;
        position: absolute;
        top: 6px;
        left: 6px;
        content: "";
        font-family: "font-valladolid"; }
      div[data-proxiarestful="true"] ul.master-view > li + li {
        padding-top: 15px; }
        div[data-proxiarestful="true"] ul.master-view > li + li:before {
          top: 21px; }
      div[data-proxiarestful="true"] ul.master-view > li .master-view-title {
        font-size: 18px;
        font-weight: bold;
        line-height: 25.7143px; }
      div[data-proxiarestful="true"] ul.master-view > li .master-view-description {
        font-size: 16px;
        line-height: 22.8571px; }
      div[data-proxiarestful="true"] ul.master-view > li .master-view-features {
        margin-top: 6px; }
        div[data-proxiarestful="true"] ul.master-view > li .master-view-features ul {
          margin: 0px;
          padding: 0px;
          list-style: none; }
          div[data-proxiarestful="true"] ul.master-view > li .master-view-features ul li {
            margin: 0px;
            padding: 0px;
            display: inline-block;
            font-size: 12px;
            border: 1px solid white;
            color: white;
            padding: 3px 18px; }
            div[data-proxiarestful="true"] ul.master-view > li .master-view-features ul li + li {
              margin-left: 15px; }
      div[data-proxiarestful="true"] ul.master-view > li .btn-edit {
        color: #4E6FB8;
        border: 1px solid #4E6FB8;
        padding: 4px 18px;
        border-radius: 0px;
        font-weight: 600; }
      div[data-proxiarestful="true"] ul.master-view > li .btn-delete {
        color: red;
        border: 1px solid red;
        padding: 4px 18px;
        border-radius: 0px;
        font-weight: 600; }
    div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > .btn, div[data-proxiarestful="true"] ul.master-view .printable-button div.master-view-options.btn-group > ul.dropdown-menu > li > a.printButton, div[data-proxiarestful="true"] .printable-button ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > a.printButton {
      padding: 6px 12px; }
    @media screen and (max-width: 991px) {
      div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > button {
        border: 0px;
        border-radius: 0px; }
      div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > * {
        border: 0px;
        background-color: transparent;
        width: 100%;
        text-align: left;
        color: inherit;
        font-weight: normal; }
        div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > * .fa {
          display: none; }
        div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > *:hover, div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > *:active, div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > *:focus, div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > *:active:hover, div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > *:active:focus {
          text-decoration: underline;
          color: #1E1E1E; } }
    @media screen and (min-width: 992px) {
      div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > button {
        display: none; }
      div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu {
        list-style: none;
        position: unset;
        position: static;
        display: block;
        float: none;
        min-width: auto;
        padding: 0px;
        margin: 0px;
        border: 0px;
        border-radius: 0px;
        -webkit-box-shadow: none;
        box-shadow: none;
        background-clip: initial;
        background-color: transparent; }
        div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li {
          display: inline-block; }
          div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li + li {
            margin-left: 6px; }
          div[data-proxiarestful="true"] ul.master-view div.master-view-options.btn-group > ul.dropdown-menu > li > * {
            display: inline-block; } }
  div[data-proxiarestful="true"] .master-results-view {
    position: relative; }
    div[data-proxiarestful="true"] .master-results-view > .loading, div[data-proxiarestful="true"] .master-results-view + .loading {
      position: absolute;
      top: 50%;
      bottom: 50%;
      padding-top: 0; }
  @media screen {
    div[data-proxiarestful="true"] .printable-area {
      margin-bottom: 6px;
      overflow-y: auto;
      overflow-x: hidden;
      height: 90%; } }
  @media print {
    div[data-proxiarestful="true"] .printable-button {
      display: none; } }
  div[data-proxiarestful="true"] a {
    cursor: pointer; }
  div[data-proxiarestful="true"] .disabled {
    opacity: 0.65; }
  div[data-proxiarestful="true"] .failed {
    text-align: center; }
    div[data-proxiarestful="true"] .failed img {
      width: 20%;
      margin-bottom: 6px; }
  div[data-proxiarestful="true"] .loading {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    background-color: transparent;
    padding: 15px 0px;
    text-align: center; }
  div[data-proxiarestful="true"] .edit-view {
    position: relative; }
    div[data-proxiarestful="true"] .edit-view .reloading .loading {
      position: absolute;
      width: 100%;
      height: 100%;
      text-align: center;
      font-size: 40px;
      background-color: rgba(255, 255, 255, 0.6);
      z-index: 4; }
      div[data-proxiarestful="true"] .edit-view .reloading .loading > span {
        position: relative;
        top: calc(40% - 40px); }
  div[data-proxiarestful="true"] .no-content {
    margin: 15px 0;
    text-align: center; }
  div[data-proxiarestful="true"] button.emulated-link {
    outline: 0;
    border: 0;
    padding: 0;
    margin: 0;
    background-color: transparent;
    display: inline; }
    div[data-proxiarestful="true"] button.emulated-link:not(.nav-item) {
      color: #1E1E1E; }
      div[data-proxiarestful="true"] button.emulated-link:not(.nav-item):hover, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item):active, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item):focus, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item):active:hover, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item):active:focus {
        text-decoration: underline;
        color: #980046; }
      div[data-proxiarestful="true"] button.emulated-link:not(.nav-item).disabled:hover, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item).disabled:active, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item).disabled:focus, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item).disabled:active:hover, div[data-proxiarestful="true"] button.emulated-link:not(.nav-item).disabled:active:focus {
        text-decoration: none;
        color: #1E1E1E; }
    div[data-proxiarestful="true"] button.emulated-link.nav-item:focus {
      outline: 5px auto -webkit-focus-ring-color;
      outline-offset: -2px; }
  div[data-proxiarestful="true"] a.emulated-link.disabled:hover, div[data-proxiarestful="true"] a.emulated-link.disabled:active, div[data-proxiarestful="true"] a.emulated-link.disabled:focus, div[data-proxiarestful="true"] a.emulated-link.disabled:active:hover, div[data-proxiarestful="true"] a.emulated-link.disabled:active:focus {
    text-decoration: none;
    color: #1E1E1E; }

@keyframes xFadeIn {
  0% {
    opacity: 0.3; }
  100% {
    opacity: 1; } }

@-moz-keyframes xFadeIn {
  0% {
    opacity: 0.3; }
  100% {
    opacity: 1; } }

@-webkit-keyframes xFadeIn {
  0% {
    opacity: 0.3; }
  100% {
    opacity: 1; } }

@-o-keyframes xFadeIn {
  0% {
    opacity: 0.3; }
  100% {
    opacity: 1; } }

@-ms-keyframes xFadeIn {
  div[data-proxiarestful="true"] 0% {
    opacity: 0.3; }
  div[data-proxiarestful="true"] 100% {
    opacity: 1; } }

@keyframes xFadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }

@-moz-keyframes xFadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }

@-webkit-keyframes xFadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }

@-o-keyframes xFadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0.2; } }

@-ms-keyframes xFadeOut {
  div[data-proxiarestful="true"] 0% {
    opacity: 1; }
  div[data-proxiarestful="true"] 100% {
    opacity: 0.2; } }

.modal[data-proxiarestful="true"] .modal-title + .close {
  position: absolute;
  top: 15px;
  right: 15px;
  float: none; }

body.proxia-restful-printable-mis-datos {
  background-color: transparent;
  margin: 0px;
  padding: 0px; }

iframe.proxia-restful-printable-mis-datos {
  height: 400px;
  width: 100%; }

div[data-service="proxia-restful-mis-datos"] .logon-info {
  position: relative;
  font-weight: 600; }
  div[data-service="proxia-restful-mis-datos"] .logon-info a {
    text-align: right;
    font-size: 12px;
    right: 0px;
    display: block;
    color: #1E1E1E; }
    div[data-service="proxia-restful-mis-datos"] .logon-info a:hover {
      color: #980046;
      text-decoration: none; }
    @media screen and (max-width: 767px) {
      div[data-service="proxia-restful-mis-datos"] .logon-info a {
        padding-top: 12px; } }
div[data-service="proxia-restful-mis-datos"] .user {
  padding: 6px 0px 0px;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center; }

div[data-service="proxia-restful-mis-datos"] .avatar {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto; }
  div[data-service="proxia-restful-mis-datos"] .avatar .fullname {
    font-size: 13px;
    font-weight: bold;
    padding-left: 10px; }
  div[data-service="proxia-restful-mis-datos"] .avatar .no-avatar,
  div[data-service="proxia-restful-mis-datos"] .avatar .avatar img {
    width: 36px;
    height: 36px;
    border-radius: 18px;
    display: inline-block;
    background-color: #D8D8D8; }

div[data-service="proxia-restful-mis-datos"] .options {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto; }
  div[data-service="proxia-restful-mis-datos"] .options > div {
    text-align: right; }

div[data-service="proxia-restful-mis-datos"] .show-options:before {
  font: normal normal normal 14px/1 "FontAwesome";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  speak: never;
  content: ""; }

@media screen and (min-width: 992px) {
  div[data-service="proxia-restful-mis-datos"] .show-options {
    display: none; } }

@media screen and (max-width: 991px) {
  div[data-service="proxia-restful-mis-datos"] ul.user-options {
    display: none; }
  div[data-service="proxia-restful-mis-datos"] .show-options {
    font-weight: normal;
    color: #a0a0a0;
    margin-top: 5px;
    display: inline-block;
    text-decoration: none;
    width: 20px;
    height: 20px;
    text-align: center; }
    div[data-service="proxia-restful-mis-datos"] .show-options:hover {
      color: white;
      background-color: #cacaca;
      border-radius: 20px; }
  div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options {
    display: block;
    position: absolute;
    right: 0px;
    left: 0px;
    width: 100%;
    list-style: none;
    z-index: 4;
    background-color: white;
    box-shadow: #ccc 0 0 8px;
    padding: 15px 0;
    margin: 0px; }
    div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li {
      padding-left: 15px;
      text-align: left;
      color: #4879a4;
      font-size: 13px;
      font-weight: 600; }
      div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management:before {
        display: block;
        border-top: 1px solid #767677;
        content: ' ';
        margin-top: 6px;
        margin-bottom: 6px;
        margin-right: 6px;
        list-style: none; }
      div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management > span {
        display: none; }
      div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management > ul {
        list-style: none;
        margin: 0px;
        padding: 0px; }
        div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management > ul > li {
          color: #4879a4;
          text-align: left; }
          div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management > ul > li > a {
            display: block;
            color: inherit; }
            div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li.management > ul > li > a:hover {
              color: #980046; }
      div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li > a {
        display: block;
        color: inherit; }
        div[data-service="proxia-restful-mis-datos"] .options-shown ul.user-options > li > a:hover {
          color: #980046; } }

@media screen and (min-width: 992px) {
  div[data-service="proxia-restful-mis-datos"] ul.user-options {
    margin: 0px;
    padding: 0px;
    list-style: none; }
    div[data-service="proxia-restful-mis-datos"] ul.user-options > li {
      display: inline;
      color: #4879a4;
      font-size: 13px;
      font-weight: 600; }
      div[data-service="proxia-restful-mis-datos"] ul.user-options > li > a {
        color: inherit; }
        div[data-service="proxia-restful-mis-datos"] ul.user-options > li > a:hover {
          color: #980046; }
      div[data-service="proxia-restful-mis-datos"] ul.user-options > li.management > ul {
        list-style: none; }
        div[data-service="proxia-restful-mis-datos"] ul.user-options > li.management > ul > li {
          color: #4879a4;
          text-align: left; }
          div[data-service="proxia-restful-mis-datos"] ul.user-options > li.management > ul > li > a {
            color: inherit;
            display: block;
            width: 100%; }
            div[data-service="proxia-restful-mis-datos"] ul.user-options > li.management > ul > li > a:hover {
              color: #980046; }
        div[data-service="proxia-restful-mis-datos"] ul.user-options > li.management > ul > li + li {
          margin-top: 15px; }
      div[data-service="proxia-restful-mis-datos"] ul.user-options > li + li {
        padding-left: 2px; }
        div[data-service="proxia-restful-mis-datos"] ul.user-options > li + li:before {
          content: '|';
          padding: 0px 2px; }
    div[data-service="proxia-restful-mis-datos"] ul.user-options .management > ul {
      display: none; }
    div[data-service="proxia-restful-mis-datos"] ul.user-options .management:hover > ul {
      display: block;
      padding: 15px;
      position: absolute;
      z-index: 3;
      width: 300px;
      right: 0px;
      background-color: white;
      list-style: '- ';
      box-shadow: #ccc 0 0 8px; } }

div[data-service="proxia-restful-mis-datos"] .current-avatar img {
  width: 128px;
  height: 128px;
  object-fit: cover;
  border: 1px solid #646464; }

div[data-service="proxia-restful-mis-datos"] .current-avatar .avatar-options {
  color: #646464;
  padding-top: 6px; }
  div[data-service="proxia-restful-mis-datos"] .current-avatar .avatar-options a {
    color: inherit;
    text-decoration: none; }
    div[data-service="proxia-restful-mis-datos"] .current-avatar .avatar-options a:hover {
      color: #980046; }

div[data-service="proxia-restful-mis-datos"] .dropzone .fileArea {
  margin: 6px 0 !important;
  border: 0px !important; }
  div[data-service="proxia-restful-mis-datos"] .dropzone .fileArea .glyphicon:before {
    font: normal normal normal 14px/1 "FontAwesome";
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    speak: never;
    content: ""; }

div[data-service="proxia-restful-mis-datos"] fieldset.passwd-area {
  margin-top: 30px; }
  div[data-service="proxia-restful-mis-datos"] fieldset.passwd-area .legend {
    margin-bottom: 6px; }
  div[data-service="proxia-restful-mis-datos"] fieldset.passwd-area .description {
    margin-bottom: 15px; }

div[data-service="proxia-restful-mis-datos"] .passwdInformation {
  font-size: 12px; }

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAidGVtcC9lc3RpbG8xNDU4ODQ0ODQ1MzUzOTQ5Nzg4NC5jc3MiLAoJInNvdXJjZXMiOiBbCgkJInRlbXAvZXN0aWxvMTQ1ODg0NDg0NTM1Mzk0OTc4ODQuY3NzIiwKCQkidGVtcC9lc3RpbG8xNDU4ODQ0ODQ1MzUzOTQ5Nzg4NC5jc3MvSlNBU1NfQ1VTVE9NLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdGhlbWVzL3RyYW5zcGFyZW5jaWEvX3ZhcmlhYmxlcy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3RoZW1lcy9wYXJ0aWNpcGEvX3ZhcmlhYmxlcy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3RoZW1lcy92YWxsYWRvbGlkL192YXJpYWJsZXMuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy9hcnRpZmFjdC5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL19zZXR0aW5ncy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fYnM0LWNvbXBhdC5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3Byb3hpYS9fdmFyaWFibGVzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL2JzMy1jb21wYXQuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy9wcm94aWEvcmVhY3QvX3ZhcmlhYmxlcy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fb3BhY2l0eS5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtZmlsdGVyLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fc2l6ZS5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2FsZXJ0cy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZm9ybXMuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvdmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy92ZW5kb3JzL2Jvb3RzdHJhcC9ib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYm9vdHN0cmFwL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy9wcm94aWEvX21peGlucy5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3Byb3hpYS9fcmVhY3QtcHJveGlhcG9ydGFsLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19uYXZpZ2F0aW9uLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19mb3JtLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19kYXRlcGlja2VyLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19hdXRvY29tcGxldGUuc2NzcyIsCgkJIndlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy9wcm94aWEvcmVhY3QvX2ZpbGVzLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19jb250ZW50Y29udHJvbC5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3Byb3hpYS9yZWFjdC9fbWFzdGVyZGV0YWlsLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19wcmludC5zY3NzIiwKCQkid2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3Byb3hpYS9yZWFjdC9jb3JlLnNjc3MiLAoJCSJ3ZWJhcHBzL1JPT1Qvc3R5bGVzaGVldHMvcHJveGlhL3JlYWN0L19kaWFsb2cuc2NzcyIsCgkJInByb3hpYS10ZW1wL3NlcnZpY2UxMjc3Mzc1MjU4MzUzNDk2NDU0My9zdHlsZXNoZWV0cy9zZXJ2aWNlLnNjc3MiCgldLAoJInNvdXJjZXNDb250ZW50IjogWwoJCSJAaW1wb3J0IFwiL29wdC90b21jYXQvd2ViYXBwcy9ST09UL3N0eWxlc2hlZXRzL3RoZW1lcy90cmFuc3BhcmVuY2lhL192YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcIi9vcHQvdG9tY2F0L3dlYmFwcHMvUk9PVC9zdHlsZXNoZWV0cy9hcnRpZmFjdFwiO1xyXG5AaW1wb3J0IFwiL29wdC90b21jYXQvcHJveGlhLXRlbXAvc2VydmljZTEyNzczNzUyNTgzNTM0OTY0NTQzL3N0eWxlc2hlZXRzL3NlcnZpY2Uuc2Nzc1wiO1xyXG4iLAoJCSIkanNhc3Mtdm9pZDoganNhc3NfaW1wb3J0X3N0YWNrX3B1c2goMSk7XG4iLAoJCSJAaW1wb3J0IFwiLi4vcGFydGljaXBhL3ZhcmlhYmxlc1wiO1xuIiwKCQkiQGltcG9ydCBcIi4uL3ZhbGxhZG9saWQvdmFyaWFibGVzXCI7XG5cbi8vIFJlZGVmaW5pY2nDs24gZGUgdmFyaWFibGVzIHBhcmEgcGFydGljaXBhY2nDs25cbiRmb250LXNpemUtaGlnaGxpZ2h0ZWQ6IDMycHg7XG4kZm9udC1zaXplLWhpZ2hsaWdodGVkLXNtOiAzMnB4O1xuXG4vLyBNYXBhc1xuJG1hcHMtaGVpZ2h0OiA0NTBweDtcblxuLy8gTG9zIHJlY3Vyc29zIGEgMSBjb2x1bW5hXG4kcmVzb3VyY2VzLWNvbHVtbnM6IDE7XG5cbiRjYWxlbmRhci1ib3JkZXItcmFkaXVzOiAwcHg7XG5cbi8vLyBMYSBmb3JtYSBlbiBsYSBxdWUgYXBhcmVjZW4gbGFzIG9wY2lvbmVzIGVuIG1vZG8gZW1iZWJpZG8gZGVsIGNvbXBvbmVudGUgZGUgbWFwYXMgKHNlIGVzcGVjaWZpY2Fcbi8vLyB1biBtYXBhIGluZGV4YWRvIHBvciBsYSByZXNvbHVjacOzbiAoeHMsIHNtLCBtZCwgbGcpIHkgcGFyYSBjYWRhIHVub1xuLy8vIHVuIHBhciBlbCBwcmltZXJvIGVsIHRhbWHDsW8gZGVsIGJsb3F1ZSBkZSBtYXBhIHkgZWwgc2VndW5kbyBkZSBvcGNpb25lcykuXG4vLy9cbi8vLyAgICAgeHM6IERpc3Bvc2l0aXZvcyBleHRyYSBwZXF1ZcOxb3MgIChUZWxlZm9ubyk7XG4vLy8gICAgIHNtOiBEaXNwb3NpdGl2b3MgcGVxdWXDsW9zIChUYWJsZXRzKTtcbi8vLyAgICAgbWQ6IERpc3Bvc2l0aXZvcyBtZWRpb3MgKE1vbml0b3Jlcyk7XG4vLy8gICAgIGxnOiBEaXNwb3NpdGl2b3MgZ3JhbmRlcyAoTW9uaXRvcmVzID4gMTIwMHB4KTtcbi8vL1xuLy8vIEB0eXBlIE1hcFxuJG1hcHMtb3B0aW9ucy1kaXNwb3NpdGlvbjogKCd4cyc6ICgxMiwxMiksXG4gICAgICAgICdzbSc6ICg3LDUpLFxuICAgICAgICAnbWQnOiAoOCw0KSxcbiAgICAgICAgJ2xnJzogKDksMykpO1xuXG4vLyBJbmZvV2luZG93IENlbnRyb3MgQ8Otdmljb3NcbiRpbmZvV2luZG93LWFkZHJlc3MtY29sb3I6ICM3QjdCN0I7XG5cbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAwLjc7XG5cbi8qXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1pbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGN1ZXJwbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1pbmZvd2luZG93LWJvZHktZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsZXIgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIHRleHRvIGRlbCBjdWVycG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIENvbG9yXG4kbWFwcy1pbmZvd2luZG93LWJvZHktdGV4dC1jb2xvcjogJHRleHQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlIGxvcyBlbmxhY2VzIGRlIGxhIHZlbnRhbmEgZGUgaW5mb3JtYWNpw7NuIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLWluZm93aW5kb3ctbGluay1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlIGxhIGxleWVuZGEgZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLXNlYXJjaGVyLWxlZ2VuZC1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBidXNjYWRvciBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1zZWFyY2hlci1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBWYXJpYWJsZSBxdWUgaW5kaWNhIHNpIGVsIGZpZWxkc2V0IGRlbCBidXNjYWRvciB0aWVuZSBib3JkZSBvIG5vXG4vLy8gQHR5cGUgYm9vbFxuJG1hcHMtc2VhcmNoZXItZmllbGRzZXQtaGFzLWJvcmRlcjogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBWYXJpYWJsZSBxdWUgaW5kaWNhIHNpIGxhIGxleWVuZGEgZGVsIGJ1c2NhZG9yIHRpZW5lIGJvcmRlIG8gbm9cbi8vLyBAdHlwZSBib29sXG4kbWFwcy1zZWFyY2hlci1sZWdlbmQtaGFzLWJvcmRlcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgYm9yZGUgZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJG1hcHMtc2VhcmNoZXItYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8vIE7Dum1lcm8gZGUgY29sdW1uYXMgZGVsIG1hcmtlciBkZWwgYnVzY2Fkb3IgZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJG1hcHMtc2VhcmNoZXItbWFya2VyLWNvbHVtbnM6IDMgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIHB1bnRvcyBkZSBydXB0dXJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGRlcGVuZGllbmRvIGRlIGxhIHJlc29sdWNpb24gZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJG1hcHMtc2VhcmNoZXItbWFya2VyLWJyZWFrcG9pbnRzOiAoJ3hzJzoxLCdzbSc6MiwnbWQnOjIpICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1zZWFyY2hlci1tYXJrZXItZm9udC1zaXplOiAkbWFwcy1zZWFyY2hlci1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLXNlYXJjaGVyLWJ1dHRvbi1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBib3TDs24gcG9yIGRlZmVjdG8gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJG1hcHMtc2VhcmNoZXItYnV0dG9uLWRlZmF1bHQtY29sb3JzOiAkZ3JheS1kYXJrICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJG1hcHMtc2VhcmNoZXItYnV0dG9uLWFycml2ZS1jb2xvcnM6ICNmZmZmZmYgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vLyBBbHR1cmEgZGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtaGVpZ2h0OiAkbWFwcy1oZWlnaHQgIWRlZmF1bHQ7XG5cbi8vIExhIGZvcm1hIGVuIGxhIHF1ZSBhcGFyZWNlbiBsYXMgb3BjaW9uZXMgZW4gbW9kbyBlbWJlYmlkbyAoc2UgZXNwZWNpZmljYVxuLy8gdW4gbWFwYSBpbmRleGFkbyBwb3IgbGEgcmVzb2x1Y2nDs24gKHhzLCBzbSwgbWQsIGxnKSB5IHBhcmEgY2FkYSB1bm9cbi8vIHVuIHBhciBlbCBwcmltZXJvIGVsIHRhbWHDsW8gZGVsIGJsb3F1ZSBkZSBtYXBhIHkgZWwgc2VndW5kbyBkZSBvcGNpb25lcylcbiRzZWFyY2gtbWFwcy1vcHRpb25zLWRpc3Bvc2l0aW9uOiAkbWFwcy1vcHRpb25zLWRpc3Bvc2l0aW9uICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtbWFwcy1pbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZTogJG1hcHMtaW5mb3dpbmRvdy10aXRsZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBjdWVycG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtaW5mb3dpbmRvdy1ib2R5LWZvbnQtc2l6ZTogJG1hcHMtaW5mb3dpbmRvdy1ib2R5LWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgdGV4dG8gZGVsIGN1ZXJwbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJHNlYXJjaC1tYXBzLWluZm93aW5kb3ctYm9keS10ZXh0LWNvbG9yOiAkbWFwcy1pbmZvd2luZG93LWJvZHktdGV4dC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGUgbG9zIGVubGFjZXMgZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplOiAkbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZSBsYSBsZXllbmRhIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWxlZ2VuZC1mb250LXNpemU6ICRtYXBzLXNlYXJjaGVyLWxlZ2VuZC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVmFyaWFibGUgcXVlIGluZGljYSBzaSBlbCBmaWVsZHNldCBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXMgdGllbmUgYm9yZGUgbyBub1xuLy8vIEB0eXBlIGJvb2xcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1maWVsZHNldC1oYXMtYm9yZGVyOiAkbWFwcy1zZWFyY2hlci1maWVsZHNldC1oYXMtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gVmFyaWFibGUgcXVlIGluZGljYSBzaSBsYSBsZXllbmRhIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhcyB0aWVuZSBib3JkZSBvIG5vXG4vLy8gQHR5cGUgYm9vbFxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWxlZ2VuZC1oYXMtYm9yZGVyOiAkbWFwcy1zZWFyY2hlci1sZWdlbmQtaGFzLWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgYm9yZGUgZGVsIGJ1c2NhZG9yIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1ib3JkZXItY29sb3I6ICRtYXBzLXNlYXJjaGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIE7Dum1lcm8gZGUgY29sdW1uYXMgZGVsIG1hcmtlciBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1tYXJrZXItY29sdW1uczogJG1hcHMtc2VhcmNoZXItbWFya2VyLWNvbHVtbnMgIWRlZmF1bHQ7XG5cbi8vLyBQdW50b3MgZGUgcnVwdHVyYSBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBkZXBlbmRpZW5kbyBkZSBsYSByZXNvbHVjacOzbiBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLW1hcmtlci1icmVha3BvaW50czogJG1hcHMtc2VhcmNoZXItbWFya2VyLWJyZWFrcG9pbnRzICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLW1hcmtlci1mb250LXNpemU6ICRtYXBzLXNlYXJjaGVyLW1hcmtlci1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGJvdMOzbiBwb3IgZGVmZWN0byBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWJ1dHRvbi1kZWZhdWx0LWNvbG9yczogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWRlZmF1bHQtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgYm90w7NuIHBvciBkZWZlY3RvIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIENvbG9yXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItYnV0dG9uLWFycml2ZS1jb2xvcnM6ICRtYXBzLXNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZSBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBOdW1iZXJcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctdGl0bGUtZm9udC1zaXplOiAkbWFwcy1pbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGN1ZXJwbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZSBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBOdW1iZXJcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemU6ICRtYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIHRleHRvIGRlbCBjdWVycG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGUgbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgQ29sb3JcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctYm9keS10ZXh0LWNvbG9yOiAkbWFwcy1pbmZvd2luZG93LWJvZHktdGV4dC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGUgbG9zIGVubGFjZXMgZW4gbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGUgbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgTnVtYmVyXG4kcG9wdXAtbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplOiAkbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZSBsYSBsZXllbmRhIGRlbCBidXNjYWRvciBlbiBsbyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItbGVnZW5kLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItbGVnZW5kLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItZm9udC1zaXplOiAkbWFwcy1zZWFyY2hlci1mb250LXNpemUgIWRlZmF1bHQ7XG4qL1xuIiwKCQkiLyoqXG4gKiBWYXJpYWJsZXMgUG9ydGFsIFdlYiBkZWwgQXl1bnRhbWllbnRvIGRlIFZhbGxhZG9saWRcbiAqL1xuXG4vL1ZBUklBQkxFUyBHTE9CQUxFUyBERSBMQSBXRUJcbiRncmlkLWd1dHRlci13aWR0aDogMzBweDtcbiRoYWxmR3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgvMjtcbiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZzogNnB4O1xuJGltYWdlLWdhbGxlcnktY29sdW1uczogKCd4cyc6Miwnc20nOjQsJ21kJzo0KSAhZGVmYXVsdDtcblxuLy8gVmFyaWFibGVzIHBhcmEgZWwgZ3JpZFxuJHNjcmVlbi14bC1taW46IDEyNThweDtcbi8vICRjb250YWluZXIteGw6IDExOThweDtcbiRjb250YWluZXIteGw6IDEyMjhweDtcblxuLy9GT05UU1xuJG1haW4tZm9udDogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4kZm9udHMtZGVmYXVsdC1mb250LXNpemU6IDM4cHg7XG5cbi8vIENPTE9SRVMgUFJJTkNJUEFMRVNcbiRicmFuZC1wcmltYXJ5OiAgICAgICAgICAgICAjOTgwMDQ2OyAvLyM5OTBBNDI7XG4kYnJhbmQtc2Vjb25kYXJ5OiAgICAgICAgICAgIzFFMUUxRTtcbiRicmFuZC10ZXJ0aWFyeTogICAgICAgICAgICAjNzlhZGRlOyBcbiRicmFuZC10ZXJ0aWFyeS1jb250cmFzdDogICAjNDg3OWE0OyAvLzQuNjoxXG4kd2hpdGU6ICAgICAgICAgICAgICAgICAgICAgI2ZmZmZmZjtcbiRibGFjazogICAgICAgICAgICAgICAgICAgICAjMDAwMDAwO1xuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgI2ZmZmZmZjtcbiRkYXJrLWJnOiAgICAgICAgICAgICAgICAgICAjMDAwMDAwO1xuJGRhcmstY29udGVudC10ZXh0OiAgICAgICAgICMyQzJDMkM7ICAgIFxuJGFnZW5kYS1kZXN0YWNhZG86ICAgICAgICAgICNGOEU3MUM7XG4kc2VydmljaW9zLWJnOiAgICAgICAgICAgICAgI0Y2RjZGNjtcbiRtYXgtdGVtcDogICAgICAgICAgICAgICAgICAjREYzNzM3O1xuJHNlbWFuYS12aWRlby12aWV3bW9yZTogICAgICNCQjU2Mjc7IC8vNC43OjFcbiRvcmFuZ2UtaG92ZXItbWVudTogICAgICAgICAjQzM1NjE5O1xuJGludGVyZXN0LWxpbmstaG92ZXI6ICAgICAgICMzRTU0QTg7XG4kbWVudS1tb3ZpbC1iZzogICAgICAgICAgICAgIzNEM0QzRDtcbiRjdXJyZW50LW1vdmlsLW1lbnU6ICAgICAgICAjRUZDRDU3O1xuJGhvdmVyLWFsY2FsZGU6ICAgICAgICAgICAgICNCNjI5NUY7XG4kYmx1ZS1idWxsZXQ6ICAgICAgICAgICAgICAgIzNFNTRBODtcbiRvcmFuZ2UtZHJvcGRvd246ICAgICAgICAgICAjRkZDMDAwO1xuJHdlYXRoZXItbWF4OiAgICAgICAgICAgICAgICNkMjMzMzM7IC8vNC45OjFcbiR3ZWF0aGVyLW1pbjogICAgICAgICAgICAgICAjMjc3M0MxO1xuJG1hc2NvbnN1bHRhZG8tdmlld21vcmU6ICAgICMzYzcyYTA7IC8vNC43OjFcbiRzcWwtZXhwb3J0LWV4Y2VsOiAgICAgICAgICAjM0M4NTNDOyAvLzQuNlxuJG9yZGVuLWRpYS1jb2xvcjogICAgICAgICAgICNENkUzRkY7XG4kYXJyb3dzLWNvbG9yOiAgICAgICAgICAgICAgIzI1M2Y3OTtcbiRhZGRyZXNzLWJsdWU6ICAgICAgICAgICAgICAjNEU2RkI4O1xuJHByb3hpYS1saW5rcy1jb2xvcjogICAgICAgICRicmFuZC1zZWNvbmRhcnk7XG4kbGluay1vdGhlcnM6ICAgICAgICAgICAgICAgIzUwNjhjMDtcbiRsaW5rLXZpZXdNb3JlLXBsdXM6ICAgICAgICAjNmE3MTk0O1xuJHdoaXRlOiAgICAgICAgICAgICAgICAgICAgICNmZmY7XG5cbi8vIHJyc3NcbiR5dGItY29sb3I6ICAgICAgICAgICAgICAgICAjZmYwMDAwO1xuJGZiLWNvbG9yOiAgICAgICAgICAgICAgICAgICMzZjUxYjU7XG5cbi8vRVNDQUxBIERFIEdSSVNFU1xuICAgICRncmF5LWJhc2U6ICAgICAgICAgIzI0MjQyNDtcbiAgICAkZ3JheS1kYXJrZXI6ICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOCUpO1xuICAgIFxuICAgIC8vVGV4dG9cbiAgICAkZ3JheS1kYXJrOiAgICAgICAgICM2NDY0NjQ7IFxuICAgICRncmF5OiAgICAgICAgICAgICAgIzYxNjE2MTsgLy82LjI6MVxuICAgICRncmF5LWxpZ2h0OiAgICAgICAgIzc2NzY3NzsgLy80LjU6MVxuICAgICRvbGFwLWNhbGVuZGFyLWNvbG9yOiAjQzdBNUFDO1xuICAgICRwb2xpdGljYWwtcGFydHktY29sb3I6ICM3RTdFN0U7XG4gICAgJHJldW5pb25lcy10aXRsZS1jb2xvcjogIzNCM0IzQjtcbiAgICAkYXNhbWJsZWEtZGF0ZS1jb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgJGZpbGUtaWNvbjogICAgICAgICAgICNDRUNFQ0U7XG4gICAgJG9mZmljZS10aGVtZTogICAgICAjMkMyQzJDO1xuXG4gICAgLy9Cb3JkZXJcbiAgICAkYm9yZGVyLWdyYXk6ICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjUlKTtcbiAgICAkYm9yZGVyLWdyYXktbGlnaHQ6ICAjQ0RDRENEO1xuICAgICRib3JkZXItZ3JheS1zb2xpY2l0dWRlczogI0RGREZERjtcbiAgICBcbiAgICAvL0JhY2tncm91bmRcbiAgICAkYmctZ3JheS1kYXJrZXI6ICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOCUpO1xuICAgICRiZy1ncmF5OiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni41JSk7XG4gICAgJGJnLWdyYXktbGlnaHQ6ICAgICAgICAjYmZiZmJmO1xuICAgICRiZy1ncmF5LWxpZ2h0ZXI6ICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA3NSUpO1xuICAgICRiZy1ncmF5LWxpZ2h0ZXN0OiAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA4MCUpO1xuICAgICRiZy1ncmF5LWNvbnRlbnQ6ICAgICAgI0Y3RjdGNztcbiAgICAkYmctZ3JheS10ZW1hczogICAgICAgICMyMzI1MjY7XG4gICAgJGJnLWdyYXktdGVtYXMtbW9iaWxlOiAjMUExQTFBO1xuICAgICRiZy1ncmF5LWFkb3B0YS1mb3JtOiAgI2UzZTNlMztcbiAgICAkYmctZ3JheS1pbnRlcmVzOiAgICAgICNFRkVGRUY7XG4gICAgJGJnLWdyYXktYmllbmVzOiAgICAgICAjNzY3Njc3O1xuXG4vLyBCT1JERVNcbiR2YWxsYWRvbGlkLWJhc2UtYm9yZGVyOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG5cbi8vIEZvbnQgV2VpZ2h0c1xuXG4kd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiR3ZWlnaHQtbWVkaXVtOiA1MDA7XG4kd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kd2VpZ2h0LWJvbGQ6IDcwMDtcblxuLy8gVEFNQcORT1MgREUgTEVUUkFcbiRmb250LXNpemUtc21hbGw6ICAgMTJweDsgXG4kZm9udC1zaXplLWJhc2U6XHQxNHB4O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAxNnB4O1xuJGZvbnQtc2l6ZS1sYXJnZXN0OiAxOHB4OyBcblxuJGZvbnQtc2l6ZS1oMjogICAgICAyOHB4OyAgIFxuJGZvbnQtc2l6ZS1oNDogICAgICAyNHB4OyBcbiRmb250LXNpemUtaDU6ICAgICAgMjJweDsgXG4kZm9udC1zaXplLWg2OiAgICAgIDIwcHg7IFxuXG4kdGl0dWxvLXRlbWFzOiBcdFx0MzJweDtcbiR0aXR1bG8teHMtdHJhbnNwYXJlbmNpYTogMzJweDtcdFx0XHRcdFxuJHRpdHVsby1hbGNhbGRlOiAgICA0MnB4OyBcblxuJGhvbWUtc2xpZGVyLWFycm93czogNzBweDtcblxuLy9TTElERVJcbiRzbGlkZXItY29udHJvbC1kb3RTbWFsbDogICAgMTFweDtcbiRzbGlkZXItY29udHJvbC1iZzogJGdyYXktbGlnaHQ7XG5cbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyBGb250IFdlaWdodHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiR3ZWlnaHQtcmVndWxhcjogNDAwO1xuJHdlaWdodC1tZWRpdW06IDUwMDtcbiR3ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiR3ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyBDb250ZW5pZG9zIHJlbGFjaW9uYWRvcywgdmFyaWFibGVzIGVzcGVjw61maWNhcyBwYXJhIGRlZmluaWNpw7NuIGRlIGxhIG1hcXVldGFjacOzbiBkZWwgYmxvcXVlLlxuJHJlbGF0ZWQtYmxvY2stZm9udC1zaXplLWJhc2U6ICRmb250LXNpemUtaDY7XG4kcmVsYXRlZC1ibG9jay1tYXJnaW46IDA7XG4kcmVsYXRlZC1ibG9jay1wYWRkaW5nOiAwO1xuJHJlbGF0ZWQtYmxvY2stdGl0bGUtY29sb3I6ICRncmF5LWRhcms7XG4kcmVsYXRlZC1ibG9jay1pdGVtLXBhZGRpbmc6IDA7XG4kcmVsYXRlZC1ibG9jay1pdGVtLW1hcmdpbjogMDtcbiRyZWxhdGVkLWJsb2NrLWl0ZW0taWNvbjogJyc7XG5cbi8vIFN1YmNvbnRlbmlkb3MsIHZhcmlhYmxlcyBlc3BlY8OtZmljYXMgcGFyYSBsYSBtYXF1ZXRhY2nDs24gZGVsIGJsb3F1ZVxuJHN1YmNvbnRlbnRzLWJsb2NrLW1hcmdpbjogMCAwICRoYWxmR3V0dGVyIDA7XG4kc3ViY29udGVudHMtYmxvY2stcGFkZGluZzogMDtcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLWNvbG9yOiAkYnJhbmQtc2Vjb25kYXJ5O1xuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0tYm9yZGVyLXRvcDogMXB4ICRib3JkZXItZ3JheS1saWdodCBzb2xpZDtcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLXBhZGRpbmc6ICRoYWxmR3V0dGVyIDAgJGhhbGZHdXR0ZXIgJGhhbGZHdXR0ZXI7XG4kc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uOiAgJ1xcZTkzZSc7XG4kc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLWZvbnQ6ICdmb250LXZhbGxhZG9saWQnO1xuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbi1jb2xvcjogJGJsdWUtYnVsbGV0O1xuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nOiAwO1xuXG4vLyBBdXRvcmVsYWNpb25hZG9zXG4kYXV0b3JlbGF0ZWQtYmxvY2stbWFyZ2luOiAwO1xuJGF1dG9yZWxhdGVkLWJsb2NrLXBhZGRpbmc6IDA7XG5cbi8vIFJlY3Vyc29zXG4kcmVzb3VyY2VzLWJsb2NrLWZvbnQtc2l6ZS1iYXNlOiAkZm9udC1zaXplLWxhcmdlO1xuJHJlc291cmNlcy1ibG9jay1tYXJnaW46IDA7XG4kcmVzb3VyY2VzLWJsb2NrLXBhZGRpbmc6IDAgJGdyaWQtZ3V0dGVyLXdpZHRoO1xuJHJlc291cmNlcy1jb2x1bW5zOiAyICFkZWZhdWx0O1xuXG4vL01BUEEgV0VCXG4kZ2xvYmFsLXNpdGVtYXAtbGV2ZWwxLWNvbHVtbnM6IDE7XG4kZ2xvYmFsLXNpdGVtYXAtbGV2ZWwyLWNvbHVtbnM6IDE7XG4kc2l0ZW1hcC1sZXZlbDE6IChcbiAgICAgICAgYmxvY2stcGFkZGluZzogMHB4IDBweCAwcHggJGhhbGZHdXR0ZXIsXG4gICAgICAgIGJsb2NrLWl0ZW0tZm9udC1zaXplOiAkZm9udC1zaXplLWg0LFxuICAgICAgICBibG9jay1pdGVtLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSxcbiAgICAgICAgYmxvY2staXRlbS1jb2xvci1ob3ZlcjogJGludGVyZXN0LWxpbmstaG92ZXIsXG4gICAgICAgIGJsb2NrLWl0ZW0tbWFyZ2luOiAwIDAgJGhhbGZHdXR0ZXIgMCxcbiAgICAgICAgdGl0bGUtaWNvbjogJ1xcZTk0NScsXG4gICAgICAgIHRpdGxlLWljb24tZm9udDogJ2ZvbnQtdmFsbGFkb2xpZCcsXG4gICAgICAgIHRpdGxlLWljb24tY29sb3I6ICRpbnRlcmVzdC1saW5rLWhvdmVyLFxuICAgICAgICB0aXRsZS1pY29uLXBhZGRpbmc6ICRoYWxmR3V0dGVyXG4pO1xuJHNpdGVtYXAtbGV2ZWwyOiBtYXBfbWVyZ2UoJHNpdGVtYXAtbGV2ZWwxLChcbiAgICAgICAgYmxvY2staXRlbS1mb250LXNpemU6ICRmb250LXNpemUtbGFyZ2VzdCxcbiAgICAgICAgdGl0bGUtaWNvbjogICdcXGU5NDUnLFxuICAgICAgICB0aXRsZS1pY29uLWZvbnQ6ICdmb250LXZhbGxhZG9saWQnLFxuICAgICAgICB0aXRsZS1pY29uLWNvbG9yOiAkb3JhbmdlLWhvdmVyLW1lbnUsXG4gICAgICAgIHRpdGxlLWljb24tcGFkZGluZzogJGhhbGZHdXR0ZXIsXG4gICAgICAgIHRpdGxlLW1hcmdpbjogMCxcbiAgICAgICAgaW5kZW50LW1hcmdpbjogJGhhbGZHdXR0ZXJcbikpO1xuXG4vLyBDb2xvciBwYXJhIHJlc3VsdGFkb3MgZGUgbGEgYsO6c3F1ZWRhXG4kaGlnaGxpZ2h0ZWQtdGV4dC1jb2xvcjogJGJyYW5kLXNlY29uZGFyeTtcbiRoaWdobGlnaHRlZC1iYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkMwO1xuXG4vLyBCbG9xdWUgZGUgcmVkZXMgc29jaWFsZXMuLi4gcmVkZWZpbmltb3MgZWwgdGFtYcOxbyBkZSBpY29ub3MsIGZ1ZW50ZXMgeSBkZW3DoXMuXG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLWJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItZ3JheS1saWdodDtcbiRjb250ZW50LXNlcnZpY2VzLWNvbG9yOiAkZ3JheS1kYXJrO1xuJGNvbnRlbnQtc2VydmljZXMtYWN0aXZlLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiRjb250ZW50LXNlcnZpY2VzLWl0ZW0tbGFyZ2UtYm94LXdpZHRoOiA1MHB4O1xuJGNvbnRlbnQtc2VydmljZXMtaXRlbS1mb250LWxhcmdlOiAkZm9udC1zaXplLWg0O1xuXG4vLyBUYW1hw7FvcyBwZXF1ZcOxb3Mgc2UgdXRpbGl6YSBlbiB0ZW1hc1xuJGNvbnRlbnQtc2VydmljZXMtaXRlbS1zbWFsbC1ib3gtd2lkdGg6IDMwcHg7XG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLWZvbnQtc21hbGw6ICRmb250LXNpemUtbGFyZ2U7XG5cbi8vIEN1YW5kbyBjYXRlZ29yaXphbW9zIGNvbmV0bmlkb3NcbiRjYXRlZ29yaXplci1jYXRlZ29yeS1ib3JkZXItc3R5bGU6IG5vbmU7XG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktZm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xuJGNhdGVnb3JpemVyLWJsb2NrLXBhZGRpbmc6IDA7XG4kY2F0ZWdvcml6ZXItYmxvY2staXRlbS1wYWRkaW5nOiAkaGFsZkd1dHRlcjtcbiRjYXRlZ29yaXplci1ibG9jay1pdGVtLW1hcmdpbjogJGhhbGZHdXR0ZXIgMCAwIDA7XG4kc3ViY29udGVudHMtY2F0ZWdvcnktYmxvY2staXRlbS1pY29uOiAnJztcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1pdGVtLWJvcmRlci10b3A6IG5vbmU7XG4kc3ViY29udGVudHMtY2F0ZWdvcnktYmxvY2stcGFkZGluZzogMDtcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1pdGVtLW1hcmdpbjogMCAwIDAgJGhhbGZHdXR0ZXI7XG4kc3ViY29udGVudHMtY2F0ZWdvcnktYmxvY2staXRlbS1wYWRkaW5nOiAkaGFsZkd1dHRlciAwIDAgMDtcblxuLy9DQUxFTkRBUklPXG4kY2FsZW5kYXItY3VycmVudGRheTogI2RhNTUyZjtcbiRjYWxlbmRhci1ob2xpZGF5OiAkZGFyay1iZztcbiRjYWxlbmRhci1ob2xpZGF5LWVuY2lyY2xlZDogZmFsc2U7XG4kY2FsZW5kYXItZXZlbnQtZW5jaXJjbGVkOiBmYWxzZTtcbiRjYWxlbmRhci1oZWFkZXItYmdjb2xvcjogJGJvZHktYmc7XG4kY2FsZW5kYXItY2VsbHMtaW5uZXItYm9yZGVyOiBmYWxzZTtcbiRjYWxlbmRhci1mb250LXNpemUtYmFzZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiRjYWxlbmRhci1ldmVudDogJGRhcmstYmc7XG4kY2FsZW5kYXItYm9yZGVyOiAxcHggc29saWQgI0M1QzVDNTtcbiRjYWxlbmRhci1vdGhlcmRheXMtb3BhY2l0aXk6IDAuOTsgLy8gQWNjZXNpYmlsaWRhZFxuXG5cbi8vUkNDQVZBXG4kcmNjYXZhLWJsdWU6ICM2M0NFRkY7XG4kcmNjYXZhLWhvbWUtYmx1ZTogIzNFNTRBODtcbiRyY2NhdmEtaG9tZS1ncmVlbi1hcnJvdzogIzlBQ0U5ODtcbiRyY2NhdmEtaG9tZS1saW5rLWJnOiAjRUVFRUVFO1xuJHJjY2F2YS1pY29uLWZvbnQtc2l6ZTogNThweDtcbiRyY2NhdmEtYm94LXNoYWRvdzogMCA4cHggMTZweCAwIHJnYmEoMCwwLDAsMC4wNik7XG4kcmNjYXZhLWNvbnRlbnQtYmc6ICNGN0Y3Rjc7XG4kcmNjYXZhLXRpdGxlLWZvbnQtc2l6ZTogNDBweDtcbiRyY2NhdmEtbWVudS1jb2x1bW5zOiAoJ3NtJzo1LCAnbWQnOjUpO1xuJHJjY2F2YS1tZW51LWJvcmRlcjogNHB4IHNvbGlkICRyY2NhdmEtY29udGVudC1iZztcbiRyY2NhdmEtaG9tZS10aXRsZS1iZzogIzlGQUFFRjtcblxuLy8gQURPUFRBXG4kYW5pbWFscy1zaXR1YXRpb24tY29sb3I6ICNDMzU2MTk7XG4kYW5pbWFscy1jYXItY29sb3I6ICM5OTBBNDI7XG5cbi8vIFNFQVJDSFxuJGJnLXNlYXJjaDogIzk5MEE0MjtcblxuLy8gTWFwYXNcbiRtYXBzLW9wdGlvbnMtZGlzcG9zaXRpb246ICgneHMnOigxMiwxMikpO1xuXG4vL05vdGFzIGRlIHByZW5zYVxuJG9sYXBjYWxlbmRhci1jbG91ZC1zaXplOiAoJ3hzJzoxMiwnc20nOjEyLCdtZCc6NCwnbGcnOjMpO1xuJG5vdGFzLXByZW5zYS1iYXNlLWJvcmRlcjogMXB4IHNvbGlkICNDNUM1QzU7XG4kbm90YXMtcHJlbnNhLW1lczogICAgICAgICAgIzZCNkI2QjsgLy80LjY6MVxuJG5vdGFzLXByZW5zYS1tZXMtYmc6ICAgICAgICNFREVERUQ7IFxuXG4vL1Nlc2lvbmVzIHBsZW5hcmlhc1xuJHNlc2lvbi1ibHVlLWNvbG9yOiAjNEU2RkI4O1xuXG4vL1BhcnRpZG9zIHBvbGl0aWNvc1xuJGNvbmNlamFsZXMtbGlzdC1ib3JkZXI6IDFweCBzb2xpZCAjQ0FDQUNBO1xuJGFnZW5kYS1iZy1jb2xvcjogI0YzRjNGMztcblxuLy/Dk3JnYW5vcyBwYXJ0aWNpcGF0aXZvc1xuJG9yZ2Fuby1iZy1jb2xvcjogI0Y1RjVGNTtcbiRvcmdhbm8tZGVzdC10aXRsZTogMzJweDtcbiRvcmdhbm8tc2hvd21vcmUtY29sb3I6ICM0RTZGQjg7XG4kb3JnYW5vLXRpdGxlOiAzNnB4O1xuJG9yZ2Fuby1yZWxhdGVkLWJnOiAjRkJGQkZCO1xuXG4vL0JpZW5lc1xuJGJpZW4taWNvbi1jb2xvcjogI0I5QjlCOTtcbiRiaWVuLWljb24tc2l6ZTogMzZweDtcblxuLy9WaWRlb3RlY2FcbiR2aWRlb3RlY2Etc2Vjb25kYXJ5LXRpdGxlLWZvbnQtc2l6ZTogMTVweDtcbiR2aWRlb3RlY2EtdGV4dC1mb250LXNpemU6IDEzcHg7XG4kdmlkZW90ZWNhLXRleHQtY29sb3I6ICMyQzJDMkM7XG4kdmlkZW90ZWNhLW1haW4tdGl0bGU6IDMwcHg7XG4kdmlkZW90ZWNhLWljb24tZm9udC1zaXplOiA3MHB4O1xuJHZpZGVvdGVjYS1saXN0LWljb24tZm9udC1zaXplOiAyNnB4O1xuXG4vL0NlbnRyb3MgQ2l2aWNvcy9NdW5pY2lwYWxlc1xuJGNlbnRyb3MtaWNvbi1mb250LXNpemU6IDY2cHg7XG4kY2VudHJvcy1zdWJjb250ZW50LWJvcmRlcjogOHB4IHNvbGlkICNGM0JGRDM7XG4kY2VudHJvcy1pbnN0YWxhY2lvbmVzLWJvcmRlcjogMnB4IHNvbGlkICNDOUM5Qzk7XG4kY2VudHJvcy1pbnN0YWxhY2lvbmVzLWljb246ICRncmF5LWxpZ2h0OyAvLyBBY2Nlc2liaWxpZGFkLCBlbCBjb250cmFzdGUgZXJhIGJham8uXG4kY2VudHJvcy1pbnN0YWxhY2lvbmVzLWljb24tc2l6ZTogMzZweDtcblxuLy8gQXNwZWN0byBkZWwgbGlnaHRib3guLi5cbiRsaWdodGJveC10aXRsZS1mb250LXNpemU6ICRmb250LXNpemUtaDY7XG4kbGlnaHRib3gtdGl0bGUtYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4kbGlnaHRib3gtdGl0bGUtY29sb3I6ICRicmFuZC1zZWNvbmRhcnk7XG4kbGlnaHRib3gtZm9vdGVyLWJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuJGxpZ2h0Ym94LWJ1dHRvbi1jb2xvcjogI2ZmZiwgJGJyYW5kLXByaW1hcnksIGRhcmtlbigkYnJhbmQtcHJpbWFyeSwgNSUpIDtcblxuJGRyb3B6b25lLXJlc3VsdHMtYmFja2dyb3VuZDogJGJnLWdyYXktbGlnaHRlc3Q7XG4kZHJvcHpvbmUtYmFja2dyb3VuZDogJGJnLWdyYXktY29udGVudDtcbiRkcm9wem9uZS1jb2xvcjogJGJvcmRlci1ncmF5LWxpZ2h0O1xuXG4kY29udGVudC1jb250cm9sLWJhY2tncm91bmQ6ICRiZy1ncmF5LWxpZ2h0ZXI7XG4kY29udGVudC1jb250cm9sLWNvbG9yOiAkYmctZ3JheTtcbiRjb250ZW50LWNvbnRyb2wtaXRlbS1pY29uLWZvbnQ6ICdmb250LXZhbGxhZG9saWQnO1xuJGNvbnRlbnQtY29udHJvbC1pdGVtLWljb246ICdcXGU5M2UnO1xuJGZvcm0tY29udHJvbC1mb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG5cbi8vIE1lcmNhZG9zIE11bmljaXBhbGVzXG4kbWVyY2Fkb3MtaWNvbi1jb2xvcjogIzU2MjY3ZDtcbiRtZXJjYWRvcy1pY29uLXNpemU6IDkwcHg7XG4kbWVyY2Fkb3MtYmFyLWNvbG9yOiAjNTgzRjlBO1xuJG1lcmNhZG9zLWhlYWRlci10ZXh0LWNvbG9yOiAjRkJGMDI0O1xuJG1lcmNhZG9zLWhlYWRlci10ZXh0LXNpemU6IDQ2cHg7XG4kbWVyY2Fkb3MtaGVhZGVyLXRleHQtc2l6ZS1tb2JpbGU6IDYuNXZ3O1xuXG4vLyBBanVzdGFtb3MgZWwgcGFkZGluZyBZIGRlIGxvcyBmb3JtdWxhcmlvcyBSRUFDVCwgcG9ycXVlIHRlbmVtb3MgdG9kb3MgbG9zIGJvdG9uZXMgYWp1c3RhZG9zXG4vLyBhIGVzZSB0YW1hw7FvLlxuJGZvcm0tY29udHJvbC1wYWRkaW5nLXk6IDEuNSokbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG5cbi8vIEVsIGJvcmRlIGRlIGxvcyBpbnB1dCBhIGdyYXkgbGlnaHRcbiRpbnB1dC1ib3JkZXI6ICRncmF5LWxpZ2h0O1xuXG4vLyBGb2NvIGNvbnRyb2xlcyBmb3JtdWxhcmlvXG4kZm9ybS1jb250cm9sLWJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKCRicmFuZC1wcmltYXJ5LCAuMjUpICFkZWZhdWx0O1xuXG4vLyBNZW51IEJvZHlcbiRtZW51LWNvbnRhaW5lci1wYWRkaW5nOiAzOHB4IDE1cHggNjZweDtcbiRtZW51LWNvbnRhaW5lci1iZzogIzM5MzkzOTtcbiRtZW51LWJvZHktaG9tZS1nYXA6IDI2cHg7XG4kbWVudS1ib2R5LWRhcmstaWNvbi1jb2xvcjogI2QyZDJkMjtcbiRtZW51LWJvZHktbGlnaHQtaG92ZXItYmc6ICNFQkVCRUI7XG5cbi8vIEF0ZW5jacOzbiBwcmVzZW5jaWFsXG4kYXRlbmNpb24tcHJlc2VuY2lhbC1sYWJlbC1jb2xvcjogIzRDNEM0QztcbiRhdGVuY2lvbi1wcmVzZW5jaWFsLWZpZWxkLWZvbnQtc2l6ZTogMTVweDtcbiRhdGVuY2lvbi1wcmVzZW5jaWFsLXBsYWNlaG9sZGVyLWNvbG9yOiAjQjFCMUIxO1xuJGF0ZW5jaW9uLXByZXNlbmNpYWwtY2FyZXQtY29sb3I6ICMzNzM3Mzc7XG4kYXRlbmNpb24tcHJlc2VuY2lhbC1mZWF0dXJlcy1jb2xvcjogIzY2NjY2NjtcbiRhdGVuY2lvbi1wcmVzZW5jaWFsLWZlYXR1cmVzLXNpemU6IDEzcHg7XG4iLAoJCSIvKipcbiAqIEZpY2hlcm8gZ2VuZXJhbCBTQ1NTIHF1ZSBpbXBvcnRhIHRvZG9zIGxvcyBmaWNoZXJvcyBkZSB2YXJpYWJsZXMgZGVmaW5pZG9zIGEgbml2ZWwgZGUgcHJveWVjdG8sIGEgZmluXG4gKiBkZSBwZXJtaXRpciBsYSBjb21wb3NpY2nDs24gZGUgdW4gU0FTUyBxdWUgZGlzcG9uZ2EgZGUgdG9kb3MgbG9zIGRhdG9zIGRlbCBwcm95ZWN0by5cbiAqXG4gKiBAYXV0aG9yIGRyb2RyaWd1ZXpcbiAqL1xuXG4vLyBTZXR0aW5ncyBwcmluY2lwYWxlcyBkZSBQcm94aWEsIGluaWNpYWxpemEgY2llcnRhcyB2YXJpYWJsZXNcbi8vIGRlIGJvb3RzdHJhcCBxdWUgcHVlZGUgc2VyIG5lY2VzYXJpbyByZWRlZmluaXIsIGFzw60gY29tbyBmaWphclxuLy8gY2llcnRvcyBwYXRocyBpbXBvcnRhbnRlcy4gc2Vyw61hIHVuIGZpY2hlcm8gcG9yIGRlZmVjdG8sIG5vIGRlYmVcbi8vIHRvY2Fyc2UgZW4gY2FzbyBkZSBleGlzdGlyIHVuIGZpY2hlcm8gZGUgdmFyaWFibGVzIGRlbCB0ZW1hIHNlIGltcG9ydGFyw6Fcbi8vIMOpc3RlIHBvciBkZWZlY3RvXG5AaW1wb3J0IFwic2V0dGluZ3NcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEltcG9ydHMgVmVuZG9yIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQm9vdHN0cmFwXG5AaW1wb3J0IFwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBJbXBvcnRzIFByb3hpYSBWYXJpYWJsZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJwcm94aWEvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwicHJveGlhL2JzMy1jb21wYXRcIjtcbkBpbXBvcnQgXCJwcm94aWEvcmVhY3QvdmFyaWFibGVzXCI7XG5cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSW1wb3J0IEJvb3RzdHJhcCBNaXhpbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwidmVuZG9ycy9ib290c3RyYXAvYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBJbXBvcnQgUHJveGlhIE1peGlucyAoZGVzcHXDqXMgZGUgY29tcGF0aWJpbGlkYWQgYnMzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJwcm94aWEvbWl4aW5zXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEltcG9ydCBQcm94aWEgUkVBQ1QgZW4gbW9kbyBQb3J0YWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGltcG9ydCBcInByb3hpYS9yZWFjdC1wcm94aWFwb3J0YWxcIjtcblxuXG5cblxuXG5cbiIsCgkJIi8qKlxuICogU29icmVlc2NyaXR1cmEgZGUgY2llcnRvcyBlbGVtZW50b3MgZW4gZnVuY2lvbiBkZSBwYXJhbWV0cml6YWNpb25lcyBkZSBwcm94aWFcbiAqIHBvciBkZWZlY3RvLlxuICovXG5cbi8vIFNvYnJlZXNjcmliZSwgdmVuZG9yL2Jvb3RzdHJhcC9ib290c3RyYXAvX3ZhcmlhYmxlcyAoR2x5cGhpY29ucylcbiRpY29uLWZvbnQtcGF0aDogJy9mb250cy9nbHlwaGljb25zLyc7XG5cbi8vIFNvYnJlZXNjcmliZSwgdmVuZG9yL2ZvbnQtYXdlc29tZS9fdmFyaWFibGVzIChGb250YXdlc29tZSlcbiRmYS1mb250LXBhdGg6ICcvZm9udHMvZm9udC1hd2Vzb21lJztcbiIsCgkJIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuQGltcG9ydCBcIm1peGlucy9iczQtY29tcGF0XCI7XG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICAoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgIGJzX2FkZCgkbGluZS1oZWlnaHQtY29tcHV0ZWQsICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgYnNfYWRkKCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSwgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgYnNfYWRkKCgkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSwgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICBic19zdWJ0cmFjdCgkbmF2YmFyLWhlaWdodC8yLCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICAoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLAoJCSJcbi8vIFJldHVybiB2YWxpZCBjYWxjIChjb3BpYWRvIGRlIEJTNCwgdGFsIGN1YWwpXG5AZnVuY3Rpb24gYnNfYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBic19zdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwKCQkiLyoqXG4gKiBWYXJpYWJsZXMgcHJlZGVmaW5pZGFzIGRlIFByb3hpYSBwYXJhIGxhIG1hcXVldGFjacOzbiBkZSBkYXRvc1xuICovXG5cbi8vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG4vLy8gQXRham8gZGUgbG9zIGNvcnRlcyBkZSBlc2NlbmFyaW9zIChQaG9uZSkgLlxuLy8vIEBleGFtcGxlXG4vLy8gICBAbWVkaWEgI3skdGFibGV0fXsuLi59XG4kcGhvbmU6ICAgICAgICAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCk7IFxuXG4vLy8gQXRham8gZGUgbG9zIGNvcnRlcyBkZSBlc2NlbmFyaW9zIChUYWJsZXQpLiBcbi8vLyBAZXhhbXBsZVxuLy8vICAgQG1lZGlhICN7JHRhYmxldH17Li4ufVxuJHRhYmxldDogICAgIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KTtcblxuLy8vIEF0YWpvIGRlIGxvcyBjb3J0ZXMgZGUgZXNjZW5hcmlvcyAoRGVza3RvcCkuIFxuLy8vIEBleGFtcGxlXG4vLy8gICBAbWVkaWEgI3skdGFibGV0fXsuLi59XG4kZGVza3RvcDogICAgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpO1xuXG4vLy8gQXRham8gZGUgbG9zIGNvcnRlcyBkZSBlc2NlbmFyaW9zIChEZXNrdG9wLUxnKS4gXG4vLy8gQGV4YW1wbGVcbi8vLyAgIEBtZWRpYSAjeyR0YWJsZXR9ey4uLn1cbiRkZXNrdG9wTGc6ICAgIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKTtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgcmFtYSBkZSBjb2xvciBncmlzXG4vLy8gQHR5cGUgQ29sb3JcbiRicmFuZC1ncmF5OiAgICAgICNmMmYyZjIhZGVmYXVsdDtcblxuLy8kYnJhbmQtcHJpbWFyeTogICAjMzA0MzgxICFkZWZhdWx0OyAvLyBkZWZpbmlkbyB2YXIgdGhlbWVcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgcmFtYSBkZSBjb2xvcmVzIHNlY3VuZGFyaWFcbi8vLyBAdHlwZSBDb2xvclxuJGJyYW5kLXNlY29uZGFyeTogI2ZmNDIwMCFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSByYW1hIGRlIGNvbG9yZXMgdGVyY2lhcmlhXG4vLy8gQHR5cGUgQ29sb3JcbiRicmFuZC10ZXJ0aWFyeTogICNmZmU1MDAgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGVycm9yIGRlIGxvcyBmb3JtdWxhcmlvcyBcbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tZXJyb3ItY29sb3I6ICNmZmZmZmYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlIGVycm9yIGRlIGxvcyBmb3JtdWxhcmlvc1xuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1lcnJvci1iZzogICAgI2VlMDAwMCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgZnVlbnRlIGV4dHJhIHBlcXVlw7FhXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9udC1zaXplLXNtYWxsZXI6ICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogMC43NSkpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZXN0OiAgICAgICAgICAgICAgICAoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgYm90w7NuIHNlY3VuZGFyaW8gXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGVsIGJvdMOzbiBzZWN1bmRhcmlvXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tc2Vjb25kYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXNlY29uZGFyeSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgYm9yZGUgZGVsIGJvdMOzbiBzZWN1bmRhcmlvXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tc2Vjb25kYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc2Vjb25kYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBib3TDs24gdGVyY2lhcmlvXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tdGVydGlhcnktY29sb3I6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgYm90w7NuIHRlcmNpYXJpb1xuLy8vIEB0eXBlIENvbG9yXG4kYnRuLXRlcnRpYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXRlcnRpYXJ5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3JkZSBkZWwgYm90w7NuIHRlcmNpYXJpb1xuLy8vIEB0eXBlIENvbG9yXG4kYnRuLXRlcnRpYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tdGVydGlhcnktYmcsIDUlKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGJvdMOzbiBncmlzXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tZ3JheS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBib3TDs24gZ3Jpc1xuLy8vIEB0eXBlIENvbG9yXG4kYnRuLWdyYXktYmc6ICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgYm9yZGUgZGVsIGJvdMOzbiBncmlzXG4vLy8gQHR5cGUgQ29sb3JcbiRidG4tZ3JheS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLWdyYXktYmcsIDUlKSAhZGVmYXVsdDtcblxuXG5cbi8vLyBNYXJnZW4gcXVlIHRlbmVtb3MgZW50cmUgZGlzdGludG9zIGVsZW1lbnRvcyBkZWwgc2lzdGVtYVxuLy8vIEB0eXBlIE51bWJlclxuJGhhbGZHdXR0ZXI6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnZW4gcXVlIHRlbmVtb3MgZW50cmUgZGlzdGludG9zIGVsZW1lbnRvcyBkZWwgc2lzdGVtYVxuLy8vIEB0eXBlIE51bWJlclxuJHNwYWNlLWd1dHRlcjokaGFsZkd1dHRlciAhZGVmYXVsdDtcblxuLy8vIEVzcGFjaWFkbyBtw61uaW1vIGVudHJlIGVsZW1lbnRvcyBxdWUgcmVwcmVzZW50YW1vcyBlbiBtb2RvIGlubGluZS1ibG9ja1xuLy8vIEB0eXBlIE51bWJlclxuJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGJvcmRlIHF1ZSBzZXBhcmEgZGlzdGludG9zIGVsZW1lbnRvcyBkZWwgc2lzdGVtYVxuLy8vIEB0eXBlIENvbG9yXG4kc2VwYXJhdGlvbi1ib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vLyBTYW5ncmlhIGRlbCBtYXJnZW4gXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5kZW50LW1hcmdpbjogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAqIDQpIC8gMykgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnZW4gaG9yaXpvbnRhbCBkZSBsYSBpbWFnZW4gZGUgdW4gY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW1hZ2UtbWFyZ2luLWhvcml6b250YWw6ICRoYWxmR3V0dGVyICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2VuIHZlcnRpY2FsIGRlIGxhIGltYWdlbiBkZSB1biBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbWFnZS1tYXJnaW4tdmVydGljYWw6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggKiAyKSAvIDMpICFkZWZhdWx0O1xuXG4vLy8gQW5jaG8gZGUgbGEgaW1hZ2VuIGVuIGxhIHBsYW50aWxsYSBkZSBsaXN0YWRvIGNvbiBpbWFnZW4gYWxpbmVhZGEgYSBsYSBpemRhIG8gZGNoYVxuLy8vIEB0eXBlIE51bWJlclxuJGh0bWxsaXN0aW1hZ2Utd2lkdGg6IDI1JSAhZGVmYXVsdDsgXG5cbi8vLyBFc3BhY2lhZG8gZW50cmUgbGEgaW1hZ2VuIHkgZWwgdGV4dG8gZW4gbGEgcGxhbnRpbGxhIGRlIGxpc3RhZG8gY29uIGltYWdlbiBhbGluZWFkYSBhIGxhIGl6ZGEgbyBkY2hhXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHRtbGxpc3RpbWFnZS1ndXR0ZXI6ICRoYWxmR3V0dGVyICFkZWZhdWx0OyBcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGUgbGFzIGNvb2tpZXNcbi8vLyBAdHlwZSBDb2xvclxuJGNvb2tpZXMtYmctY29sb3I6ICAgIHJnYmEoJGJ0bi1wcmltYXJ5LWJnICwgMC44NSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxhcyBjb29raWVzXG4vLy8gQHR5cGUgQ29sb3JcbiRjb29raWVzLXRleHQtY29sb3I6ICByZ2JhKCRidG4tcHJpbWFyeS1jb2xvciwgMC44KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGVsIGJvdG9uIGRlIGxhcyBjb29raWVzXG4vLy8gQHR5cGUgQ29sb3JcbiRjb29raWVzLWJ0bi1iZy1jb2xvcjogbGlnaHRlbigkY29va2llcy1iZy1jb2xvciwgMTUlKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGJvdG9uIGRlIGxhcyBjb29raWVzXG4vLy8gQHR5cGUgQ29sb3JcbiRjb29raWVzLWJ0bi10ZXh0LWNvbG9yOiAkYnRuLXByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBTbGlkZXJcbi8vLyBAdHlwZSBDb2xvclxuJHNsaWRlci1jb250cm9sLWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgU2xpZGVyXG4vLy8gQHR5cGUgQ29sb3JcbiRzbGlkZXItY29udHJvbC1jb2xvcjogICAgICAgICNGRkYgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIHVzYWRvIHBhcmEgbG9zIGRvdHMgZGUgbmF2ZWdhY2nDs24gZGVsIFNsaWRlclxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci1jb250cm9sLWRvdFNtYWxsOiAgICAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyB1c2FkbyBwYXJhIGVsIGNvbnRlbmVkb3IgZGUgbG9zIGRvdHMgZGUgbmF2ZWdhY2lvbiBkZWwgU2xpZGVyXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLWNvbnRyb2wtZG90OiAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIHVzYWRvIHBhcmEgbGFzIGZsZWNoYXMgZGUgbmF2ZWdhY2nDs24gZGVsIFNsaWRlclxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci1hcnJvd3Mtc2l6ZTogICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGdyYW5kZSBwYXJhIGxhcyBmbGVjaGFzIGRlIG5hdmVnYWNpw7NuIGRlbCBTbGlkZXJcbi8vLyBAdHlwZSBOdW1iZXJcbiRzbGlkZXItYmlnLWFycm93cy1zaXplOiAgICAkc2xpZGVyLWFycm93cy1zaXplICogMiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIFNsaWRlclxuLy8vIEB0eXBlIENvbG9yXG4kc2xpZGVyLXRleHQtY29sb3I6ICAgICAgICAgICAgI0ZGRiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGUgbGFzIGZsZWNoYXMgZGUgbmF2ZWdhY2nDs24gZGVsIFNsaWRlclxuLy8vIEB0eXBlIENvbG9yXG4kc2xpZGVyLWFycm93cy1iZzogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYXMgZmxlY2hhcyBkZSBuYXZlZ2FjacOzbiBkZWwgU2xpZGVyXG4vLy8gQHR5cGUgQ29sb3JcbiRzbGlkZXItYXJyb3dzLWNvbG9yOiAgICAgICAgcmdiYSgyMjAsIDIxNiwgMjE2LCAwLjg4KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGVsIGJvdMOzbiBTY3JvbGwgdG8gVG9wIFxuLy8vIEB0eXBlIENvbG9yXG4kdG8tdG9wLWJnLWNvbG9yOiAjMDAwICAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgaWNvbm8gZGVsIGJvdMOzbiBTY3JvbGwgdG8gVG9wXG4vLy8gQHR5cGUgQ29sb3JcbiR0by10b3AtaWNvbi1jb2xvcjogI0ZGRiAgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlbCBib3JkZXItcmFkaW91cyBkZWwgYm90w7NuIFNjcm9sbCB0byBUb3Bcbi8vLyBAdHlwZSBOdW1iZXJcbiR0by10b3AtYi1yYWRpdXM6IDUwJSAgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZSBkZWwgYm90w7NuIFNjcm9sbCB0byBUb3Bcbi8vLyBAdHlwZSBOdW1iZXJcbiR0by10b3AtYm9yZGVyOiAxcHggc29saWQgIzAwMCAgIWRlZmF1bHQ7XG5cbi8vLyBIYWJpbGl0YSBsYSBhbmltYWNpw7NuIGRlbCBib3TDs24gU2Nyb2xsIHRvIFRvcFxuLy8vIEB0eXBlIGJvb2xcbiR0by10b3AtYW5pbWF0aW9uLXJvdGF0ZS1lbmFibGVkOiB0cnVlICAhZGVmYXVsdDtcblxuLy8vIERhdG9zIGLDoXNpY29zIHF1ZSBzb24gY29tcGFydGlkb3MgcG9yIHRvZG9zIGxvcyBsaXN0YWRvcywgcGVybyBxdWUgY29udmllbmUgaW5kaWNhciBhcXVpLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvbnRlbnRMaXN0SWNvbkZvbnRGYW1pbHk6ICcnICFkZWZhdWx0O1xuXG4vLy8gRGF0b3MgYsOhc2ljb3MgcXVlIHNvbiBjb21wYXJ0aWRvcyBwb3IgdG9kb3MgbG9zIGxpc3RhZG9zLCBwZXJvIHF1ZSBjb252aWVuZSBpbmRpY2FyIGFxdWkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29udGVudExpc3RJY29uUGFkZGluZzogJGhhbGZHdXR0ZXIgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxvcyBlbmxhY2VzIGludGVybm9zIGRlIHByb3hpYSAoc2UgcmVwcmVzZW50YW4gc2llbXByZSBlbiBlbCBjb2xvciBkZWwgdGV4dG9cbi8vLyB5IGNvbiBpbnZlcnNvIGVsIGRlIGxhIG1hcmNhLCBhdW5xdWUgcHVlZGVuIG1vZGlmaWNhcnNlIGEgbml2ZWwgZGUgaXRlbSBpbmRpdmlkdWFsIGFzw60gZXMgbcOhcyBmYWNpbCBoYWNlcmxvKVxuLy8vIEB0eXBlIENvbG9yXG4kcHJveGlhLWxpbmtzLWNvbG9yOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBob3ZlciBlbiBsb3MgZW5sYWNlcyBpbnRlcm5vcyBkZSBwcm94aWEgKHNlIHJlcHJlc2VudGFuIHNpZW1wcmUgZW4gZWwgY29sb3IgZGVsIHRleHRvXG4vLy8geSBjb24gaW52ZXJzbyBlbCBkZSBsYSBtYXJjYSwgYXVucXVlIHB1ZWRlbiBtb2RpZmljYXJzZSBhIG5pdmVsIGRlIGl0ZW0gaW5kaXZpZHVhbCBhc8OtIGVzIG3DoXMgZmFjaWwgaGFjZXJsbylcbi8vLyBAdHlwZSBDb2xvclxuJHByb3hpYS1saW5rcy1jb2xvci1ob3ZlcjogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCB0w610dWxvIGVuIHVuIGxpZ2h0Ym94XG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlnaHRib3gtdGl0bGUtZm9udC1zaXplOiAkZm9udC1zaXplLWgzICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZWwgY3VlcnBvIGVuIHVuIGxpZ2h0Ym94XG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlnaHRib3gtYm9keS1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGVsIHTDrXR1bG8gZW4gdW4gbGlnaHRib3hcbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0Ym94LXRpdGxlLWJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgZm9vdGVyIGVuIHVuIGxpZ2h0Ym94XG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodGJveC1mb290ZXItYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCB0w610dWxvIGVuIHVuIGxpZ2h0Ym94XG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodGJveC10aXRsZS1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBmb290ZXIgZW4gdW4gbGlnaHRib3hcbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0Ym94LWZvb3Rlci1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBib3TDs24gZW4gdW4gbGlnaHRib3hcbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0Ym94LWJ1dHRvbi1jb2xvcjogd2hpdGUgZGFya2VuKCRsaWdodGJveC1mb290ZXItYmFja2dyb3VuZC1jb2xvciwzMCUpICFkZWZhdWx0O1xuXG4vLy8gRXNwYWNpYWRvIGVudHJlIGNvbXBvbmVudGVzIChNYXJnaW4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmxvY2stbWFyZ2luOiAwIDAgJGhhbGZHdXR0ZXIgIWRlZmF1bHQ7XG5cbi8vLyBFc3BhY2lhZG8gZW50cmUgY29tcG9uZW50ZXMgKFBhZGRpbmcpXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmxvY2stcGFkZGluZzogMCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGVsIGNvbXBvbmVudGUgZGUgbWlnYXMgZGUgcGFuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IEZhbWlseSBwYXJhIGVsIHNlcGFyYWRvciBkZWwgY29tcG9uZW50ZSBkZSBtaWdhcyBkZSBwYW4gKFBvciBkZWZlY3RvIG5vIHRlbmVtb3MgZmFtaWxpYSBkZSBmdWVudGVzIHBhcmEgZWwgc2VwYXJhZG9yKVxuLy8vIEB0eXBlIFN0cmluZ1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yLWZvbnQtZmFtaWx5OiAnJyAhZGVmYXVsdDsgXG5cbi8vLyBJY29ubyBwYXJhIGxhIGhvbWUgZGUgRm9udC1Bd2Vzb21lIHBhcmEgZWwgY29tcG9uZW50ZSBkZSBtaWdhcyBkZSBwYW5cbi8vLyBAdHlwZSBTdHJpbmdcbiRicmVhZGNydW1iLWhvbWUtaWNvbjogJ1xcZjAxNScgIWRlZmF1bHQ7XG5cbi8vLyBGYW1pbGlhIGRlbCBpY29ubyBwYXJhIGxhIGhvbWUgcGFyYSBlbCBjb21wb25lbnRlIGRlIG1pZ2FzIGRlIHBhbiAoUG9yIGRlZmVjdG8gcG9uZW1vcyBlbCBpY29ubyBwYXJhIGxhIEhPTUUgZGUgZm9udC1hd2Vzb21lKVxuLy8vIEB0eXBlIFN0cmluZ1xuJGJyZWFkY3J1bWItaG9tZS1pY29uLWZhbWlseTogRm9udEF3ZXNvbWUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBzZXBhcmFkb3IgZGVsIGNvbXBvbmVudGUgZGUgbWlnYXMgZGUgcGFuIChQb3Igc2kgcXVlcmVtb3MgcGlzYXIgZWwgcGFkZGluZyBkZWwgc2VwYXJhZG9yKVxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWItc2VwYXJhdG9yLXBhZGRpbmc6IDAgJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nICFkZWZhdWx0OyBcblxuLy8vIEljb25vIGRlbCBzZXBhcmFkb3IgcGFyYSBlbCBjb21wb25lbnRlIGRlIG1pZ2FzIGRlIHBhblxuLy8vIEB0eXBlIFN0cmluZ1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yLWljb246IFwifFwiICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgbWlnYXMgZGUgcGFuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1iLWl0ZW0tY29sb3I6ICRwcm94aWEtbGlua3MtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBob3ZlciBlbiBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgbWlnYXMgZGUgcGFuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1iLWl0ZW0tY29sb3ItaG92ZXI6ICRwcm94aWEtbGlua3MtY29sb3ItaG92ZXIgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBjb21wb25lbnRlIGRlIGJsb3F1ZXMgZGUgc2VydmljaW9zIGRlbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtc2VydmljZXMtYmctY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvIGN1YW5kbyBlc3RhIGFjdGl2b1xuLy8vIEB0eXBlIENvbG9yXG4kY29udGVudC1zZXJ2aWNlcy1hY3RpdmUtYmctY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgQ29sb3JcbiRjb250ZW50LXNlcnZpY2VzLWNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvIGN1YW5kbyBlc3RhIGFjdGl2b1xuLy8vIEB0eXBlIENvbG9yXG4kY29udGVudC1zZXJ2aWNlcy1hY3RpdmUtY29sb3I6ICRwcm94aWEtbGlua3MtY29sb3ItaG92ZXIgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGdyYW5kZSBkZSBsZXRyYSBwYXJhIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLWZvbnQtbGFyZ2U6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gcGVxdWXDsW8gZGUgbGV0cmEgcGFyYSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgYmxvcXVlcyBkZSBzZXJ2aWNpb3MgZGVsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJGNvbnRlbnQtc2VydmljZXMtaXRlbS1mb250LXNtYWxsOiAkZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuXG4vLy8gQW5jaG8gZ3JhbmRlIGRlbCBjb250ZW5lZG9yIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLWxhcmdlLWJveC13aWR0aDogMi41KiRjb250ZW50LXNlcnZpY2VzLWl0ZW0tZm9udC1sYXJnZSAhZGVmYXVsdDtcblxuLy8vIEFuY2hvIHBlcXVlw7FvIGRlbCBjb250ZW5lZG9yIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLXNtYWxsLWJveC13aWR0aDogMiokY29udGVudC1zZXJ2aWNlcy1pdGVtLWZvbnQtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZSBwYXJhIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBibG9xdWVzIGRlIHNlcnZpY2lvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29udGVudC1zZXJ2aWNlcy1pdGVtLWJvcmRlcjogMHB4ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgaWNvbm8gUlNTIGRlbCBjb21wb25lbnRlIGRlIGJsb3F1ZXMgZGUgc2VydmljaW9zIGRlbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtc2VydmljZXMtcnNzLWNvbG9yOiAjZjg5OTFkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgaWNvbm8gUERGIGRlbCBjb21wb25lbnRlIGRlIGJsb3F1ZXMgZGUgc2VydmljaW9zIGRlbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtc2VydmljZXMtcGRmLWNvbG9yOiAjY2IwNjA2ICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZSBsYSBtYXF1ZXRhY2nDs24gZGUgbG9zIGNvbnRlbmlkb3MgYSB0cmF2w6lzIGRlIHN1cyBwbGFudGlsbGFzIGVzcGVjaWFsZXNcbi8vLyBAdHlwZSBOdW1iZXJcbiR0ZW1wbGF0aW5nLWZlYXR1cmVzLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIG1hcmdpbi10b3AgZGUgbGEgbWFxdWV0YWNpw7NuIGRlIGxvcyBjb250ZW5pZG9zIGEgdHJhdsOpcyBkZSBzdXMgcGxhbnRpbGxhcyBlc3BlY2lhbGVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGVtcGxhdGluZy1mZWF0dXJlcy1tYXJnaW4tdG9wOiAkaGFsZkd1dHRlci8yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsYSBtYXF1ZXRhY2nDs24gZGUgbG9zIGNvbnRlbmlkb3MgYSB0cmF2w6lzIGRlIHN1cyBwbGFudGlsbGFzIGVzcGVjaWFsZXNcbi8vLyBAdHlwZSBDb2xvclxuJHRlbXBsYXRpbmctZmVhdHVyZXMtdGl0bGUtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2Zvcm1hY2nDs24gZGVsIHTDrXR1bG8gZGUgbGEgbWFxdWV0YWNpw7NuIGRlIGxvcyBjb250ZW5pZG9zIGEgdHJhdsOpcyBkZSBzdXMgcGxhbnRpbGxhcyBlc3BlY2lhbGVzXG4kdGVtcGxhdGluZy1mZWF0dXJlcy10aXRsZS10cmFuc2Zvcm06IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIGNvbHVtbmFzIGRlIGxhcyBzdWJzZWNjaW9uZXMgZGUgbGEgbWFxdWV0YWNpw7NuIGRlIGxvcyBjb250ZW5pZG9zIGEgdHJhdsOpcyBkZSBzdXMgcGxhbnRpbGxhcyBlc3BlY2lhbGVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGVtcGxhdGluZy1zdWJzZWN0aW9uLWNvbHVtbnM6IDIgIWRlZmF1bHQ7XG5cbi8vLyBQZXNvIGRlbCB0w610dWxvIGRlIGxhcyBzdWJzZWNjaW9uZXMgZGUgbGEgbWFxdWV0YWNpw7NuIGRlIGxvcyBjb250ZW5pZG9zIGEgdHJhdsOpcyBkZSBzdXMgcGxhbnRpbGxhcyBlc3BlY2lhbGVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGVtcGxhdGluZy1zdWJzZWN0aW9uLXRpdGxlLXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIHTDrXR1bG8gZGUgbGFzIHN1YnNlY2Npb25lcyBkZSBsYSBtYXF1ZXRhY2nDs24gZGUgbG9zIGNvbnRlbmlkb3MgYSB0cmF2w6lzIGRlIHN1cyBwbGFudGlsbGFzIGVzcGVjaWFsZXNcbi8vLyBAdHlwZSBDb2xvclxuJHRlbXBsYXRpbmctc3Vic2VjdGlvbi10aXRsZS1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIFRyYW5zZm9ybWFjacOzbiBkZWwgdMOtdHVsbyBkZSBsYXMgc3Vic2VjY2lvbmVzIGRlIGxhIG1hcXVldGFjacOzbiBkZSBsb3MgY29udGVuaWRvcyBhIHRyYXbDqXMgZGUgc3VzIHBsYW50aWxsYXMgZXNwZWNpYWxlc1xuJHRlbXBsYXRpbmctc3Vic2VjdGlvbi10aXRsZS10cmFuc2Zvcm06IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBDb2xvclxuJHN1YmNvbnRlbnRzLWJsb2NrLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZWwgbWFyZ2VuIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJjb250ZW50cy1ibG9jay1tYXJnaW46ICRibG9jay1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlbCBwYWRkaW5nIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXIgXG4kc3ViY29udGVudHMtYmxvY2stcGFkZGluZzogJGJsb2NrLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLWNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgc3ViY29udGVuaWRvcyBhbCBoYWNlciBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4kc3ViY29udGVudHMtYmxvY2staXRlbS1jb2xvci1ob3ZlcjogJHByb3hpYS1saW5rcy1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB0b3AgZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3NcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLWJvcmRlci10b3A6IDFweCAkZ3JheS1saWdodCBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIHBhZGRpbmcgZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLXBhZGRpbmc6ICRoYWxmR3V0dGVyIDAgJGhhbGZHdXR0ZXIgMCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIG1hcmdlbiBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0tbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gSWNvbm8gcGFyYSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbjogICc+JyAhZGVmYXVsdDtcblxuLy8vIEZ1ZW50ZSBkZWwgaWNvbm8gZW4gbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLWljb24tZm9udDogJGNvbnRlbnRMaXN0SWNvbkZvbnRGYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJjb250ZW50cy1ibG9jay1pdGVtLWljb24tY29sb3I6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nOiAkY29udGVudExpc3RJY29uUGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGVsIGNhdGVnb3JpemFkb3IgZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2F0ZWdvcml6ZXItYmxvY2stcGFkZGluZzogJHN1YmNvbnRlbnRzLWJsb2NrLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlIGxvcyBpdGVtcyBkZWwgY2F0ZWdvcml6YWRvciBkZW50cm8gZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXRlZ29yaXplci1ibG9jay1pdGVtLXBhZGRpbmc6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnZW4gZGVsIGNhdGVnb3JpemFkb3IgZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktbWFyZ2luOiAwcHggIWRlZmF1bHQ7IFxuXG4vLy8gUGFkZGluZyBkZSBsYSBjYXRlZ29yaWEgZGVsIGNhdGVnb3JpemFkb3IgZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktcGFkZGluZzogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nICFkZWZhdWx0OyBcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGUgbGEgY2F0ZWdvcmlhIGRlbCBjYXRlZ29yaXphZG9yIGRlbnRybyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIENvbG9yXG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktYmFja2dyb3VuZDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBDb21vIHNlIG11ZXN0cmEgbGFzIGNhdGVnb3JpYXMgZGVsIGNhdGVnb3JpemFkb3IgZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4kY2F0ZWdvcml6ZXItY2F0ZWdvcnktZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlIGxhcyBjYXRlZ29yaWFzIGRlbCBjYXRlZ29yaXphZG9yIGRlbnRybyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJGNhdGVnb3JpemVyLWNhdGVnb3J5LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4vLy8gRXN0aWxvIGRlbCBib3JkZSBkZSBsYXMgY2F0ZWdvcmlhcyBkZWwgY2F0ZWdvcml6YWRvciBkZW50cm8gZGUgbG9zIHN1YmNvbnRlbmlkb3NcbiRjYXRlZ29yaXplci1jYXRlZ29yeS1ib3JkZXItc3R5bGU6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBkZWwgYm9yZGUgZGUgbGFzIGNhdGVnb3JpYXMgZGVsIGNhdGVnb3JpemFkb3IgZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXRlZ29yaXplci1jYXRlZ29yeS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQW5jaG8gZGVsIGJvcmRlIGRlIGxhcyBjYXRlZ29yaWFzIGRlbCBjYXRlZ29yaXphZG9yIGRlbnRybyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJGNhdGVnb3JpemVyLWNhdGVnb3J5LWJvcmRlci13aWR0aDogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbGFzIGNhdGVnb3JpYXMgZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1wYWRkaW5nOiAwcHggMHB4IDBweCAkaGFsZkd1dHRlciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1pdGVtLWNvbG9yOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGRlIGxvcyBzdWJjb250ZW5pZG9zIGN1YW5kbyBzZSBoYWNlIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1pdGVtLWNvbG9yLWhvdmVyOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB0b3AgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4kc3ViY29udGVudHMtY2F0ZWdvcnktYmxvY2staXRlbS1ib3JkZXItdG9wOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1ib3JkZXItdG9wICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZSBsb3MgaXRlbXMgZGUgbGFzIGNhdGVnb3JpYXMgZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJjb250ZW50cy1jYXRlZ29yeS1ibG9jay1pdGVtLXBhZGRpbmc6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViY29udGVudHMtY2F0ZWdvcnktYmxvY2staXRlbS1tYXJnaW46ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmNvbnRlbnRzLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbjogICRzdWJjb250ZW50cy1ibG9jay1pdGVtLWljb24gIWRlZmF1bHQ7XG5cbi8vLyBGdWVudGUgZGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmNvbnRlbnRzLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbi1mb250OiAkc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLWZvbnQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGUgbGFzIGNhdGVnb3JpYXMgZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBDb2xvclxuJHN1YmNvbnRlbnRzLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbi1jb2xvcjogJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbi1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJHN1YmNvbnRlbnRzLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLXBhZGRpbmcgIWRlZmF1bHQ7XG5cblxuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgY29tcG9uZW50ZSBkZSBhdXRvcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRvcmVsYXRlZC1ibG9jay1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIE1hcmdlbiBkZWwgY29tcG9uZW50ZSBkZSBhdXRvcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtYmxvY2stbWFyZ2luOiAkYmxvY2stbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZWwgY29tcG9uZW50ZSBkZSBhdXRvcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtYmxvY2stcGFkZGluZzogJGJsb2NrLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBhdXRvcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgYXV0b3JlbGFjaW9uYWRvcyBjdWFuZG8gc2UgaGFjZSBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4kYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1jb2xvci1ob3ZlcjogJHByb3hpYS1saW5rcy1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB0b3AgZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIGF1dG9yZWxhY2lvbmFkb3NcbiRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWJvcmRlci10b3A6IDBweCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIGF1dG9yZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLXBhZGRpbmc6ICRoYWxmR3V0dGVyIDAgJGhhbGZHdXR0ZXIgMCAhZGVmYXVsdDtcblxuLy8vIE1hcmdlbiBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgYXV0b3JlbGFjaW9uYWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJGF1dG9yZWxhdGVkLWJsb2NrLWl0ZW0tbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gSWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIGF1dG9yZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBTdHJpbmdcbiRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWljb246ICAnJyAhZGVmYXVsdDtcblxuLy8vIEZ1ZW50ZSBkZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIGF1dG9yZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBTdHJpbmdcbiRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWljb24tZm9udDogJGNvbnRlbnRMaXN0SWNvbkZvbnRGYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgYXV0b3JlbGFjaW9uYWRvc1xuLy8vIEB0eXBlIENvbG9yXG4kYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1pY29uLWNvbG9yOiAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyB1c2FkbyBwYXJhIGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBhdXRvcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1pY29uLXBhZGRpbmc6ICRjb250ZW50TGlzdEljb25QYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZWwgY2F0ZWdvcml6YWRvciBhdXRvcmVsYWNpb25hZG8gZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcml6ZXItYmxvY2stcGFkZGluZzogJGF1dG9yZWxhdGVkLWJsb2NrLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlIGxvcyBpdGVtcyBkZWwgY2F0ZWdvcml6YWRvciBhdXRvcmVsYWNpb25hZG8gZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcml6ZXItYmxvY2staXRlbS1wYWRkaW5nOiAkYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2VuIGRlIGxhcyBjYXRlZ29yaWFzIGRlbCBjYXRlZ29yaXphZG9yIGF1dG9yZWxhY2lvbmFkbyBkZW50cm8gZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRhdXRvcmVsYXRlZC1jYXRlZ29yaXplci1jYXRlZ29yeS1tYXJnaW46IDBweCAhZGVmYXVsdDsgXG5cbi8vLyBQYWRkaW5nIGRlIGxhcyBjYXRlZ29yaWFzIGRlbCBjYXRlZ29yaXphZG9yIGF1dG9yZWxhY2lvbmFkbyBkZW50cm8gZGUgbG9zIHN1YmNvbnRlbmlkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRhdXRvcmVsYXRlZC1jYXRlZ29yaXplci1jYXRlZ29yeS1wYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgIWRlZmF1bHQ7IFxuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZSBsYXMgY2F0ZWdvcmlhcyBkZWwgY2F0ZWdvcml6YWRvciBhdXRvcmVsYWNpb25hZG8gZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRvcmVsYXRlZC1jYXRlZ29yaXplci1jYXRlZ29yeS1iYWNrZ3JvdW5kOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8vIENvbW8gc2UgbXVlc3RyYW4gbGFzIGNhdGVnb3JpYXMgZGVsIGNhdGVnb3JpemFkb3IgYXV0b3JlbGFjaW9uYWRvIGRlbnRybyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuJGF1dG9yZWxhdGVkLWNhdGVnb3JpemVyLWNhdGVnb3J5LWRpc3BsYXk6IGJsb2NrICFkZWZhdWx0O1xuXG4vLy8gRXN0aWxvIGRlbCBib3JkZSBkZSBsYXMgY2F0ZWdvcmlhcyBkZWwgY2F0ZWdvcml6YWRvciBhdXRvcmVsYWNpb25hZG8gZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcml6ZXItY2F0ZWdvcnktYm9yZGVyLXN0eWxlOiBub25lICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3JkZSBkZSBsYXMgY2F0ZWdvcmlhcyBkZWwgY2F0ZWdvcml6YWRvciBhdXRvcmVsYWNpb25hZG8gZGVudHJvIGRlIGxvcyBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRvcmVsYXRlZC1jYXRlZ29yaXplci1jYXRlZ29yeS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGUgZGUgbGFzIGNhdGVnb3JpYXMgZGVsIGNhdGVnb3JpemFkb3IgYXV0b3JlbGFjaW9uYWRvIGRlbnRybyBkZSBsb3Mgc3ViY29udGVuaWRvc1xuJGF1dG9yZWxhdGVkLWNhdGVnb3JpemVyLWNhdGVnb3J5LWJvcmRlcjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbGFzIGNhdGVnb3JpYXMgYXV0b3JlbGFjaW9uYWRhc1xuLy8vIEB0eXBlIE51bWJlclxuJGF1dG9yZWxhdGVkLWNhdGVnb3J5LWJsb2NrLXBhZGRpbmc6IDBweCAwcHggMHB4ICRoYWxmR3V0dGVyICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgaXRlbXMgZGUgbGFzIGNhdGVnb3JpYXMgYXV0b3JlbGFjaW9uYWRhc1xuLy8vIEB0eXBlIENvbG9yXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcnktYmxvY2staXRlbS1jb2xvcjogJGF1dG9yZWxhdGVkLWJsb2NrLWl0ZW0tY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBhdXRvcmVsYWNpb25hZGFzIGN1YW5kbyBzZSBoYWNlIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRvcmVsYXRlZC1jYXRlZ29yeS1ibG9jay1pdGVtLWNvbG9yLWhvdmVyOiAkYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB0b3AgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGF1dG9yZWxhY2lvbmFkYXNcbiRhdXRvcmVsYXRlZC1jYXRlZ29yeS1ibG9jay1pdGVtLWJvcmRlci10b3A6ICRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWJvcmRlci10b3AgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBhdXRvcmVsYWNpb25hZGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcnktYmxvY2staXRlbS1wYWRkaW5nOiAkYXV0b3JlbGF0ZWQtYmxvY2staXRlbS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBhdXRvcmVsYWNpb25hZGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b3JlbGF0ZWQtY2F0ZWdvcnktYmxvY2staXRlbS1tYXJnaW46ICRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIGxvcyBpdGVtcyBkZSBsYXMgY2F0ZWdvcmlhcyBhdXRvcmVsYWNpb25hZGFzXG4vLy8gQHR5cGUgU3RyaW5nIFxuJGF1dG9yZWxhdGVkLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbjogICRhdXRvcmVsYXRlZC1ibG9jay1pdGVtLWljb24gIWRlZmF1bHQ7XG5cbi8vLyBGdWVudGUgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGF1dG9yZWxhY2lvbmFkYXNcbi8vLyBAdHlwZSBTdHJpbmdcbiRhdXRvcmVsYXRlZC1jYXRlZ29yeS1ibG9jay1pdGVtLWljb24tZm9udDogJGF1dG9yZWxhdGVkLWJsb2NrLWl0ZW0taWNvbi1mb250ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGF1dG9yZWxhY2lvbmFkYXNcbi8vLyBAdHlwZSBDb2xvclxuJGF1dG9yZWxhdGVkLWNhdGVnb3J5LWJsb2NrLWl0ZW0taWNvbi1jb2xvcjogJGF1dG9yZWxhdGVkLWJsb2NrLWl0ZW0taWNvbi1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbG9zIGl0ZW1zIGRlIGxhcyBjYXRlZ29yaWFzIGF1dG9yZWxhY2lvbmFkYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRhdXRvcmVsYXRlZC1jYXRlZ29yeS1ibG9jay1pdGVtLWljb24tcGFkZGluZzogJGF1dG9yZWxhdGVkLWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nICFkZWZhdWx0O1xuIFxuLy8vIEJsb3F1ZSBkZSB2YXJpYWJsZXMgcmVsYWNpb25hZGFzIGNvbiBlbCBtYXBhIFdlYjogXG4vLy8gXG4vLy8gICAgIGJsb2NrLXBhZGRpbmc6ICAgICAgICAgIEVsIHBhZGRpbmcgZGVsIG1hcGEgd2ViXG4vLy8gICAgIGJsb2NrLWl0ZW0tZm9udC1zaXplOiAgIEVsIHRhbWHDsW8gZGUgZnVlbnRlIGRlIGNhZGEgZWxlbWVudG9cbi8vLyAgICAgYmxvY2staXRlbS1jb2xvcjogICAgICAgRWwgY29sb3IgZGUgbGEgZnVlbnRlIGRlIGNhZGEgZWxlbWVudG9cbi8vLyAgICAgYmxvY2staXRlbS1jb2xvci1ob3ZlcjogRWwgY29sb3IgZGUgbGEgZnVlbnRlIGRlIGNhZGEgZWxlbWVudG8gY3VhbmRvIHNlIGhhY2UgaG92ZXJcbi8vLyAgICAgYmxvY2staXRlbS1ib3JkZXItdG9wOiAgRWwgYm9yZGUgc3VwZXJpb3IgZGUgY2FkYSBlbGVtZW50b1xuLy8vICAgICBibG9jay1pdGVtLXBhZGRpbmc6ICAgICBFbCBtYXJnZW4gaW50ZXJpb3IgZGUgY2FkYSBlbGVtZW50b1xuLy8vICAgICBibG9jay1pdGVtLW1hcmdpbjogICAgICBFbCBtYXJnZW4gZGUgY2FkYSBlbGVtZW50b1xuLy8vICAgICB0aXRsZS1pY29uOiAgICAgICAgICAgICBFbCBpY29ubyBkZWwgdMOtdHVsbyBkZWwgbWFwYSB3ZWJcbi8vLyAgICAgdGl0bGUtaWNvbi1mb250OiAgICAgICAgTGEgZnVlbnRlIGRlbCBpY29ubyBkZWwgdMOtdHVsb1xuLy8vICAgICB0aXRsZS1pY29uLXBhZGRpbmc6ICAgICBFbCBtYXJnZW4gaW50ZXJpb3IgZGVsIGljb25vIGRlbCB0w610dWxvXG4vLy8gICAgIHRpdGxlLW1hcmdpbjogICAgICAgICAgIEVsIG1hcmdlbiBkZWwgdMOtdHVsb1xuLy8vICAgICB0aXRsZS1iYWNrZ3JvdW5kOiAgICAgICBFbCBjb2xvciBkZWwgZm9uZG8gZGVsIHTDrXR1bG9cbi8vLyAgICAgdGl0bGUtcGFkZGluZzogICAgICAgICAgRWwgbWFyZ2VuIGludGVyaW9yIGRlbCB0w610dWxvXG4vLy8gICAgIHRpdGxlLWRpc3BsYXk6ICAgICAgICAgIExhIGZvcm1hIGVuIGxhIHF1ZSBzZSB2YSBhIG1vc3RyYXIgZWwgdMOtdHVsb1xuLy8vICAgICB0aXRsZS1ib3JkZXItc3R5bGU6ICAgICBFbCBlc3RpbG8gZGVsIGJvcmRlIGRlbCB0w610dWxvIGRlbCBtYXBhIHdlYlxuLy8vICAgICB0aXRsZS1ib3JkZXItY29sb3I6ICAgICBFbCBjb2xvciBkZWwgYm9yZGUgZGVsIHTDrXR1bG9cbi8vLyAgICAgdGl0bGUtYm9yZGVyOiAgICAgICAgICAgRWwgdGlwbyBkZSBib3JkZSBxdWUgdGVuZHJhIGVsIHTDrXR1bG9cbi8vLyAgICAgXG4vLy8gQHR5cGUgTWFwXG4kc2l0ZW1hcC1sZXZlbDE6IChcbiAgICBibG9jay1wYWRkaW5nOiAwcHggMHB4IDBweCAkaGFsZkd1dHRlcixcbiAgICBibG9jay1pdGVtLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlLFxuICAgIGJsb2NrLWl0ZW0tY29sb3I6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLWNvbG9yLFxuICAgIGJsb2NrLWl0ZW0tY29sb3ItaG92ZXI6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLWNvbG9yLWhvdmVyLFxuICAgIGJsb2NrLWl0ZW0tYm9yZGVyLXRvcDogJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0tYm9yZGVyLXRvcCxcbiAgICBibG9jay1pdGVtLXBhZGRpbmc6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLXBhZGRpbmcsXG4gICAgYmxvY2staXRlbS1tYXJnaW46ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLW1hcmdpbixcbiAgICB0aXRsZS1pY29uOiAgJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbixcbiAgICB0aXRsZS1pY29uLWZvbnQ6ICRzdWJjb250ZW50cy1ibG9jay1pdGVtLWljb24tZm9udCxcbiAgICB0aXRsZS1pY29uLWNvbG9yOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLWNvbG9yLFxuICAgIHRpdGxlLWljb24tcGFkZGluZzogJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nLFxuICAgIHRpdGxlLW1hcmdpbjogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nIDBweCAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgMHB4LFxuICAgIHRpdGxlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50LFxuICAgIHRpdGxlLXBhZGRpbmc6IDBweCxcbiAgICB0aXRsZS1kaXNwbGF5OiBibG9jayxcbiAgICB0aXRsZS1ib3JkZXItc3R5bGU6IG5vbmUsXG4gICAgdGl0bGUtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICB0aXRsZS1ib3JkZXI6IDBweFxuKSAhZGVmYXVsdDtcblxuLy8vIEJsb3F1ZSBkZSB2YXJpYWJsZXMgcmVsYWNpb25hZGFzIGNvbiBlbCBtYXBhIFdlYiAyXG4kc2l0ZW1hcC1sZXZlbDI6ICRzaXRlbWFwLWxldmVsMSAhZGVmYXVsdDtcblxuLy8vIEJsb3F1ZSBkZSB2YXJpYWJsZXMgcmVsYWNpb25hZGFzIGNvbiBlbCBtYXBhIFdlYiAzXG4kc2l0ZW1hcC1sZXZlbDM6ICRzaXRlbWFwLWxldmVsMiAhZGVmYXVsdDtcblxuLy8vIEJsb3F1ZSBkZSB2YXJpYWJsZXMgcmVsYWNpb25hZGFzIGNvbiBlbCBtYXBhIFdlYiA0XG4kc2l0ZW1hcC1sZXZlbDQ6ICRzaXRlbWFwLWxldmVsMyAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIGNhbGVuZGFyaW8gXG4vLy8gQHR5cGUgYm9vbCB8IE51bWJlclxuJGNhbGVuZGFyLW1vbnRoZXZlbnRibG9jay1zaXplOiAoJ3hzJzoxMiwnc20nOjYsJ21kJzo2LCdsZyc6NykgIWRlZmF1bHQ7XG5cbi8vLyBSYXRpbyBkZSBsYXMgY29sdW1uYXMgZGVsIGNhbGVuZGFyaW8gXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsZW5kYXItY2VsbC1hc3BlY3QtcmF0aW86IDEuMyAhZGVmYXVsdDtcblxuLy8vIEFsaW5lYW1pZW50byBkZSBsYSBjb2x1bW5hIGRlbCBkaWEgZGVsIGNhbGVuZGFyaW9cbiRjYWxlbmRhci1jZWxsLWRheS1hbGlnbjogbWlkZGxlIGNlbnRlciAhZGVmYXVsdDtcblxuLy8vIExvcyBkw61hcyBwdWVkZW4gcHJlc2VudGFyc2UgZGUgdmFyaWFzIGZvcm1hcy5cbi8vLyBhKSBEw61hIGFjdGl2by4uLiBcbi8vLyAgICAqIENvbiB1biBjb2xvciBkZSBmb25kbyBlc3BlY2lhbFxuLy8vICAgICogQ29uIHVuIGNvbG9yIGRlIGxldHJhIGVzcGVjaWFsXG4vLy8gICAgKiBFbnZ1ZWx0byBlbiB1biBjaXJjdWxvXG4vLy9cbi8vLyBiKSBEw61hIGZlc3Rpdm8uLi5cbi8vLyAgICAqIENvbiB1biBjb2xvciBkZSBmb25kbyBlc3BlY2lhbFxuLy8vICAgICogQ29uIHVuIGNvbG9yIGRlIGxldHJhIGVzcGNpYWxcbi8vLyAgICAqIEVudnVlbHRvIGVuIHVuIGNpcmN1bG9cblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbWFyY2FyIGVsIGRpYSBhY3R1YWwgZGVsIGNhbGVuZGFyaW9cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGVuZGFyLWN1cnJlbnRkYXk6ICRicmFuZC1wcmltYXJ5IHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUm9kZWFyIGNvbiB1biBjaXJjdWxvIGVsIGRpYSBhY3R1YWxcbi8vLyBAdHlwZSBib29sXG4kY2FsZW5kYXItY3VycmVudGRheS1lbmNpcmNsZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gZW4gZWwgY2FsZW5kYXJpbyBwYXJhIG1hcmNhciB1biBkaWEgZGUgdmFjYWNpb25lc1xuLy8vIEB0eXBlIENvbG9yXG4kY2FsZW5kYXItaG9saWRheTogdHJhbnNwYXJlbnQgcmVkICFkZWZhdWx0O1xuXG4vLy8gUm9kZWFyIGNvbiB1biBjaXJjdWxvIHVuIGRpYSBkZSB2YWNhY2lvbmVzXG4vLy8gQHR5cGUgYm9vbFxuJGNhbGVuZGFyLWhvbGlkYXktZW5jaXJjbGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBkaWEgZW4gZWwgcXVlIG9jdXJyYSB1biBldmVudG8gKEVsIGTDrWEgZGVsIGV2ZW50byBwdWVkZSBjb21wb3J0YXJzZSBpZ3VhbCwgdGVuZXIgdW4gY29sb3IgZGUgZm9uZG8gdGVuZXIgdW4gY2lyY3VsbywgdW4gY29sb3IgeSBhZGVtw6FzIGRlYmVtb3MgcG9kZXIgYXNvY2lhciBkaXN0aW50b3MgZXN0aWxvcyBhbCBlbGVtZW50byBjb21vIHVuIGljb25vIGRlIGV2ZW50byBkZSBjYWxlbmRhcmlvIHBhcmEgcXVlIHNlIHNlcGEgcXVlIGhheSBhbGdvKVxuLy8vIEB0eXBlIENvbG9yXG4kY2FsZW5kYXItZXZlbnQ6ICRicmFuZC1zZWNvbmRhcnkgd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBSb2RlYXIgY29uIHVuIGNpcmN1bG8gdW4gZGlhIGVuIGVsIHF1ZSBoYXlhIHVuIGV2ZW50byAoRWwgZMOtYSBkZWwgZXZlbnRvIHB1ZWRlIGNvbXBvcnRhcnNlIGlndWFsLCB0ZW5lciB1biBjb2xvciBkZSBmb25kbyB0ZW5lciB1biBjaXJjdWxvLCB1biBjb2xvciB5IGFkZW3DoXMgZGViZW1vcyBwb2RlciBhc29jaWFyIGRpc3RpbnRvcyBlc3RpbG9zIGFsIGVsZW1lbnRvIGNvbW8gdW4gaWNvbm8gZGUgZXZlbnRvIGRlIGNhbGVuZGFyaW8gcGFyYSBxdWUgc2Ugc2VwYSBxdWUgaGF5IGFsZ28pXG4vLy8gQHR5cGUgYm9vbFxuJGNhbGVuZGFyLWV2ZW50LWVuY2lyY2xlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEljb25vIHBhcmEgdW4gZGlhIGVuIGVsIHF1ZSBvY3VycmEgdW4gZXZlbnRvIGVuIGVsIGNhbGVuZGFyaW8gKEVsIGTDrWEgZGVsIGV2ZW50byBwdWVkZSBjb21wb3J0YXJzZSBpZ3VhbCwgdGVuZXIgdW4gY29sb3IgZGUgZm9uZG8gdGVuZXIgdW4gY2lyY3VsbywgdW4gY29sb3IgeSBhZGVtw6FzIGRlYmVtb3MgcG9kZXIgYXNvY2lhciBkaXN0aW50b3MgZXN0aWxvcyBhbCBlbGVtZW50byBjb21vIHVuIGljb25vIGRlIGV2ZW50byBkZSBjYWxlbmRhcmlvIHBhcmEgcXVlIHNlIHNlcGEgcXVlIGhheSBhbGdvKVxuJGNhbGVuZGFyLWV2ZW50LWljb246IEZvbnRBd2Vzb21lICdcXGYyNzQnICRmb250LXNpemUtc21hbGxlciAhZGVmYXVsdDtcblxuLy8gT3BhY2lkYWQgZGUgbG9zIGRpYXMgcXVlIG5vIHNvbiBkZWwgbWVzIChMb3MgZMOtYXMgcXVlIG5vIHNvbiBkZWwgbWVzIHRpZW5lbiB1bmEgb3BhY2lkYWQgZGV0ZXJtaW5hZGEpXG4kY2FsZW5kYXItb3RoZXJkYXlzLW9wYWNpdGl5OiAwLjUgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZSBpbnRlcm5vIGRlIGxhcyBjb2x1bW5hcyBkZWwgY2FsZW5kYXJpb1xuLy8vIEB0eXBlIGJvb2xcbiRjYWxlbmRhci1jZWxscy1pbm5lci1ib3JkZXI6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZSBleHRlcmlvciBkZWwgY2FsZW5kYXJpbyBcbi8vLyBAdHlwZSBib29sXG4kY2FsZW5kYXItb3V0ZXItYm9yZGVyOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZSBsYSBjYWJlY2VyYSBkZWwgY2FsZW5kYXJpb1xuLy8vIEB0eXBlIENvbG9yXG4kY2FsZW5kYXItaGVhZGVyLWJnY29sb3I6ICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGJvcmRlIGRlbCBjYWxlbmRhcmlvXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxlbmRhci1ib3JkZXItY29sb3I6ICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIGJvcmRlIHJhZGlvdXMgZGVsIGNhbGVuZGFyaW9cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxlbmRhci1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgYmFzZSBkZWwgY2FsZW5kYXJpb1xuLy8vIEB0eXBlIE51bWJlclxuJGNhbGVuZGFyLWZvbnQtc2l6ZS1iYXNlOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgdG9wIGRlIHVuIGRpYSBkZSBjYWxlbmRhcmlvIGNvbiBldmVudG9cbiRjYWxlbmRhci1pbmV2ZW50LWJvcmRlci10b3A6IDFweCBzb2xpZCAkY2FsZW5kYXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gSWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjYWxlbmRhcmlvIGNvbiBldmVudG9cbi8vLyBAdHlwZSBTdHJpbmdcbiRjYWxlbmRhci1pbmV2ZW50LWJsb2NrLWl0ZW0taWNvbjogJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0taWNvbiAhZGVmYXVsdDtcblxuLy8vIEZ1ZW50ZSBkZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjYWxlbmRhcmlvIGNvbiBldmVudG9cbi8vLyBAdHlwZSBTdHJpbmdcbiRjYWxlbmRhci1pbmV2ZW50LWJsb2NrLWl0ZW0taWNvbi1mb250OiAkc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLWZvbnQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBpY29ub3MgZGUgbG9zIGl0ZW1zIGRlbCBjYWxlbmRhcmlvIGNvbiBldmVudG9cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGVuZGFyLWluZXZlbnQtYmxvY2staXRlbS1pY29uLWNvbG9yOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1pY29uLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjYWxlbmRhcmlvIGNvbiBldmVudG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxlbmRhci1pbmV2ZW50LWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlIGxvcyBkaWFzIGRlIGNhbGVuZGFyaW8gY29uIGV2ZW50b1xuLy8vIEB0eXBlIE51bWJlclxuJGNhbGVuZGFyLWluZXZlbnQtYmxvY2stZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsZXIgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGRpbWVuc2lvbmVzIGRlbCBjdWJvIGRpdmlkaWVuZG8gZW50cmUgbGEgbnViZSBkZSBldGlxdWV0YXMgeSBsb3MgZGF0b3MgZsOtc2ljb3MgYXNvY2lhZG9zXG4kb2xhcGNhbGVuZGFyLWNsb3VkLXNpemU6ICgneHMnOjEyLCdzbSc6MiwnbWQnOjMsJ2xnJzoyKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHBvciBkZWZlY3RvIGRlIGxvcyBjb21wb25lbnRlcyBkZSBiYW5uZXJzIGN1YW5kbyBzZSBoYWNlIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3JcbiRiYW5uZXItY29sb3ItaG92ZXI6ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy8gT3BjaW9uZXMgcGFyYSBlbCBib3TDs24gZGUgbW9zdHJhciBtYXMgZGUgdW4gYmFubmVyOlxuLy8vIFxuLy8vICAgICB0ZXh0LWNvbG9yOiAgICAgICAgIEVsIGNvbG9yIGRlIGxhIGZ1ZW50ZSBkZWwgYm90w7NuXG4vLy8gICAgIGJnLWNvbG9yOiAgICAgICAgICAgRWwgY29sb3IgZGUgZm9uZG8gZGVsIGJvdMOzblxuLy8vICAgICBmb250LXNpemU6ICAgICAgICAgIEVsIHRhbWHDsW8gZGUgbGV0cmEgYmFzZSBkZWwgYm90w7NuXG4vLy8gICAgIGJvcmRlci1yYWRpdXM6ICAgICAgRWwgcmVkb25kZW8gZGVsIGNvbnRvcm5vIGRlbCBib3TDs25cbi8vLyAgICAgaWNvbi1jb250ZW50OiAgICAgICBFbCBpY29ubyBxdWUgc2UgdmEgYSB1c2FyIGFzb2NpYWRvIGFsIGJvdMOzblxuLy8vICAgICBpY29uLWZvbnQtZmFtaWx5OiAgIEVsIHRpcG8gZGUgZmFtaWxpYSBkZWwgaWNvbm8gYXNvY2lhZG8gYWwgYm90w7NuXG4vLy8gICAgIGljb24tcG9zaXRpb246ICAgICAgTGEgcG9zaWNpw7NuIGRvbmRlIHNlIHBpbnRhcmEgZWwgaWNvbm8gKGFmdGVyIG8gYmVmb3JlKVxuLy8vICAgICBcbi8vLyBAdHlwZSBNYXAgICAgIFxuJGJhbm5lci1zaG93bW9yZS1idXR0b246IChcbiAgICB0ZXh0LWNvbG9yOiAkYnRuLXByaW1hcnktY29sb3IsXG4gICAgYmctY29sb3I6ICRicmFuZC1wcmltYXJ5LFxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlLFxuICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlLFxuICAgIGljb24tY29udGVudDogJ1xcZjA1NCcsXG4gICAgaWNvbi1mb250LWZhbWlseTogRm9udEF3ZXNvbWUsXG4gICAgaWNvbi1wb3NpdGlvbjogJ3JpZ2h0J1xuKSAhZGVmYXVsdDtcblxuLy8vIEFuY2hvIHBvciBkZWZlY3RvIGRlIGxhIGltYWdlbiBjb24gdGV4dG8gZGVsIGJhbm5lclxuLy8vIEB0eXBlIE51bWJlclxuJGJhbm5lci13aXRoLXRleHQtZGVmYXVsdC1pbWFnZS13aWR0aDogNTAlICFkZWZhdWx0O1xuXG4vLy8gQWx0dXJhIHBvciBkZWZlY3RvIGRlIGxvcyBjb21wb25lbnRlcyBkZSBiYW5uZXJcbi8vLyBAdHlwZSBOdW1iZXJcbiRiYW5uZXItYmVsb3ctZGVmYXVsdC1oZWlnaHQ6IDEzMHB4ICFkZWZhdWx0O1xuXG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGJhc2UgZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJHJlc291cmNlcy1ibG9jay1mb250LXNpemUtYmFzZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgY29tcG9uZW50ZSBkZSByZWN1cnNvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXNvdXJjZXMtYmxvY2stYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnZW4gZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJHJlc291cmNlcy1ibG9jay1tYXJnaW46ICRibG9jay1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBjb21wb25lbnRlIGRlIHJlY3Vyc29zIGRlbCBjb250ZW5pZG9cbiRyZXNvdXJjZXMtYmxvY2stcGFkZGluZzogJGJsb2NrLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIHTDrXR1bG8gZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIENvbG9yXG4kcmVzb3VyY2VzLWJsb2NrLXRpdGxlLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgaXRlbSBkZWwgY29tcG9uZW50ZSBkZSByZWN1cnNvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXNvdXJjZXMtYmxvY2staXRlbS1jb2xvcjogJHByb3hpYS1saW5rcy1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGl0ZW0gZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkbyBjdWFuZG8gc2UgaGFjZSBob3ZlclxuJHJlc291cmNlcy1ibG9jay1pdGVtLWNvbG9yLWhvdmVyOiAkcHJveGlhLWxpbmtzLWNvbG9yLWhvdmVyICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHRvcCBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkb1xuJHJlc291cmNlcy1ibG9jay1pdGVtLWJvcmRlci10b3A6IDBweCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIHJlY3Vyc29zIGRlbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNvdXJjZXMtYmxvY2staXRlbS1wYWRkaW5nOiAkc3ViY29udGVudHMtYmxvY2stcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIE1hcmdlbiBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgcmVjdXJzb3MgZGVsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJHJlc291cmNlcy1ibG9jay1pdGVtLW1hcmdpbjogJHN1YmNvbnRlbnRzLWJsb2NrLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSByZWN1cnNvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kcmVzb3VyY2VzLWJsb2NrLWl0ZW0taWNvbjogJycgIWRlZmF1bHQ7XG5cbi8vLyBGdWVudGUgZGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSByZWN1cnNvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kcmVzb3VyY2VzLWJsb2NrLWl0ZW0taWNvbi1mb250OiAkY29udGVudExpc3RJY29uRm9udEZhbWlseSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGljb25vIGRlbCBjb21wb25lbnRlIGRlIHJlY3Vyc29zIGRlbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJHJlc291cmNlcy1ibG9jay1pdGVtLWljb24tY29sb3I6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSByZWN1cnNvcyBkZWwgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzb3VyY2VzLWJsb2NrLWl0ZW0taWNvbi1wYWRkaW5nOiAwcHggIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGJhc2UgZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRyZWxhdGVkLWJsb2NrLWZvbnQtc2l6ZS1iYXNlOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBjb21wb25lbnRlIGRlIGNvbnRlbmlkb3MgcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRyZWxhdGVkLWJsb2NrLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2VuIGRlbCBjb21wb25lbnRlIGRlIGNvbnRlbmlkb3MgcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVsYXRlZC1ibG9jay1tYXJnaW46ICRibG9jay1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBjb21wb25lbnRlIGRlIGNvbnRlbmlkb3MgcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVsYXRlZC1ibG9jay1wYWRkaW5nOiAkYmxvY2stcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgdMOtdHVsbyBkZWwgY29tcG9uZW50ZSBkZSBjb250ZW5pZG9zIHJlbGFjaW9uYWRvc1xuLy8vIEB0eXBlIENvbG9yXG4kcmVsYXRlZC1ibG9jay10aXRsZS1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGl0ZW0gZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBDb2xvclxuJHJlbGF0ZWQtYmxvY2staXRlbS1jb2xvcjogJHByb3hpYS1saW5rcy1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGl0ZW0gZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3MgY3VhbmRvIHNlIGhhY2UgaG92ZXJcbi8vLyBAdHlwZSBDb2xvclxuJHJlbGF0ZWQtYmxvY2staXRlbS1jb2xvci1ob3ZlcjogJHByb3hpYS1saW5rcy1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB0b3AgZGVsIGl0ZW0gZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3NcbiRyZWxhdGVkLWJsb2NrLWl0ZW0tYm9yZGVyLXRvcDogMHB4ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRyZWxhdGVkLWJsb2NrLWl0ZW0tcGFkZGluZzogJHN1YmNvbnRlbnRzLWJsb2NrLWl0ZW0tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIE1hcmdlbiBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBOdW1iZXJcbiRyZWxhdGVkLWJsb2NrLWl0ZW0tbWFyZ2luOiAkc3ViY29udGVudHMtYmxvY2staXRlbS1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBJY29ubyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBTdHJpbmdcbiRyZWxhdGVkLWJsb2NrLWl0ZW0taWNvbjogJz4nICFkZWZhdWx0O1xuXG4vLy8gRnVlbnRlIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGUgY29udGVuaWRvcyByZWxhY2lvbmFkb3Ncbi8vLyBAdHlwZSBTdHJpbmdcbiRyZWxhdGVkLWJsb2NrLWl0ZW0taWNvbi1mb250OiAkY29udGVudExpc3RJY29uRm9udEZhbWlseSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlbCBjb21wb25lbnRlIGRlIGNvbnRlbmlkb3MgcmVsYWNpb25hZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRyZWxhdGVkLWJsb2NrLWl0ZW0taWNvbi1jb2xvcjogJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGVsIGljb25vIGRlIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBjb250ZW5pZG9zIHJlbGFjaW9uYWRvc1xuLy8vIEB0eXBlIE51bWJlclxuJHJlbGF0ZWQtYmxvY2staXRlbS1pY29uLXBhZGRpbmc6ICRjb250ZW50TGlzdEljb25QYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgbWVudXNcbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtY29sb3I6ICcnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgbWVudXMgY3VhbmRvIHNlIGhhY2UgaG92ZXJcbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtY29sb3ItaG92ZXI6ICRwcm94aWEtbGlua3MtY29sb3ItaG92ZXIgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIGNvbHVtbmFzIGRlIGxvcyBzdWJtZW51c1xuLy8vIEB0eXBlIE51bWJlclxuJHN1Ym1lbnUtY29sczogMiAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIGxvcyBzdWJtZW51c1xuLy8vIEB0eXBlIFN0cmluZ1xuJHN1Ym1lbnUtaWNvbjogJz4nICFkZWZhdWx0O1xuXG4vLy8gRnVlbnRlIGRlbCBpY29ubyBkZSBsb3Mgc3VibWVudXNcbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJtZW51LWljb24tZm9udDogJycgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGljb25vIGRlIGxvcyBzdWJtZW51c1xuLy8vIEB0eXBlIFN0cmluZ1xuJHN1Ym1lbnUtaWNvbi1jb2xvcjogJycgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBpY29ubyBkZSBsb3Mgc3VibWVudXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJtZW51LWljb24tcGFkZGluZzogJGhhbGZHdXR0ZXIgIWRlZmF1bHQ7XG5cblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIHTDrXR1bG8gZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgQ29sb3JcbiRhYnN0cmFjdC1ibG9jay10aXRsZS1jb2xvcjogJHByb3hpYS1saW5rcy1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIHTDrXR1bG8gZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvIGN1YW5kbyBzZSBoYWNlIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3JcbiRhYnN0cmFjdC1ibG9jay10aXRsZS1jb2xvci1ob3ZlcjogJHByb3hpYS1saW5rcy1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIHTDrXR1bG8gZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWJzdHJhY3QtYmxvY2stdGl0bGUtc2l6ZTogJGZvbnQtc2l6ZS1oMSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGVsIHTDrXR1bG8gZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWJzdHJhY3QtYmxvY2stdGl0bGUtcGFkZGluZzogMHB4ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2VuIGRlbCB0w610dWxvIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJGFic3RyYWN0LWJsb2NrLXRpdGxlLW1hcmdpbjogMHB4ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZWwgdMOtdHVsbyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGFic3RyYWN0LWJsb2NrLXRpdGxlLWJnY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1pdGVtLXRpdGxlLXNpemU6ICRmb250LXNpemUtbGFyZ2UgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIGxpbmVhcyBkZWwgdMOtdHVsbyBkZSBsb3Mgc3ViY29udGVuaWRvIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLWl0ZW0tdGl0bGUtbGluZXM6IDMgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnZW4gZGVsIGNvbnRlbmlkbyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1pdGVtLWNvbnRlbnQtbWFyZ2luOiAkaGFsZkd1dHRlciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGVsIGNvbnRlbmlkbyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1pdGVtLWNvbnRlbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBsaW5lYXMgZGVsIGNvbnRlbmlkbyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1pdGVtLWNvbnRlbnQtbGluZXM6IDYgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBcIk1hcyBpbmZvXCIgZGUgbG9zIHN1YmNvdGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1tb3JlaW5mby1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBcIk1hcyBpbmZvXCIgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgQ29sb3JcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1tb3JlaW5mby1jb2xvcjogJGFic3RyYWN0LWJsb2NrLXRpdGxlLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgXCJNYXMgaW5mb1wiIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkbyBjdWFuZG8gc2UgaGFjZSBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtbW9yZWluZm8tY29sb3ItaG92ZXI6ICRhYnN0cmFjdC1ibG9jay10aXRsZS1jb2xvci1ob3ZlciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gZGVsIFwiTWFzIGluZm9cIiBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLW1vcmVpbmZvLWJnY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZWwgXCJNYXMgaW5mb1wiIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLW1vcmVpbmZvLXBhZGRpbmc6IDBweCAhZGVmYXVsdDtcblxuLy8vIE1hcmdlbiBkZWwgXCJNYXMgaW5mb1wiIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIE51bWJlclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLW1vcmVpbmZvLW1hcmdpbjogJGhhbGZHdXR0ZXIgMCAwIDAgIWRlZmF1bHQ7XG5cbi8vLyBJY29ubyBkZSBcIk1hcyBpbmZvXCIgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtbW9yZWluZm8taWNvbi1jb250ZW50OiAnXFxmMDU0JyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGRlbCBpY29ubyBkZSBcIk1hcyBpbmZvXCIgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtbW9yZWluZm8taWNvbi1mb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpY2nDs24gZGVsIGljb25vIGRlIFwiTWFzIGluZm9cIiAgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtbW9yZWluZm8taWNvbi1wb3NpdGlvbjogJ3JpZ2h0JyAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtcGFkZGluZzogMHB4ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2VuIGRlIGxvcyBpdGVtcyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBOdW1iZXJcbiRhYnN0cmFjdC1ibG9jay1zdWJjb250ZW50cy1pdGVtLW1hcmdpbjogMHB4ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBkZSBsb3MgaXRlbXMgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1wYWRkaW5nOiAwcHggIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBpdGVtcyBkZSBsb3Mgc3ViY29udGVuaWRvcyBkZWwgY29tcG9uZW50ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLWl0ZW0tY29sb3I6ICRhYnN0cmFjdC1ibG9jay10aXRsZS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGUgbG9zIGl0ZW1zIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkbyBjdWFuZG8gc2UgaGFjZSBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1jb2xvci1ob3ZlcjogJGFic3RyYWN0LWJsb2NrLXRpdGxlLWNvbG9yLWhvdmVyICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHRvcCBkZSBsb3MgaXRlbXMgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1ib3JkZXItdG9wOiAwcHggIWRlZmF1bHQ7XG5cbi8vLyBJY29ubyBkZSBsb3MgaXRlbXMgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1pY29uOiAnJyAhZGVmYXVsdDtcblxuLy8vIEZ1ZW50ZSBkZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIFN0cmluZ1xuJGFic3RyYWN0LWJsb2NrLXN1YmNvbnRlbnRzLWl0ZW0taWNvbi1mb250OiAnJyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgaWNvbm8gZGUgbG9zIGl0ZW1zIGRlIGxvcyBzdWJjb250ZW5pZG9zIGRlbCBjb21wb25lbnRlIGRlIGVubGFjZSBhIGNvbnRlbmlkb1xuLy8vIEB0eXBlIENvbG9yXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1pY29uLWNvbG9yOiAkYWJzdHJhY3QtYmxvY2stdGl0bGUtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGUgbG9zIHN1YmNvbnRlbmlkb3MgZGVsIGNvbXBvbmVudGUgZGUgZW5sYWNlIGEgY29udGVuaWRvXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWJzdHJhY3QtYmxvY2stc3ViY29udGVudHMtaXRlbS1pY29uLXBhZGRpbmc6ICRjb250ZW50TGlzdEljb25QYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gVmFyaWFibGUgcGFyYSBpbmRpY2FyIHNpIHNlIG11ZXN0cmFuIGxvcyBpY29ub3MgZGUgZGlyZWNjaW9uIG8gbm9cbi8vLyBAdHlwZSBib29sXG4kYWRkcmVzcy1zaG93LWljb25zOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRnVlbnRlIGRlbCBpY29ubyBkZSBkaXJlY2Npw7NuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWRkcmVzcy1pY29uLWZvbnQ6ICdGb250QXdlc29tZScgIWRlZmF1bHQ7XG5cbi8vLyBJY29ubyBkZSBlbWFpbCBhbCBpbmRpY2FyIGRhdG9zIGRlIGRpcmVjY2nDs25cbi8vLyBAdHlwZSBTdHJpbmdcbiRhZGRyZXNzLWljb24tZW1haWw6ICdcXGYwZTAnICFkZWZhdWx0O1xuXG4vLy8gSWNvbm8gZGUgd2ViIGFsIGluZGljYXIgZGF0b3MgZGUgZGlyZWNjacOzblxuLy8vIEB0eXBlIFN0cmluZ1xuJGFkZHJlc3MtaWNvbi13ZWI6ICdcXGYwYzEnICFkZWZhdWx0O1xuXG4vLy8gSWNvbm8gZGUgdGVsZWZvbm8gYWwgaW5kaWNhciBkYXRvcyBkZSBkaXJlY2Npw7NuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWRkcmVzcy1pY29uLXBob25lOiAnXFxmMDk1JyAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIGZheCBhbCBpbmRpY2FyIGRhdG9zIGRlIGRpcmVjY2nDs25cbi8vLyBAdHlwZSBTdHJpbmdcbiRhZGRyZXNzLWljb24tZmF4OiAnXFxmMWFjJyAhZGVmYXVsdDtcblxuLy8vIEljb25vIGRlIG1vdmlsIGFsIGluZGljYXIgZGF0b3MgZGUgZGlyZWNjacOzblxuLy8vIEB0eXBlIFN0cmluZ1xuJGFkZHJlc3MtaWNvbi1tb2JpbGU6ICdcXGYxMGInICFkZWZhdWx0O1xuXG4vLy8gQWx0dXJhIGRlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1oZWlnaHQ6IDQwMHB4ICFkZWZhdWx0O1xuXG4vLy8gTGEgZm9ybWEgZW4gbGEgcXVlIGFwYXJlY2VuIGxhcyBvcGNpb25lcyBlbiBtb2RvIGVtYmViaWRvIGRlbCBjb21wb25lbnRlIGRlIG1hcGFzIChzZSBlc3BlY2lmaWNhXG4vLy8gdW4gbWFwYSBpbmRleGFkbyBwb3IgbGEgcmVzb2x1Y2nDs24gKHhzLCBzbSwgbWQsIGxnKSB5IHBhcmEgY2FkYSB1bm8gXG4vLy8gdW4gcGFyIGVsIHByaW1lcm8gZWwgdGFtYcOxbyBkZWwgYmxvcXVlIGRlIG1hcGEgeSBlbCBzZWd1bmRvIGRlIG9wY2lvbmVzKS5cbi8vLyBcbi8vLyAgICAgeHM6IERpc3Bvc2l0aXZvcyBleHRyYSBwZXF1ZcOxb3MgIChUZWxlZm9ubyk7XG4vLy8gICAgIHNtOiBEaXNwb3NpdGl2b3MgcGVxdWXDsW9zIChUYWJsZXRzKTtcbi8vLyAgICAgbWQ6IERpc3Bvc2l0aXZvcyBtZWRpb3MgKE1vbml0b3Jlcyk7XG4vLy8gICAgIGxnOiBEaXNwb3NpdGl2b3MgZ3JhbmRlcyAoTW9uaXRvcmVzID4gMTIwMHB4KTtcbi8vLyAgICAgXG4vLy8gQHR5cGUgTWFwXG4kbWFwcy1vcHRpb25zLWRpc3Bvc2l0aW9uOiAoJ3hzJzogKDEyLDEyKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc20nOiAoMTIsMTIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtZCc6ICg2LDYpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZyc6ICg4LDQpKSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIHTDrXR1bG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlciBcbiRtYXBzLWluZm93aW5kb3ctdGl0bGUtZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgY3VlcnBvIGRlIGxhIHZlbnRhbmEgZGUgaW5mb3JtYWNpw7NuIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemU6ICRmb250LXNpemUtc21hbGxlciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgdGV4dG8gZGVsIGN1ZXJwbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgQ29sb3JcbiRtYXBzLWluZm93aW5kb3ctYm9keS10ZXh0LWNvbG9yOiAkdGV4dC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGUgbG9zIGVubGFjZXMgZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJG1hcHMtaW5mb3dpbmRvdy1saW5rLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGUgbGEgbGV5ZW5kYSBkZWwgYnVzY2Fkb3IgZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJG1hcHMtc2VhcmNoZXItbGVnZW5kLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLXNlYXJjaGVyLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcblxuLy8vIFZhcmlhYmxlIHF1ZSBpbmRpY2Egc2kgZWwgZmllbGRzZXQgZGVsIGJ1c2NhZG9yIHRpZW5lIGJvcmRlIG8gbm9cbi8vLyBAdHlwZSBib29sXG4kbWFwcy1zZWFyY2hlci1maWVsZHNldC1oYXMtYm9yZGVyOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFZhcmlhYmxlIHF1ZSBpbmRpY2Egc2kgbGEgbGV5ZW5kYSBkZWwgYnVzY2Fkb3IgdGllbmUgYm9yZGUgbyBub1xuLy8vIEB0eXBlIGJvb2xcbiRtYXBzLXNlYXJjaGVyLWxlZ2VuZC1oYXMtYm9yZGVyOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3JkZSBkZWwgYnVzY2Fkb3IgZW4gZWwgY29tcG9uZW50ZSBkZSBtYXBhc1xuLy8vIEB0eXBlIENvbG9yXG4kbWFwcy1zZWFyY2hlci1ib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBjb2x1bW5hcyBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1zZWFyY2hlci1tYXJrZXItY29sdW1uczogMyAhZGVmYXVsdDtcblxuLy8vIE7Dum1lcm8gZGUgcHVudG9zIGRlIHJ1cHR1cmEgZGVsIG1hcmtlciBkZWwgYnVzY2Fkb3IgZGVwZW5kaWVuZG8gZGUgbGEgcmVzb2x1Y2lvbiBlbiBlbCBjb21wb25lbnRlIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1zZWFyY2hlci1tYXJrZXItYnJlYWtwb2ludHM6ICgneHMnOjEsJ3NtJzoyLCdtZCc6MikgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLXNlYXJjaGVyLW1hcmtlci1mb250LXNpemU6ICRtYXBzLXNlYXJjaGVyLWZvbnQtc2l6ZSAhZGVmYXVsdDsgXG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLXNlYXJjaGVyLWJ1dHRvbi1mb250LXNpemU6ICRmb250LXNpemUtc21hbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBib3TDs24gcG9yIGRlZmVjdG8gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJG1hcHMtc2VhcmNoZXItYnV0dG9uLWRlZmF1bHQtY29sb3JzOiAkZ3JheS1kYXJrICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGNvbXBvbmVudGUgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJG1hcHMtc2VhcmNoZXItYnV0dG9uLWFycml2ZS1jb2xvcnM6ICNmZmZmZmYgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vLyBBbHR1cmEgZGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtaGVpZ2h0OiAkbWFwcy1oZWlnaHQgIWRlZmF1bHQ7XG5cbi8vIExhIGZvcm1hIGVuIGxhIHF1ZSBhcGFyZWNlbiBsYXMgb3BjaW9uZXMgZW4gbW9kbyBlbWJlYmlkbyAoc2UgZXNwZWNpZmljYVxuLy8gdW4gbWFwYSBpbmRleGFkbyBwb3IgbGEgcmVzb2x1Y2nDs24gKHhzLCBzbSwgbWQsIGxnKSB5IHBhcmEgY2FkYSB1bm8gXG4vLyB1biBwYXIgZWwgcHJpbWVybyBlbCB0YW1hw7FvIGRlbCBibG9xdWUgZGUgbWFwYSB5IGVsIHNlZ3VuZG8gZGUgb3BjaW9uZXMpXG4kc2VhcmNoLW1hcHMtb3B0aW9ucy1kaXNwb3NpdGlvbjogJG1hcHMtb3B0aW9ucy1kaXNwb3NpdGlvbiAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGVsIHTDrXR1bG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtaW5mb3dpbmRvdy10aXRsZS1mb250LXNpemU6ICRtYXBzLWluZm93aW5kb3ctdGl0bGUtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZWwgY3VlcnBvIGRlIGxhIHZlbnRhbmEgZGUgaW5mb3JtYWNpw7NuIGRlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemU6ICRtYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIHRleHRvIGRlbCBjdWVycG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWFyY2gtbWFwcy1pbmZvd2luZG93LWJvZHktdGV4dC1jb2xvcjogJG1hcHMtaW5mb3dpbmRvdy1ib2R5LXRleHQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlIGxvcyBlbmxhY2VzIGRlIGxhIHZlbnRhbmEgZGUgaW5mb3JtYWNpw7NuIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtaW5mb3dpbmRvdy1saW5rLWZvbnQtc2l6ZTogJG1hcHMtaW5mb3dpbmRvdy1saW5rLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGUgbGEgbGV5ZW5kYSBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1sZWdlbmQtZm9udC1zaXplOiAkbWFwcy1zZWFyY2hlci1sZWdlbmQtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1mb250LXNpemU6ICRtYXBzLXNlYXJjaGVyLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFZhcmlhYmxlIHF1ZSBpbmRpY2Egc2kgZWwgZmllbGRzZXQgZGVsIGJ1c2NhZG9yIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzIHRpZW5lIGJvcmRlIG8gbm9cbi8vLyBAdHlwZSBib29sXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItZmllbGRzZXQtaGFzLWJvcmRlcjogJG1hcHMtc2VhcmNoZXItZmllbGRzZXQtaGFzLWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFZhcmlhYmxlIHF1ZSBpbmRpY2Egc2kgbGEgbGV5ZW5kYSBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXMgdGllbmUgYm9yZGUgbyBub1xuLy8vIEB0eXBlIGJvb2xcbiRzZWFyY2gtbWFwcy1zZWFyY2hlci1sZWdlbmQtaGFzLWJvcmRlcjogJG1hcHMtc2VhcmNoZXItbGVnZW5kLWhhcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGJvcmRlIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIENvbG9yIFxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWJvcmRlci1jb2xvcjogJG1hcHMtc2VhcmNoZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBjb2x1bW5hcyBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLW1hcmtlci1jb2x1bW5zOiAkbWFwcy1zZWFyY2hlci1tYXJrZXItY29sdW1ucyAhZGVmYXVsdDtcblxuLy8vIFB1bnRvcyBkZSBydXB0dXJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGRlcGVuZGllbmRvIGRlIGxhIHJlc29sdWNpw7NuIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItbWFya2VyLWJyZWFrcG9pbnRzOiAkbWFwcy1zZWFyY2hlci1tYXJrZXItYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItbWFya2VyLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItbWFya2VyLWZvbnQtc2l6ZSAhZGVmYXVsdDsgXG5cbi8vLyBUYW1hw7FvIGRlIGxhIGxldHJhIGRlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGVsIGJ1c2NhZG9yIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGJvdMOzbiBwb3IgZGVmZWN0byBkZWwgYnVzY2Fkb3IgZW4gZWwgYnVzY2Fkb3IgZGUgbWFwYXNcbi8vLyBAdHlwZSBDb2xvclxuJHNlYXJjaC1tYXBzLXNlYXJjaGVyLWJ1dHRvbi1kZWZhdWx0LWNvbG9yczogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWRlZmF1bHQtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgYm90w7NuIHBvciBkZWZlY3RvIGRlbCBidXNjYWRvciBlbiBlbCBidXNjYWRvciBkZSBtYXBhc1xuLy8vIEB0eXBlIENvbG9yXG4kc2VhcmNoLW1hcHMtc2VhcmNoZXItYnV0dG9uLWFycml2ZS1jb2xvcnM6ICRtYXBzLXNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZWwgdMOtdHVsbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZSBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBOdW1iZXJcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctdGl0bGUtZm9udC1zaXplOiAkbWFwcy1pbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGN1ZXJwbyBkZSBsYSB2ZW50YW5hIGRlIGluZm9ybWFjacOzbiBkZSBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBOdW1iZXJcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemU6ICRtYXBzLWluZm93aW5kb3ctYm9keS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIHRleHRvIGRlbCBjdWVycG8gZGUgbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGUgbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgQ29sb3JcbiRwb3B1cC1tYXBzLWluZm93aW5kb3ctYm9keS10ZXh0LWNvbG9yOiAkbWFwcy1pbmZvd2luZG93LWJvZHktdGV4dC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGUgbG9zIGVubGFjZXMgZW4gbGEgdmVudGFuYSBkZSBpbmZvcm1hY2nDs24gZGUgbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgTnVtYmVyXG4kcG9wdXAtbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplOiAkbWFwcy1pbmZvd2luZG93LWxpbmstZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZSBsYSBsZXllbmRhIGRlbCBidXNjYWRvciBlbiBsbyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItbGVnZW5kLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItbGVnZW5kLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGV0cmEgZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItZm9udC1zaXplOiAkbWFwcy1zZWFyY2hlci1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBWYXJpYWJsZSBxdWUgaW5kaWNhIHNpIGVsIGZpZWxkc2V0IGRlbCBidXNjYWRvciBlbiBsb3MgbWFwYXMgcG9wdXAgdGllbmUgYm9yZGUgbyBub1xuLy8vIEB0eXBlIGJvb2xcbiRwb3B1cC1tYXBzLXNlYXJjaGVyLWZpZWxkc2V0LWhhcy1ib3JkZXI6ICRtYXBzLXNlYXJjaGVyLWZpZWxkc2V0LWhhcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBWYXJpYWJsZSBxdWUgaW5kaWNhIHNpIGxhIGxleWVuZGEgZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cCB0aWVuZSBib3JkZSBvIG5vXG4vLy8gQHR5cGUgYm9vbFxuJHBvcHVwLW1hcHMtc2VhcmNoZXItbGVnZW5kLWhhcy1ib3JkZXI6ICRtYXBzLXNlYXJjaGVyLWxlZ2VuZC1oYXMtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBib3JkZSBkZWwgYnVzY2Fkb3IgZW4gbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgQ29sb3JcbiRwb3B1cC1tYXBzLXNlYXJjaGVyLWJvcmRlci1jb2xvcjogJG1hcHMtc2VhcmNoZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBjb2x1bW5hcyBkZWwgbWFya2VyIGRlbCBidXNjYWRvciBlbiBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBOdW1iZXIgXG4kcG9wdXAtbWFwcy1zZWFyY2hlci1tYXJrZXItY29sdW1uczogJG1hcHMtc2VhcmNoZXItbWFya2VyLWNvbHVtbnMgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIHB1bnRvcyBkZSBydXB0dXJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItbWFya2VyLWJyZWFrcG9pbnRzOiAkbWFwcy1zZWFyY2hlci1tYXJrZXItYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBtYXJrZXIgZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItbWFya2VyLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItbWFya2VyLWZvbnQtc2l6ZSAhZGVmYXVsdDsgXG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBib3TDs24gZGVsIGJ1c2NhZG9yIGVuIGxvcyBtYXBhcyBwb3B1cFxuLy8vIEB0eXBlIE51bWJlclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZTogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGVsIGJvdMOzbiBwb3IgZGVmZWN0byBkZWwgYnVzY2Fkb3IgZW4gbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgQ29sb3JcbiRwb3B1cC1tYXBzLXNlYXJjaGVyLWJ1dHRvbi1kZWZhdWx0LWNvbG9yczogJG1hcHMtc2VhcmNoZXItYnV0dG9uLWRlZmF1bHQtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgYm90w7NuIGRlbCBidXNjYWRvciBlbiBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBDb2xvclxuJHBvcHVwLW1hcHMtc2VhcmNoZXItYnV0dG9uLWFycml2ZS1jb2xvcnM6ICRtYXBzLXNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZSBsb3MgbWFwYXMgcG9wdXBcbi8vLyBAdHlwZSBDb2xvclxuJHBvcHVwLW1hcHMtYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgbGEgbGV0cmEgZGUgbG9zIG1hcGFzIHBvcHVwXG4vLy8gQHR5cGUgQ29sb3JcbiRwb3B1cC1tYXBzLXRleHQtY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZSBsb3Mgc3RhdGUgZGUgbGEgbGlzdGEgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLWxpc3Qtc3RhdGUtZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsZXRyYSBkZSBsYSBjYXRlZ29yaWEgZGUgbGEgbGlzdGEgZGUgbWFwYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRtYXBzLWxpc3QtY2F0ZWdvcnktZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsZXIgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGxldHJhIGRlbCBpdGVtIGRlIGxhIGxpc3RhIGRlIG1hcGFzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFwcy1saXN0LWl0ZW0tZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIGNvbHVtbmFzIGRlbCBuaXZlbCAxIGRlbCBzaXRlbWFwXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXNpdGVtYXAtbGV2ZWwxLWNvbHVtbnM6IDEgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIHB1bnRvcyBkZSBydXB0dXJhIGRlbCBuaXZlbCAxIGRlbCBzaXRlbWFwXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXNpdGVtYXAtbGV2ZWwxLWNvbHVtbnMtYnJlYWtwb2ludHM6ICgneHMnOjEpICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBjb2x1bW5hcyBkZWwgbml2ZWwgMiBkZWwgc2l0ZW1hcFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1zaXRlbWFwLWxldmVsMi1jb2x1bW5zOiAyICFkZWZhdWx0O1xuXG4vLy8gTsO6bWVybyBkZSBwdW50b3MgZGUgcnVwdHVyYSBkZWwgbml2ZWwgMiBkZWwgc2l0ZW1hcFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1zaXRlbWFwLWxldmVsMi1jb2x1bW5zLWJyZWFrcG9pbnRzOiAoJ3hzJzoxKSAhZGVmYXVsdDtcblxuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgdGV4dG8gYWwgZW5mYXRpemFyIGVsIHJlc3VsdGFkbyBkZSB1bmEgYsO6c3F1ZWRhIGRlIHVuIHTDqXJtaW5vIHF1ZSBleGlzdGVcbi8vLyBAdHlwZSBDb2xvclxuJGhpZ2hsaWdodGVkLXRleHQtY29sb3I6IHllbGxvdyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzYWRvIHBhcmEgZWwgZm9uZG8gYWwgZW5mYXRpemFyIGVsIHJlc3VsdGFkbyBkZSB1bmEgYsO6c3F1ZWRhIGRlIHVuIHTDqXJtaW5vIHF1ZSBleGlzdGVcbi8vLyBAdHlwZSBDb2xvclxuJGhpZ2hsaWdodGVkLWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgZW5sYWNlIHF1ZSBzYWx0YSBhbCBjb250ZW5pZG9cbi8vLyBAdHlwZSBDb2xvclxuJGp1bXB0b2NvbnRlbnQtdGV4dC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGVsIGZvbmRvIGRlbCBlbmxhY2UgcXVlIHNhbHRhIGFsIGNvbnRlbmlkb1xuLy8vIEB0eXBlIENvbG9yXG4kanVtcHRvY29udGVudC1iYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3cgIWRlZmF1bHQ7XG5cbi8vLyBOw7ptZXJvIGRlIGNvbHVtbmFzIHBvciBkZWZlY3RvIHBhcmEgbGEgZ2FsZXLDrWEgZGUgaW1hZ2VuZXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRpbWFnZS1nYWxsZXJ5LWNvbHVtbnMtZGVmYXVsdDogNCAhZGVmYXVsdDtcblxuLy8vIE7Dum1lcm8gZGUgY29sdW1uYXMgZGVwZW5kaWVuZG8gZGUgbGEgcmVzb2x1Y2nDs24gcGFyYSBsYSBnYWxlcsOtYSBkZSBpbWFnZW5lc1xuLy8vIEB0eXBlIE51bWJlclxuJGltYWdlLWdhbGxlcnktY29sdW1uczogKCd4cyc6MSwnc20nOjMsJ21kJzo0KSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgc2VwYXJhY2nDs24gZW50cmUgbG9zIGNvbXBvbmVudGVzIGVuIGxhIGdhbGVyw61hIGRlIGltYWdlbmVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW1hZ2UtZ2FsbGVyeS1ndXR0ZXI6ICRoYWxmR3V0dGVyICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZSBsYSBsZXllbmRhIGVuIGxhIGdhbGVyw61hIGRlIGltYWdlbmVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW1hZ2UtZ2FsbGVyeS1sZWdlbmQtZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsb3MgZW5sYWNlcyBkZSBhdXRlbnRpY2FjacOzblxuLy8vIEB0eXBlIE51bWJlclxuJGF1dGgtbGlua3MtY29sb3I6ICRwcm94aWEtbGlua3MtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlIGxvcyBlbmxhY2VzIGRlIGF1dGVudGljYWNpw7NuIGN1YW5kbyBzZSBoYWNlIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3JcbiRhdXRoLWxpbmtzLWNvbG9yLWhvdmVyOiAkcHJveGlhLWxpbmtzLWNvbG9yLWhvdmVyICFkZWZhdWx0O1xuXG4vLy8gVGFtYcOxbyBkZSBsYSBsZXRyYSBkZSBsb3MgZW5sYWNlcyBkZSBhdXRlbnRpY2FjacOzblxuLy8vIEB0eXBlIE51bWJlclxuJGF1dGgtb3B0aW9ucy1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuLy8vIFZhcmlhYmxlIHF1ZSBpbmRpY2Egc2kgc2Ugb2N1bHRhIGVsIHRleHRvIGRlIGxvcyBlbmxhY2VzIGRlIGF1dGVudGljYWNpw7NuIG8gbm9cbi8vLyBAdHlwZSBib29sXG4kYXV0aC1vcHRpb25zLWhpZGUtdGV4dDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgbGEgbGV0cmEgZGVsIG92ZXJsYXkgZGVudHJvIGRlIHVuIGNvbnRlbmVkb3Jcbi8vLyBAdHlwZSBOdW1iZXJcbiRvdmVybGF5LXNpemU6IDE1cHggIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2FkbyBwYXJhIGxhIGxldHJhIGRlbCBvdmVybGF5IGRlbnRybyBkZSB1biBjb250ZW5lZG9yXG4vLy8gQHR5cGUgQ29sb3JcbiRvdmVybGF5LWNvbG9yOiAjYWFhICFkZWZhdWx0O1xuXG4vLy8gQW5jaG8gcGFyYSBsYSBww6FnaW5hIGRlIGVycm9yIHkgbWVuc2FqZVxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2UtZXJyb3Itd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBlbCBmb25kbyBkZSBsYSBww6FnaW5hIGRlIGVycm9yIHkgbWVuc2FqZVxuLy8vIEB0eXBlIENvbG9yXG4kcGFnZS1lcnJvci1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZSBsYSBww6FnaW5hIGRlIGVycm9yIHkgbWVuc2FqZVxuLy8vIEB0eXBlIENvbG9yXG4kcGFnZS1lcnJvci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlIHBhcmEgbGEgbGEgcMOhZ2luYSBkZSBlcnJvciB5IG1lbnNhamVcbiRwYWdlLWVycm9yLWJvcmRlcjogM3B4IHNvbGlkICNjY2MgIWRlZmF1bHQ7XG5cbi8vLyBBbGluZWFjacOzbiBkZWwgdMOtdHVsbyBwYXJhIGxhIHDDoWdpbmEgZGUgZXJyb3IgeSBtZW5zYWplXG4kcGFnZS1lcnJvci10aXRsZS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgc3VidMOtdHVsbyBwYXJhIGxhIHDDoWdpbmEgZGUgZXJyb3IgeSBtZW5zYWplXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdlLWVycm9yLXN1YnRpdGxlLWNvbG9yOiAjODg4ICFkZWZhdWx0O1xuXG4vLy8gQWxpbmVhY2nDs24gZGVsIGNvbnRlbmlkbyBlbiBsYSBww6FnaW5hIGRlIGVycm9yIHkgbWVuc2FqZVxuJHBhZ2UtZXJyb3ItY29udGVudC1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNhZG8gcGFyYSBsYSBsZXRyYSBkZWwgY29udGVuaWRvIGVuIGxhIGxhIHDDoWdpbmEgZGUgZXJyb3IgeSBtZW5zYWplXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdlLWVycm9yLWNvbnRlbnQtY29sb3I6ICM0NDQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBkZSBmb25kbyBwYXJhIGVsIG1lbsO6IGRlIGF1dG9jb21wbGV0YXIgZW4gbGFzIGLDunNxdWVkYXNcbi8vLyBAdHlwZSBDb2xvclxuJHNlYXJjaC1hdXRvY29tcGxldGUtYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGRlIGxldHJhIHBhcmEgZWwgbWVuw7ogZGUgYXV0b2NvbXBsZXRhciBlbiBsYXMgYsO6c3F1ZWRhc1xuLy8vIEB0eXBlIENvbG9yXG4kc2VhcmNoLWF1dG9jb21wbGV0ZS1jb2xvcjogIzdjN2M3YyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlIHBhcmEgZWwgbWVuw7ogZGUgYXV0b2NvbXBsZXRhciBlbiBsYXMgYsO6c3F1ZWRhc1xuLy8vIEB0eXBlIE51bWJlclxuJHNlYXJjaC1hdXRvY29tcGxldGUtYm9yZGVyOiAxcHggc29saWQgI2NjYyAhZGVmYXVsdDtcblxuLy8vIEFuY2hvIG3DrW5pbW8gZGVsIGF1dG9jb21wbGV0YXIgZW4gbGFzIGLDunNxdWVkYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtYXV0b2NvbXBsZXRlLW1pbi13aWR0aDogMTAwcHggIWRlZmF1bHQ7XG5cbi8vLyBBbmNobyBtw6F4aW1vIGRlbCBhdXRvY29tcGxldGFyIGVuIGxhcyBiw7pzcXVlZGFzLiBBcGFydGUgZGUgZXN0bywgZWwgYW5jaG8gbcOheGltbyBzaWVtcHJlIGVzIGhhc3RhIGVsIGJvcmRlIGRlcmVjaG8gZGUgbGEgdmVudGFuYS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtYXV0b2NvbXBsZXRlLW1heC13aWR0aDogNzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBBbHRvIG3DoXhpbW8gZGVsIGF1dG9jb21wbGV0YXIgZW4gbGFzIGLDunNxdWVkYXNcbi8vLyBAdHlwZSBOdW1iZXJcbiRzZWFyY2gtYXV0b2NvbXBsZXRlLW1heC1oZWlnaHQ6IDUwMHB4ICFkZWZhdWx0O1xuXG4iLAoJCSIvLyBDb3B5cmlnaHQgKGMpIDIwMjEuIERpdmlzYSBpVCBTQVVcblxuLyoqXG4gKiBNaXhpbnMgeSB2YXJpYWJsZXMgZGUgY29tcGF0aWJpbGlkYWQgZW50cmUgQlMzIHkgQlM0XG4gKi9cbiRwcmltYXJ5ICAgOiAkYnJhbmQtcHJpbWFyeSAgICFkZWZhdWx0O1xuJHNlY29uZGFyeSA6ICRicmFuZC1zZWNvbmRhcnkgIWRlZmF1bHQ7XG4kaDEtZm9udC1zaXplOiAkZm9udC1zaXplLWgxICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICRmb250LXNpemUtaDMgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAkZm9udC1zaXplLWg0ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICRmb250LXNpemUtaDYgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXhzbTogJGZvbnQtc2l6ZS1zbWFsbGVyICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcbiRmb250LXNpemUteGxnOiAkZm9udC1zaXplLWxhcmdlc3QgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAkZm9udC1zaXplLWxhcmdlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgkcHJpbWFyeSwgLjI1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteTogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICRpbnB1dC1iZy1kaXNhYmxlZCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiA1cHggIWRlZmF1bHQ7XG4kYnMzOiB0cnVlO1xuJGdyYXktMjAwOiAkZ3JheS1saWdodGVyICFkZWZhdWx0OztcbiRncmF5LTMwMDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICRncmF5LWJhc2UgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogJHRleHQtY29sb3IgIWRlZmF1bHQ7XG5cbiR4czogJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG4kc206ICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuJG1kOiAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcbiRsZzogJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG4keGw6ICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLy8gUGFyYSBldml0YXIgcHJvYmxlbWFzIHJhcm9zLCBCUzQgdHJhYmFqYSBjb24gUkVNIGVuIEJTMyBjb24gcHgsIGFzw60gcXVlIHNpbXBsZW1lbnRlIHVuYSBmdW5jacOzbiBwYXJhIGhhY2VyIHVuIGVxdWl2YWxlbnRlXG4vLy8gZW50cmUgYW1ib3Mgc2luIHRlbmVyIHF1ZSByZWVzY3JpYmlyIGVsIHNpc3RlbWEsIHNpbXBsZW1lbnRlIGVuIEJTMyBkZXZvbHZlbW9zIGVsIHZhbG9yIHNvbGljaXRhZG8gc2luIGNvbnZlcnRpcmxvIGEgUkVNXG5AZnVuY3Rpb24gcmVtKCR1bml0KSB7XG4gIEByZXR1cm4gJHVuaXQ7XG59XG5cbkBmdW5jdGlvbiBweCgkdW5pdCkge1xuICBAcmV0dXJuICR1bml0O1xufVxuXG4vLyBNaXhpbiBwYXJhIEBtZWRpYS1icmVha3BvaW50LXVwIHkgQG1lZGlhLWJyZWFrcGludC1kb3duOyBlcyB1bmFcbi8vIGltcGxhbnRhY2nDs24gYmFzdGFudGUgYsOhc2ljYSwgcGVybyBub3MgcGVybWl0ZSBtYW50ZW5lciBjb21wYXRpYmlsaWRhZFxuLy8gZW50cmUgYW1ib3MgZW50b3Jub3MgKGJzMyB5IGJzNClcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCR1bml0KSB7XG4gICRtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluO1xuXG4gIEBpZiAkdW5pdCA9PSB4cyB7XG4gICAgJG1pbi13aWR0aDogJHNjcmVlbi14cy1taW47XG4gIH0gQGVsc2UgaWYgJHVuaXQgPT0gc20ge1xuICAgICRtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluO1xuICB9IEBlbHNlIGlmICR1bml0ID09IG1kIHtcbiAgICAkbWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbjtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4td2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1bml0KSB7XG4gICRtYXgtd2lkdGg6ICRzY3JlZW4tbGctbWluO1xuXG4gIEBpZiAkdW5pdCA9PSB4cyB7XG4gICAgJG1heC13aWR0aDogJHNjcmVlbi14cy1tYXg7XG4gIH0gQGVsc2UgaWYgJHVuaXQgPT0gc20ge1xuICAgICRtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4O1xuICB9IEBlbHNlIGlmICR1bml0ID09IG1kIHtcbiAgICAkbWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBSZXR1cm4gdmFsaWQgY2FsYyAoY29waWFkbyBkZSBCUzQsIHRhbCBjdWFsKVxuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gY29tcGF0U3RyaXBVbml0KCR2YWx1ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSk7XG59XG5cbkBmdW5jdGlvbiBzdW0oJHZhbHVlLi4uKSB7XG4gICRyZXN1bHQ6IFswcHgsMGVtLDByZW0sMCUsMHZoLDB2diwnJ107XG5cbiAgQGVhY2ggJHYgaW4gJHZhbHVlIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2LG50aCgkcmVzdWx0LDEpKSB7XG4gICAgICAkcjogbnRoKCRyZXN1bHQsMSk7XG4gICAgICAkcmVzdWx0OiBzZXQtbnRoKCRyZXN1bHQsMSwkdiskcik7XG4gICAgfVxuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHYsbnRoKCRyZXN1bHQsMikpIHtcbiAgICAgICRyOiBudGgoJHJlc3VsdCwyKTtcbiAgICAgICRyZXN1bHQ6IHNldC1udGgoJHJlc3VsdCwyLCR2KyRyKTtcbiAgICB9XG4gICAgQGlmIHR5cGUtb2YoJHYpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdixudGgoJHJlc3VsdCwzKSkge1xuICAgICAgJHI6IG50aCgkcmVzdWx0LDMpO1xuICAgICAgJHJlc3VsdDogc2V0LW50aCgkcmVzdWx0LDMsJHYrJHIpO1xuICAgIH1cbiAgICBAaWYgdHlwZS1vZigkdikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2LG50aCgkcmVzdWx0LDQpKSB7XG4gICAgICAkcjogbnRoKCRyZXN1bHQsNCk7XG4gICAgICAkcmVzdWx0OiBzZXQtbnRoKCRyZXN1bHQsNCwkdiskcik7XG4gICAgfVxuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHYsbnRoKCRyZXN1bHQsNSkpIHtcbiAgICAgICRyOiBudGgoJHJlc3VsdCw1KTtcbiAgICAgICRyZXN1bHQ6IHNldC1udGgoJHJlc3VsdCw1LCR2KyRyKTtcbiAgICB9XG4gICAgQGlmIHR5cGUtb2YoJHYpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdixudGgoJHJlc3VsdCw2KSkge1xuICAgICAgJHI6IG50aCgkcmVzdWx0LDYpO1xuICAgICAgJHJlc3VsdDogc2V0LW50aCgkcmVzdWx0LDYsJHYrJHIpO1xuICAgIH1cbiAgICBAaWYgdHlwZS1vZigkdikgPT0gc3RyaW5nIHtcbiAgICAgICRyOiBudGgoJHJlc3VsdCw3KTtcbiAgICAgIEBpZiAkciA9PSAnJyB7XG4gICAgICAgICRyZXN1bHQ6IHNldC1udGgoJHJlc3VsdCwgNywgJyN7JHZ9Jyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHJlc3VsdDogc2V0LW50aCgkcmVzdWx0LCA3LCAnI3skdn0gKyAjeyRyfScpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICAkb3V0cHV0OicnO1xuICBAZWFjaCAkciBpbiAkcmVzdWx0IHtcblxuICAgIEBpZiB0eXBlLW9mKCRyKSA9PSBudW1iZXIgYW5kIGNvbXBhdFN0cmlwVW5pdCgkcikgIT0gMCB7XG4gICAgICBAaWYgJG91dHB1dCAhPSAnJyB7XG4gICAgICAgICRvdXRwdXQ6ICRvdXRwdXQrJyArICN7JHJ9JztcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkb3V0cHV0OiAnI3skcn0nO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYodHlwZS1vZigkcikgPT0gc3RyaW5nIGFuZCAkciE9JycpIHtcbiAgICAgIEBpZiAkb3V0cHV0ICE9ICcnIHtcbiAgICAgICAgJG91dHB1dDogJG91dHB1dCsnICsgI3skcn0nO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRvdXRwdXQ6ICcjeyRyfSc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEByZXR1cm4gY2FsYygjeyRvdXRwdXR9KTtcblxufVxuXG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuXG5cbi8vIExvcyB0YWJzIGVuIGJvb3RzdHJhcCAzIG5vIHNvbiBjb21vIGVuIDQsIGUgaW50ZXJuYW1lbnRlIGVuIGVsIHJlcGVhdC1ncm91cCBzZSB1dGlsaXphbixcbi8vIGxvIHJldHJvY29tcGF0aWJpbGl6YW1vcyBwYXJhIHF1ZSBzZSB2ZWFuIGNvbW8gZW4gMywgcGVybyBjb24gbGEgZXN0cnVjdHVyYSBpbnRlcm5hXG4ubmF2LXJlcGVhdC1ncm91cC5uYXYtdGFicyB7XG4gID4gLm5hdi1pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBNYWtlIHRoZSBsaXN0LWl0ZW1zIG92ZXJsYXkgdGhlIGJvdHRvbSBib3JkZXJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuXG4gICAgLy8gQWN0dWFsIHRhYnMgKGFzIGxpbmtzKVxuICAgID4gLm5hdi1saW5rIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmU6aG92ZXIsXG4gICAgICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLy8gQ2FtYmlhIGxhIGVzdHJ1Y3R1cmEgZW4gYm9vdHN0cmFwIDQgcmVzcGVjdG8gYSAzLCBhc8OtIHF1ZSBhcXVpIGNvbW8gZ2VuZXJhbW9zXG4gICAgICAvLyBjw7NkaWdvIGJzNCBjb21wYXRpYmxlIGxvIGVtYmViZW1vcyBlbiBlc3RlIHB1bnRvLlxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICAmLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsCgkJIi8vLyBWYXJpYWJsZXMgcHJlZGVmaW5pZGFzIHBhcmEgZXNwYWNpYWRvXG4kbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc6IDZweCAhZGVmYXVsdDtcblxuLy8vIGhhbGZHdXR0ZXJcbiRoYWxmR3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuXG4vLy8gVmFyaWFibGVzIHBhcmEgc2VydmljaW9zIFJFQUNUIGNvbiBlbCBzb3BvcnRlIGRlIGZvcm11bGFyaW9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1jb250cm9sLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGVsIHJhZGlvIGJ1dHRvbiBkZSBSRUFDVCBwYXJhIGxhIHNlbGVjY2nDs24gZGUgY2FtcG9zXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1jb250cm9sLXJhZGlvLXNpemU6ICRmb250LXNpemUteGxnICFkZWZhdWx0O1xuXG4vLy8gQm9yZGUgZGUgbG9zIGNvbnRyb2xlcyBkZSBmb3JtdWxhcmlvIFJFQUNUXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1jb250cm9sLWJvcmRlci1yYWRpdXM6IDBweCAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgZnVlbnRlIGRlIGxhIGxleWVuZGEgZW4gZm9ybXVsYXJpb3MgUkVBQ1Rcbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWNvbnRyb2wtbGVnZW5kLWZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgZnVlbnRlIGRlIGxhIGV0aXF1ZXRhIGVuIGZvcm11bGFyaW9zIFJFQUNUXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1jb250cm9sLWxhYmVsLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgZGVsIGJvcmRlXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWNvbnRyb2wtYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBQYXJhIGVsIHNlbGVjdG9yIG11bHRpcGxlIGVsIHRhbWHDsW8gZGVsIGNhbXBvIGRlIHRleHRvIGludGVybm9cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWNvbnRyb2wtbXVsdGlwbGUtc2VsZWN0LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14c20gIWRlZmF1bHQ7XG5cbi8vLyBTb21icmEgZGVsIG9iamV0byBjb24gZm9jdXNcbiRmb3JtLWNvbnRyb2wtYm94LXNoYWRvdzogJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4vLy8gRm9uZG8gZGVsIGNvbnRyb2xcbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tY29udHJvbC1iZ2NvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdHVyYSBlbiBwaXhlbGVzIGRlbCBib3JkZVxuJGZvcm0tY29udHJvbC1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbi8vIFBhZGRpbmcgZGVsIGNvbnRyb2wgZGUgZm9ybXVsYXJpbyBlbiBZXG4kZm9ybS1jb250cm9sLXBhZGRpbmcteTogJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcblxuLy8gUGFkZGluZyBkZWwgY29udHJvbCBkZSBmb3JtdWxhcmlvIGVuIFhcbiRmb3JtLWNvbnRyb2wtcGFkZGluZy14OiAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cblxuLy8vIEFsdHVyYSBkZSBsw61uZWEgZGVsIGNvbnRyb2wgZGUgZm9ybXVsYXJpb1xuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tY29udHJvbC1saW5lLWhlaWdodDogJGZvcm0tY29udHJvbC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8vIEFsdHVyYSBiYXNlIGRlbCBjb250cm9sIGRlIGZvcm11bGFyaW9cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWNvbnRyb2wtaGVpZ2h0LWJhc2U6IGFkZCgkZm9ybS1jb250cm9sLWxpbmUtaGVpZ2h0LDIqJGZvcm0tY29udHJvbC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuXG4vLy8gQWx0dXJhIGRlbCBjb250cm9sIGRlIGZvcm11bGFyaW8gY29tcGxldG9cbiRmb3JtLWNvbnRyb2wtaGVpZ2h0OiBhZGQoJGZvcm0tY29udHJvbC1oZWlnaHQtYmFzZSwgMiokZm9ybS1jb250cm9sLWJvcmRlci13aWR0aCx0cnVlKTtcblxuLy8vIFBhZGRpbmcgcGFyYSBsb3MgY29udHJvbGVzIGRlIGZvcm11bGFyaW8gZXN0w6FuZGFyXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1jb250cm9sLXBhZGRpbmc6ICRmb3JtLWNvbnRyb2wtcGFkZGluZy15ICRmb3JtLWNvbnRyb2wtcGFkZGluZy14ICFkZWZhdWx0O1xuXG4vLy8gRW4gZWwgYXV0b2NvbXBsZXRlLCBjb2xvciBkZSBmb25kbyBkZWwgYm90w7NuIGRlIGHDsWFkaXIgdW4gaXRlbVxuLy8vIEB0eXBlIE51bWJlclxuJGF1dG9jb21wbGV0ZS1lZGl0LWJhY2tncm91bmQ6ICRncmF5LTIwMCAhZGVmYXVsdDtcblxuLy8vIEVuIGVsIGF1dG9jb21wbGV0ZSwgYm9yZGUgZGVsIGJvdMOzbiBkZSBhw7FhZGlyIHVuIGl0ZW1cbi8vLyBAdHlwZSBOdW1iZXJcbiRhdXRvY29tcGxldGUtZWRpdC1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBFbiBlbCBhdXRvY29tcGxldGUsIHJhZGlvIGRlbCBib3TDs24gZGUgYcOxYWRpciB1biBpdGVtXG4vLy8gQHR5cGUgTnVtYmVyXG4kYXV0b2NvbXBsZXRlLWVkaXQtYm9yZGVyLXJhZGl1czogJGZvcm0tY29udHJvbC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRW4gZWwgYXV0b2NvbXBsZXRlLCBhbGluZWFjacOzbiBkZWwgdGV4dG8gZW50cm8gZGVsIGJvdMOzbiBkZSBhw7FhZGlyIHVuIGl0ZW1cbi8vLyBAdHlwZSBTdHJpbmdcbiRhdXRvY29tcGxldGUtZWRpdC10ZXh0LWFsaWduOiByaWdodCAhZGVmYXVsdDtcblxuLy8vIEVuIGVsIGF1dG9jb21wbGV0ZSwgY29sb3IgZGUgdGV4dG8gZGVsIGJvdMOzbiBkZSBhw7FhZGlyIHVuIGl0ZW0uXG4vLy8gQHR5cGUgU3RyaW5nXG4kYXV0b2NvbXBsZXRlLWVkaXQtdGV4dC1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBab25hIGVzcGVjw61maWNhIGZpY2hlcm9zIFJFQUNUXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wem9uZS1yZXN1bHRzLWJhY2tncm91bmQ6ICRncmF5LTIwMCAhZGVmYXVsdDtcblxuLy8vIE9wYWNpY2lkYWQgZGUgZm9uZG8gZGUgbGEgaW1hZ2VuIGVuIGVsIGNvbnRyb2wgZGUgdGlwbyBpbWFnZW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wem9uZS1jdXJyZW50aW1hZ2Utb3BhY2l0eTogMC4zICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgZGVsIGJvcmRlIGRlIGxhIHpvbmEgZGUgc3ViaWRhIGRlIGRvY3VtZW50b3Ncbi8vLyBAdHlwZSBDb2xvclxuJGRyb3B6b25lLWZpbGVhcmVhLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgZGVsIGJvcmRlIGRlIGxhIHpvbmEgZGUgc3ViaWRhIGRlIGRvY3VtZW50b3Ncbi8vLyBAdHlwZSBDb2xvclxuJGRyb3B6b25lLWltYWdlYXJlYS1jb2xvcjogJGdyYXktNzAwICFkZWZhdWx0O1xuXG5cbi8vLyBGb25kbyBnZW5lcmFsIGRlIGxhIHpvbmEgZGUgUkVBQ1QgZGUgZmljaGVyb3Ncbi8vLyBAdHlwZSBDb2xvclxuJGRyb3B6b25lLWJhY2tncm91bmQ6ICRncmF5LTQwMCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGRlIHRleHRvIGRlIGxhIFpvbmEgZGUgZmljaGVyb3MgZW4gY29tcG9uZW50ZXMgUkVBQ1Rcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3B6b25lLWNvbG9yOiAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBkZSB0ZXh0byBkZSBsYSB6b25hIGRlIGF5dWRhIGRlIGRlc2NhcmdhIGRlIGZpY2hlcm9zIGVuIFJFQUNUXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wem9uZS1saW5rLWNvbG9yOiAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBkZSBmb25kbyBkZWwgY29udHJvbCBkZSBiw7pzdXFlZGEgZGUgY29udGVuaWRvc1xuLy8vIEB0eXBlIENvbG9yXG4kY29udGVudC1jb250cm9sLWJhY2tncm91bmQ6ICRncmF5LTIwMCAhZGVmYXVsdDs7XG5cbi8vLyBDb2xvciBkZSB0ZXh0byBkZSBsYSB6b25hIGRlIGLDunNxdWVkYSBkZSBjb250ZW5pZG9zXG4vLy8gQHR5cGUgQ29sb3JcbiRjb250ZW50LWNvbnRyb2wtY29sb3I6ICRncmF5LTQwMCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGRlIHRleHRvIGRlbCBib3JkZSBkZSBsYXMgZmVhdHVyZXMgZGUgbGEgem9uYSBtYWVzdHJvLWRldGFsbGVcbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtY29sb3ItZmVhdHVyZXMtYm9yZGVyLWNvbG9yOiAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBkZSB0ZXh0byBkZSBsYXMgZmVhdHVyZXMgZGUgbGEgem9uYSBtYWVzdHJvLWRldGFsbGVcbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtY29sb3ItZmVhdHVyZXMtY29sb3I6ICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLy8gRnVlbnRlIGRlbCBpY29ubyBkZSBsb3MgaXRlbXMgZGVsIGNvbXBvbmVudGUgZGVsIHJlc3VsdGFkbyBkZSBiw7pzcXVlZGEgZGUgY29udGVuaWRvc1xuLy8vIEB0eXBlIFN0cmluZ1xuJGNvbnRlbnQtY29udHJvbC1pdGVtLWljb24tZm9udDogJycgIWRlZmF1bHQ7XG5cbi8vLyBJY29ubyBwYXJhIGxvcyBpdGVtcyBkZWwgY29tcG9uZW50ZSBkZSBzdWJjb250ZW5pZG9zXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29udGVudC1jb250cm9sLWl0ZW0taWNvbjogJz4nICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgZGUgbG9zIGl0ZW1zIGVuIGRlbCBjb21wb25ldGUgZGUgc3ViY29udGVuaWRvcyBlbiBSRUFDVFxuLy8vIEB0eXBlIENvbG9yXG4kY29udGVudC1jb250cm9sLWl0ZW0tY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgZGUgbG9zIGl0ZW1zIGVuIGRlbCBjb21wb25ldGUgZGUgc3ViY29udGVuaWRvcyBlbiBSRUFDVCBlbiB2aXN0YSBtYWVzdHJvLWRldGFsbGVcbi8vLyBAdHlwZSBDb2xvclxuJGNvbnRlbnQtY29udHJvbC1tYXN0ZXJkZXRhaWwtaXRlbS1jb2xvcjogJHByaW1hcnkgIWRlZmF1bHQ7XG5cblxuLy8vIExhIHpvbmEgZGUgZXJyb3IgZGVsIGZvcm11bGFyaW8gKGZ1ZW50ZSlcbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWNvbnRyb2wtZXJyb3JhcmVhLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14c20gIWRlZmF1bHQ7XG5cbi8vLyBMYSB6b25hIGRlIGVycm9yIGRlbCBmb3JtdWxhcmlvIHNpIHF1ZXJlbW9zIHNhY2FybG8gZmxvdGFudGUgbyBubyBlbiBsb3MgY2FtcG9zIGFueU9mXG4vLy8gcG9yIGRlZmVjdG8gZXMgZmFsc2VcbiRmb3JtLWNvbnRyb2wtZXJyb3JhcmVhLWFueW9mLWZsb2F0OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGRlIGZvbmRvIGRlIGxhIHpvbmEgZGUgZXJyb3Jcbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tY29udHJvbC1lcnJvcmFyZWEtYmFja2dyb3VuZDogI2VlMDAwMCAhZGVmYXVsdDtcblxuXG4vLy8gQ29sb3IgZGUgdGV4dG8gZGUgbGEgem9uYSBkZSBlcnJvclxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1jb250cm9sLWVycm9yYXJlYS1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUYW1hw7FvIGRlIGZ1ZW50ZSBkZSB0w610dWxvXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFzdGVyLXZpZXctdGl0bGUtZm9udC1zaXplOiAkZm9udC1zaXplLXhsZyAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgZnVlbnRlIGRlIGRlc2NyaXBjacOzblxuLy8vIEB0eXBlIE51bWJlclxuJG1hc3Rlci12aWV3LWRlc2NyaXB0aW9uLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuLy8vIFRhbWHDsW8gZGUgZnVlbnRlIGRlIGZlYXR1cmVzXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWFzdGVyLXZpZXctZmVhdHVyZXMtZm9udC1zaXplOiAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG5cblxuIiwKCQkiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwKCQkiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vL1xuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxuQG1peGluIGhpZGUtdGV4dCgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG59XG4iLAoJCSIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApOyAgLy8gSUU4IGZpbHRlclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xuICBvcGFjaXR5OiAkb3BhY2l0eTtcbn1cbiIsCgkJIi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuQG1peGluIGltZy1yZXNwb25zaXZlKCRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBoZWlnaHQ6IGF1dG87IC8vIFBhcnQgMjogU2NhbGUgdGhlIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoLCBvdGhlcndpc2UgeW91IGdldCBzdHJldGNoaW5nXG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLiBOb3RlIHRoYXQgdGhlXG4vLyBzcGVsbGluZyBvZiBgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvYCBpcyBpbnRlbnRpb25hbC5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTF4fVwiKSwgXCIjeyRmaWxlLTF4fVwiKSk7XG5cbiAgQG1lZGlhXG4gIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsCgkJIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG5cbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XG59XG4iLAoJCSIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwKCQkiLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLAoJCSIvLyBTaXppbmcgc2hvcnRjdXRzXG5cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgQGluY2x1ZGUgc2l6ZSgkc2l6ZSwgJHNpemUpO1xufVxuIiwKCQkiLy8gV2ViS2l0LXN0eWxlIGZvY3VzXG5cbkBtaXhpbiB0YWItZm9jdXMoKSB7XG4gIC8vIFdlYktpdC1zcGVjaWZpYy4gT3RoZXIgYnJvd3NlcnMgd2lsbCBrZWVwIHRoZWlyIGRlZmF1bHQgb3V0bGluZSBzdHlsZS5cbiAgLy8gKEluaXRpYWxseSB0cmllZCB0byBhbHNvIGZvcmNlIGRlZmF1bHQgdmlhIGBvdXRsaW5lOiBpbml0aWFsYCxcbiAgLy8gYnV0IHRoYXQgc2VlbXMgdG8gZXJyb25lb3VzbHkgcmVtb3ZlIHRoZSBvdXRsaW5lIGluIEZpcmVmb3ggYWx0b2dldGhlci4pXG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG4iLAoJCSJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZS5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbiIsCgkJIi8vIFR5cG9ncmFwaHlcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsCgkJIi8vIFRleHQgb3ZlcmZsb3dcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtb3ZlcmZsb3coKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwKCQkiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG5cblxuLy8gQW5pbWF0aW9uc1xuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xufVxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xufVxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwKCQkiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvcikge1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwKCQkiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gICAgfVxuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLAoJCSIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwKCQkiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXG4vLyBob3Jpem9udGFsIHNpemluZywgd3JhcCBjb250cm9scyBpbiB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuIGA8c2VsZWN0PmBcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gaW5wdXQtc2l6ZSgkcGFyZW50LCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHRleHRhcmVhI3skcGFyZW50fSxcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwKCQkiLy8gUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgfVxufVxuIiwKCQkiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIsXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9LFxuICAgID4gdGguI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9ID4gdGQsXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfTpob3ZlcixcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRkLFxuICAgICY6aG92ZXIgPiAuI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLAoJCSIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsCgkJIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLAoJCSJcblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLAoJCSIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsCgkJIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLAoJCSIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoYnNfc3VidHJhY3QoJG5hdmJhci1oZWlnaHQsICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKGJzX3N1YnRyYWN0KCRuYXZiYXItaGVpZ2h0LCRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsCgkJIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNlaWwoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxufVxuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsCgkJIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcGFkZGluZy1yaWdodDogY2VpbCgoJGd1dHRlciAvIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBmbG9vcigoJGd1dHRlciAvIDIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogZmxvb3IoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tbGVmdDogY2VpbCgoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIG1lZGl1bSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwKCQkiLyoqXG4gKiBNaXhpbnMgcXVlIHRlbmVtb3MgeSBwZXJtaXRpbW9zIHN1IHJldXRpbGl6YWNpw7NuIGVuIG90cm9zIHByb3llY3Rvcy5cbiAqL1xuXG4vLy8gRnVuY2nDs24gcXVlIHBlcm1pdGUgc2VsZWNjaW9uYXIgZWwgdmFsb3IgcGFzYWRvIGNvbW8gcGFyw6FtZXRybyBvIHNpIGVzdGUgZXMgbWVub3IgcXVlXG4vLy8gdW4gdmFsb3IgbcOtbmltbyBlbCB2YWxvciBtw61uaW1vIHBhc2FkbyBjb21vIHNlZ3VuZG8gcGFyw6FtZXRyb1xuLy8vXG4vLy8gQHBhcmFtZXRlciAgICB7TnVtYmVyfSB2YWx1ZSAgICAgICAgLSBFbCB2YWxvciBxdWUgbmVjZXNpdGFtb3MgcGFzYXJcbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBsaW1pdGVkQnkgICAgIC0gRWwgdmFsb3IgbcOtbmltbyBxdWUgcHVlZGUgdGVuZXJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG5AZnVuY3Rpb24gZ2V0TGltaXRlZFZhbHVlKCR2YWx1ZSwkbGltaXRlZEJ5KSB7XG4gICAgQGlmICR2YWx1ZSA8ICRsaW1pdGVkQnkge1xuICAgICAgICBAcmV0dXJuICRsaW1pdGVkQnk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAkdmFsdWU7XG4gICAgfVxufVxuXG4vLy8gT2J0aWVuZSBlbCBwcmltZXIgZWxlbWVudG8gZGUgdW5hIGxpc3RhXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtMaXN0fSBsaXN0IC0gTGEgbGlzdGEgZGUgbGEgcXVlIHJlY3VwZXJhbW9zIGVsIHZhbG9yXG5AZnVuY3Rpb24gZmlyc3QoJGxpc3QpIHtcbiAgICBAcmV0dXJuIG50aCgkbGlzdCwgMSk7XG59XG5cbi8vLyBPYnRpZW5lIGVsIHVsdGltbyBlbGVtZW50byBkZSB1bmEgbGlzdGFcbi8vL1xuLy8vIEBwYXJhbWV0ZXIge0xpc3R9IGxpc3QgLSBMYSBsaXN0YSBkZSBsYSBxdWUgcmVjdXBlcmFtb3MgZWwgdmFsb3JcbkBmdW5jdGlvbiBsYXN0KCRsaXN0KSB7XG4gICAgQHJldHVybiBudGgoJGxpc3QsIGxlbmd0aCgkbGlzdCkpO1xufVxuXG5cblxuLy8vIE1peGluIHF1ZSBub3MgcGVybWl0ZSBpbmNsdWlyIHVuYSBmdWVudGUgZGV0ZXJtaW5hZGEgZW4gZWwgY8OzZGlnbywgcmVjaWJlIGNvbW8gcGFyw6FtZXRyb3Ncbi8vLyBlbCBub21icmUgZGUgbGEgZnVlbnRlIHkgZ2VuZXJhIHVuIENTUyBhZGVjdWFkbyBwYXJhIHN1IGluY2x1c2nDs25cbi8vL1xuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gZm9udC1mYW1pbHkgWycnXSAtIEVsIG5vbWJyZSBkZSBsYSBmYW1pbGlhIGRlIGZ1ZW50ZXMgcXVlIGVtcGxlYW1vc1xuQG1peGluIGZvbnQoJGZvbnQtZmFtaWx5OicnKSB7XG4gICAgQGlmKCRmb250LWZhbWlseSAhPSAnJykge1xuICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgJGZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgc3BlYWs6IG5ldmVyO1xuICAgIH1cbn1cblxuLy8vIEdlbmVyYSB1biBibG9xdWUgY29ycmVzcG9uZGllbnRlIGEgdW5hIGZ1ZW50ZSBpbnNlcnRhbmRvIGxhIGluZnJtYWNpw7NuIGRlIHVuYSBkZXRlcm1pbmFkYVxuLy8vIGZ1ZW50ZSBkZWwgc2lzdGVtYS5cbi8vL1xuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gJGZvbnQtZmFtaWx5IC0gRWwgbm9tYnJlIGRlIGxhIGZhbWlsaWEgZGUgZnVlbnRlcyBxdWUgZW1wbGVhbW9zXG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSAkdGV4dCAtIEVsIHRleHRvIGEgaW5jbHVpciBjb21vIGNvbnRlbmlkb1xuLy8vIEBjb250ZW50IEVuIGNhc28gZGUgcXVlcmVyIGHDsWFkaXIgaW5mb3JtYWNpw7NuIGV4dHJhLlxuQG1peGluIGZvbnRCbG9jaygkZm9udC1mYW1pbHksJHRleHQpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJGZvbnQtZmFtaWx5KTtcbiAgICAgICAgY29udGVudDogJHRleHQ7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8vIEdlbmVyYSB1biBibG9xdWUgY29ycmVzcG9uZGllbnRlIGEgdW5hIGZ1ZW50ZSBpbnNlcnRhbmRvIGxhIGluZnJtYWNpw7NuIGRlIHVuYSBkZXRlcm1pbmFkYVxuLy8vIGZ1ZW50ZSBkZWwgc2lzdGVtYS5cbi8vL1xuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gJGZvbnQtZmFtaWx5IC0gRWwgbm9tYnJlIGRlIGxhIGZhbWlsaWEgZGUgZnVlbnRlcyBxdWUgZW1wbGVhbW9zXG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSAkdGV4dCAtIEVsIHRleHRvIGEgaW5jbHVpciBjb21vIGNvbnRlbmlkb1xuLy8vIEBjb250ZW50IEVuIGNhc28gZGUgcXVlcmVyIGHDsWFkaXIgaW5mb3JtYWNpw7NuIGV4dHJhLlxuQG1peGluIGZvbnRCbG9ja0FmdGVyKCRmb250LWZhbWlseSwkdGV4dCkge1xuICAmOmFmdGVyIHtcbiAgICBAaW5jbHVkZSBmb250KCRmb250LWZhbWlseSk7XG4gICAgY29udGVudDogJHRleHQ7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIE1peGluIHF1ZSBwZXJtaXRlIHVuYSBhbGluZWFjacOzbiB2ZXJ0aWNhbCBkZSB1biBlbGVtZW50b1xuQG1peGluIHZjZW50ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZsb2F0OiBub25lO1xufVxuXG4vLy8gTWl4aW4gcXVlIG5vcyBwZXJtaXRlIGhhY2VyIHVuIG1hc29ucnkgZGUgdW4gY29udGVuZWRvclxuLy8vXG4vLy8gQHBhcmFtZXRlciB7TWFwfSAkY29scyBbKCldIC0gVW4gbWFwYSBjb24gbGFzIGNvbHVtbmFzIGVuIGNhZGEgcmVzb2x1Y2nDs25cbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9ICRndXR0ZXIgWyRoYWxmR3V0dGVyXSAtIEVsIGd1dHRlciBwb3IgZGVmZWN0byBxdWUgdGVuZW1vc1xuLy8vIEBjb250ZW50IEVuIGNhc28gZGUgcXVlcmVyIGHDsWFkaXIgaW5mb3JtYWNpw7NuIGV4dHJhLlxuQG1peGluIG1hc29ucnkoJGNvbHM6KCksICRndXR0ZXI6JGhhbGZHdXR0ZXIpIHtcbiAgICAmIHtcbiAgICAgICAgJHhzOiBpZihtYXAtaGFzLWtleSgkY29scywneHMnKSxtYXAtZ2V0KCRjb2xzLCd4cycpLDEpO1xuICAgICAgICAkc206IGlmKG1hcC1oYXMta2V5KCRjb2xzLCdzbScpLG1hcC1nZXQoJGNvbHMsJ3NtJyksJHhzKTtcbiAgICAgICAgJG1kOiBpZihtYXAtaGFzLWtleSgkY29scywnbWQnKSxtYXAtZ2V0KCRjb2xzLCdtZCcpLDApO1xuICAgICAgICAkbGc6IGlmKG1hcC1oYXMta2V5KCRjb2xzLCdsZycpLG1hcC1nZXQoJGNvbHMsJ2xnJyksMCk7XG5cbiAgICAgICAgLy8gTGFzIGNvbmRpY2lvbmVzIGRlIFhTIHkgU00gZXN0YW4gZmlqYXMuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAkeHM7XG4gICAgICAgICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogJHhzO1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tY291bnQ6ICR4cztcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXA6ICRndXR0ZXI7XG4gICAgICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6ICRndXR0ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6ICRndXR0ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogJHNtO1xuICAgICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRzbTtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAkc207XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkZ3V0dGVyO1xuICAgICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiAkZ3V0dGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAkZ3V0dGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaWYgJG1kID4gMCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRtZDtcbiAgICAgICAgICAgICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogJG1kO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAkbWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRsZyA+IDAge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAkbGc7XG4gICAgICAgICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRsZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogJGxnO1xuICAgICAgICAgICAgfSAgICAgICAgXG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkZ3V0dGVyO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkOyAvKiBDaHJvbWUsIFNhZmFyaSwgT3BlcmEgKi9cbiAgICAgICAgICAgICAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IC8qIEZpcmVmb3ggKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7IC8qIElFMTArICovXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkLWNvbHVtbjsgLyogV2hlbiBzdXBwb3J0ZWQgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBNaXhpbiBxdWUgcGVybWl0ZSBnZW5lcmFyIGNvbHVtbmFzIGRlbnRybyBkZSBsYSBwZXN0YcOxYSBkZSB1biBjb250ZW5pZG8uXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9ICRjb2x1bW5zIC0gRWwgbsO6bWVybyBkZSBjb2x1bW5hcyBlbiBsYXMgcXVlIHF1ZXJlbW9zIGRpdmlkaXIgbG9zIGVsZW1lbnRvcyBkZSBsYSBwZXN0YcOxYS5cbkBtaXhpbiBjb2x1bW5pemUtY29udGVudHRhYnMoJGNvbHVtbnMpIHtcblxuICAgIC8qKlxuICAgICAqIE5vcyBhc2VndXJhbW9zIGRlIHF1ZSB0ZW5lbW9zIGxpbXBpYSBsYSBpbmZvcm1hY2nDs24gY29ycmVzcG9uZGllbnRlLlxuICAgICAqL1xuICAgIC5zZWN0aW9uLWRhdGEsXG4gICAgLmNvbnRlbnQtc2VjdGlvbi1ibG9jayB7XG4gICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuICAgIFxuICAgICAgICBcbiAgICAvKipcbiAgICAgKiBJbmRpY2Ftb3MgbGEgYW5jaHVyYSBkZSBjYWRhIGNvbHVtbmEgcXVlIHRlbmVtb3MgaW50ZXJuYW1lbnRlLCBzaWVtcHJlIGxvIGhhY2Vtb3MgYSBuaXZlbFxuICAgICAqIGRlIHN1YnNlY2Npb24gbm8gZGUgc2VjY2lvbiBpbnRlcm5hLCB5IHNpZW1wcmUgeSBjdWFuZG8gbm8gZXN0ZSBhc29jaWFkYSBhIHVuIHZhbG9yLCBwb3JxdWUgZW4gZXNlXG4gICAgICogY2FzbyBubyBhcGxpY2EgbGEgZGl2aXNpw7NuIGVuIGNvbHVtbmFzXG4gICAgICovXG4gICAgLnNlY3Rpb24tZGF0YTpub3QoLnB2YWwpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zOyAvKiBDaHJvbWUsIFNhZmFyaSwgT3BlcmEgKi9cbiAgICAgICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uczsgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW5zO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5vbGQtYnJvd3NlciAmIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRjb2x1bW5zKTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAvLyBFbCBuLXNpbW8gdGllbmUgcXVlIHNhbGlyIGRlbCBibG9xdWVcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4rMSkge1xuICAgICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyoqXG4gICAgICogTWFyY2Ftb3MgbG9zIGVzdGlsb3MgZGVsIHTDrXR1bG8geSBkZSBsYSBzdWJzZWNjacOzblxuICAgICAqL1xuICAgIGg0LnN1YnNlY3Rpb24tdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCI6XCI7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LnN1YnNlY3Rpb24tZGF0YSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBkaXYucHZhbC1jb21wbGV4IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICA+IGRsIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbnM7IC8qIENocm9tZSwgU2FmYXJpLCBPcGVyYSAqL1xuICAgICAgICAgICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uczsgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1ucztcbiAgICAgICAgICAgICAgICA+IGR0LnBkZWYge1xuICAgICAgICAgICAgICAgICAgICAub2xkLWJyb3dzZXIgJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgwLjMvJGNvbHVtbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoI3syKiRjb2x1bW5zfW4rMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiOlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNnB4O1xuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IGRkLnB2YWwge1xuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAub2xkLWJyb3dzZXIgJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgwLjcvJGNvbHVtbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4gXG4gXG4vLy8gTWl4aW4gcXVlIGFjdHVhIHBhcmEgcGVybWl0aXIgcmVwcmVzZW50YXIgdW4gYmxvcXVlIGRlIGNvbnRlbmlkb3MgbyByZWN1cnNvcywgcGVybWl0aWVuZG8gcmVjaWJpclxuLy8vIGRpc3RpbnRvcyBwYXLDoW1ldHJvcyBxdWUgcGVybWl0ZW4gY29udHJvbGFyIGVsIG1hcmdlbiBkZWwgYmxvcXVlLCBwYWRkaW5nLCB5IGVsIHRpcG8gZGUgaWNvbm9cbi8vLyBhIHV0aWxpemFyIHBhcmEgY2FkYSBsaXN0LWl0ZW0uXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGJsb2NrLXBhZGRpbmcgLSBFbCBwYWRkaW5nIGRlbCBibG9xdWUgcXVlIHRlbmVtb3Ncbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IG1hcmdpbiAtIEVsIG1hcmdlbiBxdWUgdGllbmUgY2FkYSB1bm8gZGUgbGkgcXVlIGZvcm1hbiBwYXJ0ZSBkZWwgbGlzdGFkb1xuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gcGFkZGluZyAtIENhZGVuYSBxdWUgY29udGllbmUgdG9kYXMgbGFzIHBvc2ljaW9uZXMgZGUgcGFkZGluZyBhc29jaWFkYXMgYWwgbGlcbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGNvbG9yICAgLSBFbCBjb2xvciBxdWUgYXNvY2lhbW9zIGFsIGVsZW1lbnRvXG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSBjb2xvci1ob3ZlciAtIEVsIGNvbG9yIGN1YW5kbyBlc3RhbW9zIGVuY2ltYSBkZWwgZWxlbWVudG9cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGl0ZW0tYm9yZGVyLXRvcCAtIEVsIGZvcm1hdG8gZGVsIGJvcmRlIHN1cGVyaW9yIGRlIGNhZGEgZWxlbWVudG8gZGVsIGxpc3RhZG9cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGl0ZW0taWNvbiBbJyddIC0gRWwgdGV4dG8gcXVlIHZhbW9zIGEgdXRpbGl6YXIgY29tbyBlbGVtZW50byBhZGljaW9uYWwgZW4gbG9zIGxpc3RhZG9zLCBwb3IgZGVmZWN0byBlcyB1bmEgY2FkZW5hIHZhY8OtYVxuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gaWNvbi1mb250LWZhbWlseSBbJGNvbnRlbnRMaXN0SWNvbkZvbnRGYW1pbHldIC0gTGEgZmFtaWxpYSBkZSBmdWVudGVzIHF1ZSB1dGlsaXphbW9zIHBhcmEgcmVwcmVzZW50YXIgYSBsb3MgaWNvbm9zLlxuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gaWNvbi1jb2xvciBbJyddIC0gRWwgY29sb3IgZGVsIGljb25vLlxuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gaWNvbi1wYWRkaW5nIFskY29udGVudExpc3RJY29uUGFkZGluZ10gLSBFbCBwYWRkaW5nIHF1ZSBhc29jaWFtb3MgYSBjYWRhIHVubyBkZSBsb3MgbGkgZW4gZWwgY2FzbyBkZSB0ZW5lciB1biBpY29ubyBhIGxhIGl6cXVpZXJkYSwgYSBmaW4gZGUgcXVlIHNlIHB1ZWRhIGRpZmVyZW5jaWFyIGVudHJlIGljb25vIHkgZWxlbWVudG9cbi8vLyBAcGFyYW1ldGVyIHtCb29sZWFufSByZXNldCBbdHJ1ZV0gLSBTaSB0ZW5lbW9zIHF1ZSBnZW5lcmFyIENTUyBwYXJhIHJlc2V0ZWFyIHBvc2libGVzIHZhbG9yZXMgZXNwZWNpZmljYWRvcyBlbiBsYSBob2phIGRlIGVzdGlsb3MgY3VhbmRvIHF1ZXJlbW9zIHBvbmVyIHVuIGl0ZW1JY29uIHZhY8OtbywgcG9yIGRlZmVjdG8gc2kuXG4vLy8gQGNvbnRlbnQgUGVybWl0ZSBhbmlkYXIgY3VlcnBvIGRlbCBjb250ZW5pZG8gZW4gZWwgaW50ZXJpb3IuXG5AbWl4aW4gY29udGVudEJsb2NrKCRibG9jay1wYWRkaW5nLCAkbWFyZ2luLCRwYWRkaW5nLFxuICAgICAgICAgICAgICAgICAgICAkY29sb3IsJGNvbG9yLWhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAkaXRlbS1ib3JkZXItdG9wLCBcbiAgICAgICAgICAgICAgICAgICAgJGl0ZW0taWNvbjonJyxcbiAgICAgICAgICAgICAgICAgICAgJGljb24tZm9udC1mYW1pbHk6JGNvbnRlbnRMaXN0SWNvbkZvbnRGYW1pbHksXG4gICAgICAgICAgICAgICAgICAgICRpY29uLWNvbG9yOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgJGljb24tcGFkZGluZzokY29udGVudExpc3RJY29uUGFkZGluZyxcbiAgICAgICAgICAgICAgICAgICAgJHJlc2V0OnRydWUpIHtcbiAgICAgICAgICAgICAgIFxuICAgICYge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6ICRibG9jay1wYWRkaW5nO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAuY21Db250ZW50TGluaywgYS5jbUNvbnRlbnRMaW5rOnZpc2l0ZWQsXG4gICAgICAgIC5jbVJlc291cmNlTGluaywgYS5jbVJlc291cmNlTGluazp2aXNpdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgYS5jbUNvbnRlbnRMaW5rOmhvdmVyLCBhLmNtQ29udGVudExpbms6YWN0aXZlLCBhLmNtQ29udGVudExpbms6Zm9jdXMsXG4gICAgICAgIGEuY21SZXNvdXJjZUxpbms6aG92ZXIsIGEuY21SZXNvdXJjZUxpbms6YWN0aXZlLCBhLmNtUmVzb3VyY2VMaW5rOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSB7ICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICBtYXJnaW46ICRtYXJnaW47XG4gICAgICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIEBpZiAkaXRlbS1pY29uICE9ICcnIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSAge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCRpY29uLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGl0ZW0taWNvbjtcbiAgICAgICAgICAgICAgICAgICAgQGlmICRpY29uLWNvbG9yIT0nJyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaWNvbi1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJj4gKiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGljb24tcGFkZGluZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAkcmVzZXQge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgICAgICYuY21JY29uQ29udGVudEl0ZW0gPiAqIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjb250ZW50O1xuXG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLy8gTGltcGlhbW9zIGVsIHByaW1lciBoaWpvLlxuICAgICAgICA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBGdW5jaW9uZXMgZXh0cmEgcXVlIHRlbmVtb3MgcXVlIHNvcG9ydGFyIHBhcmEgZWwgZnVuY2lvbmFtZWludG8gbXVsdGktY29sdW1uYVxuICAgICAgICAmOm5vdCgubkNvbHVtbnMpIHtcbiAgICAgICAgICAgID4gbGkrbGkge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6ICRpdGVtLWJvcmRlci10b3A7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEFob3JhIGVzcGVjaWZpY2Ftb3MgbG9zIGVzdGlsb3MgZW4gZnVuY2nDs24gZGUgbGFzIG4tY29sdW1uYXNcbiAgICAgICAgQGZvciAkY29sIGZyb20gMiB0aHJvdWdoIDEyIHtcbiAgICAgICAgICAgICRjdXJySXRlbTogICRjb2wgKyAxO1xuICAgICAgICAgICAgJi5uQ29sdW1uc18jeyRjb2x9ID4gbGk6bnRoLWNoaWxkKG4rI3skY3Vyckl0ZW19KSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogJGl0ZW0tYm9yZGVyLXRvcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgICAgIFxuICAgIH1cbn1cblxuLy8vIE1peGluIHF1ZSBub3MgcGVybWl0ZSBlc3RhYmxlY2VyIHVuIHRhbWHDsW8gZGUgbG9zIGRpc3RpbnRvcyBlbGVtZW50b3MgZGUgdW4gYmxvcXVlIGRlIGNvbnRlbmlkb3MgYXNvY2lhZG8gYSB1biBkZXRlcm1pbmFkb1xuLy8vIHRhbWHDsW8gZGUgZnVlbnRlIHF1ZSBwYXNhbW9zIGNvbW8gcGFyw6FtZXRybywgdGllbmUgZW4gY3VlbnRhIGVsIHJlc3RvIGRlIHRhbWHDsW9zIGRlZmluaWRvcyBwYXJhIGNhbGN1bGFyIGVsIHRhbWHDsW8gYWRlY3VhZG8sXG4vLy8gcGFydGUgZGVsICRmb250LXNpemUtYmFzZSwgc2kgZXMgZWwgbWlzbW8gbm8gZ2VuZXJhIG5hZGEsIGVuIG90cm8gY2FzbyBnZW5lcmEgaW5mb3JtYWNpw7NuIGFkZWN1YWRhIHBhcmEgcGludGFyIGxvcyBkaXN0aW50b3Ncbi8vLyBlbGVtZW50b3MuXG4vLy8gXG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSBibG9jay1wYWRkaW5nIC0gRWwgcGFkZGluZyBkZWwgYmxvcXVlIHF1ZSB0ZW5lbW9zXG5AbWl4aW4gY29udGVudEJsb2NrU2l6aW5nKCRmb250LWJhc2UpIHtcbiAgICAmIHtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAvLyBMYSBmdWVudGUgYmFzZSBkZSB0b2RvIGVsIGN1ZXJwb1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1iYXNlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBFbCB0YW1hw7FvIGRlIGxvcyBlbGVtZW50b3MgaW50ZW5yb3MgcXVlIHRlbmVtb3MsIHF1ZSBhanVzdGFtb3MgZW4gZnVuY2nDs24gZGUgZXN0YSwgYsOhc2ljYW1lbnRlXG4gICAgICAgICAgICAvLyBzw7NsbyBhanVzdGFtb3MgZWwgdGFtYcOxbyBkZSBsYXMgY2FyYWN0ZXLDrXN0aWNhcywgcXVlIGVzIGxvIMO6bmljbyBxdWUgYXBhcmVudGVtZW50ZSBwdWVkZSB2YXJpYXIuXG4gICAgICAgICAgICAudGVtcGxhdGVIdG1sTGlzdERldGFpbCB7XG4gICAgICAgICAgICAgICAgLmZlYXR1cmVzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAoJHRlbXBsYXRpbmctZmVhdHVyZXMtZm9udC1zaXplIC8gJGZvbnQtc2l6ZS1iYXNlKSokZm9udC1iYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vLy8gTWl4aW4gcXVlIHBlcm1pdGUgcmVwcmVzZW50YXIgdW4gZm9ybWF0byBkZSBtYXBhIHdlYiwgcmVjaWJpZW5kbyBlbCBuaXZlbCB5IGVsIGVzdGlsbyBhc29jaWFkbyBjb21vIHVuIFxuLy8vIG1hcGEgZW4gZWwgcXVlIHNlIGRlZmluZW4gdmFyaWFzIHZhcmlhYmxlcywgdmVhc2UgZWwgZmljaGVybyBkZSB2YXJpYWJsZXMgZ2xvYmFsIGRlIFByb3hpYSBwYXJhIFxuLy8vIGNvbmZpZ3VyYXIgYWRlY3VhZGFtZW50ZSBzdSBmb3JtYXRvLlxuLy8vIFxuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gbGV2ZWwgLSBFbCBuaXZlbCBkZWwgbWFwYSBXZWIgZW4gZWwgcXVlIG5vcyBlbmNvbnRyYW1vc1xuLy8vIEBwYXJhbWV0ZXIge01hcH0gY29uZmlndXJhdGlvbiAtIExhIGNvbmZpZ3VyYWNpw7NuIGRlbCBlbGVtZW50byBkZWwgbWFwYSBXZWIgcXVlIGVzdGFtb3MgcGludGFuZG8uXG5AbWl4aW4gc2l0ZW1hcCgkbGV2ZWwsJGNvbmZpZ3VyYXRpb24pIHtcbiAgICB1bC5jbVdlYk1hcExldmVsI3skbGV2ZWx9IHtcbiAgICAgICAgLy8gTm8gcXVlcmVtb3MgcXVlIG5vcyBnZW5lcmUgaWNvbm8sIHBvcnF1ZSBzZSBsbyB2YW1vcyBhIG1ldGVyIGRpcmVjdGFtZW50ZSBhbCBuaXZlbFxuICAgICAgICAvLyBkZSBmb3JtYSBtYW51YWwuXG4gICAgICAgIEBpbmNsdWRlIGNvbnRlbnRCbG9jayhtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdibG9jay1wYWRkaW5nJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdibG9jay1pdGVtLW1hcmdpbicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLWdldCgkY29uZmlndXJhdGlvbiwnYmxvY2staXRlbS1wYWRkaW5nJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdibG9jay1pdGVtLWNvbG9yJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdibG9jay1pdGVtLWNvbG9yLWhvdmVyJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdibG9jay1pdGVtLWJvcmRlci10b3AnKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgLy8gRWwgdGFtYcOxbyBkZSBsYSBmdWVudGUgcXVlIGFwbGljYW1vcyBhbCBibG9xdWUuLi5cbiAgICAgICAgQGluY2x1ZGUgY29udGVudEJsb2NrU2l6aW5nKG1hcC1nZXQoJGNvbmZpZ3VyYXRpb24sJ2Jsb2NrLWl0ZW0tZm9udC1zaXplJykpO1xuXG4gICAgICAgICRsZXZlbG1hcmdpbjogaWYobWFwLWhhcy1rZXkoJGNvbmZpZ3VyYXRpb24sJ2luZGVudC1tYXJnaW4nKSxtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCdpbmRlbnQtbWFyZ2luJyksJGluZGVudC1tYXJnaW4pOyAgICAgICAgXG4gICAgICAgIFxuICAgICAgICAvLyB2YW1vcyBhIGludHJvZHVjaXIgc2llbXByZSB1biBwYWRkaW5nIGEgbGEgaXpxdWllcmRhLCBleGNlcHRvIHNpIGVzdGFtb3MgZW4gZWwgbml2ZWwgMSwgcHVlc3RvIHF1ZVxuICAgICAgICAvLyBlc2Ugbm8gYXBpY2FcbiAgICAgICAgQGlmICRsZXZlbCAhPSAxIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkbGV2ZWxtYXJnaW4gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgLy8gSW50cm9kdWNpbW9zIGVsIHN0eWxpbmcgZGVsIERJVlxuICAgICAgICAuY21XZWJNYXBMZXZlbCN7JGxldmVsfUhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCd0aXRsZS1tYXJnaW4nKTtcbiAgICAgICAgICAgIC5jbVdlYk1hcExldmVsI3skbGV2ZWx9IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCd0aXRsZS1iYWNrZ3JvdW5kJyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkY29uZmlndXJhdGlvbiwndGl0bGUtcGFkZGluZycpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG1hcC1nZXQoJGNvbmZpZ3VyYXRpb24sJ3RpdGxlLWRpc3BsYXknKTtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IG1hcC1nZXQoJGNvbmZpZ3VyYXRpb24sJ3RpdGxlLWJvcmRlci1zdHlsZScpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29uZmlndXJhdGlvbiwndGl0bGUtYm9yZGVyLWNvbG9yJyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCd0aXRsZS1ib3JkZXInKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEludHJvZHVjaW1vcyBsb3MgZGF0b3MgcmVsYWNpb25hZG9zIGNvbiBlbCBpY29ubywgc2kgZXMgXG4gICAgICAgICAgICAvLyBxdWUgZXhpc3RlIGVuIGVsIG1hcGEuXG4gICAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGNvbmZpZ3VyYXRpb24sJ3RpdGxlLWljb24nKSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KG1hcC1nZXQoJGNvbmZpZ3VyYXRpb24sJ3RpdGxlLWljb24tZm9udCcpKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbWFwLWdldCgkY29uZmlndXJhdGlvbiwndGl0bGUtaWNvbicpO1xuICAgICAgICAgICAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGNvbmZpZ3VyYXRpb24sJ3RpdGxlLWljb24tY29sb3InKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29uZmlndXJhdGlvbiwndGl0bGUtaWNvbi1jb2xvcicpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBtYXAtZ2V0KCRjb25maWd1cmF0aW9uLCd0aXRsZS1pY29uLXBhZGRpbmcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vLy8gTWl4aW4gcXVlIHBlcm1pdGUgZGVmaW5pciBlbCBmb3JtYXRvIGRlbCBib3TDs24gZGUgdmVyIG3DoXMuXG4vLy9cbi8vLyBAcGFyYW1ldGVyICB7TWFwfSAgICB1c2VyU2V0dGluZ3MgIC0gIEFqdXN0ZXMgZGVsIGJvdMOzbiBkZSB2ZXIgbcOhc1xuQG1peGluIGJhbm5lci1zaG93bW9yZSgkdXNlclNldHRpbmdzKSB7XG4gICAgJiB7XG4gICAgICAgICRzaG93TW9yZUljb246IG1hcC1nZXQoJHVzZXJTZXR0aW5ncywnaWNvbi1jb250ZW50Jyk7XG4gICAgICAgICRzaG93TW9yZUZhbWlseTogbWFwLWdldCgkdXNlclNldHRpbmdzLCdpY29uLWZvbnQtZmFtaWx5Jyk7XG4gICAgICAgICRzaG93TW9yZVBvc2l0aW9uOiBtYXAtZ2V0KCR1c2VyU2V0dGluZ3MsJ2ljb24tcG9zaXRpb24nKTtcblxuICAgIFxuICAgICAgICAkc2V0dGluZ3M6IG1hcC1tZXJnZSgkYmFubmVyLXNob3dtb3JlLWJ1dHRvbiwkdXNlclNldHRpbmdzKTtcbiAgICAgICBcbiAgICAgICAgLmhhcy1zaG93LW1vcmUge1xuICAgICAgICAgICAgLmJhbm5lclNob3dNb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQobWFwLWdldCgkc2V0dGluZ3MsJ3RleHQtY29sb3InKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRzZXR0aW5ncywnYmctY29sb3InKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRzZXR0aW5ncywnYmctY29sb3InKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nLDIqJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC1nZXQoJHNldHRpbmdzLCdmb250LXNpemUnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKG1hcC1nZXQoJHNldHRpbmdzLCdmb250LXNpemUnKSAqICRsaW5lLWhlaWdodC1iYXNlKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLWdldCgkc2V0dGluZ3MsJ2JvcmRlci1yYWRpdXMnKSk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICAgICAgICBAaWYgJHNob3dNb3JlSWNvbiAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAkc2hvd01vcmVQb3NpdGlvbiA9PSAncmlnaHQnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzaG93TW9yZUljb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2hvd01vcmVGYW1pbHkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkc2hvd01vcmVJY29uO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaG93TW9yZUZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgXG4gICAgfVxuXG59XG5cbi8vLyBNaXhpbiBwYXJhIGNvbG9jYXIgdW4gYmFubmVyIGVuIGxhIHBvc2ljacOzbiB0b3Bcbi8vL1xuLy8vIEBwYXJhbWV0ZXIgIHtNYXB9ICAgIGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyBbJGJhbm5lci1zaG93bW9yZS1idXR0b25dIC0gIEFqdXN0ZXMgZGVsIGJvdMOzbiBkZSB2ZXIgbcOhc1xuQG1peGluIGJhbm5lci10b3AoJGJhbm5lci1zaG93bW9yZS1zZXR0aW5nczokYmFubmVyLXNob3dtb3JlLWJ1dHRvbikge1xuICAgICYge1xuICAgICAgICBpbWcsIC5jbUJhbm5lcklubmVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbUJhbm5lcklubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBiYW5uZXItc2hvd21vcmUoJGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyk7XG4gICAgfVxufVxuXG4vLy8gTWl4aW4gcGFyYSBjb2xvY2FyIHVuIGJhbm5lciBlbiBsYSBwb3NpY2nDs24gYm90dG9tXG4vLy9cbi8vLyBAcGFyYW1ldGVyICB7TWFwfSAgICBiYW5uZXItc2hvd21vcmUtc2V0dGluZ3MgWyRiYW5uZXItc2hvd21vcmUtYnV0dG9uXSAtICBBanVzdGVzIGRlbCBib3TDs24gZGUgdmVyIG3DoXNcbkBtaXhpbiBiYW5uZXItYm90dG9tKCRiYW5uZXItc2hvd21vcmUtc2V0dGluZ3M6JGJhbm5lci1zaG93bW9yZS1idXR0b24pIHtcbiAgICAmIHtcbiAgICAgICAgaW1nLCAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBiYW5uZXItc2hvd21vcmUoJGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyk7ICAgICAgICBcbiAgICB9XG59XG4vLy8gTWl4aW4gcXVlIG5vcyBwZXJtaXRlIGdlbmVyYXIgdW4gYmFubmVyIGVuIHBvc2ljacOzbiBpenF1aWVyZGEsIHJlY2liZSBjb21vIGFyZ3VtZW50b3MgbGEgYW5jaHVyYSBtw6F4aW1hXG4vLy8gZGUgbGEgaW1hZ2VuIHkgbGEgYW5jaHVyYSBtw6F4aW1hIGRlbCBjYW1wbyBkZSB0ZXh0by5cbi8vL1xuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gaW1hZ2Utd2lkdGggLSBFbCBhbmNobyBxdWUgc2UgZGVzZWEgZGFyIGEgbGEgaW1hZ2VuXG4vLy8gQHBhcmFtZXRlciAgICB7TnVtYmVyfSB0ZXh0LXdpZHRoIC0gRWwgYW5jaG8gcXVlIHNlIGRlc2VhIGRhciBhIGxhIGNhcGEgZGUgdGV4dG9cbi8vLyBAcGFyYW1ldGVyICB7TWFwfSAgICBiYW5uZXItc2hvd21vcmUtc2V0dGluZ3MgWyRiYW5uZXItc2hvd21vcmUtYnV0dG9uXSAtICBBanVzdGVzIGRlbCBib3TDs24gZGUgdmVyIG3DoXNcbkBtaXhpbiBiYW5uZXItbGVmdCgkaW1hZ2Utd2lkdGgsICR0ZXh0LXdpZHRoLCRiYW5uZXItc2hvd21vcmUtc2V0dGluZ3M6JGJhbm5lci1zaG93bW9yZS1idXR0b24pIHtcbiAgICAmIHtcbiAgICAgICAgICAgaW1nLCAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB2Y2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbUJhbm5lcklubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGZHdXR0ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYmFubmVyLXNob3dtb3JlKCRiYW5uZXItc2hvd21vcmUtc2V0dGluZ3MpOyAgICAgICAgXG4gICAgfVxuICAgIFxuICAgICYuaW1hZ2VUZXh0IHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogJGltYWdlLXdpZHRoO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICR0ZXh0LXdpZHRoO1xuICAgICAgICB9XG4gICAgfSAgICBcbn1cblxuLy8vIE1peGluIHF1ZSBub3MgcGVybWl0ZSBnZW5lcmFyIHVuIGJhbm5lciBlbiBwb3NpY2nDs24gaXpxdWllcmRhLCByZWNpYmUgY29tbyBhcmd1bWVudG9zIGxhIGFuY2h1cmEgbcOheGltYVxuLy8vIGRlIGxhIGltYWdlbiB5IGxhIGFuY2h1cmEgbcOheGltYSBkZWwgY2FtcG8gZGUgdGV4dG8uXG4vLy8gXG4vLy8gQHBhcmFtZXRlciAgICB7TnVtYmVyfSBpbWFnZS13aWR0aCAtIEVsIGFuY2hvIHF1ZSBzZSBkZXNlYSBkYXIgYSBsYSBpbWFnZW5cbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IHRleHQtd2lkdGggLSBFbCBhbmNobyBxdWUgc2UgZGVzZWEgZGFyIGEgbGEgY2FwYSBkZSB0ZXh0b1xuLy8vIEBwYXJhbWV0ZXIgIHtNYXB9ICAgIGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyBbJGJhbm5lci1zaG93bW9yZS1idXR0b25dIC0gIEFqdXN0ZXMgZGVsIGJvdMOzbiBkZSB2ZXIgbcOhc1xuQG1peGluIGJhbm5lci1yaWdodCgkaW1hZ2Utd2lkdGgsICR0ZXh0LXdpZHRoLCRiYW5uZXItc2hvd21vcmUtc2V0dGluZ3M6JGJhbm5lci1zaG93bW9yZS1idXR0b24pIHtcbiAgICAmIHtcbiAgICAgICAgaW1nLCAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB2Y2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbUJhbm5lcklubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmR3V0dGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBiYW5uZXItc2hvd21vcmUoJGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyk7ICAgICAgICBcbiAgICB9XG4gICAgXG4gICAgJi5pbWFnZVRleHQge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAkaW1hZ2Utd2lkdGg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbUJhbm5lcklubmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogJHRleHQtd2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBVbiBtaXhpbiBxdWUgcGVybWl0ZSBjcmVhciBlbCB0w610dWxvIGRlIHVuIGJsb3F1ZSBkZSBlbmxhY2UgYSBjb250ZW5pZG8gZW4gZWwgc2lzdGVtYSwgYXVucXVlIHBvZHLDrWEgdXNhcnNlIGNvbiBvdHJvXG4vLy8gb2JqZXRpdm8uXG4vLy9cbi8vLyBAcGFyYW1ldGVyICAgIHtTdHJpbmd9IHRpdGxlLWNvbG9yICAgICAgICAgICAgICAgICAgICAtIEVsIGNvbG9yIHBvciBkZWZlY3RvIHF1ZSB1dGlsaXphbW9zXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gdGl0bGUtY29sb3ItaG92ZXIgICAgICAgICAgICAgIC0gRWwgY29sb3IgcG9yIGRlZmVjdG8gcXVlIHV0aWxpemFtb3MgcGFyYSBsb3MgZW5sYWNlc1xuLy8vIEBwYXJhbWV0ZXIgIHtTdHJpbmd9IHRpdGxlLXNpemUgICAgICAgICAgICAgICAgICAgICAtIEVsIHRhbWHDsW8gYXNvY2lhZG8gYWwgY3VlcnBvIGRlbCBjb250ZW5pZG9zXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gdGl0bGUtcGFkZGluZyAgICAgICAgICAgICAgICAgIC0gRWwgcGFkZGluZyBhc29jaWFkbyBhbCB0w610dWxvXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gdGl0bGUtbWFyZ2luICAgICAgICAgICAgICAgICAgIC0gRWwgbWFyZ2VuIGFzb2NpYWRvIGFsIHTDrXR1bG9cbi8vLyBAcGFyYW1ldGVyICB7U3RyaW5nfSB0aXRsZS1iZ2NvbG9yICAgICAgICAgICAgICAgICAgLSBFbCBjb2xvciBkZSBmb25kbyBhc29jaWFkbyBhbCB0w610dWxvXG4vLy8gQGNvbnRlbnQgICAgQWRtaXRlIGN1ZXJwbyBkZWwgY29udGVuaWRvXG5AbWl4aW4gYWJzdHJhY3RCbG9ja1RpdGxlKCR0aXRsZS1jb2xvciwkdGl0bGUtY29sb3ItaG92ZXIsJHRpdGxlLXNpemUsJHRpdGxlLXBhZGRpbmcsJHRpdGxlLW1hcmdpbiwkdGl0bGUtYmdjb2xvcikge1xuICAgICYge1xuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGl0bGUtc2l6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XG4gICAgICAgICAgICBwYWRkaW5nOiAkdGl0bGUtcGFkZGluZztcbiAgICAgICAgICAgIG1hcmdpbjogJHRpdGxlLW1hcmdpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aXRsZS1iZ2NvbG9yO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhLCBhOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYTpmb2N1cyxhOmhvdmVyLCBhOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aXRsZS1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIH1cbiAgICBcbiAgICB9XG5cbn1cblxuLy8vIFVuIG1peGluIHF1ZSBoYWNlIHVuIGVsbGlwc2lzIGEgdW4gbsO6bWVybyBkZSBsaW5lYXMgZGUgdW4gYmxvcXVlIGRlIHRleHRvXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSBzaXplIC0gRWwgdGFtYcOxbyBkZSBmdWVudGVzXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSBsaW5lcyAtIEVsIG7Dum1lcm8gZGUgbGluZWFzXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSBsaW5lLWhlaWdodCAtIEVsIHRhbWHDsW8gZGUgbGEgbGluZWEgc2kgbm8gc2UgcXVpZXJlIGVsIHZhbG9yIHBvciBkZWZlY3RvXG5AbWl4aW4gY3V0VGV4dCgkc2l6ZSwgJGxpbmVzLCAkbGluZS1oZWlnaHQ6IC0xKSB7XG4gICAgJGFjdHVhbExpbmVIZWlnaHQ6IGlmKCRsaW5lLWhlaWdodCA9PSAtMSwgKCRzaXplKiRsaW5lLWhlaWdodC1iYXNlKSwgJGxpbmUtaGVpZ2h0KTtcblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6ICRzaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGFjdHVhbExpbmVIZWlnaHQ7XG4gICAgICAgIEBpZiAkbGluZXMgIT0gLTEge1xuICAgICAgICAgICAgaGVpZ2h0OiAkbGluZXMgKiAkYWN0dWFsTGluZUhlaWdodDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcztcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBVbiBtaXhpbiBxdWUgcGVybWl0ZSBkZWZpbmlyIGRhdG9zIGVzcGVjaWFsZXMgcmVsYWNpb25hZG9zIGNvbiBlbCBjdWVycG8gZGUgbG9zIHN1YmNvbnRlbmlkb3MgYXNvY2lhZG9zIGFsIGN1ZXJwbyBkZSB1biBlbmxhY2Vcbi8vL1xuLy8vIEBwYXJhbWV0ZXIgIHtTdHJpbmd9IGJhY2tncm91bmQtY29sb3IgICAgICAgIC0gRWwgY29sb3IgZGUgZm9uZG8gZGVsIGVsZW1lbnRvIGNvbXBsZXRvXG4vLy8gQHBhcmFtZXRlciAge051bWJlcn0gaXRlbS10aXRsZS1zaXplICAgICAgICAgLSBFbCB0YW1hw7FvIGRlIGZ1ZW50ZSBhc29jaWFkbyBhbCB0w610dWxvIGRlIGNhZGEgaXRlbVxuLy8vIEBwYXJhbWV0ZXIgIHtOdW1iZXJ9IGl0ZW0tdGl0bGUtbGluZXMgICAgICAgIC0gRWwgbsO6bWVybyBtw6F4aW1vIGRlIGzDrW5lYXMgcXVlIHF1ZXJlbXNvIG1vc3RyYXIgZGVsIHTDrXR1bG9cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBpdGVtLWNvbnRlbnQtbWFyZ2luLXRvcCAtIEVsIG1hcmdlbiBkZSBsYSBwYXJ0ZSBzdXBlcmlvciBxdWUgdGVuZW1vcy5cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBpdGVtLWNvbnRlbnQtc2l6ZSAgICAgICAtIEVsIHRhbWHDsW8gZGUgZnVlbnRlIGFzb2NpYWRvIGFsIGN1ZXJwbyBkZSBjYWRhIGl0ZW1cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBpdGVtLWNvbnRlbnQtbGluZXMgICAgICAtIEVsIG7Dum1lcm8gbcOheGltbyBkZSBsw61uZWFzIHF1ZSBxdWVyZW1vcyBtb3N0cmFyIGRlbCBjdWVycG9cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBpdGVtLW1vcmVpbmZvLXNpemUgICAgICAtIEVsIHRhbWHDsW8gZGUgZnVlbnRlIGFzb2NpYWRvIGEgbGEgZXRpcXVldGEgZGUgbcOhcyBpbmZvcm1hY2nDs25cbi8vLyBAY29udGVudCAgICBJbmZvcm1hY2nDs24gZXh0cmEgYSBhw7FhZGlyIGFsIGJsb3F1ZSBkZSBpbmZvcm1hY2nDs25cbkBtaXhpbiBhYnN0cmFjdEJsb2NrU3ViY29udGVudHNTaXppbmcoJGJhY2tncm91bmQtY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpdGVtLXRpdGxlLXNpemUsIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaXRlbS10aXRsZS1saW5lcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGl0ZW0tY29udGVudC1tYXJnaW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpdGVtLWNvbnRlbnQtc2l6ZSwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpdGVtLWNvbnRlbnQtbGluZXMpIHtcbiAgICAmIHtcbiAgICAgICAgLmNtQ29udGVudExpc3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jb250ZW50LW5hbWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGN1dFRleHQoJGl0ZW0tdGl0bGUtc2l6ZSwkaXRlbS10aXRsZS1saW5lcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jb250ZW50LXRleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRpdGVtLWNvbnRlbnQtbWFyZ2luO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGN1dFRleHQoJGl0ZW0tY29udGVudC1zaXplLCRpdGVtLWNvbnRlbnQtbGluZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIFxuICAgIH1cbn1cblxuLy8vIFVuIG1peGluIHF1ZSBwZXJtaXRlIG1hcXVldGFyIGVsIGJsb3F1ZSBkZSBtw6FzIGluZm9ybWFjacOzbiB2aW5jdWxhZG8gYSB1biBpY29ubywgY29uIGxhIHBvc2liaWxpZGFkIGRlIGHDsWFkaXJcbi8vLyB1biBpdGVtLCBlc3BlY2lmaWNhciB1biBtYXJnaW4gdW4gcGFkZGluZywgZXRjLlxuLy8vIFxuLy8vIEBwYXJhbWV0ZXIgIHtOdW1iZXJ9IGZvbnQtc2l6ZSAgICAgICAgICAtIEVsIHRhbWHDsW8gZGUgbGEgZnVlbnRlIGRlbCBibG9xdWUgZGUgbcOhcyBpbmZvcm1hY2nDs25cbi8vLyBAcGFyYW1ldGVyICB7U3RyaW5nfSBjb2xvciAgICAgICAgICAgICAgLSBFbCBjb2xvciBkZSBmdWVudGUgZGVsIGVsZW1lbnRvXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gY29sb3ItaG92ZXIgICAgICAgIC0gRWwgY29sb3IgZGUgZnVlbnRlIGFsIHBhc2FyIGVsIHJhdMOzbiBwb3IgZW5jaW1hIGRlbCBlbGVtZW50b1xuLy8vIEBwYXJhbWV0ZXIgIHtTdHJpbmd9IGJnY29sb3IgICAgICAgICAgICAtIEVsIGNvbG9yIGRlIGZvbmRvIGRlbCBibG9xdWUgZGUgbcOhcyBpbmZvcm1hY2nDs25cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBwYWRkaW5nICAgICAgICAgICAgLSBFbCBtYXJnZW4gaW50ZXJpb3IgZGVsIGJsb3F1ZSBkZSBtw6FzIGluZm9ybWFjacOzblxuLy8vIEBwYXJhbWV0ZXIgIHtOdW1iZXJ9IG1hcmdpbiAgICAgICAgICAgICAtIEVsIG1hcmdlbiBkZWwgYmxvcXVlIGRlIG3DoXMgaW5mb3JtYWNpw7NuXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gaWNvbi1jb250ZW50ICAgICAgIC0gRWwgaWNvbm8gY29uIGVsIHF1ZSBzZSB2YSBhIHZpbmN1bGFyXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gaWNvbi1mb250LWZhbWlseSAgIC0gRWwgdGlwbyBkZSBmdWVudGUgZGUgZmFtaWxpYSBhIGxhIHF1ZSBwZXJ0ZW5lY2UgZWwgaWNvbm8gXG4vLy8gQHBhcmFtZXRlciAge1N0cmluZ30gaWNvbi1wb3NpdGlvbiAgICAgIC0gTGEgcG9zaWNpw7NuIHBhcmEgaW5jbHVpciBlbCBpY29ubyBlbiBlbCBhZnRlciBvIGVuIGVsIGJlZm9yZVxuQG1peGluIGFic3RyYWN0QmxvY2tTdWJjb250ZW50c01vcmVJbmZvcm1hdGlvbigkZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvci1ob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJnY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWRkaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbWFyZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbi1jb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbi1mb250LWZhbWlseSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGljb24tcG9zaXRpb24pIHtcbiAgICAmIHtcbiAgICAgICAgLmNtQ29udGVudExpc3Qge1xuICAgICAgICAgICAgLm1vcmUtaW5mb3JtYXRpb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgICAgIGEsYTp2aXNpdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGE6Zm9jdXMsYTpob3ZlcixhOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogJG1hcmdpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcbiAgICAgICAgICAgICAgICBAaWYgJGljb24tY29udGVudCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAkaWNvbi1wb3NpdGlvbiA9PSAncmlnaHQnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkaWNvbi1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkaWNvbi1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLy8gVW4gbWl4aW4gcGFyYSBwb25lciBsYSBpbWFnZW4gZGViYWpvIGRlbCB0ZXh0by5cbi8vL1xuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gYmFubmVyLWhlaWdodCAgICAtIExhIGFsdHVyYSBxdWUgZGVzZWFtb3MgdGVuZ2EgZWwgYmFubmVyXG4vLy8gQHBhcmFtZXRlciAge051bWJlcn0gcGFkZGluZy1ib3hbMF0gICAgLSBFbCB0YW1hw7FvIGRlbCBwYWRkaW5nIGJveCBkZSBsYSBjYWphIHBhcmEgY2FsY3VsYXIgbGEgYWx0dXJhIGFkZWN1YWRhbWVudGVcbi8vLyBAcGFyYW1ldGVyICB7TWFwfSAgICBiYW5uZXItc2hvd21vcmUtc2V0dGluZ3MgWyRiYW5uZXItc2hvd21vcmUtYnV0dG9uXSAtICBBanVzdGVzIGRlbCBib3TDs24gZGUgdmVyIG3DoXNcbkBtaXhpbiBiYW5uZXItYmVsb3coJGJhbm5lci1oZWlnaHQsJHBhZGRpbmctYm94OjAsICRiYW5uZXItc2hvd21vcmUtc2V0dGluZ3M6JGJhbm5lci1zaG93bW9yZS1idXR0b24pIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5jbUJhbm5lck91dGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY21CYW5uZXJJbm5lciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIC5iYW5uZXJUZXh0LC5iYW5uZXJTaG93TW9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5iYW5uZXJTaG93TW9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBiYW5uZXItc2hvd21vcmUoJGJhbm5lci1zaG93bW9yZS1zZXR0aW5ncyk7ICAgICAgICBcbiAgICB9XG5cbn1cblxuLy8vIE1peGluIG9yaWVudGFkbyBhIGVzcGFjaWFyIGxvcyBlbGVtZW50b3MgZGUgdW5hIGxpc3RhIHF1ZSBoYW4gc2lkbyBjb252ZXJ0aWRvcyBlbiBjb2x1bW5hcyBwcmV2aWFtZW50ZSB1blxuLy8vIGRldGVybWluYWRvIGVzcGFjaWFkbyB2ZXJ0aWNhbCB5IHVubyBob3Jpem9udGFsXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGNvbC1zcGFjaW5nIC0gICBFbCBlc3BhY2lhZG8gZW50cmUgY29sdW1uYXNcbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IHJvdy1zcGFjaW5nIC0gICBFbCBlc3BhY2lhZG8gZW50cmUgZmlsYXNcbkBtaXhpbiBzcGFjZS1jb2x1bW5pemVkLWxpc3QgKCRjb2wtc3BhY2luZywkcm93LXNwYWNpbmcpIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kcm93LXNwYWNpbmc7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjb2wtc3BhY2luZy8yO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRyb3ctc3BhY2luZztcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWl4aW4gc3BhY2UtY29sdW1uaXplZC1hbnkgKCRjb2wtc3BhY2luZywkcm93LXNwYWNpbmcpIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kcm93LXNwYWNpbmc7XG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY29sLXNwYWNpbmcvMjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNvbC1zcGFjaW5nLzI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJHJvdy1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuLy8vIE1peGluIHF1ZSBjYWxjdWxhIGVsIHBvcmNlbnRhamUgZGUgcGFudGFsbGEgcGFyYSB1biBkZXRlcm1pbmFkbyB2YWxvciBzb2JyZSBlbCAxMDAlLCBlbiBjYXNvIGRlIHF1ZSBsYSBtdWx0aXBsaWNhY2nDs24gZGUgbG9zIHN1cGVyaW9yZXMgc2VhXG4vLy8gbWF5b3IgcXVlIGVsIDEwMCUgcmVzdGEgMC4wMSBhbCB2YWxvci5cbi8vL1xuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gY29scyAgLSBFbCB2YWxvciBzb2JyZSBlbCBxdWUgc2UgY2FsY3VsYXJhIHN1IHBvcmNlbnRhamUgZGUgcGFudGFsbGEgb2N1cGFkYVxuLy8vIEByZXR1cm4ge051bWJlcn1cbkBmdW5jdGlvbiBjb21wdXRlUGVyY2VudGFnZSgkY29scykge1xuICAgICR0bXA6IGZsb29yKDEwMDAwIC8gJGNvbHMpO1xuXG4gICAgLy8gRXN0byBub3MgZGFyw6EgZWwgcG9yY2VudGFqZSBxdWUgdGVuZW1vcyBjb21vIG51bWVyaWNvLCBhaG9yYSBsbyBxdWUgaGFjZW1vcyBlcyByZWNvbnZlcnRpcmxvIGEgMTAuXG4gICAgQHJldHVybiBwZXJjZW50YWdlKCR0bXAgLyAxMDAwMCk7XG5cblxufVxuXG4vLy8gTWl4aW4gb3JpZW50YWRvIGEgcGVybWl0aXIgbW9zdHJhciB1bmEgbMOtc3RhIGNvbW8gdW4gY29uanVudG8gZGUgY29sdW1uYXMuXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGNvbHMgICAgICAgIC0gRWwgbsO6bWVybyBkZSBjb2x1bW5hcyBlbiBsYXMgcXVlIHF1ZXJlbW9zIGRpdmlkaXIgZWwgZWxlbWVudG8gZGUgbWVudVxuLy8vIEBwYXJhbWV0ZXIge01hcH0gICAgYnJlYWtwb2ludHMgLSBFbiBlbCBjYXNvIGRlIHF1ZSBxdWVyYW1vcyByb21wZXIgZWwgZGlzZcOxbyBkZSBsYSBjb2x1bW5hIGVuIGNpZXJ0YXMgcG9zaWNpb25lcyBlbiBmdW5jacOzbiBkZWwgdGFtYcOxb1xuLy8vIEBjb250ZW50IC0gQWRtaXRlIGN1ZXJwbyBkZSBjb250ZW5pZG8gcXVlIHNlIGluY2x1eWUgZGVudHJvIGRlIGxvcyBsaSBpbnRlcm5vcy5cbkBtaXhpbiBjb2x1bW5pemUtbGlzdCAoJGNvbHMsJGJyZWFrcG9pbnRzOicnKSB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuXG4gICAgICAgIEBpZigkYnJlYWtwb2ludHMgPT0gJycpIHtcblxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNvbXB1dGVQZXJjZW50YWdlKCRjb2xzKTtcbiAgICAgICAgICAgICAgICAvLyBJbmNsdWltb3MgZWwgY3VlcnBvIGRlbCBjb250ZW5pZG8gcXVlIG5vcyBwdWVkZW4gYWRqdW50YXJcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBsaTpudGgtY2hpbGQoI3skY29sc31uKzEpIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkeHM6IGlmKG1hcC1oYXMta2V5KCRicmVha3BvaW50cywneHMnKSxtYXAtZ2V0KCRicmVha3BvaW50cywneHMnKSwxKTtcbiAgICAgICAgICAgICRzbTogaWYobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCdzbScpLG1hcC1nZXQoJGJyZWFrcG9pbnRzLCdzbScpLCRjb2xzKTtcbiAgICAgICAgICAgICRtZDogaWYobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCdtZCcpLG1hcC1nZXQoJGJyZWFrcG9pbnRzLCdtZCcpLCRjb2xzKTtcbiAgICAgICAgICAgICRsZzogaWYobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCdsZycpLG1hcC1nZXQoJGJyZWFrcG9pbnRzLCdsZycpLCRjb2xzKTtcblxuICAgICAgICAgICAgLy8gR2VuZXJhbW9zIGxvcyBtZWRpYSBwYXJhIGNhZGEgY2Fzby4uLlxuICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWxpc3QgKCR4cykge1xuICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmICRzbSAhPSAkeHMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gWSBhZGVtw6FzIGRlYmVtb3MgcmVzZXRlYXIgZWwgY2xlYXIgZGVsIGNhc28gYW50ZXJpb3IsIHBvcnF1ZSBzaW5vIHJvbXBlclxuICAgICAgICAgICAgICAgICAgICAvLyBkb25kZSBubyB0b2NhLlxuICAgICAgICAgICAgICAgICAgICA+IGxpOm50aC1jaGlsZCgjeyR4c31uKzEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWxpc3QgKCRzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAkbWQhPSAkc20ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFkgYWRlbcOhcyBkZWJlbW9zIHJlc2V0ZWFyIGVsIGNsZWFyIGRlbCBjYXNvIGFudGVyaW9yLCBwb3JxdWUgc2lubyByb21wZXJcbiAgICAgICAgICAgICAgICAgICAgLy8gZG9uZGUgbm8gdG9jYS5cbiAgICAgICAgICAgICAgICAgICAgPiBsaTpudGgtY2hpbGQoI3skc219bisxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbHVtbml6ZS1saXN0ICgkbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmICRsZyE9ICRtZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gWSBhZGVtw6FzIGRlYmVtb3MgcmVzZXRlYXIgZWwgY2xlYXIgZGVsIGNhc28gYW50ZXJpb3IsIHBvcnF1ZSBzaW5vIHJvbXBlclxuICAgICAgICAgICAgICAgICAgICAvLyBkb25kZSBubyB0b2NhLlxuICAgICAgICAgICAgICAgICAgICA+IGxpOm50aC1jaGlsZCgjeyRtZH1uKzEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWxpc3QgKCRsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIE1peGluIHF1ZSBub3MgcGVybWl0ZSBlbGltaW5hciB1bmEgY29sdW1uaXphY2nDs24gcXVlIHRlbmVtb3MgcGFyYSB1biBtb2RvIFhTXG4vLy9cbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBtYXJnaW4gWyRoYWxmR3V0dGVyXSAtIEVsIG1hcmdlbiBwYXJhIGNhZGEgbGlcbi8vLyBAcGFyYW1ldGVyICB7TnVtYmVyfSBwYWRkaW5nIFskaGFsZkd1dHRlcl0gLSBFbCBwYWRkaW5nIHBhcmEgY2FkYSBsaVxuQG1peGluIGNsZWFyLXhzLWNvbHVtbnMoJG1hcmdpbjokaGFsZkd1dHRlciwgJHBhZGRpbmc6JGhhbGZHdXR0ZXIpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogJGhhbGZHdXR0ZXI7XG5cbiAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRoYWxmR3V0dGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gTWl4aW4gb3JpZW50YWRvIGEgcGVybWl0aXIgbW9zdHJhciB1bmEgbMOtc3RhIGRlIGVsZW1lbnRvcyBjb21vIHVuIGNvbmp1bnRvIGRlIGNvbHVtbmFzLlxuLy8vXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSBjb2xzICAgICAgICAtIEVsIG7Dum1lcm8gZGUgY29sdW1uYXMgZW4gbGFzIHF1ZSBxdWVyZW1vcyBkaXZpZGlyIGVsIGVsZW1lbnRvIGRlIG1lbnVcbi8vLyBAcGFyYW1ldGVyIHtNYXB9ICAgIGJyZWFrcG9pbnRzIC0gRW4gZWwgY2FzbyBkZSBxdWUgcXVlcmFtb3Mgcm9tcGVyIGVsIGRpc2XDsW8gZGUgbGEgY29sdW1uYSBlbiBjaWVydGFzIHBvc2ljaW9uZXMgZW4gZnVuY2nDs24gZGVsIHRhbWHDsW9cbi8vLyBAY29udGVudCAtIEFkbWl0ZSBjdWVycG8gZGUgY29udGVuaWRvIHF1ZSBzZSBpbmNsdXllIGRlbnRybyBkZSBsb3MgbGkgaW50ZXJub3MuXG5AbWl4aW4gY29sdW1uaXplLWFueSAoJGNvbHMsJGJyZWFrcG9pbnRzOicnKSB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYoJGJyZWFrcG9pbnRzID09ICcnKSB7XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNvbXB1dGVQZXJjZW50YWdlKCRjb2xzKTtcbiAgICAgICAgICAgICAgICAvLyBJbmNsdWltb3MgZWwgY3VlcnBvIGRlbCBjb250ZW5pZG8gcXVlIG5vcyBwdWVkZW4gYWRqdW50YXJcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAqOm50aC1jaGlsZCgjeyRjb2xzfW4rMSkge1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICR4czogaWYobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCd4cycpLG1hcC1nZXQoJGJyZWFrcG9pbnRzLCd4cycpLDEpO1xuICAgICAgICAgICAgJHNtOiBpZihtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsJ3NtJyksbWFwLWdldCgkYnJlYWtwb2ludHMsJ3NtJyksJGNvbHMpO1xuICAgICAgICAgICAgJG1kOiBpZihtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsJ21kJyksbWFwLWdldCgkYnJlYWtwb2ludHMsJ21kJyksJGNvbHMpO1xuICAgICAgICAgICAgJGxnOiBpZihtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsJ2xnJyksbWFwLWdldCgkYnJlYWtwb2ludHMsJ2xnJyksJGNvbHMpO1xuXG4gICAgICAgICAgICAvLyBHZW5lcmFtb3MgbG9zIG1lZGlhIHBhcmEgY2FkYSBjYXNvLi4uXG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5pemUtYW55ICgkeHMpIHtcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAkc20gIT0gJHhzIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICAgICAgICAvLyBZIGFkZW3DoXMgZGViZW1vcyByZXNldGVhciBlbCBjbGVhciBkZWwgY2FzbyBhbnRlcmlvciwgcG9ycXVlIHNpbm8gcm9tcGVyXG4gICAgICAgICAgICAgICAgICAgIC8vIGRvbmRlIG5vIHRvY2EuXG4gICAgICAgICAgICAgICAgICAgID4gKjpudGgtY2hpbGQoI3skeHN9bisxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbHVtbml6ZS1hbnkgKCRzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgJG1kIT0gJHNtIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBZIGFkZW3DoXMgZGViZW1vcyByZXNldGVhciBlbCBjbGVhciBkZWwgY2FzbyBhbnRlcmlvciwgcG9ycXVlIHNpbm8gcm9tcGVyXG4gICAgICAgICAgICAgICAgICAgIC8vIGRvbmRlIG5vIHRvY2EuXG4gICAgICAgICAgICAgICAgICAgID4gKjpudGgtY2hpbGQoI3skc219bisxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5pemUtYW55ICgkbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmICRsZyE9ICRtZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gWSBhZGVtw6FzIGRlYmVtb3MgcmVzZXRlYXIgZWwgY2xlYXIgZGVsIGNhc28gYW50ZXJpb3IsIHBvcnF1ZSBzaW5vIHJvbXBlclxuICAgICAgICAgICAgICAgICAgICAvLyBkb25kZSBubyB0b2NhLlxuICAgICAgICAgICAgICAgICAgICA+ICo6bnRoLWNoaWxkKCN7JG1kfW4rMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWFueSAoJGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIEdlbmVyYSBwYXJhIHVuIG1lbnUgbGEgbWFxdWV0YWNpw7NuIGVuIGNvbHVtbmFzIHBlcm1pdGllbmRvIGHDsWFkaXIgdW4gaWNvbm8gYSBjYWRhIHVubyBkZSBsb3MgZWxlbWVudG9zXG4vLy8gcXVlIHRlbmVtb3Ncbi8vL1xuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gY29scyAtIEVsIG7Dum1lcm8gZGUgY29sdW1uYXNcbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGljb24gLSBDYWRlbmEgZGUgdGV4dG8gcXVlIHV0aWxpemFtb3MgcGFyYSBpbmNsdWlyIHVuIGljb25vIGNvbiBhbnRlcmlvcmlkYWQgYWwgZWxlbWVudG9cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9IGZhbWlseSAtIEZhbWlsaWEgZGUgZnVlbnRlcyBwYXJhIHJlcHJlc2VudGFyIGVsIGljb25vLiBcbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGljb24tcGFkZGluZyAtIFBhZGRpbmcgYSBsYSBpenF1aWVyZGEgZGVsIGljb25vLCBwYXJhIGNvbnNlZ3VpciBxdWUgbGEgbWFxdWV0YWNpw7NuIHNlYSBjb3JyZWN0YS5cbi8vLyBAcGFyYW1ldGVyIHtTdHJpbmd9ICRpY29uLWNvbG9yIC0gQ29sb3IgcGFyYSBlbCBpY29uby4gU29sbyBzZSBhcGxpY2Egc2kgZXN0w6EgZGVmaW5pZG8gcG9yIGVsIHVzdWFyaW8uXG5AbWl4aW4gbWVudS1jb2x1bW5zKCRjb2xzLCRpY29uLCRmYW1pbHksJGljb24tcGFkZGluZywkaWNvbi1jb2xvcjonJykge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBjb2x1bW5pemUtbGlzdCgkY29scykge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udEJsb2NrKCRmYW1pbHksJGljb24pe1xuICAgICAgICAgICAgICAgIC8vIFNpIGhheSBkZWZpbmlkbyB1biBjb2xvciBwYXJhIGVsIGljb25vIGRlbCBzdWJtZW51IGxvIGFwbGljYW1vcy5cbiAgICAgICAgICAgICAgICBAaWYgJGljb24tY29sb3IgIT0gJycge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGljb24tY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmICRpY29uICE9ICcnIHtcbiAgICAgICAgICAgICAgICAmPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaWNvbi1wYWRkaW5nO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIE1peGluIHBhcmEgcmVwcmVzbmV0YXIgdW4gYmFubmVyIGEgcGFudGFsbGEgY29tcGxldGFcbi8vLyBcbi8vLyBCYW5uZXJzIHF1ZSBzZSBtdWVzdHJhbiBhIHBhbnRhbGxhIGNvbXBsZXRhLCByZXNldGVhbW9zIHRvZG8gZWwgR3V0dGVyIGRlIGxvcyBsYWRvcyBlIGluZGljYW1vc1xuLy8vIHF1ZSBsYSBpbWFnZW4gaW50ZXJpb3IgZXMgYSAxMDAlIGRlIHRhbWHDsW8geSBhbHR1cmEgYXV0b23DoXRpY2EuXG5AbWl4aW4gbWFpbi1iYW5uZXIoKSB7XG4gICAgbWFyZ2luOiAwcHggKC0kaGFsZkd1dHRlcikgMHB4ICgtJGhhbGZHdXR0ZXIpO1xuICAgIFxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG59XG5cbi8vLyBNaXhpbiBxdWUgcGVybWl0ZSBtb3N0cmFyIHVuIG1hcGEgZGUgR29vZ2xlIE1hcHMgY29uIHN1cyBjb25qdW50b3MgZGUgb3BjaW9uZXNcbi8vL1xuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gaGVpZ2h0ICAgICAgICAtIEVsIHZhbG9yIGRlIGxhIGNhcGEgZGUgbWFwYXMsIGRlYmUgc2VyIG51bcOpcmljbywgcHVlc3RvIHF1ZSBlbiBvdHJvIGNhc28gZWwgbWFwYSBubyBzZSBtdWVzdHJhblxuLy8vIEBwYXJhbWV0ZXIgICAge01hcH0gb3B0aW9ucy1kaXNwb3NpdGlvbiAtIFVuIG1hcGEgcXVlIGNvbnRpZW5lIHBhcmEgY2FkYSBwcm9waWVkYWQgKHhzLCBzbSwgbWQsIGxnKSB1biBwYXIgZGUgdmFsb3JlcyAobyB1bm8pLCBlbCBwcmltZWVybzogbGEgYW5jaHVyYSBkZSBsYSBjb2x1bW5hIGRlIG1hcGFzLCBlbCBzZWd1bmRvIGxhIGRlIGxhIG9wY2lvbmVzLCBzaSBzZSBwYXNhIHZhY8OtbyBzZSBhc3VtZSBxdWUgZXMgMTIsIDEyXG4vLy8gQHBhcmFtZXRlciAgICB7TnVtYmVyfSBpbmZvd2luZG93LWJvZHktZm9udC1zaXplIC0gVGFtYcOxbyBkZSBmdWVudGUgZGUgbGEgdmVudGFuYSBkZSBvcGNpb25lc1xuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gaW5mb3dpbmRvdy10aXRsZS1mb250LXNpemUgLSBUYW1hw7FvIGRlbCB0w610dWxvIGRlIGxhIHZlbnRhbmEgZGUgZGV0YWxsZSBkZWwgbWFwYS5cbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IGluZm93aW5kb3ctbGluay1mb250LXNpemUgLSBUYW1hw7FvIGRlIGxhIGZ1ZW50ZSBkZSBsYSB2ZW50YW5hIGRlIGRldGFsbGUgZGVsIG1hcGFcbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IHNlYXJjaGVyLWZvbnQtc2l6ZSAtIFRhbWHDsW8gZGVsIGZ1ZW50ZSBwYXJhIGVsIGJsb3F1ZSBkZSBvcGNpb25lcyBkZW50cm8gZGVsIGJ1c2NhZG9yXG4vLy8gQHBhcmFtZXRlciAgICB7TnVtYmVyfSBzZWFyY2hlci1sZWdlbmQtZm9udC1zaXplICAtIFRhbWHDsW8gZGUgbGEgbGV5ZW5kYVxuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gc2VhcmNoZXItZmllbGRzZXQtaGFzLWJvcmRlciAtIElOZGljYSBzaSBkZWJlIGHDsWFkaXJzZSB1biBib3JkZSBhbCBmaWVsZHNldCBxdWUgY29udGllbmUgYSB1biBncnVwbyBkZSBjYW1wb3MgbyBub1xuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gc2VhcmNoZXItbGVnZW5kLWhhcy1ib3JkZXIgLSBJTmRpY2Egc2kgZGViZSBhw7FhZGlyc2UgdW4gYm9yZGUgaW5mZXJpb3IgYSBsYSBsZXllbmRhIHF1ZSBjb250aWVuZSBhIHVuIGdydXBvIGRlIGNhbXBvcyBvIG5vLCBzb2xvIGFwbGljYSBzaSBubyBzZSBkZWZpbmUgYWwgZmllbGRzZXRcbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IHNlYXJjaGVyLWJvcmRlci1jb2xvciAtIENvbG9yIGRlbCBib3JkZSAgICAgICAgICAgICAgICBcbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IHNlYXJjaGVyLWJ1dHRvbi1mb250LXNpemUgLSBUYW1hw7FvIGRlbCBmdWVudGUgZGVsIGJvdMOzblxuLy8vIEBwYXJhbWV0ZXIgICAge051bWJlcn0gc2VhcmNoZXItbWFya2VyLWNvbHVtbnMgLSBDb2x1bW5hcyBwb3IgZGVmZWN0byBwYXJhIG1hcmNhZG9yZXNcbi8vLyBAcGFyYW1ldGVyICAgIHtNYXB9IHNlYXJjaGVyLW1hcmtlci1icmVha3BvaW50cyAtIFB1bnRvcyBkZSBydXB0dXJhIGVuIGxhcyBjb2x1bW5hcyBhIGRpc3RpbnRhcyBkaW1lbnNpb25lcy5cbi8vLyBAcGFyYW1ldGVyICAgIHtOdW1iZXJ9IHNlYXJjaGVyLW1hcmtlci1mb250LXNpemUgLSBUYW1uYcOxbyBkZSBmdWVudGUgZGVsIG1hcmNhZG9yLlxuLy8vIEBwYXJhbWV0ZXIgICAge0xpc3R9IHNlYXJjaGVyLWJ1dHRvbi1kZWZhdWx0LWNvbG9ycyAtIFBhciBjb24gZWwgY29sb3IgZGUgdGV4dG8geSBmb25kbyBkZSBsb3MgYm90b25lcyBwb3IgZGVmZWN0b1xuLy8vIEBwYXJhbWV0ZXIgICAge0xpc3R9IHNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzIC0gUGFyIGNvbiBlbCBjb2xvciBkZSB0ZXh0byB5IGZvbmRvIGRlbCBib3TDs24gZGUgYW1wbGlhciB5L28gY29tbyBsbGVnYXIuXG5AbWl4aW4gc2hvdy1tYXAoJGhlaWdodCwgXG4gICAgICAgICAgICAgICAgJG9wdGlvbnMtZGlzcG9zaXRpb24sXG4gICAgICAgICAgICAgICAgJGluZm93aW5kb3ctYm9keS1mb250LXNpemUsXG4gICAgICAgICAgICAgICAgJGluZm93aW5kb3ctYm9keS10ZXh0LWNvbG9yLFxuICAgICAgICAgICAgICAgICRpbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZSxcbiAgICAgICAgICAgICAgICAkaW5mb3dpbmRvdy1saW5rLWZvbnQtc2l6ZSxcbiAgICAgICAgICAgICAgICAkc2VhcmNoZXItZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1sZWdlbmQtZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1maWVsZHNldC1oYXMtYm9yZGVyLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1sZWdlbmQtaGFzLWJvcmRlcixcbiAgICAgICAgICAgICAgICAkc2VhcmNoZXItYm9yZGVyLWNvbG9yLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1idXR0b24tZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1tYXJrZXItY29sdW1ucyxcbiAgICAgICAgICAgICAgICAkc2VhcmNoZXItbWFya2VyLWJyZWFrcG9pbnRzLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1tYXJrZXItZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICRzZWFyY2hlci1idXR0b24tZGVmYXVsdC1jb2xvcnMsXG4gICAgICAgICAgICAgICAgJHNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzKSB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgICY6bm90KC5lbXB0eS1jb21wb25lbnQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRoYWxmR3V0dGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBWYWxvcmVzIHBvciBkZWZlY3RvIHF1ZSBhc2lnbmFtb3MuXG4gICAgICAgICR4c19tYXA6IGlmKG1hcC1oYXMta2V5KCRvcHRpb25zLWRpc3Bvc2l0aW9uLCd4cycpLG1hcC1nZXQoJG9wdGlvbnMtZGlzcG9zaXRpb24sJ3hzJyksMTIpO1xuICAgICAgICAkc21fbWFwOiBpZihtYXAtaGFzLWtleSgkb3B0aW9ucy1kaXNwb3NpdGlvbiwnc20nKSxtYXAtZ2V0KCRvcHRpb25zLWRpc3Bvc2l0aW9uLCdzbScpLCcnKTtcbiAgICAgICAgJG1kX21hcDogaWYobWFwLWhhcy1rZXkoJG9wdGlvbnMtZGlzcG9zaXRpb24sJ21kJyksbWFwLWdldCgkb3B0aW9ucy1kaXNwb3NpdGlvbiwnbWQnKSwnJyk7XG4gICAgICAgICRsZ19tYXA6IGlmKG1hcC1oYXMta2V5KCRvcHRpb25zLWRpc3Bvc2l0aW9uLCdsZycpLG1hcC1nZXQoJG9wdGlvbnMtZGlzcG9zaXRpb24sJ2xnJyksJycpO1xuICAgICAgICBcbiAgICAgICAgJGhhc1JvdzogaWYoKCRzbV9tYXAgIT0gJycgb3IgJG1kX21hcCAhPSAnJyBvciAkbGdfbWFwICE9ICcnIG9yIGZpcnN0KCR4c19tYXApIT0xMiksdHJ1ZSxmYWxzZSk7XG4gICAgICAgIFxuICAgICAgICBAaWYgJGhhc1JvdyB7XG4gICAgICAgICAgICAuY29udGVudERhdGEyLCBcbiAgICAgICAgICAgIC5jbU1hcF9hY3R1YWxNYXAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBcbiAgICAgICAgLmNtTWFwX0NvbnRhaW5lciB7XG4gICAgICAgICAgICBAaWYgJGhhc1JvdyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oZmlyc3QoJHhzX21hcCkpO1xuICAgICAgICAgICAgICAgIEBpZiAkc21fbWFwICE9ICcnIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oZmlyc3QoJHNtX21hcCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgJG1kX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtbWQtY29sdW1uKGZpcnN0KCRtZF9tYXApKTtcbiAgICAgICAgICAgICAgICB9ICAgICBcbiAgICAgICAgICAgICAgICBAaWYgJGxnX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKGZpcnN0KCRsZ19tYXApKTtcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY21NYXBfZ29vZ2xlTWFwcyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAubGVhZmxldC10b29sdGlwLmNsdXN0ZXItbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmxlYWZsZXQtcm91dGluZy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktZGFya2VyO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubGVhZmxldC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAubGVhZmxldC1tYXAtcGFuZSxcbiAgICAgICAgICAgICAgICAgICAgLmxlYWZsZXQtdG9wLFxuICAgICAgICAgICAgICAgICAgICAubGVhZmxldC1ib3R0b20ge1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGRpdi5pbmZvV2luZG93T3ZlcmxheVRvU2hvdyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGluZm93aW5kb3ctYm9keS1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRpdi5pbmZvV2luZG93V3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIENhbGN1bGFtb3MgbGEgYW5jaHVyYSBtw6F4aW1hIGVuIGZ1bmNpw7NuIGRlbCB0YW1hw7FvIGRlIGxhIGNlbGRhLlxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJGRpbXNtOiBpZigkc21fbWFwIT0nJyxmaXJzdCgkc21fbWFwKSxmaXJzdCgkeHNfbWFwKSk7XG4gICAgICAgICAgICAgICAgICAgICRkaW1tZDogaWYoJG1kX21hcCE9JycsZmlyc3QoJG1kX21hcCksJGRpbXNtKTtcbiAgICAgICAgICAgICAgICAgICAgJGRpbWxnOiBpZigkbGdfbWFwIT0nJyxmaXJzdCgkbGdfbWFwKSwkZGltbWQpO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAwLjYgKiAkY29udGFpbmVyLXNtICogJGRpbXNtIC8gJGdyaWQtY29sdW1ucztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDAuNiAqICRjb250YWluZXItbWQgKiAkZGltbWQgLyAkZ3JpZC1jb2x1bW5zO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMC42ICogJGNvbnRhaW5lci1sZyAqICRkaW1sZyAvICRncmlkLWNvbHVtbnM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaW5mb3dpbmRvdy1ib2R5LWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRpbmZvd2luZG93LWJvZHktdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQtbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnROYW1lLFxuICAgICAgICAgICAgICAgICAgICAuY29udGVudC10ZXh0LFxuICAgICAgICAgICAgICAgICAgICAuY29udGVudEFic3RyYWN0LFxuICAgICAgICAgICAgICAgICAgICAuaW5mb1dpbmRvd1VybCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50LW5hbWUsXG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50TmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRpbmZvd2luZG93LXRpdGxlLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmluZm9XaW5kb3dVcmwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaW5mb3dpbmRvdy1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgLmluZm9XaW5kb3dDb250ZW50cyAuc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDMqJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1iYXNlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY21NYXBfc2VhcmNoRm9ybSB7XG4gICAgICAgICAgICBAaWYgJGhhc1JvdyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4obGFzdCgkeHNfbWFwKSk7XG4gICAgICAgICAgICAgICAgQGlmKGxhc3QoJHhzX21hcCkgPT0gMTIpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAaWYgJHNtX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2Utc20tY29sdW1uKGxhc3QoJHNtX21hcCkpO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgQGlmKGxhc3QoJHNtX21hcCkgPT0gMTIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICRtZF9tYXAgIT0gJycge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbihsYXN0KCRtZF9tYXApKTtcbiAgICAgICAgICAgICAgICAgICAgQGlmKGxhc3QoJG1kX21hcCkgPT0gMTIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9ICAgICBcbiAgICAgICAgICAgICAgICBAaWYgJGxnX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKGxhc3QoJGxnX21hcCkpO1xuICAgICAgICAgICAgICAgICAgICBAaWYobGFzdCgkbGdfbWFwKSA9PSAxMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRoYWxmR3V0dGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICBcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBMYSBjb25maWd1cmNpw7NuIGVzcGVjaWFsIGRlIGxhIHpvbmEgZGUgb3BjaW9uZXMgZGVsIG1hcGEuXG4gICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgQGlmICRzZWFyY2hlci1maWVsZHNldC1oYXMtYm9yZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlYXJjaGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2VhcmNoZXItZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgICAgICAgICBAaWYgJHNlYXJjaGVyLWZpZWxkc2V0LWhhcy1ib3JkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgJHNlYXJjaGVyLWxlZ2VuZC1oYXMtYm9yZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlYXJjaGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRoYWxmR3V0dGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNlYXJjaGVyLWxlZ2VuZC1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJiArIGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAvLyBMYSBhbHR1dHJhLCBkb3MgdmVjZXMgZWwgcGFkZGluZyAoc3VwZXJpb3IgZSBpbmZlcmlvcikgeSAyIHBpeGVscyBkZSBib3JkZVxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGFkZCgoJHNlYXJjaGVyLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlKSwyKiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyArIDIpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgMiokbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNlYXJjaGVyLWZvbnQtc2l6ZSA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAoJHNlYXJjaGVyLWZvbnQtc2l6ZSAgKiAkbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcsMiokbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWFyY2hlci1mb250LXNpemUgLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJHNlYXJjaGVyLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzZWFyY2hlci1mb250LXNpemUgO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogKCRzZWFyY2hlci1mb250LXNpemUgICogJGxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLm1hcmtlcnMge1xuICAgICAgICAgICAgICAgIGZpZWxkc2V0IGRpdiB7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWFueSgkc2VhcmNoZXItbWFya2VyLWNvbHVtbnMsJHNlYXJjaGVyLW1hcmtlci1icmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNlYXJjaGVyLW1hcmtlci1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArIC5idXR0b25zIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZywyKiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNlYXJjaGVyLWJ1dHRvbi1mb250LXNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgkc2VhcmNoZXItYnV0dG9uLWZvbnQtc2l6ZSogJGxpbmUtaGVpZ2h0LWJhc2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLy8gQ3JlYW1vcyBlbCBtYXJrdXAgZGUgbG9zIGJvdG9uZXMuXG4gICAgICAgICAgICAgICAgLmJ0bi1zaG93bGlzdCxcbiAgICAgICAgICAgICAgICAuYnRuLXByaW50bGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KGZpcnN0KCRzZWFyY2hlci1idXR0b24tZGVmYXVsdC1jb2xvcnMpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0KCRzZWFyY2hlci1idXR0b24tZGVmYXVsdC1jb2xvcnMpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0KCRzZWFyY2hlci1idXR0b24tZGVmYXVsdC1jb2xvcnMpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJ0bi1ob3d0b2Fycml2ZSxcbiAgICAgICAgICAgICAgICAuYnRuLWVubGFyZ2VtYXAge1xuICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoZmlyc3QoJHNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3QoJHNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3QoJHNlYXJjaGVyLWJ1dHRvbi1hcnJpdmUtY29sb3JzKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY21TZWFyY2hDb250YWluZXIgKyAubWFya2VycyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jbVNlYXJjaENvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgc2VsZWN0LCBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgXG4gICAgICAgIH0gIFxuICAgIH1cbn1cblxuLy8vIE1peGluIGltcGxlbWVudGFyIGxvcyBlc3RpbG9zIGRlIGEgZW4gY29uanVudG9cbi8vL1xuLy8vIEBwYXJhbWV0ZXIgIHtTdHJpbmd9IGNzcy1jbGFzc1snJ10gIC0gTm9tYnJlIGRlIGxhIGNsYXNlIG8gZWxlbWVudG8gZG9uZGUgYXBsaWNhciBsb3MgZXN0aWxvcyA6bGluayB5IDp2aXNpdGVkLCBzaSBubyBzZSBlc3BlY2lmaWNhIHNlIHV0aWxpemFtb3MgY3BvbW8gdmFsb3IgZWwgbm9kbyBlbiBlbCBxdWUgbm9zIGVuY29udHJhbW9zXG4vLy8gQHBhcmFtZXRlciAge0Jvb2xlYW59IGhvdmVyIFt0cnVlXSAgLSBQb3IgZGVmZWN0byBzZSBpbmNsdXllbiBsb3MgZXZlbnRvcyA6aG92ZXIsIDphY3RpdmUgeSA6Zm9jdXNcbi8vLyBAY29udGVudCAgICBJbmZvcm1hY2nDs24gZXh0cmEgYSBhw7FhZGlyIGFsIGJsb3F1ZSBkZSBpbmZvcm1hY2nDs25cbkBtaXhpbiBhLWV2ZW50cygkY3NzLWNsYXNzOicnLCAkaG92ZXI6IHRydWUpIHtcblxuICAgIEBpZiAkY3NzLWNsYXNzID09ICcnIHtcbiAgICAgICAgJiwgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAgICN7JGNzcy1jbGFzc30sXG4gICAgICAgICN7JGNzcy1jbGFzc306dmlzaXRlZCB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGhvdmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGEtZXZlbnRzLWhvdmVyKCRjc3MtY2xhc3MpIHtcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIE1peGluIGltcGxlbWVudGFyIGxvcyBldmVudG9zIGRlIGxvcyBlc3RpbG9zIGRlIHVuIGEgZW4gY29uanVudG9cbi8vL1xuLy8vIEBwYXJhbWV0ZXIgIHtTdHJpbmd9IGNzcy1jbGFzcyAgICAgIC0gTm9tYnJlIGRlIGxhIGNsYXNlIG8gZWxlbWVudG8gZG9uZGUgYXBsaWNhciBsb3MgZXN0aWxvcyA6aG92ZXIsIDphY3RpdmUgeSA6Zm9jdXMsIHNpIG5vIHNlIGVzcGVjaWZpY2Egc2UgdXNhIGVsIHZhbG9yIGRlbCBub2RvIGFjdGl2b1xuLy8vIEBjb250ZW50ICAgIEluZm9ybWFjacOzbiBleHRyYSBhIGHDsWFkaXIgYWwgYmxvcXVlIGRlIGluZm9ybWFjacOzblxuQG1peGluIGEtZXZlbnRzLWhvdmVyKCRjc3MtY2xhc3M6JycpIHtcbiAgICBAaWYgJGNzcy1jbGFzcyA9PSAnJyB7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZTpob3ZlcixcbiAgICAgICAgJjphY3RpdmU6Zm9jdXMge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skY3NzLWNsYXNzfTpob3ZlcixcbiAgICAgICAgI3skY3NzLWNsYXNzfTphY3RpdmUsXG4gICAgICAgICN7JGNzcy1jbGFzc306Zm9jdXMsXG4gICAgICAgICN7JGNzcy1jbGFzc306YWN0aXZlOmhvdmVyLFxuICAgICAgICAjeyRjc3MtY2xhc3N9OmFjdGl2ZTpmb2N1cyB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIE1peGluIHF1ZSBwZXJtaXRlIGltcHJpbWlyIHVuIGTDrWEgZGUgY2FsZW5kYXJpbyBjb25jcmV0b1xuLy8vIFxuLy8vIEBwYXJhbWV0ZXIge0Jvb2xlYW59ICRlbmNpcmNsZWQgLSBTaSB0ZW5lbW9zIHF1ZSBpbnRyb2R1Y2lyIC0gbyBubyAtIGVuIHVuIGNpcmN1bG8gZWwgZMOtYVxuLy8vIEBwYXJhbWV0ZXIge0xpc3R9ICRjb2xvcnMgLSBMaXN0YSBjb24gZWwgY29sb3IgZGUgZm9uZG8gKGVsIHByaW1lciBjb2xvcikgeSBlbCBjb2xvciBhY3Rpdm8gKGVsIHNlZ3VuZG8gY29sb3IpXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSAkYXNwZWN0LXJhdGlvIC0gTGEgcmVsYWNpw7NuIGRlIGFzcGVjdG8gZGUgbGEgY2VsZGEgcXVlIHRlbmVtb3MuXG4vLy8gQHBhcmFtZXRlciB7Qm9vbGVhbn0gJHZhbGlnbltmYWxzZV0gIC0gU2kgZGViZW1vcyBhbGluZWFyIGVsIGTDrWEgdmVydGljYWxtZW50ZSBvIG5vLlxuLy8vIEBwYXJhbWV0ZXIge0xpc3R9ICRpY29uIFsnJ10gLSBFbCBpY29ubyBxdWUgc2UgaW1wcmltZSBiYWpvIGVsIGTDrWEgZW4gZWwgY2FzbyBkZSBxdWUgZWwgZXZlbnRvIHNlIG1ldGEgZW4gdW4gY8OtcmN1bG8uIEluY2x1eWUgZnVlbnRlLCBjYXJhY3RlciB5IHRhbWHDsW8uXG5AbWl4aW4gcHJpbnQtZGF5KCRlbmNpcmNsZWQsJGNvbG9ycywkYXNwZWN0LXJhdGlvLCR2YWxpZ246ZmFsc2UsJGljb246JycpIHtcbiAgICAmIHtcbiAgICAgICAgLy8gU2kgZWwgY2FsZW5kYXJpbyBlc3TDoSBlbiB1biBjaXJjdWxvLCBsbyBxdWUgaGFjZW1vcyBlcyBtb2RpZmljYXIgZWwgdGFibGUgaW50ZXJubyB5IGVsIHRhYmxlLWNlbGwgaW50ZXJub1xuICAgICAgICBAaWYgJGVuY2lyY2xlZCB7XG4gICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIC5hY3R1YWwtZGF5LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hY3R1YWwtZGF5LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBAaWYgJGljb24gIT0gJycge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzUlIC8gJGFzcGVjdC1yYXRpbztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KG50aCgkaWNvbiwxKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbnRoKCRpY29uLDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogbnRoKCRpY29uLDMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlIC8gJGFzcGVjdC1yYXRpbztcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAkdmFsaWduIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUgLyAkYXNwZWN0LXJhdGlvKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlIC8gJGFzcGVjdC1yYXRpbyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUgLyAkYXNwZWN0LXJhdGlvKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5hY3R1YWwtZGF5LXRhYmxlLWNlbGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAvLyBSZXNldGFtb3MgcHVlc3RvIHF1ZSBwdWVkZSBjb2luY2lkaXIgY29uIHVuIGTDrWEgZmVzdGl2by5cbiAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgLmFjdHVhbC1kYXktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYWN0dWFsLWRheS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmICR2YWxpZ24gPT0gZmFsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCUgLyAkYXNwZWN0LXJhdGlvO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlIC8gJGFzcGVjdC1yYXRpbyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlIC8gJGFzcGVjdC1yYXRpbyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSAvICRhc3BlY3QtcmF0aW8pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAuYWN0dWFsLWRheS10YWJsZS1jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gQWhvcmEgdGVuZW1vcyBxdWUgY29sb3JlYXIgZWwgZm9uZG8gZGUgbGEgY2VsZGEuXG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhLWV2ZW50cy1ob3ZlcignYS5hY3R1YWwtZGF5LWNvbnRhaW5lcicpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGFzdCgkY29sb3JzKTtcbiAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgIEBpZigkZW5jaXJjbGVkID09IGZhbHNlIGFuZCAkdmFsaWduKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZmlyc3QoJGNvbG9ycyk7XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmFjdHVhbC1kYXktd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGxhc3QoJGNvbG9ycyk7XG4gICAgICAgICAgICAgICAgQGlmKCRlbmNpcmNsZWQgb3IgJHZhbGlnbiA9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAuYWN0dWFsLWRheS10YWJsZS1jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGZpcnN0KCRjb2xvcnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gTWl4aW4gcXVlIG5vcyBwZXJtaXRlIHViaWNhciBhZGVjdWFkYW1lbnRlIHVuIGNhbGVuZGFyaW8gZW4gZWwgc2lzdGVtYSwgY29uIGVsIG9iamV0byBkZSBxdWUgcHVlZGFcbi8vLyBzZXIgcmVjb2xvY2FibGUgYmFqbyBjaWVydGFzIGNpcmN1bnN0YW5jaWFzLCBwb3IgZWplbXBsbyBsbyB1YmljYW1vcyBlbiB1bmEgem9uYSBjb24gbWVub3MgZXNwYWNpbyBsaWJyZSB5XG4vLy8gbmVjZXNpdGFtb3MgZGlzcG9uZXIgZWwgbGlzdGFkbyBkZSB1bmEgZm9ybWEgYWx0ZXJuYXRpdmEuXG4vLy9cbi8vLyBAcGFyYW1ldGVyIHtNYXB9IG1vbnRoZXZlbnRzLWJsb2NrLXNpemUgWycnXSBVbiBtYXBhIGNvbiBlbCB0YW1hw7FvIHF1ZSBvY3VwYSBsYSBjZWxkYSBkZSBjb250ZW5pZG9zXG5AbWl4aW4gcGxhY2UtY2FsZW5kYXItYmxvY2soJG1vbnRoZXZlbnRzLWJsb2NrLXNpemUpIHtcbiAgICAmIHtcbiAgICAgICAgLy8gVmFtb3MgYSBpbnRlbnRhciBjYWxjdWxhciBsYSBkaXNwb25pYmlsaWRhZCBxdWUgdGVuZW1vcyBkZSBjYWRhIGNhc28gY29uY3JldG8gcGFyYSB2ZXIgXG4gICAgICAgIC8vIGNvbW8gZGlidWphbW9zIGxhIGluZm9ybWFjacOzbi5cbiAgICAgICAgJHhzX21hcDogaWYobWFwLWhhcy1rZXkoJG1vbnRoZXZlbnRzLWJsb2NrLXNpemUsJ3hzJyksbWFwLWdldCgkbW9udGhldmVudHMtYmxvY2stc2l6ZSwneHMnKSwxMik7XG4gICAgICAgICRzbV9tYXA6IGlmKG1hcC1oYXMta2V5KCRtb250aGV2ZW50cy1ibG9jay1zaXplLCdzbScpLG1hcC1nZXQoJG1vbnRoZXZlbnRzLWJsb2NrLXNpemUsJ3NtJyksJycpO1xuICAgICAgICAkbWRfbWFwOiBpZihtYXAtaGFzLWtleSgkbW9udGhldmVudHMtYmxvY2stc2l6ZSwnbWQnKSxtYXAtZ2V0KCRtb250aGV2ZW50cy1ibG9jay1zaXplLCdtZCcpLCcnKTtcbiAgICAgICAgJGxnX21hcDogaWYobWFwLWhhcy1rZXkoJG1vbnRoZXZlbnRzLWJsb2NrLXNpemUsJ2xnJyksbWFwLWdldCgkbW9udGhldmVudHMtYmxvY2stc2l6ZSwnbGcnKSwnJyk7XG4gICAgICAgIFxuICAgICAgICAkaGFzUm93OiBpZigoJHNtX21hcCAhPSAnJyBvciAkbWRfbWFwICE9ICcnIG9yICRsZ19tYXAgIT0gJycgb3IgJHhzX21hcCE9MTIpLHRydWUsZmFsc2UpO1xuICAgICAgICBcbiAgICAgICAgQGlmICRoYXNSb3cge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gQWhvcmEgZGlidWphbW9zIGVsIGVzcGFjaWFkbyBlbiBjb2x1bW5hcyBkZSBjYWRhIHVuYSBkZSBsYXMgZG9zIHBhcnRlcyBxdWUgdGVuZW1vcyBkZSBsYSBwYW50YWxsYS5cbiAgICAgICAgICAgIC5jbUNhbGVuZGFyVmlld0NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oaWYoJHhzX21hcCA9PSAxMiwxMiwxMi0keHNfbWFwKSk7XG4gICAgICAgICAgICAgICAgQGlmICRzbV9tYXAgIT0gJycge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbihpZigkc21fbWFwID09IDEyLDEyLDEyLSRzbV9tYXApKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICRtZF9tYXAgIT0gJycge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLW1kLWNvbHVtbihpZigkbWRfbWFwID09IDEyLDEyLDEyLSRtZF9tYXApKTtcbiAgICAgICAgICAgICAgICB9ICAgICBcbiAgICAgICAgICAgICAgICBAaWYgJGxnX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKGlmKCRsZ19tYXAgPT0gMTIsMTIsMTItJGxnX21hcCkpO1xuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY21Nb250aEV2ZW50c0NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oJHhzX21hcCk7XG4gICAgICAgICAgICAgICAgQGlmICR4c19tYXAgPT0gMTIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRoYWxmR3V0dGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAkc21fbWFwICE9ICcnIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oJHNtX21hcCk7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAkc21fbWFwID09IDEyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAkbWRfbWFwICE9ICcnIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oJG1kX21hcCk7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAkbWRfbWFwID09IDEyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9ICAgICBcbiAgICAgICAgICAgICAgICBAaWYgJGxnX21hcCAhPSAnJyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtbGctY29sdW1uKCRsZ19tYXApO1xuICAgICAgICAgICAgICAgICAgICBAaWYgJGxnX21hcCA9PSAxMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIH1cbiAgICBcbiAgICBcbiAgICB9XG5cbn1cblxuXG4gLy8vIE1peGluIGRlIHV0aWxpZGFkIHBhcmEgbWFxdWV0YXIgdW4gZm9ybXVsYXJpbyBnZW5lcmFsLCBjb24gdW4gY29sb3IgZGUgZm9uZG8geSBjb24gdW5hIHJlcHJlc2VudGFjacOzbiBkZSBlbGVtZW50b3MgZW4gbiBjb2x1bW5hcyBjb24gaW5kZXBlbmRlbmNpYVxuIC8vLyBkZSBsb3MgZGF0b3MgaW50ZXJub3MgcXVlIHRlbmdhbW9zIHJlZmxlamFkb3MuIFNlIG1hbnRpZW5lIGFxdWkgcG9yIHNpIGVzIG5lY2VzYXJpbyBzdSB1c28gZW4gZGlzdGludG9zIHByb3llY3RvcywgbWFxdWV0YSBkZSBmb3JtYSBwcmVkZXRlcm1pbmFkYVxuIC8vLyBsb3MgYm90b25lcywgZXRjLlxuIC8vL1xuIC8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGNvbHMgICAgIC0gRWwgbsO6bWVybyBkZSBjb2x1bW5hcyBjb24gZWwgcXVlIHNlIHJlcHJlc2VudGFyYSBlbCBjb250ZW5pZG9cbiAvLy8gQHBhcmFtZXRlciB7U3RyaW5nfSBiZ0NvbG9yICAtIEVsIGNvbG9yIGRlIGZvbmRvIGRlbCBmb3JtdWxhcmlvXG4gLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gZm9udFNpemUgLSBFbCB0YW1hw7FvIGRlIGZ1ZW50ZSBwYXJhIGVsIGZvcm11bGFyaW9cbkBtaXhpbiBmb3JtKCRjb2xzOjEsJGJnQ29sb3I6JGdyYXktbGlnaHRlciwkZm9udFNpemU6JGZvbnQtc2l6ZS1zbWFsbCkge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdDb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udFNpemU7XG4gICAgICAgIHBhZGRpbmc6ICRoYWxmR3V0dGVyO1xuXG4gICAgICAgICYubm8tZmllbGRzZXRzIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGhhbGZHdXR0ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBkaXYucHJveGlhX21hcFRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oMTIpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY21TZWFyY2hMYWJlbCwgXG4gICAgICAgICAgICAuY21Mb2NhdGlvbkxlZ2VuZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Itb25seTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuZm9ybS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICAgICAgICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oMTIpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbig2KTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1tZC1jb2x1bW4oNCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBcbiAgICAgICAgLnBhbmVsIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcblxuICAgICAgICAgICAgICAgICYgKyAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRoYWxmR3V0dGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFuZWwtYm9keSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmKCRjb2xzID4gMSkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5pemUtYW55KCRjb2xzLCgpKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tZ3JvdXA6bnRoLWNoaWxkKCN7JGNvbHN9KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgLnBhbmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY21TZWFyY2hCdXR0b25ab25lLFxuICAgICAgICAuZGl2Qm90dG9tICB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAvLyBQaXNhbW9zIGxvcyBib3RvbmVzLi4uXG4gICAgICAgICAgICAuYnRuLWRlZmF1bHQsXG4gICAgICAgICAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZywyKiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udFNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCRmb250U2l6ZSogJGxpbmUtaGVpZ2h0LWJhc2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLWRlZmF1bHQgIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkZ3JheS1kYXJrLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRiZ0NvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRiZ0NvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5cbi8vLyBNaXhpbiBwYXJhIGVsIG1lbsO6IHByaW5jaXBhbCBcbi8vLyBcbi8vLyBTZSBwdWVkZSBlc3BlY2lmaWNhciBhIHBhcnRpciBkZSBxdWUgZXNjZW5hcmlvIHNlIHF1aWVyZSBxdWUgYXBhcmV6Y2EgbGEgaGFtYnVyZ3Vlc2E6IHBvciBkZWZlY3RvIGxhIFhTICRjb2xzOjFcbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IHNjcmVlbi1tYXggIC0gRWwgdGFtYcOxbyBtYXhpbW8gZGUgcGFudGFsbGEgcGFyYSBhcGxpY2FyIGEgbGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWluLW1lbnUtaG9sZGVyKCRzY3JlZW4tbWF4OiB4cywgJG1lbnVPcGVuQ29udGFpbmVyOiAndWwuY21NZW51TGV2ZWwxJykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkc2NyZWVuLW1heCkge1xuXHRcdC5tYWluTWVudSB7XG5cdFx0XHQvLyBMbyBvY3VsdGFtb3MgZW4gZXN0ZSBuaXZlbC4uLlxuXHRcdFx0I3skbWVudU9wZW5Db250YWluZXJ9IHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogLTEwMCU7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRwYWRkaW5nOiRoYWxmR3V0dGVyIDA7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdHotaW5kZXg6IDEyMDtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7ICAgICAgICBcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ly8gQWhvcmEgbG8gbW9zdHJhbW9zLCBjdWFuZG8gZXN0YSBlbCBtZW7DuiBhYmllcnRvLlxuXHRcdFx0Ji5tZW51T3BlbiAjeyRtZW51T3BlbkNvbnRhaW5lcn0ge1xuXHRcdFx0XHR0b3A6IDc1cHg7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjtcblx0XHRcdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0XHRcdGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRoYWxmR3V0dGVyO1xuXHRcdFx0XHQuY21NZW51TGluayB7XG5cdFx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0XHQmOmZvY3VzLFxuXHRcdFx0XHRcdCY6YWN0aXZle1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRwcm94aWEtbGlua3MtY29sb3ItaG92ZXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuICAgICAgICAgICAgXG4gICAgICAgICAgICB1bC5jbU1lbnVMZXZlbDF7XG4gICAgICAgICAgICAgICAgPiBsaSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0Ji5oYXNTdWJlbGVtZW50cyA+IGRpdiB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ly8gUXVpdGFtb3MgZWwgZWZlY3RvIDpob3ZlciwgcGFyYSBxdWUgbm8gaGFnYSBleHRyYcOxb3Ncblx0XHRcdFx0XHQmLmhhc1N1YmVsZW1lbnRzOmhvdmVyID4gZGl2LFxuICAgICAgICAgICAgICAgICAgICAmLmhhc1N1YmVsZW1lbnRzOmZvY3VzLXdpdGhpbiA+IGRpdntcblx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcblx0XHRcdFx0XHRcdC1tb3otdHJhbnNpdGlvbjogbm9uZTtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHQtd2Via2l0LWFuaW1hdGlvbjogbm9uZTtcblx0XHRcdFx0XHRcdGFuaW1hdGlvbjogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmNtTWVudUxldmVsMiB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogJGhhbGZHdXR0ZXI7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LWNvbHVtbnMoMSxcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQgICRzdWJtZW51LWljb24sXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICAkc3VibWVudS1pY29uLWZvbnQsXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0ICAkc3VibWVudS1pY29uLXBhZGRpbmcpOyAgICAgICAgICAgICAgICBcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ly8gQcOxYWRpbW9zIHVuIG1hcmdlbiByZXNwZWN0byBhbCBwcmltZXJvIGVuIGVsIHNlZ3VuZG8gZWxlbWVudG8gZGUgbWVuw7ouXG5cdFx0XHRcdFx0KyBsaSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuICAgICAgICAgICAgfVxuXG5cdFx0XHQuaG9sZGVyIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6ICRoYWxmR3V0dGVyO1xuXHRcdFx0XHRyaWdodDogJGhhbGZHdXR0ZXI7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0cGFkZGluZzogJGhhbGZHdXR0ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHQuaWNvbi1iYXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiAyMnB4O1xuXHRcdFx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDFweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0XHRcdCsgLmljb24tYmFyIHtcblx0XHRcdFx0XHRcdG1hcmdpbjogNHB4IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLy8gTWl4aW4gcGFyYSBpbmNsdWlyIGVsIHNvcG9ydGUgYsOhc2ljbyBwYXJhIGZsZXggZW4gdG9kb3MgbG9zIG5hdmVnYWRvcmVzXG5AbWl4aW4gZmxleCgpIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIE1peGluIGRlIHV0aWxpZGFkIHBhcmEgbWFxdWV0YXIgY29uIEZMRVhCT1hcbi8vL1xuLy8vIEZsZXhib3ggZXMgdW4gc2lzdGVtYSBkZSBlbGVtZW50b3MgZmxleGlibGVzIHF1ZSBsbGVnYSBjb24gbGEgaWRlYSBkZSBvbHZpZGFyIGVzdG9zIG1lY2FuaXNtb3MgeSBhY29zdHVtYnJhcm5vcyBhXG4vLy8gdW5hIG1lY8OhbmljYSBtw6FzIHBvdGVudGUsIGxpbXBpYSB5IHBlcnNvbmFsaXphYmxlLCBlbiBsYSBxdWUgbG9zIGVsZW1lbnRvcyBIVE1MIHNlIGFkYXB0YW4geSBjb2xvY2FuIGF1dG9tw6F0aWNhbWVudFxuLy8vIGUgeSBlcyBtw6FzIGbDoWNpbCBwZXJzb25hbGl6YXIgbG9zIGRpc2XDsW9zLiBFc3TDoSBlc3BlY2lhbG1lbnRlIGRpc2XDsWFkbyBwYXJhIGNyZWFyLCBtZWRpYW50ZSBDU1MsIGVzdHJ1Y3R1cmFzIGRlIHVuYSBzw7NsYSBkaW1lbnNpw7NuLlxuLy8vXG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSAkYWxpZ24gIC0gVXNhZGEgcGFyYSBhbGluZWFyIGxvcyDDrXRlbXMgZGVsIGVqZSBzZWN1bmRhcmlvIChwb3IgZGVmZWN0bywgZWwgdmVydGljYWwpLlxuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gJGp1c3RpZnkgIC0gU2UgdXRpbGl6YSBwYXJhIGFsaW5lYXIgbG9zIMOtdGVtcyBkZWwgZWplIHByaW5jaXBhbCAocG9yIGRlZmVjdG8sIGVsIGhvcml6b250YWwpLlxuLy8vIEBwYXJhbWV0ZXIge1N0cmluZ30gJGRpcmVjdGlvbiAgLSBDYW1iaWEgbGEgb3JpZW50YWNpw7NuIGRlbCBlamUgcHJpbmNpcGFsLlxuQG1peGluIGZsZXhib3goJGFsaWduOiBub3JtYWwsICRqdXN0aWZ5OiBub3JtYWwsICRkaXJlY3Rpb246IHJvdykge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246ICAkZGlyZWN0aW9uO1xuICAgIGFsaWduLWl0ZW1zOiAgICAgJGFsaWduO1xuICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XG59XG5cbi8vLyBNaXhpbiBkZSB1dGlsaWRhZCBwYXJhIGVsaW1pbmFyIGVsIGJvcmRlYWRvIG5hdGl2byBkZWwgbmF2ZWdhZG9yIGVuIGVsIGZvY3VzIGRlIGxvcyBlbGVtZW50b3MuXG4vLy8gUG9kZW1vcyBhcGxpY2FybG8gY3VhbmRvIHRlbmVtb3MgZXN0aWxvcyBjdXN0b20gcGFyYSBlbCBob3ZlciwgZm9jdXMgbyBhY3RpdmUuXG5AbWl4aW4gcmVtb3ZlLWZvY3VzKCkge1xuICAgIGJvcmRlcjogICAgIG5vbmU7XG4gICAgb3V0bGluZTogICAgbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vLy8gR2VuZXJhIHVuIGNhcmV0ICh0cmlhbmd1bG8pIHF1ZSBwdWVkZSBzZXIgZW1wbGVhZG8gZW4gbG9zIHNlbGVjdCAocG9yIGRlZmVjdG8gc2UgZW1wbGVhIGVuIGVsbG9zKVxuLy8vIG8gZW4gb3Ryb3MgZWxlbWVudG9zXG4vL1xuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gJHdpZHRoICAtIExhIGFuY2h1cmEgZGVsIGNhcmV0XG4vLy8gQHBhcmFtZXRlciB7U3RyaW5nfSAkY29sb3IgIC0gQ29sb3IgdmluY3VsYWRvIGFsIG1pc21vXG4vLy8gQHBhcmFtZXRlciB7Qm9vbGVhbn0gJGRpcmVjdGlvbiAgLSBDYW1iaWEgbGEgb3JpZW50YWNpw7NuLCBzaSBhcHVudGEgaGFjaWEgYWJham8gKHBvciBkZWZlY3RvKSBvIHNpIHF1ZXJlbW9zIGRhcmxlIGxhIHZ1ZWx0YSBhcHVudGFuZG8gaGFjaWEgYXJyaWJhLlxuQG1peGluIGNhcmV0KCR3aWR0aCwkY29sb3IsJHJldmVyc2U6ZmFsc2UpIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAwIHN1YnRyYWN0KCR3aWR0aCwxcHgpO1xuXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBAaWYoJHJldmVyc2UpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHdpZHRoO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvciB0cmFuc3BhcmVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJHdpZHRoO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cblxuLy8vIE1peGluIHF1ZSBpbmNsdXllIGVsIHRhbWHDsW8gZGUgZnVlbnRlIGp1bnRvIGNvbiBzdSBhbHR1cmEgZGUgbGluZWEgY2FsY3VsYWRhXG4vLy8gQHBhcmFtZXRlciB7TnVtYmVyfSBzaXplIC0gRWwgdGFtYcOxbyBkZSBmdWVudGVcbkBtaXhpbiBmb250U2l6ZSgkc2l6ZSkge1xuICBmb250LXNpemU6ICRzaXplO1xuICBsaW5lLWhlaWdodDogKCgkc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlKSk7XG59XG5cbi8vLyBNaXhpbiBwYXJhIGFwbGljYXIgZWwgdGlwbyBkZSBmdWVudGVcbi8vLyBAcGFyYW1ldGVyIGNvbG9yIC0gQ29sb3IgZGUgbGV0cmEgKGhleCwgbnVtYmVyLCBsZXRyYS4uLilcbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGZvbnQtd2VpZ2h0IC0gZm9udC13ZWlnaHQgZGUgbGEgbGV0cmFcbi8vLyBAcGFyYW1ldGVyIHtOdW1iZXJ9IGZvbnQtc2l6ZSAtIGZvbnQtc2l6ZSBkZSBsYSBsZXRyYVxuLy8vIEBwYXJhbWV0ZXIge051bWJlcn0gZm9udC1mYW1pbHkgLSBmYW1pbGlhIGRlIGxhIGxldHJhIChwb3IgZGVmZWN0byBlbCBkZSBsYSB3ZWIgcXVlIHNlIHZhIGEgZGlzZcOxYXIpXG5AbWl4aW4gZm9udFR5cGUoJGNvbG9yLCAkZm9udC13ZWlnaHQsICRmb250LXNpemUsICRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2UpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGlmICRmb250LWZhbWlseSAhPSAkZm9udC1mYW1pbHktYmFzZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgfVxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0O1xuICBAaW5jbHVkZSBmb250U2l6ZSgkZm9udC1zaXplKTtcbiAgQGNvbnRlbnQ7XG5cbn1cbiIsCgkJIi8vIEVzdGlsb3MgZXNwZWPDrWZpY29zIHBhcmEgbG9zIGlmcmFtZSBkZSBsYSB2ZXJzacOzbiBpbXByaW1pYmxlXG4vLyBMYSB6b25hIGRlIGltcHJlc2nDs24gZ2VuZXJhIHVuIGlmcmFtZSB5IGVzIG5lY2VzYXJpbyBjb25maWd1cmFybG8gYWRlY3VhZGFtZW50ZS5cbi8vIFBhcmEgZWwgY3VlcnBvIGltcHJpbWlibGVcbmJvZHkucHJveGlhLXJlc3RmdWwtcHJpbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi8vIEVsIGlmcmFtZSBjb250ZW5lZG9yXG5pZnJhbWUucHJveGlhLXJlc3RmdWwtcHJpbnRhYmxlIHtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIEluY2x1aW1vcyBmdW5jaW9uYWxpZGFkZXMgZ2Vuw6lyaWNhcyBkZSBwcmVzZW50YWNpw7NuIGRlIHNlcnZpY2lvc1xuZGl2W2RhdGEtcHJveGlhcmVzdGZ1bD1cInRydWVcIl0ge1xuICBAaW1wb3J0IFwicmVhY3QvbmF2aWdhdGlvblwiO1xuICBAaW1wb3J0IFwicmVhY3QvZm9ybVwiO1xuICBAaW1wb3J0IFwicmVhY3QvZGF0ZXBpY2tlclwiO1xuICBAaW1wb3J0IFwicmVhY3QvYXV0b2NvbXBsZXRlXCI7XG4gIEBpbXBvcnQgXCJyZWFjdC9maWxlc1wiO1xuICBAaW1wb3J0IFwicmVhY3QvY29udGVudGNvbnRyb2xcIjtcbiAgQGltcG9ydCBcInJlYWN0L21hc3RlcmRldGFpbFwiO1xuICBAaW1wb3J0IFwicmVhY3QvcHJpbnRcIjtcbiAgQGltcG9ydCBcInJlYWN0L2NvcmVcIjtcbn1cbkBpbXBvcnQgXCJyZWFjdC9kaWFsb2dcIjtcblxuIiwKCQkiLy8gQ29weXJpZ2h0IChjKSAyMDIwLiBEaXZpc2EgaVQgU0FVXG5cbi8qKlxuICogQXNwZWN0byBnZW5lcmFsIGRlbCBzaXN0ZW1hIGRlIG5hdmVnYWNpw7NuIGRlIGxvcyBjb21wb25lbnRlcyBSRUFDVFxuICpcbiAqIEBhdXRob3IgRGF2aWQgUm9kcsOtZ3VleiBBbGZheWF0ZSAoZHJvZHJpZ3VlekBkaXZpc2FpdC5jb20pXG4gKiBAc2luY2UgUHJveGlhIENNUyAxMC4yXG4gKi9cblxuLm5hdmlnYXRpb24ubmF2aWdhdGlvbi1zaG9ydCxcbi5uYXZpZ2F0aW9uLm5hdmlnYXRpb24tbG9uZyB7XG4gIG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci13aWR0aDtcblxuICAudG90YWxQYWdlTGlzdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm51bVBhZ2VMaXN0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLm5hdmlnYXRpb24ubmF2aWdhdGlvbi1zaG9ydCB7XG4gIC5udW1QYWdlTGlzdCB7XG4gICAgPiogKyAqIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgfVxuICB9XG59XG5cbi5uYXZpZ2F0aW9uLm5hdmlnYXRpb24tbG9uZyB7XG4gIC50b3RhbFBhZ2VMaXN0IHtcbiAgICBkaXYge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgJiArIGRpdiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICB9XG4gICAgICAmLmNoYW5nZVBhZ2VTaXplIHtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIHBhZGRpbmc6IDBweCAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgLyAyO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWNvbnRyb2wtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuXG4gICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQ29weXJpZ2h0IChjKSAyMDIwLiBEaXZpc2EgaVQgU0FVXG5cbi8qKlxuICogQXNwZWN0byBnZW5lcmFsIGRlIGZvcm11bGFyaW9zIGRlbnRybyBkZWwgc29wYW9ydGUgZGUgUkVBQ1QgY29uIGxvcyBjb250cm9sZXMgZ2VzdGlvbmFkb3NcbiAqIHBvciBlbCBwcm9waW8gc2lzdGVtYSwgY29udHJvbGVzIHZlcmlmaWNhZG9zLCBhc3BlY3RvIGRlIHJhZGlvIGJ1dHRvbiB5IGNoZWNrcywgcGFkZGluZ1xuICogc29icmUgY2FtcG9zIGRlIGZvcm11bGFyaW9cbiAqXG4gKiBAYXV0aG9yIERhdmlkIFJvZHLDrWd1ZXogQWxmYXlhdGVcbiAqIEBzaW5jZSBQcm94aWEgQ01TIDEwLjJcbiAqL1xuXG5mb3JtLCAuZm9ybSwgLmZvcm0tZmlsdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICA+IC5sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGdyYXktMjAwLDAuMyk7XG4gIH1cbiAgLnRvYXN0ci5mb3JtLWVycm9yIHtcbiAgICBwYWRkaW5nOiAkaGFsZkd1dHRlcjtcbiAgICBtYXJnaW46ICRoYWxmR3V0dGVyO1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLWNvbnRyb2wtZXJyb3JhcmVhLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWNvbnRyb2wtZXJyb3JhcmVhLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tY29udHJvbC1mb250LXNpemU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIHotaW5kZXg6IDQ7XG4gICAgb3BhY2l0eTogMC44O1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgQGluY2x1ZGUgZmxleCgpO1xuICAgIC50b2FzdHItaWNvbiB7XG4gICAgICBAaW5jbHVkZSBmbGV4KCk7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkaGFsZkd1dHRlcjtcbiAgICB9XG4gICAgLnRvYXN0ci1jbG9zZSB7XG4gICAgICAuYnRuIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIEBpbmNsdWRlIGEtZXZlbnRzLWhvdmVyKCkge1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC5yZWFjdC1kYXRlLXBpY2tlci0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIENvbnRyb2xhbW9zIGVsIGFzcGVjdG8gZGUgbGEgZW50cmFkYSBzdWpldGEgYSB1biBjb21wb25lbnRlXG4gIC8vIFJlYWN0IGRlIHRpcG8gVmVyaWZpZWRDb250cm9sXG4gIC5pbnB1dC1ncm91cC52ZXJpZmllZC1jb250cm9sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAuZm9ybS1jb250cm9sW3JlYWRvbmx5XTpub3QoLmRpYWxvZy1pbnB1dC1jb250cm9sKSArIC5pbnB1dC1ncm91cC1hcHBlbmQsXG4gICAgLmZvcm0tY29udHJvbFtyZWFkb25seV06bm90KC5kaWFsb2ctaW5wdXQtY29udHJvbCkgICsgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAgIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgKyAuaW5wdXQtZ3JvdXAtYWRkb24sIFxuICAgIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgKyAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogJGZvcm0tY29udHJvbC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tY29udHJvbC1ib3JkZXItY29sb3I7XG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9ybS1jb250cm9sLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgJltkYXRhLWNvbnRhaW5zLWVycm9yPVwidHJ1ZVwiXSB7XG4gICAgICBib3JkZXItY29sb3I6IHJlZDtcbiAgICB9XG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAmOm5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSkge1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWNvbnRyb2wtaGVpZ2h0LWJhc2U7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAuZmEtdGltZXMge1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgfVxuICAgICAgLmZhLWNoZWNrIHtcbiAgICAgICAgY29sb3I6IGdyZWVuO1xuICAgICAgfVxuICAgICAgLnNob3cge1xuICAgICAgICBjb2xvcjogIzRFNkZCODtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnB1dC1ncm91cC10ZXh0LnVuc2V0IHtcbiAgICAgICoge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuaW5wdXQtZ3JvdXAtYXBwZW5kLFxuICAgIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgICBib3JkZXI6IDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgIG1pbi13aWR0aDogJGhhbGZHdXR0ZXIgKyAyICogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tZ3JvdXAuZm9ybS1pbmxpbmUgbGFiZWwge1xuICAgIG1hcmdpbi1yaWdodDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICB9XG4gIC8vIEFzcGVjdG8gZ2VuZXJhbCBkZSBpbnB1dHMgeSByYWRpby1idXR0b25zIGFzb2NpYWRvcyBhIGNvbnRyb2xlcyBkZSBmb3JtdWxhcmlvXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgZm9udC1zaXplOiAkZm9ybS1jb250cm9sLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tY29udHJvbC1sYWJlbC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIC5yZXF1aXJlZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLmVycm9yIHtcbiAgICBjb2xvcjogdW5zZXQ7XG4gIH1cbiAgbGFiZWwgK2lucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgbGFiZWwgK2lucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHdpZHRoOiAkZm9ybS1jb250cm9sLXJhZGlvLXNpemU7XG4gICAgaGVpZ2h0OiAkZm9ybS1jb250cm9sLXJhZGlvLXNpemU7XG4gICAgdG9wOiAzcHg7XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogJGZvcm0tY29udHJvbC1yYWRpby1zaXplO1xuICAgICAgaGVpZ2h0OiAkZm9ybS1jb250cm9sLXJhZGlvLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jb250cm9sLWJnY29sb3I7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeTtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgICAgICBib3JkZXItY29sb3I6ICRmb3JtLWNvbnRyb2wtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgJHByaW1hcnkgMCUsJHByaW1hcnkgMzUlLCRwcmltYXJ5IDM1JSx0cmFuc3BhcmVudCA0NyUsdHJhbnNwYXJlbnQgNDglKTtcbiAgICB9XG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJHByaW1hcnksICRwcmltYXJ5KSA1MCUgNTAlIC8gNTAlIDUwJTtcbiAgfVxuICB9XG5cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY29udHJvbC1yYWRpby1zaXplO1xuICB9XG5cbiAgLy8gRXZpdGFtb3MgZWwgcmVkaW1lbnNpb25hbWllbnRvIGRlIGxvcyB0ZXh0YXJlYVxuICB0ZXh0YXJlYSB7XG4gICAgcmVzaXplOiBub25lO1xuICB9XG5cbiAgLy8gUXVlcmVtb3MgcXVlIHRvZG9zIGxvcyBjb250cm9sZXMgZGUgZm9ybXVsYXJpb3MgdGVuZ2FuIHVuIGRldGVybWluYWRvXG4gIC8vIHRhbWHDsW9cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY29udHJvbC1ib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY29udHJvbC1ib3JkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkZm9ybS1jb250cm9sLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tY29udHJvbC1saW5lLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jb250cm9sLWJnY29sb3I7XG4gICAgJi5kaWFsb2ctaW5wdXQtY29udHJvbFtyZWFkb25seV06bm90KDpkaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY29udHJvbC1iZ2NvbG9yO1xuICAgIH1cbiAgICAmOm5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KHRleHRhcmVhKSB7XG4gICAgICAmOm5vdCgucmVhY3QtZGF0ZS1waWNrZXIpIHtcbiAgICAgICAgQGlmICRmb3JtLWNvbnRyb2wtcGFkZGluZyE9Jycge1xuICAgICAgICAgIHBhZGRpbmc6ICRmb3JtLWNvbnRyb2wtcGFkZGluZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYm9yZGVyLXdpZHRoOiAkZm9ybS1jb250cm9sLWJvcmRlci13aWR0aDtcbiAgICAgIGhlaWdodDogJGZvcm0tY29udHJvbC1oZWlnaHQ7XG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLWNvbnRyb2wtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLmVycm9yLFxuICAuZm9ybS1jb250cm9sW2RhdGEtZXJyb3I9XCJ0cnVlXCJde1xuICAgIGJvcmRlci1jb2xvcjogcmVkO1xuICB9XG5cbiAgLmVycm9yLWFyZWEtZGVzY3JpcHRpb24uZXJyb3ItYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAzO1xuICAgID4gc3BhbiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgLy8gVHJhYmFqYW1vcyBjb24gcGl4ZWxlcyBwYXJhIGxhIGZsZWNoYSwgdHJhYmFqYXIgY29uIHJlbXMgZGVqYSBjb3NhcyBtdXkgcmFyYXMuXG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICBsZWZ0OiAxLjUqJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZvcm0tY29udHJvbC1lcnJvcmFyZWEtYmFja2dyb3VuZDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgfVxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgZm9udC1zaXplOiAkZm9ybS1jb250cm9sLWVycm9yYXJlYS1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGZvcm0tY29udHJvbC1lcnJvcmFyZWEtZm9udC1zaXplKiRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgYmFja2dyb3VuZDogJGZvcm0tY29udHJvbC1lcnJvcmFyZWEtYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkZm9ybS1jb250cm9sLWVycm9yYXJlYS1jb2xvcjtcbiAgICAgIHBhZGRpbmc6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZy8yICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmb3JtLWNvbnRyb2wtZXJyb3JhcmVhLWFueW9mLWZsb2F0ID09IGZhbHNlKSB7XG4gICAgZGl2W2RhdGEtYW55b2Y9dHJ1ZV0gLmVycm9yLFxuICAgIGxlZ2VuZC5lcnJvcixcbiAgICAubGVnZW5kLmVycm9yIHtcbiAgICAgIC5lcnJvci1hcmVhLWRlc2NyaXB0aW9uLmVycm9yLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb2xvcjogJGZvcm0tY29udHJvbC1lcnJvcmFyZWEtYmFja2dyb3VuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1ncm91cCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmZvcm0tZ3JvdXAgLmVycm9yLWFyZWEtZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQXNwZWN0byBnZW5lcmFsIGRlIGxhcyBldGlxdWV0YXNcbiAgbGFiZWwsXG4gIC5sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtbGFiZWwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1jb250cm9sLWxhYmVsLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICB9XG4gIC5sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG4gIH1cblxuICBsYWJlbC5lcnJvci1maWVsZCxcbiAgZGl2LmVycm9yLWZpZWxkIHtcbiAgICBjb2xvcjogcmVkO1xuICB9XG5cbiAgbGFiZWwuZXJyb3IsXG4gIC5sYWJlbC5lcnJvciB7XG4gICAgY29sb3I6IHJlZDtcbiAgfVxuICBkaXZbZGF0YS1hbnlvZj10cnVlXSAuZXJyb3Ige1xuICAgIGNvbG9yOiBpbml0aWFsO1xuICB9XG5cblxuXG4gIC8vIFVuIGFzcGVjdG8gZ2VuZXJhbCBwYXJhIHRvZG9zIGxvcyBib3RvbmVzIHF1ZSB0ZW5lbW9zLCBhc2VndXJhbmRvbm9zXG4gIC8vIHVuYSBzZXBhcmFjacOzbiBlbnRyZSBlbGxvcy5cbiAgLmJ0biB7XG4gICAgZm9udC1zaXplOiAkZm9ybS1jb250cm9sLWZvbnQtc2l6ZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWNvbnRyb2wtYm9yZGVyLXJhZGl1cztcblxuICAgICYgKyAuYnRuLFxuICAgICYgKyAuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkaGFsZkd1dHRlcjtcbiAgICB9XG4gIH1cblxuICBsZWdlbmQsIC5sZWdlbmQsIC50aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtbGVnZW5kLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2UgKiAkZm9ybS1jb250cm9sLWxlZ2VuZC1mb250LXNpemU7XG4gICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gIH1cblxuXG4gIC5oZWxwLWluZm8ge1xuICAgLyogcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHRvcDogJGxpbmUtaGVpZ2h0LWJhc2UgKiAkZm9ybS1jb250cm9sLWxlZ2VuZC1mb250LXNpemU7Ki9cbiAgICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtYmFzZSAqICRmb3JtLWNvbnRyb2wtbGVnZW5kLWZvbnQtc2l6ZTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUteHNtO1xuICAgIHotaW5kZXg6IDM7XG4gICAgLmNvbnRlbnQge1xuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRjJEMTZCO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZCRjBDRjtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBwYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcvMjtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLnNlbGVjdC1tdWx0aXBsZS1ob2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWNvbnRyb2wtaGVpZ2h0O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMnB4IDBweCAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgID4gZGl2LmNsb3NlLXdpbmRvdyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgbWFyZ2luOiAwICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZy8yO1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29sb3I6ICRmb3JtLWNvbnRyb2wtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gZGl2LnNlbGVjdC1tdWx0aXBsZS1jb250YWluZXItb3B0aW9ucyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXB4IC0gI3skbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmd9KTtcbiAgICAgICY6bm90KC5uby12YWx1ZSk6bm90KC5tdWx0aXBsZSkge1xuICAgICAgICBAaW5jbHVkZSBjb2x1bW5pemUtYW55KDIpO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCgubm8tdmFsdWUpLm11bHRpcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgY29sdW1uaXplLWFueSgzKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLm5vLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIHNwYWNlLWNvbHVtbml6ZWQtYW55KCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZywgJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nKTtcbiAgICAgIH1cblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9ybS1jb250cm9sLW11bHRpcGxlLXNlbGVjdC1mb250LXNpemU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtbXVsdGlwbGUtc2VsZWN0LWZvbnQtc2l6ZTtcbiAgICAgICAgcGFkZGluZzogMHB4IDJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgLnR4dCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRmb3JtLWNvbnRyb2wtbXVsdGlwbGUtc2VsZWN0LWZvbnQtc2l6ZX0pO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBoZWlnaHQ6ICRmb3JtLWNvbnRyb2wtbXVsdGlwbGUtc2VsZWN0LWZvbnQtc2l6ZSokbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtbXVsdGlwbGUtc2VsZWN0LWZvbnQtc2l6ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNwZWNpYWwtc3ZnLWJ0biB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDRweCA2cHg7XG5cbiAgICAmOmVuYWJsZWQge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgLnN2Zy1idG5fX2J1dHRvbl9faWNvbiB7XG4gICAgICAgICAgc3Ryb2tlOiByZ2IoMCwgMTIwLCAyMTUpO1xuICAgICAgICAgIGZpbGw6IHJnYigwLCAxMjAsIDIxNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIC5zdmctYnRuX19idXR0b25fX2ljb24ge1xuICAgICAgICBzdHJva2U6IHJnYigxMDksIDEwOSwgMTA5KTtcbiAgICAgICAgZmlsbDogcmdiKDEwOSwgMTA5LCAxMDkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG5cbn1cblxuLy8gQXNwZWN0byBnZW5lcmFsIGRlbCBidXR0b24tb3V0bGluZS1wcmltYXJ5XG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xuICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtYnRuLXBhZGRpbmcteDtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICBib3JkZXItcmFkaXVzOiAkZm9ybS1jb250cm9sLWJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmctbGVmdDogJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1idG4tcGFkZGluZy14O1xufVxuXG4uY21TZWFyY2hGaWVsZC5jaG9pY2VDb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cblxuICBzZWxlY3QsXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmctcmlnaHQ6IGFkZCgxMHB4LCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyx0cnVlKTtcblxuICAgICY6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNhcmV0KCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZywgJHByaW1hcnkpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IGFkZCgxMHB4LCRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxudWwucmFkaW8tZ3JvdXAtY29udHJvbHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICYgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgIH1cbiAgfVxufVxuXG4iLAoJCSIvLyBDb3B5cmlnaHQgKGMpIDIwMjAuIERpdmlzYSBpVCBTQVVcblxuLyoqXG4gKiBTb3BvcnRlIGRlbCBzZWxlY3RvciBkZSBmZWNoYSBhIHRyYXbDqXMgZGVsIGNvbnRyb2wgcmVhY3QtZGF0ZS1waWNrZXJcbiAqXG4gKiBAYXV0aG9yIERhdmlkIFJvZHLDrWd1ZXogQWxmYXlhdGVcbiAqIEBzaW5jZSBQcm94aWEgQ01TIDEwLjJcbiAqL1xuXG4ucmVhY3QtZGF0ZS1waWNrZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYsICYgKiwgJiAqOmJlZm9yZSwgJiAqOmFmdGVyIHtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAmLS1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MCwgMjQwLCAyNDApO1xuICAgIGNvbG9yOiByZ2IoMTA5LCAxMDksIDEwOSk7XG4gIH1cblxuICAmX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBib3JkZXI6IHRoaW4gc29saWQgZ3JheTtcbiAgfVxuXG4gICZfX2lucHV0R3JvdXAge1xuICAgICRkaWdpdC13aWR0aDogLjU0ZW07XG4gICAgJGRvdC13aWR0aDogLjIxN2VtO1xuICAgIC8vIG93biBwYWRkaW5nICsgaW5wdXRzIHBhZGRpbmcgKyBkaWdpdHMgd2lkdGggKyBkb3RzIHdpZHRoXG4gICAgbWluLXdpZHRoOiBjYWxjKDEycHggKyAjeyRkaWdpdC13aWR0aCAqIDh9ICsgICN7JGRvdC13aWR0aCAqIDJ9KTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgcGFkZGluZzogMCAycHg7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgICAmX19kaXZpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDFweCAwO1xuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB9XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICBtaW4td2lkdGg6ICRkaWdpdC13aWR0aDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmludmFsaWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEyOCwwLDAsMC4zKTtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWhhc0xlYWRpbmdaZXJvIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZGlnaXQtd2lkdGg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRkaWdpdC13aWR0aH0gKyAxcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDRweCA2cHg7XG5cbiAgICAmOmVuYWJsZWQge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgLnJlYWN0LWRhdGUtcGlja2VyX19idXR0b25fX2ljb24ge1xuICAgICAgICAgIHN0cm9rZTogcmdiKDAsIDEyMCwgMjE1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgLnJlYWN0LWRhdGUtcGlja2VyX19idXR0b25fX2ljb24ge1xuICAgICAgICBzdHJva2U6IHJnYigxMDksIDEwOSwgMTA5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX19jYWxlbmRhciB7XG4gICAgd2lkdGg6IDM1MHB4O1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICAmLS1jbG9zZWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAucmVhY3QtY2FsZW5kYXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiB0aGluO1xuICAgIH1cbiAgfVxufVxuXG4ucmVhY3QtZGF0ZS1waWNrZXIuZm9ybS1jb250cm9sIHtcbiAgcGFkZGluZzogMHB4O1xuXG4gID4gLnJlYWN0LWRhdGUtcGlja2VyX193cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgJGhhbGZHdXR0ZXI7XG4gICAgYm9yZGVyOiAwcHg7XG4gIH1cbn1cblxuLnJlYWN0LWNhbGVuZGFyIHtcbiAgd2lkdGg6IDM1MHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMTYwLCAxNjAsIDE1MCk7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS4xMjVlbTtcblxuICAmLS1kb3VibGVWaWV3IHtcbiAgICB3aWR0aDogNzAwcHg7XG5cbiAgICAucmVhY3QtY2FsZW5kYXJfX3ZpZXdDb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogLS41ZW07XG5cbiAgICAgID4gKiB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbjogLjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLCAmICosICYgKjpiZWZvcmUsICYgKjphZnRlciB7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAmOmVuYWJsZWQge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19uYXZpZ2F0aW9uIHtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICY6ZW5hYmxlZCB7XG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzAsIDIzMCwgMjMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDAsIDI0MCwgMjQwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19tb250aC12aWV3IHtcbiAgICAmX193ZWVrZGF5cyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IC43NWVtO1xuXG4gICAgICAmX193ZWVrZGF5IHtcbiAgICAgICAgcGFkZGluZzogLjVlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX193ZWVrTnVtYmVycyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgLnJlYWN0LWNhbGVuZGFyX190aWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoLjc1ZW0gLyAuNzUpIGNhbGMoLjVlbSAvIC43NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF5cyB7XG4gICAgICAmX19kYXkge1xuICAgICAgICAmLS13ZWVrZW5kIHtcbiAgICAgICAgICBjb2xvcjogcmdiKDIwOSwgMCwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uZWlnaGJvcmluZ01vbnRoIHtcbiAgICAgICAgICBjb2xvcjogcmdiKDExNywgMTE3LCAxMTcpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX195ZWFyLXZpZXcsXG4gICZfX2RlY2FkZS12aWV3LFxuICAmX19jZW50dXJ5LXZpZXcge1xuICAgIC5yZWFjdC1jYWxlbmRhcl9fdGlsZSB7XG4gICAgICBwYWRkaW5nOiAyZW0gLjVlbTtcbiAgICB9XG4gIH1cblxuICAmX190aWxlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IC43NWVtIC41ZW07XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MCwgMjQwLCAyNDApO1xuICAgIH1cblxuICAgICY6ZW5hYmxlZCB7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMCwgMjMwLCAyMzApO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLW5vdyB7XG4gICAgICAkYmdjb2xvcjogbGlnaHRlbihyZ2IoMjIwLCAyMjAsIDApLCAzMCUpO1xuICAgICAgYmFja2dyb3VuZDogJGJnY29sb3I7XG5cbiAgICAgICY6ZW5hYmxlZCB7XG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGJnY29sb3IsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1oYXNBY3RpdmUge1xuICAgICAgJGJnY29sb3I6IGxpZ2h0ZW4ocmdiKDAsIDExMCwgMjIwKSwgMzAlKTtcbiAgICAgIGJhY2tncm91bmQ6ICRiZ2NvbG9yO1xuXG4gICAgICAmOmVuYWJsZWQge1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRiZ2NvbG9yLCAxMCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tYWN0aXZlIHtcbiAgICAgICRiZ2NvbG9yOiByZ2IoMCwgMTEwLCAyMjApO1xuICAgICAgYmFja2dyb3VuZDogJGJnY29sb3I7XG4gICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICY6ZW5hYmxlZCB7XG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGJnY29sb3IsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1zZWxlY3RSYW5nZSB7XG4gICAgLnJlYWN0LWNhbGVuZGFyX190aWxlIHtcbiAgICAgICYtLWhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMCwgMjMwLCAyMzApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQ29weXJpZ2h0IChjKSAyMDIwLiBEaXZpc2EgaVQgU0FVXG5cbi8qKlxuICogUGFyYSBjb250cm9sYXIgbGEgYXBhcmllbmNpYSBkZSBlbGVtZW50b3MgYXV0b2NvbXBsZXRhZG9zIHBvciBlbCBzaXN0ZW1hLlxuICpcbiAqIEBhdXRob3IgRGF2aWQgUm9kcsOtZ3VleiBBbGZheWF0ZVxuICogQHNpbmNlIFByb3hpYSBDTVMgMTAuMlxuICovXG5cbi5hdXRvY29tcGxldGUtaXRlbXMge1xuICBwYWRkaW5nOiAyKiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZyAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB6LWluZGV4OiAzO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDBweDtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxcHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICA+IGxpIGEsXG4gID4gbGkgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgLmhlbHAge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgJi5tdWx0aXBsZSB7XG4gICAgPiBsaSBhLFxuICAgID4gbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgQGluY2x1ZGUgYS1ldmVudHMtaG92ZXIoKSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgICA+bGk6Zm9jdXMgYSxcbiAgICA+bGk6Zm9jdXMgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5O1xuICAgIH1cbiAgfVxuXG4gICY6bm90KC5tdWx0aXBsZSkge1xuICAgID4gbGkgYSxcbiAgICA+IGxpIGJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBhLWV2ZW50cy1ob3ZlcigpIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gICAgPmxpOmZvY3VzIGEsXG4gICAgPmxpOmZvY3VzIGJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBhLWV2ZW50cy1ob3ZlcigpIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gID5saS5zZWxlY3RlZCBhLFxuICA+bGkuc2VsZWN0ZWQgYnV0dG9ue1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAuaGVscC1pbmZvIHtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIHBhZGRpbmctbGVmdDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgIH1cbiAgfVxuICAvLyBQZXF1ZcOxbyBtYXJnZW4gc2kgaGF5IGRhdG9zIHByZXZpb3MgYWwgYXV0b2NvbXBsZXRhZG8uXG4gID4gbGkgKyBsaS5hZGQtYXV0b2NvbXBsZXRlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICBtYXJnaW46ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGF1dG9jb21wbGV0ZS1lZGl0LWJhY2tncm91bmQ7XG4gICAgfVxuXG4gIH1cblxuICAvLyBCb3RvbiBkZSBhdXRvY29tcGxldGFkb1xuICA+bGkuYWRkLWF1dG9jb21wbGV0ZSBhLFxuICA+bGkuYWRkLWF1dG9jb21wbGV0ZSBidXR0b24ge1xuICAgID4gc3Bhbi5pY29uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICB9XG4gICAgbWFyZ2luOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGF1dG9jb21wbGV0ZS1lZGl0LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRhdXRvY29tcGxldGUtZWRpdC10ZXh0LWNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRhdXRvY29tcGxldGUtZWRpdC1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGF1dG9jb21wbGV0ZS1lZGl0LWJvcmRlci1yYWRpdXM7XG4gICAgdGV4dC1hbGlnbjogJGF1dG9jb21wbGV0ZS1lZGl0LXRleHQtYWxpZ247XG4gICAgQGluY2x1ZGUgYS1ldmVudHMtaG92ZXIoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXV0b2NvbXBsZXRlLWVkaXQtYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkYXV0b2NvbXBsZXRlLWVkaXQtdGV4dC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiLy8gQ29weXJpZ2h0IChjKSAyMDIwLiBEaXZpc2EgaVQgU0FVXG5cbi8qKlxuICogRXN0aWxvcyBDU1MgcGFyYSBlbCBzZWxlY3RvciBnZW5lcmFsIGRlIGZpY2hlcm9zIHkgcGFyYSBlbCBjb250cm9sIHF1ZSBwZXJtaXRlIHZpc3VhbGl6YXIgZWwgc2VsZWN0b3JcbiAqIGRlIGZpY2hlcm9zIHbDrWEgRXhjZWwgcGFyYSBzdSBwcm9jZXNhZG8gcG9zdGVyaW9yXG4gKlxuICogQGF1dGhvciBEYXZpZCBSb2Ryw61ndWV6IEFsZmF5YXRlIChkcm9kcmlndWV6QGRpdmlzYWl0LmNvbSlcbiAqL1xuXG5kaXYuZHJvcHpvbmUge1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaGFsZkd1dHRlcjtcbiAgYm9yZGVyOiAycHggZG90dGVkICRkcm9wem9uZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3B6b25lLWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICRkcm9wem9uZS1jb2xvcjtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC4yNHMgZWFzZS1pbi1vdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY3VycmVudEltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAkZHJvcHpvbmUtY3VycmVudGltYWdlLW9wYWNpdHk7XG4gIH1cblxuICAuZmlsZUFyZWEge1xuICAgIHotaW5kZXg6IDI7XG4gICAgYm9yZGVyOiA0cHggZGFzaGVkO1xuICAgIHBhZGRpbmc6ICRoYWxmR3V0dGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaGFsZkd1dHRlcjtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogJGdyaWQtZ3V0dGVyLXdpZHRoIDBweDtcbiAgICBjb2xvcjogJGRyb3B6b25lLWZpbGVhcmVhLWNvbG9yO1xuXG4gICAgLmZhIHtcbiAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgfVxuICAgICYuaW1hZ2VBcmVhLndpdGgtaW1hZ2UgcCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7XG4gICAgfVxuICB9XG4gIC5maWxlQXJlYS5pbWFnZUFyZWEge1xuICAgIGNvbG9yOiAkZHJvcHpvbmUtaW1hZ2VhcmVhLWNvbG9yO1xuICB9XG59XG5cbi5kZWxldGUtYnV0dG9uLWFyZWEge1xuICAmLndpdGgtaW1hZ2Uge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICB9XG59XG5cbi8vIFVwbG9hZHMgZGUgZXhjZWxcbmRpdi5leGNlbC1jb250cm9sIHtcbiAgLnNhbXBsZUV4Y2VsIHtcbiAgICBtYXJnaW46ICRoYWxmR3V0dGVyIDBweDtcbiAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZSAqICRmb3JtLWNvbnRyb2wtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgPiBhIHtcbiAgICAgIGNvbG9yOiAkZHJvcHpvbmUtbGluay1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnRCbG9jaygnRm9udEF3ZXNvbWUnLCdcXGYxYzMnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tYXBwaW5ncy1kZXRhaWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgID5saS5oZWFkZXIge1xuICAgICAgbWFyZ2luOiAkaGFsZkd1dHRlciAwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIC55b3VycyB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgID5saSAuZm9ybS1ncm91cDpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDIqJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hY3Rpb25zLWFyZWEge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnJlc3VsdHMtdmlldyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3B6b25lLXJlc3VsdHMtYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgLnJlc3VsdHMge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRoYWxmR3V0dGVyO1xuICAgIH1cbiAgICAuYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICBmb250LXNpemU6ICRmb3JtLWNvbnRyb2wtZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYXJhIHBpbnRhciBsYSBjYWphIGRlIGxvcyByZWN1cnNvcyB2aW5jdWxhZG9zIGEgdW4gY29udHJvbCBkZSBzZWxlY2Npw7NuLCB5IHF1ZSBlbCB1c3VhcmlvXG4vLyBwdWVkYSB2aXN1YWxpemFybG9zXG4uY21SZXNvdXJjZXNPdXRlckJveCB7XG4gIG1hcmdpbi10b3A6ICRoYWxmR3V0dGVyICFpbXBvcnRhbnQ7XG4gIHVsLmNtUmVzb3VyY2VMaXN0IHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAucmVzb3VyY2VEYXRhNCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIENvcHlyaWdodCAoYykgMjAyMC4gRGl2aXNhIGlUIFNBVVxuXG4vKipcbiAqIFBlcm1pdGUgbW9zdHJhciBlbCBjb250cm9sIGRlIHNlbGVjY2nDs24gZGUgY29udGVuaWRvcyBwYXJhIGxhIGLDunNxdWVkYSBkZSBsb3MgbWlzbW9zIGVuIGVsIHNpc3RlbWFcbiAqXG4gKiBAYXV0aG9yIERhdmlkIFJvZHLDrWd1ZXogQWxmYXlhdGUgKGRyb2RyaWd1ZXpAZGl2aXNhaXQuY29tKVxuICovXG5cbi5jb250ZW50LWNvbnRyb2wge1xuICAuY29udGVudC1maWx0ZXIge1xuICAgIC5idG4ge1xuICAgICAgbWFyZ2luLXRvcDogYWRkKCRmb250LXNpemUtYmFzZSokbGluZS1oZWlnaHQtYmFzZSw3cHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgIHBhZGRpbmc6IDlweDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbnRlbnQtY29udHJvbC1jb2xvcjtcbiAgICB9XG4gIH1cblxuXG5cbiAgLmN1cnJlbnQtY29udGVudHMge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgPiBsaSB7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZW50LWNvbnRyb2wtYmFja2dyb3VuZDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgbWFyZ2luOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgMDtcbiAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgIEBpbmNsdWRlIGN1dFRleHQoJGZvbnQtc2l6ZS1iYXNlLDQpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwICRncmlkLWd1dHRlci13aWR0aCAwICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcblxuICAgICAgLm9wdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkaGFsZkd1dHRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgcmlnaHQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgIC5mYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtcmVzdWx0cyB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgPiBsaSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDBweCAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgMHB4ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgQGlmICRjb250ZW50LWNvbnRyb2wtaXRlbS1pY29uICE9ICcnIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiAkY29udGVudC1jb250cm9sLWl0ZW0tY29sb3I7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICAgIGxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICBjb250ZW50OiAkY29udGVudC1jb250cm9sLWl0ZW0taWNvbjtcbiAgICAgICAgICBAaWYgJGNvbnRlbnQtY29udHJvbC1pdGVtLWljb24tZm9udCAhPSAnJyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNvbnRlbnQtY29udHJvbC1pdGVtLWljb24tZm9udDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbnRlbnQtZGF0YSB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50LXBhdGggYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZW50LWNvbnRyb2wtY29sb3I7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb250ZW50LWNvbnRyb2wtY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nLzIgJGhhbGZHdXR0ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRoYWxmR3V0dGVyO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgICBjb250ZW50OiAnXFxmMDhlJztcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29udGVudC1hZGQgLmJ0biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbiIsCgkJIlxudWwubWFzdGVyLXZpZXcge1xuICBtYXJnaW46ICRoYWxmR3V0dGVyIDAgMCAwO1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDBweCAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmcgMHB4ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBAaWYgJGNvbnRlbnQtY29udHJvbC1pdGVtLWljb24gIT0gJycge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGNvbnRlbnQtY29udHJvbC1tYXN0ZXJkZXRhaWwtaXRlbS1jb2xvcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgbGVmdDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICBjb250ZW50OiAkY29udGVudC1jb250cm9sLWl0ZW0taWNvbjtcbiAgICAgICAgQGlmICRjb250ZW50LWNvbnRyb2wtaXRlbS1pY29uLWZvbnQgIT0gJycge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY29udGVudC1jb250cm9sLWl0ZW0taWNvbi1mb250O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAmICsgbGkge1xuICAgICAgcGFkZGluZy10b3A6ICRoYWxmR3V0dGVyO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYWxmR3V0dGVyICsgJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXN0ZXItdmlldy10aXRsZSB7XG4gICAgICBmb250LXNpemU6ICRtYXN0ZXItdmlldy10aXRsZS1mb250LXNpemU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZSAqICRtYXN0ZXItdmlldy10aXRsZS1mb250LXNpemU7XG4gICAgfVxuICAgIC5tYXN0ZXItdmlldy1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6ICRtYXN0ZXItdmlldy1kZXNjcmlwdGlvbi1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2UgKiAkbWFzdGVyLXZpZXctZGVzY3JpcHRpb24tZm9udC1zaXplO1xuICAgIH1cblxuICAgIC5tYXN0ZXItdmlldy1mZWF0dXJlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJG1hc3Rlci12aWV3LWZlYXR1cmVzLWZvbnQtc2l6ZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29udGVudC1jb2xvci1mZWF0dXJlcy1ib3JkZXItY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRjb250ZW50LWNvbG9yLWZlYXR1cmVzLWNvbG9yO1xuICAgICAgICAgIHBhZGRpbmc6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZy8yIDMqJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuXG4gICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWVkaXQge1xuICAgICAgY29sb3I6ICM0RTZGQjg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNEU2RkI4O1xuICAgICAgcGFkZGluZzogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nLzEuNSAzKiRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLmJ0bi1kZWxldGUge1xuICAgICAgY29sb3I6IHJlZDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICAgIHBhZGRpbmc6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZy8xLjUgMyokbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICB9XG5cbiAgZGl2Lm1hc3Rlci12aWV3LW9wdGlvbnMuYnRuLWdyb3VwIHtcbiAgICA+IHVsLmRyb3Bkb3duLW1lbnUgPiBsaSA+IC5idG4ge1xuICAgICAgcGFkZGluZzogJGlucHV0LWJ0bi1wYWRkaW5nLXkgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgPiBidXR0b24ge1xuICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgfVxuICAgICAgPiB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiAqIHtcbiAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIC5mYSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGEtZXZlbnRzLWhvdmVyKCkge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cblxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICA+IGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICA+IHVsLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBib3JkZXI6IDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czowcHg7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBpbml0aWFsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuXG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi5tYXN0ZXItcmVzdWx0cy12aWV3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgPiAubG9hZGluZyxcbiAgJiArIC5sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgYm90dG9tOiA1MCU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiIsCgkJIi8vIEZ1bmNpb25hbGlkYWRlcyByZWxhY2lvYW5kYXMgY29uIGxhIGltcHJlc2nDs24sIHkgY29tbyBhZmVjdGEgYSBsbyBxdWUgc2UgZW5jdWVudHJhIGNvbnRlbmlkbyBkZW50cm9cbi8vIGRlbCBzZXJ2aWNpby5cblxuQG1lZGlhIHNjcmVlbiB7XG4gIC5wcmludGFibGUtYXJlYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIGhlaWdodDogOTAlO1xuICB9XG59XG5cbi5wcmludGFibGUtYnV0dG9uIGEucHJpbnRCdXR0b24ge1xuICBAZXh0ZW5kIC5idG47XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5wcmludGFibGUtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLAoJCSIvLyBDb3B5cmlnaHQgKGMpIDIwMjAuIERpdmlzYSBpVCBTQVVcblxuLyoqXG4gKiBFbGVtZW50b3MgYsOhc2ljb3MgZGUgQ09SRSBkZSBQcm94aWEgUkVBQ1QgcXVlIGRhbiBjaWVydG9zIGVzdGlsb3MgcHJlZGVmaW5pZG9zXG4gKi9cblxuYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG4uZmFpbGVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBpbWcge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICB9XG59XG4ubG9hZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAkaGFsZkd1dHRlciAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gTGEgem9uYSBkZSBjYXJnYSwgZGViZSB0ZW5lciB1bmEgY29tcG9zaWNpw7NuIGRlbCB0aXBvIC5lZGl0LXZpZXcgWy5yZWxvYWRpbmcgWy5sb2FkaW5nXSwgLi4uXVxuLmVkaXQtdmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnJlbG9hZGluZyAubG9hZGluZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuXG4gICAgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogY2FsYyg0MCUgLSA0MHB4KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSh3aGl0ZSwgMC40KTtcbiAgICB6LWluZGV4OiA0O1xuICB9XG59XG5cbi5uby1jb250ZW50IHtcbiAgbWFyZ2luOiAkaGFsZkd1dHRlciAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmJ1dHRvbi5lbXVsYXRlZC1saW5rIHtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gICY6bm90KC5uYXYtaXRlbSkge1xuICAgIGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuICAgIEBpbmNsdWRlIGEtZXZlbnRzLWhvdmVyKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogJHByb3hpYS1saW5rcy1jb2xvci1ob3ZlcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIGEtZXZlbnRzLWhvdmVyKCkge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLm5hdi1pdGVtOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXMoKTtcbiAgfVxufVxuXG5hLmVtdWxhdGVkLWxpbmsuZGlzYWJsZWQge1xuICBAaW5jbHVkZSBhLWV2ZW50cy1ob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6JHByb3hpYS1saW5rcy1jb2xvcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHhGYWRlSW4ge1xuICAwJSB7b3BhY2l0eTowLjM7fVxuICAxMDAlIHtvcGFjaXR5OjE7fVxufVxuXG5ALW1vei1rZXlmcmFtZXMgeEZhZGVJbiB7XG4gIDAlIHtvcGFjaXR5OjAuMzt9XG4gIDEwMCUge29wYWNpdHk6MTt9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB4RmFkZUluIHtcbiAgMCUge29wYWNpdHk6MC4zO31cbiAgMTAwJSB7b3BhY2l0eToxO31cbn1cblxuQC1vLWtleWZyYW1lcyB4RmFkZUluIHtcbiAgMCUge29wYWNpdHk6MC4zO31cbiAgMTAwJSB7b3BhY2l0eToxO31cbn1cblxuQC1tcy1rZXlmcmFtZXMgeEZhZGVJbiB7XG4gIDAlIHtvcGFjaXR5OjAuMzt9XG4gIDEwMCUge29wYWNpdHk6MTt9XG59XG5cbkBrZXlmcmFtZXMgeEZhZGVPdXQge1xuICAwJSB7b3BhY2l0eToxO31cbiAgMTAwJSB7b3BhY2l0eTowLjI7fVxufVxuXG5ALW1vei1rZXlmcmFtZXMgeEZhZGVPdXQge1xuICAwJSB7b3BhY2l0eToxfVxuICAxMDAlIHtvcGFjaXR5OjAuMjt9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB4RmFkZU91dCB7XG4gIDAlIHtvcGFjaXR5OjE7fVxuICAxMDAlIHtvcGFjaXR5OjAuMjt9XG59XG5cbkAtby1rZXlmcmFtZXMgeEZhZGVPdXQge1xuICAwJSB7b3BhY2l0eToxO31cbiAgMTAwJSB7b3BhY2l0eTowLjI7fVxufVxuXG5ALW1zLWtleWZyYW1lcyB4RmFkZU91dCB7XG4gIDAlIHtvcGFjaXR5OjE7fVxuICAxMDAlIHtvcGFjaXR5OjAuMjt9XG59XG5cbiIsCgkJIi5tb2RhbFtkYXRhLXByb3hpYXJlc3RmdWw9XCJ0cnVlXCJdIHtcbiAgLm1vZGFsLXRpdGxlICsgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkaGFsZkd1dHRlcjtcbiAgICByaWdodDogJGhhbGZHdXR0ZXI7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cbiIsCgkJIi8vIENvcHlyaWdodCAoYykgMjAyMCAtIERpdmlzYSBJbmZvcm3DoXRpY2EgeSBUZWxlY29tdW5pY2FjaW9uZXMgU0FVXG5cbi8vIEZpY2hlcm8gZGUgZWplbXBsbyBlbiBlbCBxdWUgcHVlZGUgaW50cm9kdWNpciBjb25maWd1cmFjacOzbiBlc3BlY8OtZmljYSBTQ1NTIGRlIHN1IHByb3llY3RvXG4vLyBQdWVkZSBvcHRhciBwb3IgdXRpbGl6YXIgdW5hIGNvbmZpZ3VyYWNpw7NuIFJFQUNUIHB1cmEgdXRpbGl6YW5kbyBkaXN0aW50YXMgbGlicmVyw61hc1xuLy8gZGUgdHJhbnNwaWxhY2nDs24gZGUgQ1NTLUpTXG5cbi8vIExhIHpvbmEgZGUgaW1wcmVzacOzbiBnZW5lcmEgdW4gaWZyYW1lIHkgZXMgbmVjZXNhcmlvIGNvbmZpZ3VyYXJsbyBhZGVjdWFkYW1lbnRlLlxuLy8gUGFyYSBlbCBjdWVycG8gaW1wcmltaWJsZVxuYm9keS5wcm94aWEtcmVzdGZ1bC1wcmludGFibGUtbWlzLWRhdG9zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi8vIEVsIGlmcmFtZSBjb250ZW5lZG9yXG5pZnJhbWUucHJveGlhLXJlc3RmdWwtcHJpbnRhYmxlLW1pcy1kYXRvcyB7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBQYXJhIGV2aXRhciBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWEgZW50cmUgw6FyZWFzIGluY2x1aW1vcyBhcXVpIHRvZG9zIGxvcyBlc3RpbG9zIHJlbGFjaW9uYWRvc1xuLy8gY29uIGVzdGUgc2VydmljaW8gZW4gY29uY3JldG8uXG5kaXZbZGF0YS1zZXJ2aWNlPVwicHJveGlhLXJlc3RmdWwtbWlzLWRhdG9zXCJdIHtcbiAgLmxvZ29uLWluZm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkcHJveGlhLWxpbmtzLWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIqJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudXNlciB7XG4gICAgcGFkZGluZzogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nIDBweCAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5hdmF0YXIge1xuICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4OiAwIDAgYXV0bztcblxuICAgIC5mdWxsbmFtZSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGwgKyAxcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG5cbiAgICAubm8tYXZhdGFyLFxuICAgIC5hdmF0YXIgaW1nIHtcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEOEQ4RDg7XG4gICAgfVxuICB9XG4gIC5vcHRpb25zIHtcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgPiBkaXYge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIC5zaG93LW9wdGlvbnMge1xuICAgIEBpbmNsdWRlIGZvbnRCbG9jaygnRm9udEF3ZXNvbWUnLCdcXGYxNDInKTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgLnNob3ctb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgdWwudXNlci1vcHRpb25zIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNob3ctb3B0aW9ucyB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6ICNhMGEwYTA7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9wdGlvbnMtc2hvd24ge1xuICAgICAgdWwudXNlci1vcHRpb25zIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6ICNjY2MgMCAwIDhweDtcbiAgICAgICAgcGFkZGluZzogJGhhbGZHdXR0ZXIgMDtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGZHdXR0ZXI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICYubWFuYWdlbWVudDpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtaW4taW5saW5lLWVsZW1lbnQtc3BhY2luZztcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubWFuYWdlbWVudCA+IHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5tYW5hZ2VtZW50ID4gdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtdGVydGlhcnktY29udHJhc3Q7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cblxuICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbG9yOiAkYnJhbmQtdGVydGlhcnktY29udHJhc3Q7XG4gICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsICsgMXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgdWwudXNlci1vcHRpb25zIHtcbiAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgY29sb3I6ICRicmFuZC10ZXJ0aWFyeS1jb250cmFzdDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsICsgMXB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hbmFnZW1lbnQgPiB1bCB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtdGVydGlhcnktY29udHJhc3Q7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID4gbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkaGFsZkd1dHRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAycHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1hbmFnZW1lbnQgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5tYW5hZ2VtZW50OmhvdmVyID4gdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogJGhhbGZHdXR0ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbGlzdC1zdHlsZTogJy0gJztcbiAgICAgICAgYm94LXNoYWRvdzogI2NjYyAwIDAgOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXJyZW50LWF2YXRhciBpbWcge1xuICAgIHdpZHRoOiAxMjhweDtcbiAgICBoZWlnaHQ6IDEyOHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4gIH1cblxuICAuY3VycmVudC1hdmF0YXIgLmF2YXRhci1vcHRpb25zIHtcbiAgICBjb2xvcjogJGdyYXktZGFyaztcbiAgICBwYWRkaW5nLXRvcDogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nO1xuICAgIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kcm9wem9uZSB7XG4gICAgLmZpbGVBcmVhIHtcbiAgICAgIG1hcmdpbjogJG1pbi1pbmxpbmUtZWxlbWVudC1zcGFjaW5nIDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICBAaW5jbHVkZSBmb250QmxvY2soJ0ZvbnRBd2Vzb21lJywnXFxmMDMwJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZmllbGRzZXQucGFzc3dkLWFyZWEge1xuICAgIG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICAubGVnZW5kICB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkbWluLWlubGluZS1lbGVtZW50LXNwYWNpbmc7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkaGFsZkd1dHRlcjtcbiAgICB9XG4gIH1cblxuICAucGFzc3dkSW5mb3JtYXRpb24ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgfVxuXG5cbn1cblxuXG4iCgldLAoJIm5hbWVzIjogW10sCgkibWFwcGluZ3MiOiAiO0FJQUE7O0dBRUc7QURnQ0g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXlKRTtBRTNMRjs7Ozs7R0FLRztBQ0xIOzs7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 */