/*
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
=========================================================================================================== */
/* ==========================================================================
	Media Item Component
========================================================================== */
/* stylelint-disable */
.c-MediaItem {
  width: 100%;
  position: relative; }
  .c-MediaItem .c-MediaItem__image,
  .c-MediaItem .c-Video {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='50' viewBox='0 0 50 50'%3E%3Cg id='Group_18436' data-name='Group 18436' transform='translate(-538 -681)'%3E%3Cg id='Ellipse_444' data-name='Ellipse 444' transform='translate(538 681)' fill='none' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='25' cy='25' r='25' stroke='none' shape-rendering='geometricPrecision'/%3E%3Ccircle cx='25' cy='25' r='24' fill='none' shape-rendering='geometricPrecision'/%3E%3C/g%3E%3Cline id='Line_3345' data-name='Line 3345' y2='30' transform='translate(563 691)' fill='none' stroke='%23fff' stroke-width='2' shape-rendering='geometricPrecision'/%3E%3Cline id='Line_3346' data-name='Line 3346' x2='30' transform='translate(548 706)' fill='none' stroke='%23fff' stroke-width='2' shape-rendering='geometricPrecision'/%3E%3C/g%3E%3C/svg%3E%0A") 25 25, pointer; }
  .c-MediaItem .c-MediaItem__image {
    position: relative; }
    .c-MediaItem .c-MediaItem__image::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #000;
      opacity: 0;
      pointer-events: none;
      transition: 500ms opacity 500ms cubic-bezier(0.25, 1, 0.5, 1);
      cursor: auto; }
    .c-MediaItem .c-MediaItem__image.is-active::after {
      opacity: 0.2;
      pointer-events: auto;
      transition: 500ms opacity cubic-bezier(0.25, 1, 0.5, 1); }

.c-MediaItem__caption {
  width: 100%; }
  @media (min-width: 768px) {
    .c-MediaItem__caption {
      width: 90%; } }

@media (min-width: 768px) and (orientation: portrait) {
  .c-MediaItem__caption {
    width: 50%; } }
  @media (min-width: 1440px) {
    .c-MediaItem__caption {
      width: 75%; } }
  @media (min-width: 1920px) {
    .c-MediaItem__caption {
      width: 50%; } }

