/*
Base mixins and Functions ONLY in here
No CSS output!
Remember these tools/utilities will be made availabe to all your components,
any CSS you output in here will add massive bloat to your project.
If you need common css, add to main.scss
========================================================================== */
/* ============================================================================================
	Vertical Spacing
============================================================================================= */
/* ============================================================================================
	Breakpoints
============================================================================================= */
/* ============================================================================================
	Colours
============================================================================================= */
/* ============================================================================================
	Z-Index
============================================================================================= */
/* =========================================================================
  cubic-bezier curve variables
========================================================================== */
/* =========================================================================
  Font variables
========================================================================== */
/* =========================================================================
  Grid Variables (size vars must match the breakpoint vars)
========================================================================== */
@media (min-width: 320px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": false}, "medium":{"value": "1024px", "active": false}, "xmedium":{"value": "1200px", "active": false}, "large":{"value": "1440px", "active": false}, "xlarge":{"value": "1920px", "active": false}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 768px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": false}, "xmedium":{"value": "1200px", "active": false}, "large":{"value": "1440px", "active": false}, "xlarge":{"value": "1920px", "active": false}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1024px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": true}, "xmedium":{"value": "1200px", "active": false}, "large":{"value": "1440px", "active": false}, "xlarge":{"value": "1920px", "active": false}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1200px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": true}, "xmedium":{"value": "1200px", "active": true}, "large":{"value": "1440px", "active": false}, "xlarge":{"value": "1920px", "active": false}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1440px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": true}, "xmedium":{"value": "1200px", "active": true}, "large":{"value": "1440px", "active": true}, "xlarge":{"value": "1920px", "active": false}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1920px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": true}, "xmedium":{"value": "1200px", "active": true}, "large":{"value": "1440px", "active": true}, "xlarge":{"value": "1920px", "active": true}, "xxlarge":{"value": "2000px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 2000px) {
  body::after {
    content: '{"xsmall":{"value": "320px", "active": true}, "small":{"value": "768px", "active": true}, "medium":{"value": "1024px", "active": true}, "xmedium":{"value": "1200px", "active": true}, "large":{"value": "1440px", "active": true}, "xlarge":{"value": "1920px", "active": true}, "xxlarge":{"value": "2000px", "active": true}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

/* ==========================================================================
	Site Transition
	Apply transitions consistently across the project
========================================================================== */
/* ==========================================================================
	Variable Spacing (v-spacing)
	Use with values set in _config.scss
========================================================================== */
/* ==========================================================================
	Tracking
	Convert XD, illustrator, indesign and
	photoshop tracking into letter spacing.
========================================================================== */
/* ============================================================================================================
	Line Height Crop (lhCrop)
	Removes the additional line height from top of text - https://codyhouse.co/blog/post/line-height-crop
	Use to make sure the top of your text lines up with other elements along side it.
	Enter a unitless line height (same as the type line hight)
============================================================================================================= */
/* ===========================================================================================
	Unitless Line Height
	Converts a pixel, percentage, rem or em value to a unitless value based on a given font size.
	Ideal for working out unitless line heights.
	Stolen from Foundation https://get.foundation/sites/docs/sass-functions.html#unitless-calc

	@param {Number} $value - Value to convert to a unitless line height
	@param {Number} $base - The font size to use to work out the line height - defaults to $global-font-size
	@return {Number} - Unitless number
=========================================================================================== */
/* ==================================================================================
	Removes the unit (e.g. px, em, rem) from a value, returning the number only.

	@param {Number} $num - Number to strip unit from.
	@returns {Number} The same number, sans unit.
=================================================================================== */
/* ==================================================================================
	used to create resonsive type

	@param {Number} $min-font-size - Number of the miniumum font size with units.
	@param {Number} $max-font-size - Number of the maximum font size with units.
	@param {Number} $line-height - Number of the lineheight with units.
	@returns font size using the v-space mixin and a unitless lineheight.
=================================================================================== */
/* ==================================================================================
	used to retreive varbailes from the $six-ccs-variables array

	$type = type is the name you set for your nested varaible array
	$size = is the nested variable you wish to get.
	@returns the value of teh specified variable
=================================================================================== */
/* ==================================================================================
	loops through varbailes from the $six-ccs-variables array & out put css var

	$value = used to get the correct value
=================================================================================== */
/* ==================================================================================
	used to retreive css var based on the breakpoint passed

	$breakpoint = used to specify media query
=================================================================================== */
/* ==================================================================================
	sibling fade: fade out siblings around a hovered item
=================================================================================== */
/*
Fix for 100vh elements being covered by iOS Safari toolbar
This is a bit hacky. More info: https://allthingssmitty.com/2020/05/11/css-fix-for-100vh-in-mobile-webkit/
The height doesn't adjust when the address bar is hidden.
*/
/* ==========================================================================================================
	Character Style Mixins
=========================================================================================================== */
.u-uppercase {
  text-transform: uppercase; }

/* ==============================================================================================
	WYSIWYG Mixin and class
	Apply to content that is using a WYSIWYG editor field.
	Redefines all the typographic HTML elements that TinyMce outputs. (h1,img,p,ul etc.)
=============================================================================================== */
/*
Form Mixins
Create mixins first so they can be reused on Woo forms or other places where you can't add your own classes
========================================================================== */
/* ==========================================================================================================
	Grid Mixins
=========================================================================================================== */
/* ==========================================================================
	Search Bar Component
========================================================================== */
.c-SearchBar {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  align-content: center;
  position: relative; }
  .c-SearchBar .c-SearchBar__form-wrap {
    position: absolute;
    opacity: 0;
    top: 140px;
    left: calc(var(--six-margin) * -1);
    width: calc(100% + (var(--six-margin) * 2));
    display: flex;
    transition: 600ms opacity cubic-bezier(0.25, 1, 0.5, 1), 600ms top cubic-bezier(0.25, 1, 0.5, 1);
    padding-bottom: calc(0.00595 * 100vw + 8.09524px); }
    @media (min-width: 1921px) {
      .c-SearchBar .c-SearchBar__form-wrap {
        padding-bottom: 20px; } }
    @media (max-width: 499px) {
      .c-SearchBar .c-SearchBar__form-wrap {
        padding-bottom: 10px; } }
    @media (min-width: 1024px) {
      .c-SearchBar .c-SearchBar__form-wrap {
        top: 53%;
        transform: translateY(-50%); } }
    .c-SearchBar .c-SearchBar__form-wrap::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background-color: #000; }
  .c-SearchBar .c-SearchBar__form {
    width: 100%;
    position: relative;
    padding-left: var(--six-margin);
    padding-right: var(--six-margin); }
  .c-SearchBar .c-searchBar__field {
    width: 100%;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    outline: none;
    margin-left: 0;
    padding-left: 0;
    font-family: "Lausanne-300", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: calc(0.01488 * 100vw + 25.2381px);
    line-height: 1;
    height: calc(0.0119 * 100vw + 36.19048px); }
    .c-SearchBar .c-searchBar__field em {
      font-family: "Lausanne-300-italic", sans-serif;
      font-style: normal;
      font-weight: 300; }
      .c-SearchBar .c-searchBar__field em em {
        font-style: normal;
        font-weight: 300; }
      .c-SearchBar .c-searchBar__field em strong {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-searchBar__field em strong em {
          font-style: normal;
          font-weight: 450; }
    .c-SearchBar .c-searchBar__field strong {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar .c-searchBar__field strong em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-searchBar__field strong em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar .c-searchBar__field strong strong {
        font-weight: 450; }
    @media (min-width: 1921px) {
      .c-SearchBar .c-searchBar__field {
        font-size: 55px; } }
    @media (max-width: 499px) {
      .c-SearchBar .c-searchBar__field {
        font-size: 30px; } }
    .c-SearchBar .c-searchBar__field strong,
    .c-SearchBar .c-searchBar__field b {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar .c-searchBar__field strong em,
      .c-SearchBar .c-searchBar__field b em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-searchBar__field strong em em,
        .c-SearchBar .c-searchBar__field b em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar .c-searchBar__field strong strong,
      .c-SearchBar .c-searchBar__field b strong {
        font-weight: 450; }
    @media (min-width: 1921px) {
      .c-SearchBar .c-searchBar__field {
        height: 60px; } }
    @media (max-width: 499px) {
      .c-SearchBar .c-searchBar__field {
        height: 40px; } }
    .c-SearchBar .c-searchBar__field:focus {
      outline: none; }
    .c-SearchBar .c-searchBar__field + label {
      color: #000;
      opacity: 0.3;
      position: absolute;
      top: 2px;
      left: var(--six-margin);
      text-transform: capitalize;
      pointer-events: none;
      transition: top 500ms cubic-bezier(0.25, 1, 0.5, 1), opacity 500ms cubic-bezier(0.25, 1, 0.5, 1);
      font-family: "Lausanne-300", sans-serif;
      font-style: normal;
      font-weight: 300;
      font-size: calc(0.01488 * 100vw + 25.2381px);
      line-height: 1; }
      .c-SearchBar .c-searchBar__field + label em {
        font-family: "Lausanne-300-italic", sans-serif;
        font-style: normal;
        font-weight: 300; }
        .c-SearchBar .c-searchBar__field + label em em {
          font-style: normal;
          font-weight: 300; }
        .c-SearchBar .c-searchBar__field + label em strong {
          font-family: "Lausanne-450-italic", sans-serif;
          font-style: normal;
          font-weight: 450; }
          .c-SearchBar .c-searchBar__field + label em strong em {
            font-style: normal;
            font-weight: 450; }
      .c-SearchBar .c-searchBar__field + label strong {
        font-family: "Lausanne-450", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-searchBar__field + label strong em {
          font-family: "Lausanne-450-italic", sans-serif;
          font-style: normal;
          font-weight: 450; }
          .c-SearchBar .c-searchBar__field + label strong em em {
            font-style: normal;
            font-weight: 450; }
        .c-SearchBar .c-searchBar__field + label strong strong {
          font-weight: 450; }
      @media (min-width: 1921px) {
        .c-SearchBar .c-searchBar__field + label {
          font-size: 55px; } }
      @media (max-width: 499px) {
        .c-SearchBar .c-searchBar__field + label {
          font-size: 30px; } }
      .c-SearchBar .c-searchBar__field + label strong,
      .c-SearchBar .c-searchBar__field + label b {
        font-family: "Lausanne-450", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-searchBar__field + label strong em,
        .c-SearchBar .c-searchBar__field + label b em {
          font-family: "Lausanne-450-italic", sans-serif;
          font-style: normal;
          font-weight: 450; }
          .c-SearchBar .c-searchBar__field + label strong em em,
          .c-SearchBar .c-searchBar__field + label b em em {
            font-style: normal;
            font-weight: 450; }
        .c-SearchBar .c-searchBar__field + label strong strong,
        .c-SearchBar .c-searchBar__field + label b strong {
          font-weight: 450; }
      .c-SearchBar .c-searchBar__field + label.is-active {
        opacity: 0;
        top: -10px; }
  .c-SearchBar .c-SearchBar__submit,
  .c-SearchBar .c-SearchBar__placeholder {
    position: absolute;
    right: var(--six-margin);
    pointer-events: none;
    opacity: 0;
    background-color: transparent;
    outline: 0;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: bottom 500ms cubic-bezier(0.25, 1, 0.5, 1), color 500ms cubic-bezier(0.25, 1, 0.5, 1), opacity 500ms cubic-bezier(0.25, 1, 0.5, 1);
    font-family: "Lausanne-300", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: calc(0.00298 * 100vw + 19.04762px);
    line-height: 1.2;
    line-height: 1; }
    .c-SearchBar .c-SearchBar__submit em,
    .c-SearchBar .c-SearchBar__placeholder em {
      font-family: "Lausanne-300-italic", sans-serif;
      font-style: normal;
      font-weight: 300; }
      .c-SearchBar .c-SearchBar__submit em em,
      .c-SearchBar .c-SearchBar__placeholder em em {
        font-style: normal;
        font-weight: 300; }
      .c-SearchBar .c-SearchBar__submit em strong,
      .c-SearchBar .c-SearchBar__placeholder em strong {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-SearchBar__submit em strong em,
        .c-SearchBar .c-SearchBar__placeholder em strong em {
          font-style: normal;
          font-weight: 450; }
    .c-SearchBar .c-SearchBar__submit strong,
    .c-SearchBar .c-SearchBar__placeholder strong {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar .c-SearchBar__submit strong em,
      .c-SearchBar .c-SearchBar__placeholder strong em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-SearchBar__submit strong em em,
        .c-SearchBar .c-SearchBar__placeholder strong em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar .c-SearchBar__submit strong strong,
      .c-SearchBar .c-SearchBar__placeholder strong strong {
        font-weight: 450; }
    @media (min-width: 1921px) {
      .c-SearchBar .c-SearchBar__submit,
      .c-SearchBar .c-SearchBar__placeholder {
        font-size: 25px; } }
    @media (max-width: 499px) {
      .c-SearchBar .c-SearchBar__submit,
      .c-SearchBar .c-SearchBar__placeholder {
        font-size: 20px; } }
    .c-SearchBar .c-SearchBar__submit strong,
    .c-SearchBar .c-SearchBar__submit b,
    .c-SearchBar .c-SearchBar__placeholder strong,
    .c-SearchBar .c-SearchBar__placeholder b {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar .c-SearchBar__submit strong em,
      .c-SearchBar .c-SearchBar__submit b em,
      .c-SearchBar .c-SearchBar__placeholder strong em,
      .c-SearchBar .c-SearchBar__placeholder b em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar .c-SearchBar__submit strong em em,
        .c-SearchBar .c-SearchBar__submit b em em,
        .c-SearchBar .c-SearchBar__placeholder strong em em,
        .c-SearchBar .c-SearchBar__placeholder b em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar .c-SearchBar__submit strong strong,
      .c-SearchBar .c-SearchBar__submit b strong,
      .c-SearchBar .c-SearchBar__placeholder strong strong,
      .c-SearchBar .c-SearchBar__placeholder b strong {
        font-weight: 450; }
  .c-SearchBar .c-SearchBar__submit {
    text-transform: uppercase;
    bottom: 3px; }
    @media (hover: hover) {
      .c-SearchBar .c-SearchBar__submit:hover {
        color: #606060; } }
    .c-SearchBar .c-SearchBar__submit.is-active {
      pointer-events: auto;
      opacity: 1;
      bottom: 10px; }
  .c-SearchBar .c-SearchBar__placeholder {
    bottom: 10px;
    opacity: 1; }
    @media (max-width: 1023px) {
      .c-SearchBar .c-SearchBar__placeholder {
        display: none; } }
    .c-SearchBar .c-SearchBar__placeholder.is-active {
      opacity: 0;
      bottom: 17px; }
      @media (max-width: 1023px) {
        .c-SearchBar .c-SearchBar__placeholder.is-active {
          bottom: -58px; } }

.c-SearchBar__placeholder-mobile {
  width: 100%;
  display: flex;
  padding-left: var(--six-margin);
  padding-right: var(--six-margin);
  position: relative;
  transition: bottom 500ms cubic-bezier(0.25, 1, 0.5, 1);
  font-family: "Lausanne-300", sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: calc(0.00298 * 100vw + 19.04762px);
  line-height: 1.2;
  line-height: 1; }
  .c-SearchBar__placeholder-mobile em {
    font-family: "Lausanne-300-italic", sans-serif;
    font-style: normal;
    font-weight: 300; }
    .c-SearchBar__placeholder-mobile em em {
      font-style: normal;
      font-weight: 300; }
    .c-SearchBar__placeholder-mobile em strong {
      font-family: "Lausanne-450-italic", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar__placeholder-mobile em strong em {
        font-style: normal;
        font-weight: 450; }
  .c-SearchBar__placeholder-mobile strong {
    font-family: "Lausanne-450", sans-serif;
    font-style: normal;
    font-weight: 450; }
    .c-SearchBar__placeholder-mobile strong em {
      font-family: "Lausanne-450-italic", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar__placeholder-mobile strong em em {
        font-style: normal;
        font-weight: 450; }
    .c-SearchBar__placeholder-mobile strong strong {
      font-weight: 450; }
  @media (min-width: 1921px) {
    .c-SearchBar__placeholder-mobile {
      font-size: 25px; } }
  @media (max-width: 499px) {
    .c-SearchBar__placeholder-mobile {
      font-size: 20px; } }
  .c-SearchBar__placeholder-mobile strong,
  .c-SearchBar__placeholder-mobile b {
    font-family: "Lausanne-450", sans-serif;
    font-style: normal;
    font-weight: 450; }
    .c-SearchBar__placeholder-mobile strong em,
    .c-SearchBar__placeholder-mobile b em {
      font-family: "Lausanne-450-italic", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar__placeholder-mobile strong em em,
      .c-SearchBar__placeholder-mobile b em em {
        font-style: normal;
        font-weight: 450; }
    .c-SearchBar__placeholder-mobile strong strong,
    .c-SearchBar__placeholder-mobile b strong {
      font-weight: 450; }
  @media (min-width: 1024px) {
    .c-SearchBar__placeholder-mobile {
      display: none; } }
  .c-SearchBar__placeholder-mobile.is-active {
    opacity: 0;
    bottom: 17px; }
    @media (max-width: 1023px) {
      .c-SearchBar__placeholder-mobile.is-active {
        bottom: -58px; } }

.c-SearchBar__suggested-trigger {
  position: absolute;
  bottom: -10px;
  color: #000;
  text-transform: uppercase;
  cursor: pointer;
  opacity: 0;
  transition: 600ms color cubic-bezier(0.25, 1, 0.5, 1), 600ms opacity cubic-bezier(0.25, 1, 0.5, 1), 600ms bottom cubic-bezier(0.25, 1, 0.5, 1); }
  @media (hover: hover) {
    .c-SearchBar__suggested-trigger:hover {
      color: #dedede; } }
  .c-SearchBar__suggested-trigger.is-active {
    color: #dedede; }

.c-SearchBar__suggested-wrap {
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  padding-top: calc(-0.00298 * 100vw + 25.95238px); }
  @media (min-width: 1921px) {
    .c-SearchBar__suggested-wrap {
      padding-top: 20px; } }
  @media (max-width: 499px) {
    .c-SearchBar__suggested-wrap {
      padding-top: 25px; } }
  @media (max-width: 1023px) {
    .c-SearchBar__suggested-wrap {
      overflow-y: auto;
      max-height: 60vh;
      padding-bottom: 25px; } }

.c-SearchBar__suggested {
  opacity: 0;
  pointer-events: none;
  transition: 600ms opacity cubic-bezier(0.25, 1, 0.5, 1);
  width: 100%; }

.c-SearchBar__suggested-links {
  width: 100%;
  display: flex;
  flex-wrap: wrap; }
  @media (max-width: 1023px) {
    .c-SearchBar__suggested-links {
      padding-top: 23px; } }
  .c-SearchBar__suggested-links .c-SearchBar__suggested-link {
    width: 100%;
    display: flex;
    padding-left: var(--six-margin);
    padding-right: var(--six-margin); }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link:not(:last-child) {
      padding-bottom: calc(0.00119 * 100vw + 2.61905px);
      margin-bottom: calc(0.00476 * 100vw + 8.47619px); }
      @media (min-width: 1921px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link:not(:last-child) {
          padding-bottom: 5px; } }
      @media (max-width: 499px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link:not(:last-child) {
          padding-bottom: 3px; } }
      @media (min-width: 1921px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link:not(:last-child) {
          margin-bottom: 18px; } }
      @media (max-width: 499px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link:not(:last-child) {
          margin-bottom: 10px; } }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link:last-child {
      border-bottom: 0; }
  .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a,
  .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span {
    opacity: 0;
    width: initial;
    color: #000;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    transition: 600ms color cubic-bezier(0.25, 1, 0.5, 1), 600ms opacity cubic-bezier(0.25, 1, 0.5, 1), 600ms top cubic-bezier(0.25, 1, 0.5, 1);
    font-family: "Lausanne-300", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: calc(0.01488 * 100vw + 25.2381px);
    line-height: 1; }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a em,
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span em {
      font-family: "Lausanne-300-italic", sans-serif;
      font-style: normal;
      font-weight: 300; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a em em,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span em em {
        font-style: normal;
        font-weight: 300; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a em strong,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span em strong {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a em strong em,
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span em strong em {
          font-style: normal;
          font-weight: 450; }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong,
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong em,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong em em,
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong strong,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong strong {
        font-weight: 450; }
    @media (min-width: 1921px) {
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span {
        font-size: 55px; } }
    @media (max-width: 499px) {
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span {
        font-size: 30px; } }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong,
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a b,
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong,
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span b {
      font-family: "Lausanne-450", sans-serif;
      font-style: normal;
      font-weight: 450; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong em,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a b em,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong em,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span b em {
        font-family: "Lausanne-450-italic", sans-serif;
        font-style: normal;
        font-weight: 450; }
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong em em,
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a b em em,
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong em em,
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span b em em {
          font-style: normal;
          font-weight: 450; }
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a strong strong,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a b strong,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span strong strong,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span b strong {
        font-weight: 450; }
    @media (max-width: 767px) {
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span {
        font-size: 25px; } }
    @media (hover: hover) {
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a:hover,
      .c-SearchBar__suggested-links .c-SearchBar__suggested-link > span:hover {
        color: #dedede; } }
  .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a {
    position: relative; }
    .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a::after {
      content: "";
      position: absolute;
      left: calc(var(--six-margin) * -1);
      width: 100vw;
      height: 1px;
      background-color: #000;
      bottom: calc(-0.00119 * 100vw + -2.61905px); }
      @media (min-width: 1921px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a::after {
          bottom: -5px; } }
      @media (max-width: 499px) {
        .c-SearchBar__suggested-links .c-SearchBar__suggested-link > a::after {
          bottom: -3px; } }

.c-SearchBar--suggested-search-active .c-SearchBar__form-wrap {
  transition: 600ms opacity cubic-bezier(0.25, 1, 0.5, 1), 600ms top cubic-bezier(0.25, 1, 0.5, 1) !important; }
  @media (max-width: 1023px) {
    .c-SearchBar--suggested-search-active .c-SearchBar__form-wrap {
      top: 120px !important; } }
  @media (min-width: 1024px) {
    .c-SearchBar--suggested-search-active .c-SearchBar__form-wrap {
      top: 16% !important; } }

.c-SearchBar--suggested-search-active .c-SearchBar__suggested {
  opacity: 1;
  pointer-events: auto; }
  .c-SearchBar--suggested-search-active .c-SearchBar__suggested .c-SearchBar__suggested-link > a,
  .c-SearchBar--suggested-search-active .c-SearchBar__suggested .c-SearchBar__suggested-link > span {
    opacity: 1;
    transition: 600ms color cubic-bezier(0.25, 1, 0.5, 1), 600ms opacity var(--animation-start) ease; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9jb21wb25lbnRzL2MtU2VhcmNoQmFyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxVQUFVLGlDQUFpQyxXQUFXLGtDQUFrQyxZQUFZLG1DQUFtQyxhQUFhLG1DQUFtQyxXQUFXLG1DQUFtQyxZQUFZLG1DQUFtQyxhQUFhLG9DQUFvQztBQUNwVjtBQUNBO0FBQ0E7QUFDQSxhQUFhLEVBQUU7O0FBRWY7QUFDQTtBQUNBLGVBQWUsVUFBVSxpQ0FBaUMsV0FBVyxpQ0FBaUMsWUFBWSxtQ0FBbUMsYUFBYSxtQ0FBbUMsV0FBVyxtQ0FBbUMsWUFBWSxtQ0FBbUMsYUFBYSxvQ0FBb0M7QUFDblY7QUFDQTtBQUNBO0FBQ0EsYUFBYSxFQUFFOztBQUVmO0FBQ0E7QUFDQSxlQUFlLFVBQVUsaUNBQWlDLFdBQVcsaUNBQWlDLFlBQVksa0NBQWtDLGFBQWEsbUNBQW1DLFdBQVcsbUNBQW1DLFlBQVksbUNBQW1DLGFBQWEsb0NBQW9DO0FBQ2xWO0FBQ0E7QUFDQTtBQUNBLGFBQWEsRUFBRTs7QUFFZjtBQUNBO0FBQ0EsZUFBZSxVQUFVLGlDQUFpQyxXQUFXLGlDQUFpQyxZQUFZLGtDQUFrQyxhQUFhLGtDQUFrQyxXQUFXLG1DQUFtQyxZQUFZLG1DQUFtQyxhQUFhLG9DQUFvQztBQUNqVjtBQUNBO0FBQ0E7QUFDQSxhQUFhLEVBQUU7O0FBRWY7QUFDQTtBQUNBLGVBQWUsVUFBVSxpQ0FBaUMsV0FBVyxpQ0FBaUMsWUFBWSxrQ0FBa0MsYUFBYSxrQ0FBa0MsV0FBVyxrQ0FBa0MsWUFBWSxtQ0FBbUMsYUFBYSxvQ0FBb0M7QUFDaFY7QUFDQTtB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QWtEO0FBQ2xEO0FBQ0E7QUFDQSx1QkFBdUIsRUFBRTtBQUN6QjtBQUNBO0FBQ0EsdUJBQXVCLEVBQUU7O0FBRXpCO0FBQ0EsOEdBQThHO0FBQzlHO0FBQ0E7QUFDQSw0QkFBNEIsRUFBRTtBQUM5QjtBQUNBO0FBQ0EsMEJBQTBCLEVBQUU7O0FBRTVCO0FBQ0E7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0EscUdBQXFHIiwiZmlsZSI6ImMtU2VhcmNoQmFyLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5CYXNlIG1peGlucyBhbmQgRnVuY3Rpb25zIE9OTFkgaW4gaGVyZVxuTm8gQ1NTIG91dHB1dCFcblJlbWVtYmVyIHRoZXNlIHRvb2xzL3V0aWxpdGllcyB3aWxsIGJlIG1hZGUgYXZhaWxhYmUgdG8gYWxsIHlvdXIgY29tcG9uZW50cyxcbmFueSBDU1MgeW91IG91dHB1dCBpbiBoZXJlIHdpbGwgYWRkIG1hc3NpdmUgYmxvYXQgdG8geW91ciBwcm9qZWN0LlxuSWYgeW91IG5lZWQgY29tbW9uIGNzcywgYWRkIHRvIG1haW4uc2Nzc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFZlcnRpY2FsIFNwYWNpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0QnJlYWtwb2ludHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0Q29sb3Vyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRaLUluZGV4XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgY3ViaWMtYmV6aWVyIGN1cnZlIHZhcmlhYmxlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRm9udCB2YXJpYWJsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEdyaWQgVmFyaWFibGVzIChzaXplIHZhcnMgbXVzdCBtYXRjaCB0aGUgYnJlYWtwb2ludCB2YXJzKVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICBib2R5OjphZnRlciB7XG4gICAgY29udGVudDogJ3tcInhzbWFsbFwiOntcInZhbHVlXCI6IFwiMzIwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwic21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjc2OHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJsYXJnZVwiOntcInZhbHVlXCI6IFwiMTQ0MHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE5MjBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieHhsYXJnZVwiOntcInZhbHVlXCI6IFwiMjAwMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfX0nO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEyMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwibGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE0NDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInh4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjIwMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJ4c21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcInNtYWxsXCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bWVkaXVtXCI6e1widmFsdWVcIjogXCIxMjAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhsYXJnZVwiOntcInZhbHVlXCI6IFwiMTkyMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhsYXJnZVwiOntcInZhbHVlXCI6IFwiMTkyMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInh4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjIwMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJ4c21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcInNtYWxsXCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bWVkaXVtXCI6e1widmFsdWVcIjogXCIxMjAwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE0NDBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE5MjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjAwMHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieHhsYXJnZVwiOntcInZhbHVlXCI6IFwiMjAwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRTaXRlIFRyYW5zaXRpb25cblx0QXBwbHkgdHJhbnNpdGlvbnMgY29uc2lzdGVudGx5IGFjcm9zcyB0aGUgcHJvamVjdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFZhcmlhYmxlIFNwYWNpbmcgKHYtc3BhY2luZylcblx0VXNlIHdpdGggdmFsdWVzIHNldCBpbiBfY29uZmlnLnNjc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRUcmFja2luZ1xuXHRDb252ZXJ0IFhELCBpbGx1c3RyYXRvciwgaW5kZXNpZ24gYW5kXG5cdHBob3Rvc2hvcCB0cmFja2luZyBpbnRvIGxldHRlciBzcGFjaW5nLlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRMaW5lIEhlaWdodCBDcm9wIChsaENyb3ApXG5cdFJlbW92ZXMgdGhlIGFkZGl0aW9uYWwgbGluZSBoZWlnaHQgZnJvbSB0b3Agb2YgdGV4dCAtIGh0dHBzOi8vY29keWhvdXNlLmNvL2Jsb2cvcG9zdC9saW5lLWhlaWdodC1jcm9wXG5cdFVzZSB0byBtYWtlIHN1cmUgdGhlIHRvcCBvZiB5b3VyIHRleHQgbGluZXMgdXAgd2l0aCBvdGhlciBlbGVtZW50cyBhbG9uZyBzaWRlIGl0LlxuXHRFbnRlciBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0IChzYW1lIGFzIHRoZSB0eXBlIGxpbmUgaGlnaHQpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFVuaXRsZXNzIExpbmUgSGVpZ2h0XG5cdENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLlxuXHRJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuXHRTdG9sZW4gZnJvbSBGb3VuZGF0aW9uIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb24vc2l0ZXMvZG9jcy9zYXNzLWZ1bmN0aW9ucy5odG1sI3VuaXRsZXNzLWNhbGNcblxuXHRAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG5cdEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG5cdEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0UmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cblx0QHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHR1c2VkIHRvIGNyZWF0ZSByZXNvbnNpdmUgdHlwZVxuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbWluLWZvbnQtc2l6ZSAtIE51bWJlciBvZiB0aGUgbWluaXVtdW0gZm9udCBzaXplIHdpdGggdW5pdHMuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbWF4LWZvbnQtc2l6ZSAtIE51bWJlciBvZiB0aGUgbWF4aW11bSBmb250IHNpemUgd2l0aCB1bml0cy5cblx0QHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCAtIE51bWJlciBvZiB0aGUgbGluZWhlaWdodCB3aXRoIHVuaXRzLlxuXHRAcmV0dXJucyBmb250IHNpemUgdXNpbmcgdGhlIHYtc3BhY2UgbWl4aW4gYW5kIGEgdW5pdGxlc3MgbGluZWhlaWdodC5cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdHVzZWQgdG8gcmV0cmVpdmUgdmFyYmFpbGVzIGZyb20gdGhlICRzaXgtY2NzLXZhcmlhYmxlcyBhcnJheVxuXG5cdCR0eXBlID0gdHlwZSBpcyB0aGUgbmFtZSB5b3Ugc2V0IGZvciB5b3VyIG5lc3RlZCB2YXJhaWJsZSBhcnJheVxuXHQkc2l6ZSA9IGlzIHRoZSBuZXN0ZWQgdmFyaWFibGUgeW91IHdpc2ggdG8gZ2V0LlxuXHRAcmV0dXJucyB0aGUgdmFsdWUgb2YgdGVoIHNwZWNpZmllZCB2YXJpYWJsZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0bG9vcHMgdGhyb3VnaCB2YXJiYWlsZXMgZnJvbSB0aGUgJHNpeC1jY3MtdmFyaWFibGVzIGFycmF5ICYgb3V0IHB1dCBjc3MgdmFyXG5cblx0JHZhbHVlID0gdXNlZCB0byBnZXQgdGhlIGNvcnJlY3QgdmFsdWVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdHVzZWQgdG8gcmV0cmVpdmUgY3NzIHZhciBiYXNlZCBvbiB0aGUgYnJlYWtwb2ludCBwYXNzZWRcblxuXHQkYnJlYWtwb2ludCA9IHVzZWQgdG8gc3BlY2lmeSBtZWRpYSBxdWVyeVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0c2libGluZyBmYWRlOiBmYWRlIG91dCBzaWJsaW5ncyBhcm91bmQgYSBob3ZlcmVkIGl0ZW1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuRml4IGZvciAxMDB2aCBlbGVtZW50cyBiZWluZyBjb3ZlcmVkIGJ5IGlPUyBTYWZhcmkgdG9vbGJhclxuVGhpcyBpcyBhIGJpdCBoYWNreS4gTW9yZSBpbmZvOiBodHRwczovL2FsbHRoaW5nc3NtaXR0eS5jb20vMjAyMC8wNS8xMS9jc3MtZml4LWZvci0xMDB2aC1pbi1tb2JpbGUtd2Via2l0L1xuVGhlIGhlaWdodCBkb2Vzbid0IGFkanVzdCB3aGVuIHRoZSBhZGRyZXNzIGJhciBpcyBoaWRkZW4uXG4qL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRDaGFyYWN0ZXIgU3R5bGUgTWl4aW5zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnUtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFdZU0lXWUcgTWl4aW4gYW5kIGNsYXNzXG5cdEFwcGx5IHRvIGNvbnRlbnQgdGhhdCBpcyB1c2luZyBhIFdZU0lXWUcgZWRpdG9yIGZpZWxkLlxuXHRSZWRlZmluZXMgYWxsIHRoZSB0eXBvZ3JhcGhpYyBIVE1MIGVsZW1lbnRzIHRoYXQgVGlueU1jZSBvdXRwdXRzLiAoaDEsaW1nLHAsdWwgZXRjLilcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuRm9ybSBNaXhpbnNcbkNyZWF0ZSBtaXhpbnMgZmlyc3Qgc28gdGhleSBjYW4gYmUgcmV1c2VkIG9uIFdvbyBmb3JtcyBvciBvdGhlciBwbGFjZXMgd2hlcmUgeW91IGNhbid0IGFkZCB5b3VyIG93biBjbGFzc2VzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRHcmlkIE1peGluc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFNlYXJjaCBCYXIgQ29tcG9uZW50XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtU2VhcmNoQmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fZm9ybS13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0b3A6IDE0MHB4O1xuICAgIGxlZnQ6IGNhbGModmFyKC0tc2l4LW1hcmdpbikgKiAtMSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICh2YXIoLS1zaXgtbWFyZ2luKSAqIDIpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRyYW5zaXRpb246IDYwMG1zIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSksIDYwMG1zIHRvcCBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjAwNTk1ICogMTAwdncgKyA4LjA5NTI0cHgpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fZm9ybS13cmFwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0OTlweCkge1xuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fZm9ybS13cmFwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX2Zvcm0td3JhcCB7XG4gICAgICAgIHRvcDogNTMlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH0gfVxuICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX2Zvcm0td3JhcDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19mb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zaXgtbWFyZ2luKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXgtbWFyZ2luKTsgfVxuICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuMDE0ODggKiAxMDB2dyArIDI1LjIzODFweCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgaGVpZ2h0OiBjYWxjKDAuMDExOSAqIDEwMHZ3ICsgMzYuMTkwNDhweCk7IH1cbiAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS0zMDAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCBlbSBlbSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgZW0gc3Ryb25nIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgZW0gc3Ryb25nIGVtIHtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTBcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyBlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MC1pdGFsaWNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyBlbSBlbSB7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQge1xuICAgICAgICBmb250LXNpemU6IDU1cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0OTlweCkge1xuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCBiIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgc3Ryb25nIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgYiBlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MC1pdGFsaWNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyBlbSBlbSxcbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgYiBlbSBlbSB7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkIHN0cm9uZyBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCBiIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCB7XG4gICAgICAgIGhlaWdodDogNjBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCB7XG4gICAgICAgIGhlaWdodDogNDBweDsgfSB9XG4gICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDJweDtcbiAgICAgIGxlZnQ6IHZhcigtLXNpeC1tYXJnaW4pO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IHRvcCA1MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSwgb3BhY2l0eSA1MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTMwMFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygwLjAxNDg4ICogMTAwdncgKyAyNS4yMzgxcHgpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwgZW0ge1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS0zMDAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIGVtIGVtIHtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIGVtIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBlbSBzdHJvbmcgZW0ge1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTBcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwgc3Ryb25nIGVtIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIHN0cm9uZyBlbSBlbSB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwgc3Ryb25nIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDU1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIHN0cm9uZyxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwgYiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MFwiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBzdHJvbmcgZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1zZWFyY2hCYXJfX2ZpZWxkICsgbGFiZWwgYiBlbSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBzdHJvbmcgZW0gZW0sXG4gICAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBiIGVtIGVtIHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLXNlYXJjaEJhcl9fZmllbGQgKyBsYWJlbCBzdHJvbmcgc3Ryb25nLFxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsIGIgc3Ryb25nIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtc2VhcmNoQmFyX19maWVsZCArIGxhYmVsLmlzLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRvcDogLTEwcHg7IH1cbiAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0LFxuICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiB2YXIoLS1zaXgtbWFyZ2luKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSA1MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSwgY29sb3IgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSksIG9wYWNpdHkgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSk7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuMDAyOTggKiAxMDB2dyArIDE5LjA0NzYycHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQgZW0sXG4gICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgZW0ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IGVtIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgZW0gZW0ge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBlbSBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBlbSBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQgZW0gc3Ryb25nIGVtLFxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBlbSBzdHJvbmcgZW0ge1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBzdHJvbmcge1xuICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQgc3Ryb25nIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgc3Ryb25nIGVtIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IHN0cm9uZyBlbSBlbSxcbiAgICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgc3Ryb25nIGVtIGVtIHtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IHN0cm9uZyBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBzdHJvbmcgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxOTIxcHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQgc3Ryb25nLFxuICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBiLFxuICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyIHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBiIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IHN0cm9uZyBlbSxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBiIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgc3Ryb25nIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXIgYiBlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MC1pdGFsaWNcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBzdHJvbmcgZW0gZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBiIGVtIGVtLFxuICAgICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBzdHJvbmcgZW0gZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyIGIgZW0gZW0ge1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQgc3Ryb25nIHN0cm9uZyxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdCBiIHN0cm9uZyxcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyIHN0cm9uZyBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciBiIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgLmMtU2VhcmNoQmFyIC5jLVNlYXJjaEJhcl9fc3VibWl0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvdHRvbTogM3B4OyB9XG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3N1Ym1pdDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjNjA2MDYwOyB9IH1cbiAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19zdWJtaXQuaXMtYWN0aXZlIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJvdHRvbTogMTBweDsgfVxuICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciB7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAuYy1TZWFyY2hCYXIgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLmlzLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYm90dG9tOiAxN3B4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAgIC5jLVNlYXJjaEJhciAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgYm90dG9tOiAtNThweDsgfSB9XG5cbi5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc2l4LW1hcmdpbik7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpeC1tYXJnaW4pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJvdHRvbSA1MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKTtcbiAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiBjYWxjKDAuMDAyOTggKiAxMDB2dyArIDE5LjA0NzYycHgpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBlbSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUgZW0gZW0ge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIGVtIHN0cm9uZyB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBlbSBzdHJvbmcgZW0ge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUgc3Ryb25nIHtcbiAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTBcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIHN0cm9uZyBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBzdHJvbmcgZW0gZW0ge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBzdHJvbmcgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OTlweCkge1xuICAgIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlIHN0cm9uZyxcbiAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUgYiB7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBzdHJvbmcgZW0sXG4gICAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUgYiBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBzdHJvbmcgZW0gZW0sXG4gICAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBiIGVtIGVtIHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUgc3Ryb25nIHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSBiIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYy1TZWFyY2hCYXJfX3BsYWNlaG9sZGVyLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmMtU2VhcmNoQmFyX19wbGFjZWhvbGRlci1tb2JpbGUuaXMtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJvdHRvbTogMTdweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhcl9fcGxhY2Vob2xkZXItbW9iaWxlLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJvdHRvbTogLTU4cHg7IH0gfVxuXG4uYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC10cmlnZ2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0xMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiA2MDBtcyBjb2xvciBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSwgNjAwbXMgb3BhY2l0eSBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSwgNjAwbXMgYm90dG9tIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpOyB9XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtdHJpZ2dlcjpob3ZlciB7XG4gICAgICBjb2xvcjogI2RlZGVkZTsgfSB9XG4gIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLXRyaWdnZXIuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogI2RlZGVkZTsgfVxuXG4uYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogY2FsYygtMC4wMDI5OCAqIDEwMHZ3ICsgMjUuOTUyMzhweCk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLXdyYXAge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC13cmFwIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLXdyYXAge1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDYwdmg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfSB9XG5cbi5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb246IDYwMG1zIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSk7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3Mge1xuICAgICAgcGFkZGluZy10b3A6IDIzcHg7IH0gfVxuICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc2l4LW1hcmdpbik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc2l4LW1hcmdpbik7IH1cbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4wMDExOSAqIDEwMHZ3ICsgMi42MTkwNXB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMC4wMDQ3NiAqIDEwMHZ3ICsgOC40NzYxOXB4KTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gICAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbms6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbms6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluazpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSxcbiAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IDYwMG1zIGNvbG9yIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpLCA2MDBtcyBvcGFjaXR5IGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpLCA2MDBtcyB0b3AgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSk7XG4gICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtMzAwXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuMDE0ODggKiAxMDB2dyArIDI1LjIzODFweCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBlbSxcbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gc3BhbiBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS0zMDAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBlbSBlbSxcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIGVtIGVtIHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBlbSBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gc3BhbiBlbSBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBlbSBzdHJvbmcgZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIGVtIHN0cm9uZyBlbSB7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBzdHJvbmcsXG4gICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4gc3Ryb25nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGEgc3Ryb25nIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4gc3Ryb25nIGVtIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF1c2FubmUtNDUwLWl0YWxpY1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGEgc3Ryb25nIGVtIGVtLFxuICAgICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gc3BhbiBzdHJvbmcgZW0gZW0ge1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDUwOyB9XG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBzdHJvbmcgc3Ryb25nLFxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4gc3Ryb25nIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMXB4KSB7XG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSxcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiA1NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhLFxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhIHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBiLFxuICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHN0cm9uZyxcbiAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gc3BhbiBiIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdXNhbm5lLTQ1MFwiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGEgc3Ryb25nIGVtLFxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGEgYiBlbSxcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHN0cm9uZyBlbSxcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIGIgZW0ge1xuICAgICAgICBmb250LWZhbWlseTogXCJMYXVzYW5uZS00NTAtaXRhbGljXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQ1MDsgfVxuICAgICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBzdHJvbmcgZW0gZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhIGIgZW0gZW0sXG4gICAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHN0cm9uZyBlbSBlbSxcbiAgICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4gYiBlbSBlbSB7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhIHN0cm9uZyBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSBiIHN0cm9uZyxcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHN0cm9uZyBzdHJvbmcsXG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gc3BhbiBiIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhLFxuICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDI1cHg7IH0gfVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYTpob3ZlcixcbiAgICAgIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmtzIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNkZWRlZGU7IH0gfVxuICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGE6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiBjYWxjKHZhcigtLXNpeC1tYXJnaW4pICogLTEpO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgYm90dG9tOiBjYWxjKC0wLjAwMTE5ICogMTAwdncgKyAtMi42MTkwNXB4KTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjFweCkge1xuICAgICAgICAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rcyAuYy1TZWFyY2hCYXJfX3N1Z2dlc3RlZC1saW5rID4gYTo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogLTVweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgICAgICAgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGlua3MgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQtbGluayA+IGE6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IC0zcHg7IH0gfVxuXG4uYy1TZWFyY2hCYXItLXN1Z2dlc3RlZC1zZWFyY2gtYWN0aXZlIC5jLVNlYXJjaEJhcl9fZm9ybS13cmFwIHtcbiAgdHJhbnNpdGlvbjogNjAwbXMgb3BhY2l0eSBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSwgNjAwbXMgdG9wIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5jLVNlYXJjaEJhci0tc3VnZ2VzdGVkLXNlYXJjaC1hY3RpdmUgLmMtU2VhcmNoQmFyX19mb3JtLXdyYXAge1xuICAgICAgdG9wOiAxMjBweCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jLVNlYXJjaEJhci0tc3VnZ2VzdGVkLXNlYXJjaC1hY3RpdmUgLmMtU2VhcmNoQmFyX19mb3JtLXdyYXAge1xuICAgICAgdG9wOiAxNiUgIWltcG9ydGFudDsgfSB9XG5cbi5jLVNlYXJjaEJhci0tc3VnZ2VzdGVkLXNlYXJjaC1hY3RpdmUgLmMtU2VhcmNoQmFyX19zdWdnZXN0ZWQge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuICAuYy1TZWFyY2hCYXItLXN1Z2dlc3RlZC1zZWFyY2gtYWN0aXZlIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBhLFxuICAuYy1TZWFyY2hCYXItLXN1Z2dlc3RlZC1zZWFyY2gtYWN0aXZlIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkIC5jLVNlYXJjaEJhcl9fc3VnZ2VzdGVkLWxpbmsgPiBzcGFuIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IDYwMG1zIGNvbG9yIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpLCA2MDBtcyBvcGFjaXR5IHZhcigtLWFuaW1hdGlvbi1zdGFydCkgZWFzZTsgfVxuIl0sInNvdXJjZVJvb3QiOiIifQ==*/