.c-MediaItemCaption--journal-layout {
  padding-left: var(--six-gutter);
  padding-right: var(--six-gutter); }
  .c-MediaItemCaption--journal-layout .c-MediaItem__image {
    cursor: auto; }
  .c-MediaItemCaption--journal-layout .c-MediaItem__image {
    margin-bottom: 20px; }
    .c-MediaItemCaption--journal-layout .c-MediaItem__image::before {
      content: "";
      position: absolute;
      bottom: -10px;
      left: calc(var(--six-gutter) * -1);
      width: calc(100% + (var(--six-gutter) * 2));
      height: 1px;
      background-color: #000; }
  .c-MediaItemCaption--journal-layout .c-MediaItem__caption {
    position: relative;
    text-align: center; }
    @media (max-width: 767px) {
      .c-MediaItemCaption--journal-layout .c-MediaItem__caption {
        left: calc(var(--six-gutter) * -1);
        width: calc(100% + (var(--six-gutter) * 2)); } }
    @media (min-width: 768px) {
      .c-MediaItemCaption--journal-layout .c-MediaItem__caption {
        width: 80%;
        margin: 0 auto; } }
  .c-MediaItemCaption--journal-layout .c-MediaItemCaption {
    padding-top: 0; }

.c-MediaItemCaption--no-caption .c-MediaItem__image::before {
  content: "";
  display: none; }

.c-MediaItemCaption--hide {
  display: none; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9jb21wb25lbnRzL2MtTWVkaWFJdGVtLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxVQUFVLGlDQUFpQyxXQUFXLGtDQUFrQyxZQUFZLG1DQUFtQyxhQUFhLG1DQUFtQyxXQUFXLG1DQUFtQyxZQUFZLG1DQUFtQyxhQUFhLG9DQUFvQztBQUNwVjtBQUNBO0FBQ0E7QUFDQSxhQUFhLEVBQUU7O0FBRWY7QUFDQTtBQUNBLGVBQWUsVUFBVSxpQ0FBaUMsV0FBVyxpQ0FBaUMsWUFBWSxtQ0FBbUMsYUFBYSxtQ0FBbUMsV0FBVyxtQ0FBbUMsWUFBWSxtQ0FBbUMsYUFBYSxvQ0FBb0M7QUFDblY7QUFDQTtBQUNBO0FBQ0EsYUFBYSxFQUFFOztBQUVmO0FBQ0E7QUFDQSxlQUFlLFVBQVUsaUNBQWlDLFdBQVcsaUNBQWlDLFlBQVksa0NBQWtDLGFBQWEsbUNBQW1DLFdBQVcsbUNBQW1DLFlBQVksbUNBQW1DLGFBQWEsb0NBQW9DO0FBQ2xWO0FBQ0E7QUFDQTtBQUNBLGFBQWEsRUFBRTs7QUFFZjtBQUNBO0FBQ0EsZUFBZSxVQUFVLGlDQUFpQyxXQUFXLGlDQUFpQyxZQUFZLGtDQUFrQyxhQUFhLGtDQUFrQyxXQUFXLG1DQUFtQyxZQUFZLG1DQUFtQyxhQUFhLG9DQUFvQztBQUNqVjtBQUNBO0FBQ0E7QUFDQSxhQUFhLEVBQUU7O0FBRWY7QUFDQTtBQUNBLGVBQWUsVUFBVSxpQ0FBaUMsV0FBVyxpQ0FBaUMsWUFBWSxrQ0FBa0MsYUFBYSxrQ0FBa0MsV0FBVyxrQ0FBa0MsWUFBWSxtQ0FBbUMsYUFBYSxvQ0FBb0M7QUFDaFY7QUFDQTtBQUNBO0FBQ0EsYUFBYSxFQUFFOztBQUVmO0FBQ0E7QUFDQSxlQUFlLFVBQVUsaUNBQWlDLFdBQVcsaUNBQWlDLFlBQVksa0NBQWtDLGFBQWEsa0NBQWtDLFdBQVcsa0NBQWtDLFlBQVksa0NBQWtDLGFBQWEsb0NBQW9DO0FBQy9VO0FBQ0E7QUFDQTtBQUNBLGFBQWEsRUFBRTs7QUFFZjtBQUNBO0FBQ0EsZUFBZSxVQUFVLGlDQUFpQyxXQUFXLGlDQUFpQyxZQUFZLGtDQUFrQyxhQUFhLGtDQUFrQyxXQUFXLGtDQUFrQyxZQUFZLGtDQUFrQyxhQUFhLG1DQUFtQztBQUM5VTtBQUNBO0FBQ0E7QUFDQSxhQUFhLEVBQUU7O0FBRWY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVMsT0FBTztBQUNoQixTQUFTLE9BQU87QUFDaEIsVUFBVSxPQUFPO0FBQ2pCO0FBQ0E7QUFDQTs7QUFFQSxTQUFTLE9BQU87QUFDaEIsV0FBVyxPQUFPO0FBQ2xCO0FBQ0E7QUFDQTs7QUFFQSxTQUFTLE9BQU87QUFDaEIsU0FBUyxPQUFPO0FBQ2hCLFNBQVMsT0FBTztBQUNoQjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0Qjs7QUFFNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSxxM0JBQXEzQjtBQUNyM0I7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQjtBQUNuQjtBQUNBO0FBQ0E7QUFDQSw4REFBOEQ7O0FBRTlEO0FBQ0EsY0FBYztBQUNkO0FBQ0E7QUFDQSxpQkFBaUIsRUFBRTs7QUFFbkI7QUFDQTtBQUNBLGVBQWUsRUFBRTtBQUNqQjtBQUNBO0FBQ0EsaUJBQWlCLEVBQUU7QUFDbkI7QUFDQTtBQUNBLGlCQUFpQixFQUFFOztBQUVuQjtBQUNBO0FBQ0EsbUNBQW1DO0FBQ25DO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0Esd0JBQXdCO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBO0FBQ0Esb0RBQW9ELEVBQUU7QUFDdEQ7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLEVBQUU7QUFDekI7QUFDQSxtQkFBbUI7O0FBRW5CO0FBQ0E7QUFDQSxnQkFBZ0I7O0FBRWhCO0FBQ0EsZ0JBQWdCIiwiZmlsZSI6ImMtTWVkaWFJdGVtLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5CYXNlIG1peGlucyBhbmQgRnVuY3Rpb25zIE9OTFkgaW4gaGVyZVxuTm8gQ1NTIG91dHB1dCFcblJlbWVtYmVyIHRoZXNlIHRvb2xzL3V0aWxpdGllcyB3aWxsIGJlIG1hZGUgYXZhaWxhYmUgdG8gYWxsIHlvdXIgY29tcG9uZW50cyxcbmFueSBDU1MgeW91IG91dHB1dCBpbiBoZXJlIHdpbGwgYWRkIG1hc3NpdmUgYmxvYXQgdG8geW91ciBwcm9qZWN0LlxuSWYgeW91IG5lZWQgY29tbW9uIGNzcywgYWRkIHRvIG1haW4uc2Nzc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFZlcnRpY2FsIFNwYWNpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0QnJlYWtwb2ludHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0Q29sb3Vyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRaLUluZGV4XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgY3ViaWMtYmV6aWVyIGN1cnZlIHZhcmlhYmxlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRm9udCB2YXJpYWJsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEdyaWQgVmFyaWFibGVzIChzaXplIHZhcnMgbXVzdCBtYXRjaCB0aGUgYnJlYWtwb2ludCB2YXJzKVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICBib2R5OjphZnRlciB7XG4gICAgY29udGVudDogJ3tcInhzbWFsbFwiOntcInZhbHVlXCI6IFwiMzIwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwic21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjc2OHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJsYXJnZVwiOntcInZhbHVlXCI6IFwiMTQ0MHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE5MjBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieHhsYXJnZVwiOntcInZhbHVlXCI6IFwiMjAwMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfX0nO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEyMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwibGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE0NDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInh4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjIwMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJ4c21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcInNtYWxsXCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bWVkaXVtXCI6e1widmFsdWVcIjogXCIxMjAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhsYXJnZVwiOntcInZhbHVlXCI6IFwiMTkyMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInhsYXJnZVwiOntcInZhbHVlXCI6IFwiMTkyMHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcInh4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjIwMDBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJ4c21hbGxcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcInNtYWxsXCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtZWRpdW1cIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bWVkaXVtXCI6e1widmFsdWVcIjogXCIxMjAwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE0NDBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4bGFyZ2VcIjp7XCJ2YWx1ZVwiOiBcIjE5MjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ4eGxhcmdlXCI6e1widmFsdWVcIjogXCIyMDAwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjAwMHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wieHNtYWxsXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJzbWFsbFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibWVkaXVtXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieG1lZGl1bVwiOntcInZhbHVlXCI6IFwiMTIwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImxhcmdlXCI6e1widmFsdWVcIjogXCIxNDQwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieGxhcmdlXCI6e1widmFsdWVcIjogXCIxOTIwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwieHhsYXJnZVwiOntcInZhbHVlXCI6IFwiMjAwMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRTaXRlIFRyYW5zaXRpb25cblx0QXBwbHkgdHJhbnNpdGlvbnMgY29uc2lzdGVudGx5IGFjcm9zcyB0aGUgcHJvamVjdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFZhcmlhYmxlIFNwYWNpbmcgKHYtc3BhY2luZylcblx0VXNlIHdpdGggdmFsdWVzIHNldCBpbiBfY29uZmlnLnNjc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRUcmFja2luZ1xuXHRDb252ZXJ0IFhELCBpbGx1c3RyYXRvciwgaW5kZXNpZ24gYW5kXG5cdHBob3Rvc2hvcCB0cmFja2luZyBpbnRvIGxldHRlciBzcGFjaW5nLlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRMaW5lIEhlaWdodCBDcm9wIChsaENyb3ApXG5cdFJlbW92ZXMgdGhlIGFkZGl0aW9uYWwgbGluZSBoZWlnaHQgZnJvbSB0b3Agb2YgdGV4dCAtIGh0dHBzOi8vY29keWhvdXNlLmNvL2Jsb2cvcG9zdC9saW5lLWhlaWdodC1jcm9wXG5cdFVzZSB0byBtYWtlIHN1cmUgdGhlIHRvcCBvZiB5b3VyIHRleHQgbGluZXMgdXAgd2l0aCBvdGhlciBlbGVtZW50cyBhbG9uZyBzaWRlIGl0LlxuXHRFbnRlciBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0IChzYW1lIGFzIHRoZSB0eXBlIGxpbmUgaGlnaHQpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFVuaXRsZXNzIExpbmUgSGVpZ2h0XG5cdENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLlxuXHRJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuXHRTdG9sZW4gZnJvbSBGb3VuZGF0aW9uIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb24vc2l0ZXMvZG9jcy9zYXNzLWZ1bmN0aW9ucy5odG1sI3VuaXRsZXNzLWNhbGNcblxuXHRAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG5cdEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG5cdEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0UmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cblx0QHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHR1c2VkIHRvIGNyZWF0ZSByZXNvbnNpdmUgdHlwZVxuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbWluLWZvbnQtc2l6ZSAtIE51bWJlciBvZiB0aGUgbWluaXVtdW0gZm9udCBzaXplIHdpdGggdW5pdHMuXG5cdEBwYXJhbSB7TnVtYmVyfSAkbWF4LWZvbnQtc2l6ZSAtIE51bWJlciBvZiB0aGUgbWF4aW11bSBmb250IHNpemUgd2l0aCB1bml0cy5cblx0QHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCAtIE51bWJlciBvZiB0aGUgbGluZWhlaWdodCB3aXRoIHVuaXRzLlxuXHRAcmV0dXJucyBmb250IHNpemUgdXNpbmcgdGhlIHYtc3BhY2UgbWl4aW4gYW5kIGEgdW5pdGxlc3MgbGluZWhlaWdodC5cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdHVzZWQgdG8gcmV0cmVpdmUgdmFyYmFpbGVzIGZyb20gdGhlICRzaXgtY2NzLXZhcmlhYmxlcyBhcnJheVxuXG5cdCR0eXBlID0gdHlwZSBpcyB0aGUgbmFtZSB5b3Ugc2V0IGZvciB5b3VyIG5lc3RlZCB2YXJhaWJsZSBhcnJheVxuXHQkc2l6ZSA9IGlzIHRoZSBuZXN0ZWQgdmFyaWFibGUgeW91IHdpc2ggdG8gZ2V0LlxuXHRAcmV0dXJucyB0aGUgdmFsdWUgb2YgdGVoIHNwZWNpZmllZCB2YXJpYWJsZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0bG9vcHMgdGhyb3VnaCB2YXJiYWlsZXMgZnJvbSB0aGUgJHNpeC1jY3MtdmFyaWFibGVzIGFycmF5ICYgb3V0IHB1dCBjc3MgdmFyXG5cblx0JHZhbHVlID0gdXNlZCB0byBnZXQgdGhlIGNvcnJlY3QgdmFsdWVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdHVzZWQgdG8gcmV0cmVpdmUgY3NzIHZhciBiYXNlZCBvbiB0aGUgYnJlYWtwb2ludCBwYXNzZWRcblxuXHQkYnJlYWtwb2ludCA9IHVzZWQgdG8gc3BlY2lmeSBtZWRpYSBxdWVyeVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0c2libGluZyBmYWRlOiBmYWRlIG91dCBzaWJsaW5ncyBhcm91bmQgYSBob3ZlcmVkIGl0ZW1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuRml4IGZvciAxMDB2aCBlbGVtZW50cyBiZWluZyBjb3ZlcmVkIGJ5IGlPUyBTYWZhcmkgdG9vbGJhclxuVGhpcyBpcyBhIGJpdCBoYWNreS4gTW9yZSBpbmZvOiBodHRwczovL2FsbHRoaW5nc3NtaXR0eS5jb20vMjAyMC8wNS8xMS9jc3MtZml4LWZvci0xMDB2aC1pbi1tb2JpbGUtd2Via2l0L1xuVGhlIGhlaWdodCBkb2Vzbid0IGFkanVzdCB3aGVuIHRoZSBhZGRyZXNzIGJhciBpcyBoaWRkZW4uXG4qL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRDaGFyYWN0ZXIgU3R5bGUgTWl4aW5zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnUtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFdZU0lXWUcgTWl4aW4gYW5kIGNsYXNzXG5cdEFwcGx5IHRvIGNvbnRlbnQgdGhhdCBpcyB1c2luZyBhIFdZU0lXWUcgZWRpdG9yIGZpZWxkLlxuXHRSZWRlZmluZXMgYWxsIHRoZSB0eXBvZ3JhcGhpYyBIVE1MIGVsZW1lbnRzIHRoYXQgVGlueU1jZSBvdXRwdXRzLiAoaDEsaW1nLHAsdWwgZXRjLilcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuRm9ybSBNaXhpbnNcbkNyZWF0ZSBtaXhpbnMgZmlyc3Qgc28gdGhleSBjYW4gYmUgcmV1c2VkIG9uIFdvbyBmb3JtcyBvciBvdGhlciBwbGFjZXMgd2hlcmUgeW91IGNhbid0IGFkZCB5b3VyIG93biBjbGFzc2VzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRHcmlkIE1peGluc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdE1lZGlhIEl0ZW0gQ29tcG9uZW50XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5jLU1lZGlhSXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmMtTWVkaWFJdGVtIC5jLU1lZGlhSXRlbV9faW1hZ2UsXG4gIC5jLU1lZGlhSXRlbSAuYy1WaWRlbyB7XG4gICAgY3Vyc29yOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzUwJyBoZWlnaHQ9JzUwJyB2aWV3Qm94PScwIDAgNTAgNTAnJTNFJTNDZyBpZD0nR3JvdXBfMTg0MzYnIGRhdGEtbmFtZT0nR3JvdXAgMTg0MzYnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC01MzggLTY4MSknJTNFJTNDZyBpZD0nRWxsaXBzZV80NDQnIGRhdGEtbmFtZT0nRWxsaXBzZSA0NDQnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDUzOCA2ODEpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLXdpZHRoPScyJyUzRSUzQ2NpcmNsZSBjeD0nMjUnIGN5PScyNScgcj0nMjUnIHN0cm9rZT0nbm9uZScgc2hhcGUtcmVuZGVyaW5nPSdnZW9tZXRyaWNQcmVjaXNpb24nLyUzRSUzQ2NpcmNsZSBjeD0nMjUnIGN5PScyNScgcj0nMjQnIGZpbGw9J25vbmUnIHNoYXBlLXJlbmRlcmluZz0nZ2VvbWV0cmljUHJlY2lzaW9uJy8lM0UlM0MvZyUzRSUzQ2xpbmUgaWQ9J0xpbmVfMzM0NScgZGF0YS1uYW1lPSdMaW5lIDMzNDUnIHkyPSczMCcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoNTYzIDY5MSknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2Utd2lkdGg9JzInIHNoYXBlLXJlbmRlcmluZz0nZ2VvbWV0cmljUHJlY2lzaW9uJy8lM0UlM0NsaW5lIGlkPSdMaW5lXzMzNDYnIGRhdGEtbmFtZT0nTGluZSAzMzQ2JyB4Mj0nMzAnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDU0OCA3MDYpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLXdpZHRoPScyJyBzaGFwZS1yZW5kZXJpbmc9J2dlb21ldHJpY1ByZWNpc2lvbicvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBXCIpIDI1IDI1LCBwb2ludGVyOyB9XG4gIC5jLU1lZGlhSXRlbSAuYy1NZWRpYUl0ZW1fX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYy1NZWRpYUl0ZW0gLmMtTWVkaWFJdGVtX19pbWFnZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiA1MDBtcyBvcGFjaXR5IDUwMG1zIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpO1xuICAgICAgY3Vyc29yOiBhdXRvOyB9XG4gICAgLmMtTWVkaWFJdGVtIC5jLU1lZGlhSXRlbV9faW1hZ2UuaXMtYWN0aXZlOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IDUwMG1zIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSk7IH1cblxuLmMtTWVkaWFJdGVtX19jYXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmMtTWVkaWFJdGVtX19jYXB0aW9uIHtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5jLU1lZGlhSXRlbV9fY2FwdGlvbiB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAuYy1NZWRpYUl0ZW1fX2NhcHRpb24ge1xuICAgICAgd2lkdGg6IDc1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAuYy1NZWRpYUl0ZW1fX2NhcHRpb24ge1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG5cbi5jLU1lZGlhSXRlbUNhcHRpb24tLWpvdXJuYWwtbGF5b3V0IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zaXgtZ3V0dGVyKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc2l4LWd1dHRlcik7IH1cbiAgLmMtTWVkaWFJdGVtQ2FwdGlvbi0tam91cm5hbC1sYXlvdXQgLmMtTWVkaWFJdGVtX19pbWFnZSB7XG4gICAgY3Vyc29yOiBhdXRvOyB9XG4gIC5jLU1lZGlhSXRlbUNhcHRpb24tLWpvdXJuYWwtbGF5b3V0IC5jLU1lZGlhSXRlbV9faW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAuYy1NZWRpYUl0ZW1DYXB0aW9uLS1qb3VybmFsLWxheW91dCAuYy1NZWRpYUl0ZW1fX2ltYWdlOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICBsZWZ0OiBjYWxjKHZhcigtLXNpeC1ndXR0ZXIpICogLTEpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICh2YXIoLS1zaXgtZ3V0dGVyKSAqIDIpKTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAuYy1NZWRpYUl0ZW1DYXB0aW9uLS1qb3VybmFsLWxheW91dCAuYy1NZWRpYUl0ZW1fX2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLU1lZGlhSXRlbUNhcHRpb24tLWpvdXJuYWwtbGF5b3V0IC5jLU1lZGlhSXRlbV9fY2FwdGlvbiB7XG4gICAgICAgIGxlZnQ6IGNhbGModmFyKC0tc2l4LWd1dHRlcikgKiAtMSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAodmFyKC0tc2l4LWd1dHRlcikgKiAyKSk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmMtTWVkaWFJdGVtQ2FwdGlvbi0tam91cm5hbC1sYXlvdXQgLmMtTWVkaWFJdGVtX19jYXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICAuYy1NZWRpYUl0ZW1DYXB0aW9uLS1qb3VybmFsLWxheW91dCAuYy1NZWRpYUl0ZW1DYXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4uYy1NZWRpYUl0ZW1DYXB0aW9uLS1uby1jYXB0aW9uIC5jLU1lZGlhSXRlbV9faW1hZ2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmMtTWVkaWFJdGVtQ2FwdGlvbi0taGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/