@charset "UTF-8";
/*
# Settings (_settings)
*/
/*
## Variables

### General

$phi: 1.618033988749 - Golden ratio
*/
/*
### Colours

<span style="color: #333">$colour-base - #333</span> <span style="background: #333; color: #FFF;">&nbsp;$colour-base - #333&nbsp;</span>

<span style="color: #339">$colour-highlight - #339</span> <span style="background: #339; color: #FFF;">&nbsp;$colour-highlight - #339&nbsp;</span>

<span style="color: #339">$colour-link - #339</span> <span style="background: #339; color: #FFF;">&nbsp;$colour-link - #339&nbsp;</span>
*/
/*
### Fonts

$font-size - 13

$line-height - 1.4

<span style="font-family: sans-serif;">$font-base - sans-serif</span>

<span style="font-family: sans-serif;">$font-header - sans-serif</span>
*/
/*
### Layout

$width - 960

$columns - 24

$gutter - 12
*/
/*
## Functions

### em($size: $font-size, $context: $fs)

Will convert a pixel based size to an em value.
First value is the target size, the second value is the font-size of the context it is in.

Examples:
`em(26)` // 2em if base font-size is 13px
`em(18, 12)` // 1.5em
*/
/*
### lh($size: $font-size, $context: $fs)

Will provide the same function as 'em' above buth without appending 'em' to the result.
This makes it more suitable to use as a line-height value.

Examples:
`lh(26)` // 2 if base font-size is 13px
`lh(18, 12)` // 1.5
*/
/*
### fluid($columns: 1, $total-columns: $columns)

Will provide the % result of the first value divided by the second.
Suitable for working out columns and general % values.

Examples:
`fluid(2, 6)` // 12.5%
`fluid(10px, 960px)` // 1.041666666666667%
*/
/*
## Mixins

Mixins must to be called using @include (scss) or + (sass)

### vendor($property, $value)

Add vendor prefixes to a property and provide the value for the property

`@include vendor(box-shadow, 0 0 10px 0 #000);`

Outputs:
`-webkit-box-shadow: 0 0 10px 0 #000`
`-moz-box-shadow: 0 0 10px 0 #000`
`-ms-box-shadow: 0 0 10px 0 #000`
`-o-box-shadow: 0 0 10px 0 #000`
`box-shadow: 0 0 10px 0 #000`
*/
/*
### list-reset

Resets current list only

<pre>
ul {
	@include list-reset;
}
</pre>

Outputs:
<pre>
ul {
	margin: 0;
	padding: 0;
}
ul > li {
	list-style: none;
	list-style-image: none;
}
</pre>
*/
/*
### list-reset-full

Reset current and all child lists

<pre>
ul {
	@include list-reset-full;
}
</pre>

Outputs:
<pre>
ul, ul ul, ul ol {
	margin: 0;
	padding: 0;
}
ul li {
	list-style: none;
	list-style-image: none;
}

</pre>
*/
/*
### clearfix

Clear an elements floated children

<pre>
div {
	@include clearfix;
}
</pre>

Outputs:
<pre>
div {
	*zoom: 1;
}
div:before, div:after {
	content: "";
	display: table;
}
div:after {
	clear: both;
}
</pre>
*/
/*
### keyframes($name)

Set animation keyframes over multiple browser extensions

<pre>
.box {
	@include keyframes(my-animation) {
		0% { opacity: 0; }
		100% { opacity: 1; }
	}
}
</pre>

Outputs:
<pre>
.box {
	@-webkit-keyframes my-animation {
	  0%   { opacity: 0; }
	  100% { opacity: 1; }
	}
	@-moz-keyframes my-animation {
	  0%   { opacity: 0; }
	  100% { opacity: 1; }
	}
	@-ms-keyframes my-animation {
	  0%   { opacity: 0; }
	  100% { opacity: 1; }
	}
	@-o-keyframes my-animation {
	  0%   { opacity: 0; }
	  100% { opacity: 1; }
	}
	@keyframes my-animation {
	  0%   { opacity: 0; }
	  100% { opacity: 1; }
	}
}
</pre>
*/
/*
### hidden-full

Completely hide an element

<pre>
div {
	@include hidden-full;
}
</pre>

Outputs:
<pre>
div {
	display: none !important;
	visibility: hidden;
}
</pre>
*/
/*
### max($maxwidth: $width)

A simple max-width media query

<pre>
div {
	@include max(768px) {
		display: none;
	}
}
</pre>

Outputs:
<pre>
@media (max-width: 768px) {
	div {
		display: none;
	}
}
</pre>
*/
/*
### min($minwidth: $width)

A simple min-width media query

<pre>
div {
	@include min(768px) {
		display: block;
	}
}
</pre>

Outputs:
<pre>
@media (min-width: 768px) {
	div {
		display: block;
	}
}
</pre>
*/
/*
### pixel-ratio($pixelratio: 2, $basedpi: 96)

A simple pixel-ratio media query

$basedpi is used for fine control over the dpi query value

<pre>
div {
	@include pixel-ratio {
		background-image: url(image@2x.png);
	}
}
</pre>

Outputs:
<pre>
@media
	(-webkit-min-device-pixel-ratio: 2),
	(   min--moz-device-pixel-ratio: 2),
	(     -o-min-device-pixel-ratio: 2/1),
	(        min-device-pixel-ratio: 2),
	(                min-resolution: 192dpi),
	(                min-resolution: 2dppx) {
		div {
			background-image: url(image@2x.png);
		}
	}
</pre>
*/
/*
### generate($width: 10px, $height: 10px, $position: static)

Create generic styling for :before/:after

$height / $width / $position all control their namesake CSS properties

<pre>
div:after {
	@include generate;
}
</pre>

Outputs:
<pre>
div:after {
	content: "";
	overflow: hidden;
	text-indent: -9999em;
	display: block;
	width: 10px;
	height: 10px;
	position: static;
}
</pre>
*/
/*
### opacity($o: 0.5)

Handle standard & IE opacity

<pre>
div {
	@include opacity(.75);
}
</pre>

Outputs:
<pre>
div {
	opacity: .75;
	filter: alpha(opacity=75);
}
</pre>
*/
/*
### border-radius($val: 10px)

Friendly interface to vendor(border-radius)
*/
/*
### box-shadow($val: 0 0 10px #000)

Friendly interface to vendor(box-shadow)
Allows multiple comma separated values.
*/
/*
### gradient($direction:vertical, $start-color: #fff, $start-position: 0%, $end-color: #000, $end-position: 100%)

Create horizontal / vertical gradients

Note : Does not include IE9 data uri support

<pre>
div {
	@include gradient($start-color: #F00, $end-color: #0F0);
}
</pre>

Outputs:
<pre>
div {
	background-image: -moz-linear-gradient(top, #F00 0%, #0F0 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #F00), color-stop(100%, #0F0));
	background-image: -webkit-linear-gradient(top, #F00 0%, #0F0 100%);
	background-image: -o-linear-gradient(top, #F00 0%, #0F0 100%);
	background-image: -ms-linear-gradient(top, #F00 0%, #0F0 100%);
	background-image: linear-gradient(to bottom, #F00 0%, #0F0 100%);
	background-repeat: repeat-y;
}
</pre>
*/
/*
### transform($arguments)

Friendly interface to vendor(transform) w/backface-visibility: hidden
*/
/*
### transition($arguments)

Friendly interface to vendor(transition)
*/
/*
### perspective($val: 0)

Friendly interface to vendor(perspective)
*/
/*
### perspective-origin($val: 50% 50%)

Friendly interface to vendor(perspective-origin)
*/
/*
### transform-origin($val: 50% 50%)

Friendly interface to vendor(transform-origin)
*/
/*
### transform-style($val: preserve-3d)

Friendly interface to vendor(transform-style)
*/
/*
### Placeholders
*/
/*
### boxes($cols: 3, $gutter: 10px, $selector: ".col")

Set the container and its children (as  selected by the selector argument) to be a set of columns.
*/
/*
## Extend

Use these placeholder styles with @extend.

### %debug

Used to highlight items via background-color.
Can be useful for debugging.
*/
/*
### %ellipsis

If the element has overflowing text the text will be truncated and an ellipsis appended to the end.
*/
/*
### %ir

Use when setting an element such as an input button to use a background-image.

Not recommended to use this method unless necessary.
Try and use appropriate elements where possible (`<input type="image" />` for example).
*/
/*
### %clearfix

@extend interface for @include clearfix;
*/
#order-details-form, .manufacturers, .checkout .col-wrap, .checkout-steps, .checkout-address-select, .product .productImage, .product, .product-listing, .form.enquiry .row, .post, .home-boxes, .offers, .contentBanner, .banner, .footer-columns, .wrap, .tabs .tab, .tabs .tab-links, .form-item {
  *zoom: 1;
}
#order-details-form:before, .manufacturers:before, .checkout .col-wrap:before, .checkout-steps:before, .checkout-address-select:before, .product .productImage:before, .product:before, .product-listing:before, .form.enquiry .row:before, .post:before, .home-boxes:before, .offers:before, .contentBanner:before, .banner:before, .footer-columns:before, .wrap:before, .tabs .tab:before, .tabs .tab-links:before, .form-item:before, #order-details-form:after, .manufacturers:after, .checkout .col-wrap:after, .checkout-steps:after, .checkout-address-select:after, .product .productImage:after, .product:after, .product-listing:after, .form.enquiry .row:after, .post:after, .home-boxes:after, .offers:after, .contentBanner:after, .banner:after, .footer-columns:after, .wrap:after, .tabs .tab:after, .tabs .tab-links:after, .form-item:after {
  content: "";
  display: table;
}
#order-details-form:after, .manufacturers:after, .checkout .col-wrap:after, .checkout-steps:after, .checkout-address-select:after, .product .productImage:after, .product:after, .product-listing:after, .form.enquiry .row:after, .post:after, .home-boxes:after, .offers:after, .contentBanner:after, .banner:after, .footer-columns:after, .wrap:after, .tabs .tab:after, .tabs .tab-links:after, .form-item:after {
  clear: both;
}

/*
### %list-reset

@extend interface for @include list-reset;
*/
.manufacturers, .checkout-steps, .catSubnav ul, .tabs .tab-links, .carousel-wrap .carousel, .pagination {
  margin: 0;
  padding: 0;
}
.manufacturers > li, .checkout-steps > li, .catSubnav ul > li, .tabs .tab-links > li, .carousel-wrap .carousel > li, .pagination > li {
  list-style: none;
  list-style-image: none;
}

/*
### %list-reset-full

@extend interface for @include list-reset-full;
*/
/*
# Normalize (_normalize)

normalize.css v1.0.1 | MIT License | git.io/normalize

Global reset. This file should not be edited.

*/
html {
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

*, *:after, *:before {
  -ms-box-sizing: inherit;
  -o-box-sizing: inherit;
  box-sizing: inherit;
  background-repeat: no-repeat;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden] {
  display: none;
}

html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */
}

html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

body {
  margin: 0;
}

a:focus {
  outline: thin dotted;
}

a:active,
a:hover {
  outline: 0;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0;
}

h4 {
  font-size: 1em;
  margin: 1.33em 0;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}

h6 {
  font-size: 0.75em;
  margin: 2.33em 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

p,
pre {
  margin: 1em 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0 0 0 40px;
}

menu,
ol,
ul {
  padding: 0 0 0 40px;
}

nav ul, nav ol {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}
nav a {
  text-decoration: none;
}

img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

form {
  margin: 0;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}

button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}

button,
input {
  line-height: normal;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}

button[disabled],
input[disabled] {
  cursor: default;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}

input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
  resize: vertical;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td {
  vertical-align: top;
}

/*
# Base styles: opinionated defaults (_base)
*/
html,
button,
input,
select,
textarea {
  color: #374751;
}

body.site {
  background-color: #09C;
  font-family: sans-serif;
  font-size: 0.75em;
  line-height: 1.4;
  word-wrap: break-word;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

img {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}

/*
 * Text Reset
 */
h1, h2, h3, h4, h5, h6 {
  font-family: "freight-sans-pro", Sans-Serif;
  margin: 0 0 0.8em;
}

h1,
.h1 {
  font-size: 3.1666666667em;
  margin-bottom: 0;
}

h2 {
  font-size: 1.3em;
}

h3 {
  font-size: 1.2em;
}

p {
  margin: 0 0 1em;
}

/*
 * Links
 */
a {
  color: #09C;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

/* Text Alignment */
.justifyleft {
  text-align: left;
}

.justifyright {
  text-align: right;
}

.justifyfull {
  text-align: justify;
}

.justifycentre {
  text-align: center;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */
.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px;
}
.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden, .banner .carouselMask .pager {
  display: none !important;
  visibility: hidden;
}

.hide {
  display: none;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden;
}

/*
##  Object styles (_objects)

### Images
*/
img {
  display: inline-block;
  height: auto;
  max-width: 100%;
}
.oldie img {
  max-width: none;
}
img.right {
  float: right;
  margin: 0 0 16px 16px;
}
img.left {
  float: left;
  margin: 0 16px 16px 0;
}
img[style*=left] {
  margin: 0 16px 16px 0;
}
img[style*=right] {
  margin: 0 0 16px 16px;
}

.img-map {
  display: inline-block;
  max-width: 100%;
  position: relative;
}
.img-map a {
  position: absolute;
}

figure {
  border-bottom: 1px dotted #09C;
  margin-bottom: 10px;
  padding-bottom: 30px;
  position: relative;
}
figure figcaption {
  bottom: 0;
  color: #999;
  font-size: 1em;
  font-style: italic;
  left: 0;
  line-height: 1.5;
  padding: 6px 0;
  position: absolute;
  text-align: center;
  width: 100%;
}
figure .fig-img {
  margin: 0 auto;
}

@media (min-width: 768px) {
  .fig-left {
    float: left;
    margin-bottom: 1em;
    margin-right: 1em;
  }
}

@media (min-width: 768px) {
  .fig-right {
    float: right;
    margin-bottom: 1em;
    margin-left: 1em;
  }
}

.button,
.btn-primary,
.btn-default {
  background-color: #09C;
  background-image: none;
  border: none;
  border-radius: 0;
  color: #FFF;
  display: inline-block;
  font-family: "freight-sans-pro", Sans-Serif;
  font-size: 1em;
  font-weight: 700;
  padding: 0.5em 1em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s linear;
}
.button:hover,
.btn-primary:hover,
.btn-default:hover {
  background-color: #004d66;
  text-decoration: underline;
}
.button.large,
.btn-primary.large,
.btn-default.large {
  font-size: 1.5em;
}
.button.alt,
.btn-primary.alt,
.btn-default.alt {
  background-color: #FC1241;
}
.button.alt:hover,
.btn-primary.alt:hover,
.btn-default.alt:hover {
  background-color: #a60223;
}
.button.grey,
.btn-primary.grey,
.btn-default.grey {
  background-color: #999;
}
.button.grey:hover,
.btn-primary.grey:hover,
.btn-default.grey:hover {
  background-color: #666666;
}
.button.loading,
.btn-primary.loading,
.btn-default.loading {
  background-image: url(/site/images/ajax-loader-pink.gif);
  background-repeat: no-repeat;
  background-position: 12px center;
  padding-left: 2em;
}

.lnkBlock, .linkRow a, .signpost {
  border: none;
  background: #708B9C;
  border-left-color: #708B9C;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: "freight-sans-pro", Sans-Serif;
  font-weight: 700;
  line-height: 2;
  height: 2em;
  padding: 0 0.75em;
  position: relative;
  text-transform: uppercase;
}
.lnkBlock input, .linkRow a input, .signpost input {
  background: transparent;
  border: 0;
  color: inherit;
  font-family: "freight-sans-pro", Sans-Serif;
  font-size: inherit;
  font-weight: 700;
}
.lnkBlock.blue, .linkRow a.blue, .blue.signpost {
  background: #09C;
  border-left-color: #09C;
}
.lnkBlock.white, .linkRow a.white, .white.signpost {
  background: #FFF;
  border-left-color: #FFF;
  color: #09C;
}
.lnkBlock.white:hover, .linkRow a.white:hover, .white.signpost:hover {
  color: #374751;
}
.lnkBlock.red, .linkRow a.red, .red.signpost {
  background: #FC1241;
  border-left-color: #FC1241;
}
.lnkBlock.normalCase, .linkRow a.normalCase, .normalCase.signpost {
  text-transform: none;
}
.lnkBlock:hover, .linkRow a:hover, .signpost:hover {
  color: #FFF;
}

input.lnkBlock, input.signpost {
  border-width: 0;
  height: 2.1666666667em;
  line-height: 2.1666666667;
}

.signpost {
  margin-right: 1em;
}
.signpost:after,
.signpost .after {
  border-color: transparent;
  border-left-color: inherit;
  border-style: solid;
  border-width: 1em 0 1em 1em;
  content: "";
  height: 0;
  overflow: hidden;
  padding-right: 0;
  position: absolute;
  right: -1em;
  top: 0;
  width: 0;
}
.signpost.reverse {
  border-right-color: #708B9C;
  margin-left: 1em;
  margin-right: 0;
}
.signpost.reverse.blue {
  border-right-color: #09C;
}
.signpost.reverse.red {
  border-right-color: #FC1241;
}
.signpost.reverse.white {
  border-right-color: #FFF;
}
.signpost.reverse:after,
.signpost.reverse .after {
  border-right-color: inherit;
  border-width: 1em 1em 1em 0;
  left: -1em;
  right: 0;
}

.print {
  display: none;
}

.pagination {
  text-align: right;
}
.pagination li {
  display: inline;
  padding-left: 3px;
  padding-right: 3px;
}
.pagination .active a:before {
  content: "[";
}
.pagination .active a:after {
  content: "]";
}

.video-embed-frame {
  background-image: url(/system/assets/images/ajax-loader.gif);
  background-position: center center;
  background-repeat: no-repeat;
  padding-bottom: 56.25%;
  padding-bottom: 62.5%;
  position: relative;
  width: 100%;
}
.video-embed-frame iframe {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.overlay {
  background: url(/site/images/black-50.png);
  background: rgba(0, 0, 0, 0.5);
  height: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  transition: opacity 0.3s linear;
}
.overlay.hide {
  display: none;
}
.overlay.show {
  opacity: 1;
}

.overlay-box, #popup-refer, #popup-video, #popup-contact {
  background: #FFF;
  left: 0;
  opacity: 0;
  padding: 10px;
  position: absolute;
  transition: opacity 0.3s linear;
  width: 100%;
  z-index: 101;
}
@media (min-width: 768px) {
  .overlay-box, #popup-refer, #popup-video, #popup-contact {
    left: 50%;
    margin-left: -250px;
    width: 500px;
  }
}
.overlay-box.hide, .hide#popup-refer, .hide#popup-video, .hide#popup-contact {
  display: none;
}
.overlay-box.show, .show#popup-refer, .show#popup-video, .show#popup-contact {
  opacity: 1;
}
.overlay-box .close, #popup-refer .close, #popup-video .close, #popup-contact .close {
  background: transparent;
  border: none;
  color: #374751;
  cursor: pointer;
  font-weight: 700;
  position: absolute;
  right: 5px;
  top: 5px;
}

.cookie {
  height: 0;
  line-height: 30px;
  overflow: hidden;
  position: relative;
  background: #374751;
  transition: height 0.3s linear;
}
.cookie,
.cookie a {
  color: #FFF;
}
.cookie a {
  font-weight: 700;
}
.cookie .inner {
  text-align: center;
  border-bottom: 1px solid #374751;
}
.cookie .lnk-accept-cookies {
  cursor: pointer;
  margin-left: 10px;
}
.cookie.show {
  height: 32px;
}
.cookie.hide {
  display: none !important;
  visibility: hidden;
}

textarea,
select,
[type=text],
[type=password],
[type=datetime],
[type=datetime-local],
[type=date],
[type=month],
[type=time],
[type=week],
[type=number],
[type=email],
[type=url],
[type=search],
[type=tel],
[type=color],
[type=input] {
  background-color: transparent;
  border: 1px solid #00759B;
  border-radius: 0;
  height: 2em;
  line-height: 2;
  padding: 0 6px;
  width: 100%;
}

textarea {
  height: auto;
  line-height: inherit;
}

input[readonly] {
  background: #c0c0c1;
}

select {
  padding-right: 0;
}

.checkbox label,
.radiobutton label {
  margin-left: 3px;
  vertical-align: middle;
}
.checkbox input,
.radiobutton input {
  vertical-align: middle;
}

:-moz-placeholder {
  color: #374751;
}

::-moz-placeholder {
  color: #374751;
}

::-webkit-input-placeholder {
  color: #374751;
}

:-ms-input-placeholder {
  color: #374751;
}

.niceselect-wrapper {
  background: #FFF;
  border: 1px solid #000;
  display: block;
  height: 2.5em;
  line-height: 2.3333333333;
  overflow: hidden;
  padding: 0 10px;
  position: relative;
  z-index: 1;
  /* This is applied when the user tabs to focus or hovers on a nice select element */
  /* Creates the arrow and positions it to the right */
  /* Make sure the line-height matches the height of .niceSelect including padding */
  /* The height must match the overall height of .niceSelect including padding */
}
.niceselect-wrapper.focus, .niceselect-wrapper:hover {
  border: 1px solid #333;
}
.niceselect-wrapper:after {
  border-top: 5px solid #000;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  content: "^";
  display: block;
  height: 0;
  margin-top: -3px;
  position: absolute;
  right: 1em;
  text-indent: -99999em;
  top: 50%;
  width: 0;
  z-index: 5;
}
.niceselect-wrapper .niceselect-text {
  display: block;
}
.niceselect-wrapper select {
  border: 1px solid #eee;
  bottom: 0;
  display: block;
  height: 100%;
  left: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 10;
}

.form .req {
  color: #F00;
}
.form .error {
  color: #F00;
  font-size: 0.9166666667em;
}

.form-item {
  margin-bottom: 10px;
}
.form-item label {
  display: block;
}
.form-buttons {
  margin-bottom: 10px;
  text-align: right;
}

.form-errors {
  background: #FEE;
  border: 1px solid #F00;
  color: #F00;
  padding: 10px;
}
.form-errors :last-child {
  margin-bottom: 0;
}

.alert-success, .alert-warning, .alert-error {
  border-style: solid;
  border-width: 1px;
  margin-bottom: 10px;
  padding: 10px;
}
.alert-success *, .alert-warning *, .alert-error * {
  margin: 0;
}
.alert-success * + *, .alert-warning * + *, .alert-error * + * {
  margin-top: 10px;
}

.alert-error {
  background-color: #FEE;
  border-color: #F00;
  color: #F00;
}

.alert-warning {
  background-color: #FFE;
  border-color: #C90;
  color: #C90;
}

.alert-success {
  background-color: #EFE;
  border-color: #090;
  color: #090;
}

.carousel-wrap {
  overflow: hidden;
  position: relative;
}
.carousel-wrap .carousel {
  position: relative;
}
.carousel-wrap .carousel-item {
  float: left;
}

.hover {
  cursor: pointer;
}

.small {
  font-size: 0.75em;
}

.xsmall {
  font-size: 0.6666666667em;
}

.large {
  font-size: 1.1666666667em;
}

.xlarge {
  font-size: 1.3333333333em;
}

table {
  max-width: 100%;
}

@media only screen and (max-width: 767px) {
  .gt-ie9 .tbl-mobile, .gt-ie9 .tbl-addresses, .gt-ie9 #mslistorders table, #mslistorders .gt-ie9 table, .gt-ie9 .tbl-basket, .gt-ie9 .product-tabs table, .product-tabs .gt-ie9 table, .gt-ie9 .tbl-mobile table, .gt-ie9 .tbl-addresses table, .gt-ie9 .tbl-basket table, .gt-ie9 .tbl-mobile tbody, .gt-ie9 .tbl-addresses tbody, .gt-ie9 #mslistorders table tbody, #mslistorders .gt-ie9 table tbody, .gt-ie9 .tbl-basket tbody, .gt-ie9 .product-tabs table tbody, .product-tabs .gt-ie9 table tbody, .gt-ie9 .tbl-mobile tfoot, .gt-ie9 .tbl-addresses tfoot, .gt-ie9 #mslistorders table tfoot, #mslistorders .gt-ie9 table tfoot, .gt-ie9 .tbl-basket tfoot, .gt-ie9 .product-tabs table tfoot, .product-tabs .gt-ie9 table tfoot, .gt-ie9 .tbl-mobile tr, .gt-ie9 .tbl-addresses tr, .gt-ie9 #mslistorders table tr, #mslistorders .gt-ie9 table tr, .gt-ie9 .tbl-basket tr, .gt-ie9 .product-tabs table tr, .product-tabs .gt-ie9 table tr, .gt-ie9 .tbl-mobile td, .gt-ie9 .tbl-addresses td, .gt-ie9 #mslistorders table td, #mslistorders .gt-ie9 table td, .gt-ie9 .tbl-basket td, .gt-ie9 .product-tabs table td, .product-tabs .gt-ie9 table td {
    display: block;
  }
  .gt-ie9 .tbl-mobile thead, .gt-ie9 .tbl-addresses thead, .gt-ie9 #mslistorders table thead, #mslistorders .gt-ie9 table thead, .gt-ie9 .tbl-basket thead, .gt-ie9 .product-tabs table thead, .product-tabs .gt-ie9 table thead, .gt-ie9 .tbl-mobile th, .gt-ie9 .tbl-addresses th, .gt-ie9 #mslistorders table th, #mslistorders .gt-ie9 table th, .gt-ie9 .tbl-basket th, .gt-ie9 .product-tabs table th, .product-tabs .gt-ie9 table th {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .tbl-mobile-attr tr {
    border: 1px solid #09C;
    margin-bottom: 20px;
  }
  .tbl-mobile-attr td:before {
    background-color: #09C;
    color: #FFF;
    content: attr(title);
    display: block;
    font-weight: 700;
  }
}

.table, .tbl-basket {
  width: 100%;
  margin-bottom: 20px;
}
.table td, .tbl-basket td,
.table th,
.tbl-basket th {
  border: 1px solid #09C;
}
.table th, .tbl-basket th {
  background-color: #09C;
  color: #FFF;
  padding: 6px 0;
}
.table td, .tbl-basket td {
  padding: 6px;
}

blockquote {
  background: #FC1241;
  color: #FFF;
  padding: 15px;
  position: relative;
  font-size: 0.9166666667em;
}
blockquote p {
  margin: 0;
}
blockquote:after {
  background-image: url(/site/images/bg/top-banner-quote.gif);
  bottom: -27px;
  content: "";
  height: 27px;
  left: 2px;
  position: absolute;
  width: 71px;
}

cite {
  display: block;
  padding-top: 1em;
}

.tabs {
  margin-bottom: 1.5em;
}
.tabs .tab-links li {
  background: #374751;
  font-family: "freight-sans-pro", Sans-Serif;
  font-weight: 700;
  line-height: 2;
  padding: 0 1.25%;
}
@media (min-width: 768px) {
  .tabs .tab-links li {
    font-size: 1.5em;
    float: left;
    max-width: 30%;
    margin-right: 5px;
  }
}
@media (min-width: 1024px) {
  .tabs .tab-links li {
    padding-left: 2.25%;
    padding-right: 2.25%;
  }
}
.tabs .tab-links a {
  color: #FFF;
}
.tabs .tab-links h2 {
  font-size: 1em;
  margin: 0;
}
.tabs .tab-links .tab-active {
  background: #708B9C;
}
.tabs .tab {
  background: #708B9C;
  padding: 1em;
}
.tabs .tab-inner {
  background: #FFF;
  padding: 1em;
}
.tabs .tab-links .tab-featured,
.tabs .tab-featured {
  background: #09C;
}
.tabs .tab-links .tab-offers,
.tabs .tab-offers {
  background: #FC1241;
}

/* ShareThis */
.sharethis span {
  -ms-box-sizing: content-box;
  -o-box-sizing: content-box;
  box-sizing: content-box;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-loading .slick-list {
  background: #fff url(/site/images/ajax-loader.gif) center center no-repeat;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-list,
.slick-track,
.slick-slide,
.slick-slide img {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  zoom: 1;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
.slick-slide img {
  display: block;
}
.slick-slide img.slick-loading {
  background: white url(/site/images/ajax-loader.gif) center center no-repeat;
  padding-bottom: 100%;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("/site/fonts/slick.eot");
  src: url("/site/fonts/slick.eot?#iefix") format("embedded-opentype"), url("/site/fonts/slick.woff") format("woff"), url("/site/fonts/slick.ttf") format("truetype"), url("/site/fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  margin-top: -10px;
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:focus,
.slick-next:focus {
  outline: none;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before, .slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.85;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
.slick-prev:before {
  content: "薒";
}

.slick-next {
  right: -25px;
}
.slick-next:before {
  content: "薔";
}

/* Dots */
.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -45px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0px;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0px 5px;
  padding: 0px;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px;
  cursor: pointer;
  outline: none;
}
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "舦";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  opacity: 0.75;
}

/**
 * jQuery lightBox plugin
 * This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar (http://www.huddletogether.com/projects/lightbox2/)
 * and adapted to me for use like a plugin from jQuery.
 * @name jquery-lightbox-0.5.css
 * @author Leandro Vieira Pinho - http://leandrovieira.com
 * @version 0.5
 * @date April 11, 2008
 * @category jQuery plugin
 * @copyright (c) 2008 Leandro Vieira Pinho (leandrovieira.com)
 * @license CC Attribution-No Derivative Works 2.5 Brazil - http://creativecommons.org/licenses/by-nd/2.5/br/deed.en_US
 * @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more informations about this jQuery plugin
 */
#jquery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 90;
  width: 100%;
  height: 500px;
}

#jquery-lightbox {
  -ms-box-sizing: content-box;
  -o-box-sizing: content-box;
  box-sizing: content-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  text-align: center;
  line-height: 0;
}
#jquery-lightbox a img {
  border: none;
}

#lightbox-container-image-box {
  position: relative;
  background-color: #fff;
  width: 250px;
  height: 250px;
  margin: 0 auto;
}

#lightbox-container-image {
  padding: 10px;
}

#lightbox-loading {
  position: absolute;
  top: 40%;
  left: 0%;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

#lightbox-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}

#lightbox-container-image-box > #lightbox-nav {
  left: 0;
}

#lightbox-nav a {
  outline: none;
}

#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
  width: 49%;
  height: 100%;
  zoom: 1;
  display: block;
}

#lightbox-nav-btnPrev {
  left: 0;
  float: left;
}

#lightbox-nav-btnNext {
  right: 0;
  float: right;
}

#lightbox-container-image-data-box {
  font: 10px Verdana, Helvetica, sans-serif;
  background-color: #fff;
  margin: 0 auto;
  line-height: 1.4em;
  overflow: auto;
  width: 100%;
  padding: 0 10px 0;
}

#lightbox-container-image-data {
  padding: 0 10px;
  color: #666;
}
#lightbox-container-image-data #lightbox-image-details {
  width: 70%;
  float: left;
  text-align: left;
}

#lightbox-image-details-caption {
  font-weight: bold;
}

#lightbox-image-details-currentNumber {
  display: block;
  clear: left;
  padding-bottom: 1em;
}

#lightbox-secNav-btnClose {
  width: 66px;
  float: right;
  padding-bottom: 0.7em;
}

div.jGrowl {
  z-index: 9999;
  color: #fff;
  font-size: 12px;
}

/** Special IE6 Style Positioning **/
div.ie6 {
  position: absolute;
}

div.ie6.top-right {
  right: auto;
  bottom: auto;
  left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + "px" );
  top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + "px" );
}

div.ie6.top-left {
  left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + "px" );
  top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + "px" );
}

div.ie6.bottom-right {
  left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + "px" );
  top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + "px" );
}

div.ie6.bottom-left {
  left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + "px" );
  top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + "px" );
}

div.ie6.center {
  left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + "px" );
  top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + "px" );
  width: 100%;
}

/** Normal Style Positions **/
div.jGrowl {
  position: absolute;
}

body > div.jGrowl {
  position: fixed;
}

div.jGrowl.top-left {
  left: 0px;
  top: 0px;
}

div.jGrowl.top-right {
  right: 0px;
  top: 0px;
}

div.jGrowl.bottom-left {
  left: 0px;
  bottom: 0px;
}

div.jGrowl.bottom-right {
  right: 0px;
  bottom: 0px;
}

div.jGrowl.center {
  top: 0px;
  width: 50%;
  left: 25%;
}

/** Cross Browser Styling **/
div.center div.jGrowl-notification, div.center div.jGrowl-closer {
  margin-left: auto;
  margin-right: auto;
}

div.jGrowl div.jGrowl-notification, div.jGrowl div.jGrowl-closer {
  background-color: #000;
  opacity: 0.85;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=85);
  zoom: 1;
  width: 235px;
  padding: 10px;
  margin-top: 5px;
  margin-bottom: 5px;
  font-family: Tahoma, Arial, Helvetica, sans-serif;
  font-size: 1em;
  text-align: left;
  display: none;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

div.jGrowl div.jGrowl-notification {
  min-height: 40px;
}

div.jGrowl div.jGrowl-notification,
div.jGrowl div.jGrowl-closer {
  margin: 10px;
}

div.jGrowl div.jGrowl-notification div.jGrowl-header {
  font-weight: bold;
  font-size: 0.85em;
}

div.jGrowl div.jGrowl-notification div.jGrowl-close {
  z-index: 99;
  float: right;
  font-weight: bold;
  font-size: 1em;
  cursor: pointer;
}

div.jGrowl div.jGrowl-closer {
  padding-top: 4px;
  padding-bottom: 4px;
  cursor: pointer;
  font-size: 0.9em;
  font-weight: bold;
  text-align: center;
}

/** Hide jGrowl when printing **/
@media print {
  div.jGrowl {
    display: none;
  }
}
.productDetails .vat-price {
  font-size: 2em;
}

.prices .vat-price {
  font-size: 0.7em;
}

/*
	=========
	No Script
	=========
*/
.site-alert {
  background: #FFF;
  border-bottom: 2px solid #F00;
  display: block;
  font-family: sans-serif;
  font-size: 1em;
  left: 0;
  padding: 5px 0;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 100;
}

/* No Script */
.full {
  position: relative;
  width: 100%;
}

.wrap {
  margin-left: 5%;
  margin-right: 5%;
  overflow: hidden;
  width: 90%;
}
@media (min-width: 1408px) {
  .wrap {
    margin-left: auto;
    margin-right: auto;
    width: 1280px;
  }
}

.mid {
  background: #FFF;
  margin-bottom: 3em;
  min-height: 351px;
  padding: 0 0 10px;
  width: auto;
}
@media (min-width: 768px) {
  .mid {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 1408px) {
  .mid {
    width: 1300px;
  }
}

@media (min-width: 768px) {
  .left-col {
    float: left;
    padding-bottom: 1px;
    padding-right: 10px;
    width: 28%;
  }
}
@media (min-width: 1024px) {
  .left-col {
    width: 25%;
    padding-right: 20px;
  }
}
@media (min-width: 1408px) {
  .left-col {
    width: 20%;
  }
}
.left-col h2 {
  color: #09C;
  font-size: 1.6666666667em;
}
.left-col h2 a {
  color: #09C;
}
.left-col .signpost {
  display: block;
  font-weight: 500;
  margin-top: 1em;
  padding-left: 0.5em;
  padding-right: 0;
  font-size: 1.1666666667em;
}
.wf-loading .left-col .signpost, .wf-inactive .left-col .signpost {
  font-size: 1em;
}

@media (min-width: 768px) {
  .main-col {
    float: left;
    width: 72%;
  }
}
@media (min-width: 1024px) {
  .main-col {
    width: 75%;
  }
}
@media (min-width: 1408px) {
  .main-col {
    width: 80%;
  }
}

.mobile-col-1 {
  width: 25%;
}

.mobile-col-2 {
  width: 50%;
}

.mobile-col-3 {
  width: 75%;
}

.mobile-col-4 {
  width: 100%;
}

@media (min-width: 768px) {
  .tablet-col-1 {
    width: 12.5%;
  }
}

@media (min-width: 768px) {
  .tablet-col-2 {
    width: 25%;
  }
}

@media (min-width: 768px) {
  .tablet-col-3 {
    width: 37.5%;
  }
}

@media (min-width: 768px) {
  .tablet-col-4 {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .tablet-col-5 {
    width: 62.5%;
  }
}

@media (min-width: 768px) {
  .tablet-col-6 {
    width: 75%;
  }
}

@media (min-width: 768px) {
  .tablet-col-7 {
    width: 87.5%;
  }
}

@media (min-width: 768px) {
  .tablet-col-8 {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .desktop-col-1 {
    width: 8.3333%;
  }
}

@media (min-width: 960px) {
  .desktop-col-2 {
    width: 16.6666%;
  }
}

@media (min-width: 960px) {
  .desktop-col-3 {
    width: 25%;
  }
}

@media (min-width: 960px) {
  .desktop-col-4 {
    width: 33.3333%;
  }
}

@media (min-width: 960px) {
  .desktop-col-5 {
    width: 41.6666%;
  }
}

@media (min-width: 960px) {
  .desktop-col-6 {
    width: 50%;
  }
}

@media (min-width: 960px) {
  .desktop-col-7 {
    width: 58.3333%;
  }
}

@media (min-width: 960px) {
  .desktop-col-8 {
    width: 66.6666%;
  }
}

@media (min-width: 960px) {
  .desktop-col-9 {
    width: 75%;
  }
}

@media (min-width: 960px) {
  .desktop-col-10 {
    width: 83.3333%;
  }
}

@media (min-width: 960px) {
  .desktop-col-11 {
    width: 91.6666%;
  }
}

@media (min-width: 960px) {
  .desktop-col-12 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .nav-mobile, .nav-select, .mobile-only {
    display: none;
  }
}

.tablet-only {
  display: none;
}
@media (min-width: 768px) {
  .tablet-only {
    display: block;
  }
}
@media (min-width: 960px) {
  .tablet-only {
    display: none;
  }
}

.desktop-only {
  display: none;
}
@media (min-width: 960px) {
  .desktop-only {
    display: block;
  }
}

@media (min-width: 960px) {
  .not-desktop {
    display: none;
  }
}

.tablet-only-ib {
  display: none;
}
@media (min-width: 768px) {
  .tablet-only-ib {
    display: inline-block;
  }
}
@media (min-width: 960px) {
  .tablet-only-ib {
    display: none;
  }
}

.desktop-only-ib {
  display: none;
}
@media (min-width: 960px) {
  .desktop-only-ib {
    display: inline-block;
  }
}

.nav-product, .nav-main, .tablet-up {
  display: none;
}
@media (min-width: 768px) {
  .nav-product, .nav-main, .tablet-up {
    display: block;
  }
}

.desktop-up {
  display: none;
}
@media (min-width: 960px) {
  .desktop-up {
    display: block;
  }
}

/*
	=======
	Modules
	=======

	Module level CSS should be placed in this file.
	Modules are self-contained sections of markup.
	Modules can exist with other modules.
	Modules can often include objects.

	EXAMPLES::

	"Site Header" would be a module.

	"Top Navigation" may exist within the "Site Header" markup but it is capable of existing as its own module and so should be done separately.
*/
/*
	===============
	Site Background
	===============
*/
.site-background {
  background-color: #FFF;
  overflow: hidden;
}
@media (min-width: 768px) {
  .site-background {
    background-image: url(/site/images/bg/top-block.png), url(/site/images/bg/mesh.png);
    background-position: 0 -90px, 0 0;
    background-repeat: repeat-x, repeat;
  }
}
@media (min-width: 1000px) {
  .site-background {
    background-position: 0 -21px, 0 0;
  }
}
@media (min-width: 1000px) {
  .site-background {
    background-position: 0 -8px, 0 0;
  }
}

.site-wrap {
  position: relative;
  z-index: 2;
}

/* Site Background */
/*
	===========
	Site Header
	===========
*/
.header-site {
  background: #FFF;
  margin-bottom: 0.75em;
  text-align: center;
  z-index: 2;
}
@media (min-width: 768px) {
  .header-site {
    text-align: left;
  }
}
.header-site .logo {
  float: left;
  margin-bottom: 20px;
  padding-top: 20px;
  text-align: center;
  width: 33.3333%;
}
@media (min-width: 768px) {
  .header-site .logo {
    padding-top: 30px;
  }
}
.header-site .logo img {
  display: block;
}
.header-site .tel {
  background-image: url(/site/images/icon/phone.gif);
  background-position: left center;
  background-size: 11px 11px;
  color: #374751;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 8px;
  padding-left: 20px;
  text-align: center;
  font-size: 1.6666666667em;
}
@media (min-width: 768px) {
  .header-site .tel {
    clear: right;
    float: right;
    margin-top: 6px;
  }
}
@media (min-width: 1024px) {
  .header-site .tel {
    background-size: 22px 23px;
    font-size: 2.5em;
    margin-top: 0;
    padding-left: 30px;
  }
}

.topLinks {
  margin: 15px 0 12px 50%;
  text-align: right;
}
@media (min-width: 768px) {
  .topLinks {
    float: right;
    margin-bottom: 0;
    margin-left: 0;
    margin-top: 12px;
  }
}
@media (min-width: 1024px) {
  .topLinks {
    margin-bottom: 12px;
  }
}
.topLinks .lnkBlock, .topLinks .linkRow a, .linkRow .topLinks a,
.topLinks .signpost {
  margin-left: 4px;
}
@media (min-width: 768px) {
  .topLinks .lnkBlock, .topLinks .linkRow a, .linkRow .topLinks a,
.topLinks .signpost {
    font-size: 1.1666666667em;
  }
}
.topLinks .buttons {
  text-align: center;
}
@media (min-width: 768px) {
  .topLinks .buttons {
    clear: both;
    margin-top: 10px;
  }
}
@media (min-width: 1024px) {
  .topLinks .buttons {
    display: inline;
    margin-top: 0;
  }
}
.topLinks .buttons .lnkBlock, .topLinks .buttons .linkRow a, .linkRow .topLinks .buttons a,
.topLinks .buttons .signpost {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .topLinks .buttons .lnkBlock, .topLinks .buttons .linkRow a, .linkRow .topLinks .buttons a,
.topLinks .buttons .signpost {
    display: inline-block;
    width: auto;
  }
}
.topLinks .buttons .lnkBlock + *, .topLinks .buttons .linkRow a + *, .linkRow .topLinks .buttons a + *,
.topLinks .buttons .signpost + * {
  margin-top: 6px;
}
@media (min-width: 768px) {
  .topLinks .buttons .lnkBlock + *, .topLinks .buttons .linkRow a + *, .linkRow .topLinks .buttons a + *,
.topLinks .buttons .signpost + * {
    margin-top: 0;
  }
}
.topLinks .register {
  color: #000;
  margin-left: 6px;
  text-decoration: underline;
  font-size: 0.9166666667em;
}
.topLinks .loggedin {
  color: #000;
  margin-right: 1em;
  font-size: 1.1666666667em;
}

.review-address p {
  margin: 0;
}

.miniBasket {
  background: url(/site/images/icon/basket.gif) no-repeat left center;
  color: #09C;
  line-height: 18px;
  margin-bottom: 10px;
  padding-left: 28px;
  display: inline-block;
}
@media (min-width: 768px) {
  .miniBasket {
    font-size: 1.1666666667em;
    margin-bottom: 0;
    padding-left: 36px;
  }
}
.miniBasket a {
  color: #374751;
}
.miniBasket .empty:after,
.miniBasket .not_empty:after {
  color: #09C;
  content: " |";
}
.miniBasket .contents {
  display: none;
}
@media (min-width: 768px) {
  .miniBasket .contents {
    display: inline;
  }
}
.miniBasket .not_empty {
  display: none;
}
.miniBasket .full {
  width: auto;
}
.miniBasket .full .empty {
  display: none;
}
.miniBasket .full .not_empty {
  display: inline;
}

/* Site Header */
/*
	===========
	Site Footer
	===========
*/
.footer-site {
  color: #FFF;
  overflow: hidden;
  padding-top: 30px;
}
.footer-site a {
  color: #FFF;
}
.footer-site a:hover {
  color: #FFF;
}
.footer-site .tel,
.footer-site .fax,
.footer-site .email {
  background-position: 0 center;
  padding-left: 1.25em;
}
.footer-site .col {
  padding-left: 24px;
  padding-right: 24px;
}
@media (min-width: 768px) {
  .footer-site .col {
    float: left;
    width: 33.3333%;
  }
}
.footer-site .col + .col {
  margin-top: 12px;
}
@media (min-width: 768px) {
  .footer-site .col + .col {
    margin-top: 0;
  }
}
.footer-site .contact {
  font-size: 1.3333333333em;
  margin-bottom: 12px;
}
@media (min-width: 1024px) {
  .footer-site .contact {
    font-size: 1.5em;
  }
}
.footer-site .tel {
  background-image: url(/site/images/icon/phone-white.png);
}
.footer-site .fax {
  background-image: url(/site/images/icon/print.png);
}
.footer-site .email {
  background-image: url(/site/images/icon/mail.png);
}

.footer-columns {
  margin-left: -24px;
  margin-right: -24px;
}

.copyright {
  border-top: 1px solid #374751;
  clear: both;
  font-weight: 700;
  margin-top: 12px;
  padding: 1em 0 3em;
}
@media (min-width: 768px) {
  .copyright {
    margin-top: 0;
  }
}

/* Site Footer */
/*
	==========
	Navigation
	==========
*/
.nav-main {
  clear: left;
  margin-bottom: 1em;
}
.nav-main > ul > li {
  display: block;
}
.nav-main > ul > li + li {
  border-left: 1px solid #09C;
}
@media (min-width: 768px) {
  .nav-main > ul > li {
    display: inline-block;
  }
}
.nav-main > ul > li > a {
  padding: 5px 0;
}
@media (min-width: 768px) {
  .nav-main > ul > li > a {
    padding: 0 10px;
  }
}
@media (min-width: 768px) {
  .nav-main > ul > li:first-child > a {
    padding-left: 0;
  }
}
.nav-main ul ul {
  display: none;
  padding-left: 10px;
}
@media (min-width: 768px) {
  .nav-main ul ul {
    left: -999em;
    padding-left: 0;
    position: absolute;
  }
}
.nav-main li:hover > ul {
  left: auto;
}
.nav-main a {
  color: #374751;
  display: block;
  transition: color 0.3s linear;
}
.nav-main a:hover {
  color: #09C;
}
.nav-main .active a {
  color: #09C;
}

.nav-product {
  background: #374751;
  clear: both;
  margin-bottom: 0;
  overflow: hidden;
  padding: 4px 5px;
}
.nav-product ul {
  clear: none;
  font-family: "freight-sans-pro", Sans-Serif;
  font-weight: 700;
  width: auto;
}
.nav-product li {
  display: inline-block;
}
.nav-product li:nth-child(1) a {
  background: #FC1241;
}
.nav-product li:nth-child(2) a {
  background: #09C;
}
.nav-product a {
  background: #708B9C;
  color: #FFF;
  display: block;
  line-height: 2;
  margin-right: 3px;
  padding: 0 8px;
  text-transform: uppercase;
  font-size: 1.3333333333em;
}
@media (min-width: 1024px) {
  .nav-product a {
    font-size: 1.5em;
    margin-right: 5px;
    padding: 0 12px;
  }
}
.nav-product .active a {
  background: #374751;
}

.nav-select select {
  display: block;
  width: 100%;
}

.nav-mobile {
  clear: both;
  text-align: left;
}
.nav-mobile ul {
  height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
  transition: height 0.3s linear;
}
.nav-mobile ul ul {
  padding-left: 10px;
}
.nav-mobile ul ul li:last-child {
  border-bottom: none;
}
.nav-mobile li {
  background-image: none;
  border-bottom: 1px solid #09C;
  margin: 0;
  padding: 0;
}
.nav-mobile a {
  display: block;
  padding: 5px;
}
.nav-mobile .open > ul, .nav-mobile.open > ul {
  border-top: 1px solid #09C;
  height: auto;
}
.nav-mobile .open > ul + ul, .nav-mobile.open > ul + ul {
  border-top: none;
}
.nav-mobile .nav-mobile-header {
  background-color: #09C;
  background-image: url(/site/images/navicon.svg);
  background-position: 10px center;
  background-repeat: no-repeat;
  border: none;
  color: #FFF;
  display: block;
  padding: 10px;
  text-align: center;
  width: 100%;
}
.nav-mobile .parent {
  position: relative;
}
.nav-mobile .parent:after {
  content: "+";
  line-height: 30px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 30px;
}
.nav-mobile .parent a {
  margin-right: 30px;
}
.nav-mobile .parent.open:after {
  content: "-";
}

.nav-side {
  display: none;
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .nav-side {
    display: block;
  }
}
.nav-side ul {
  overflow: hidden;
}
.nav-side li {
  border-bottom: 1px solid #09C;
}
.nav-side a {
  color: #374751;
  display: block;
  padding: 5px 0;
  transition: color 0.3s;
}
.nav-side a:hover {
  color: #09C;
}
.nav-side .active > a {
  color: #09C;
}
.nav-side .view-more div {
  height: 0;
  overflow: hidden;
  transition: height 2s;
}
.nav-side .view-more > a {
  cursor: pointer;
  display: block;
  font-weight: 700;
  text-align: right;
}

@media (min-width: 768px) {
  .nav-footer {
    float: right;
  }
}
@media (min-width: 768px) {
  .nav-footer li {
    display: inline;
  }
}
.nav-footer li + li {
  border-top: 1px solid #FFF;
}
@media (min-width: 768px) {
  .nav-footer li + li {
    border-top: none;
  }
}
@media (min-width: 768px) {
  .nav-footer li + li:before {
    content: "|";
    margin-left: 5px;
    margin-right: 5px;
  }
}
.nav-footer a {
  display: block;
  padding: 5px 0;
}
@media (min-width: 768px) {
  .nav-footer a {
    display: inline;
    padding: 0;
  }
}

.nav-profile {
  margin: 8px 0;
}
.nav-profile li {
  display: inline-block;
}
.nav-profile li + li {
  margin-left: 8px;
}
@media (max-width: 350px) {
  .nav-profile li a {
    padding: 0.5em 0.75em;
  }
}

/* Navigation */
/*
	======
	Search
	======
*/
.searchBox,
.msearch2 {
  background-color: #FFF;
  float: right;
  line-height: 28px;
  margin: 2px 2px 0 0;
  padding: 0 6px;
}
@media (min-width: 1024px) {
  .searchBox,
.msearch2 {
    margin-right: 3px;
    margin-top: 4px;
  }
}
.searchBox [type=text],
.msearch2 [type=text] {
  border: none;
  float: right;
  font-size: 1em;
  height: 28px;
  line-height: 1.5;
  padding: 5px;
  width: 146px;
}
.searchBox [type=image],
.msearch2 [type=image] {
  vertical-align: middle;
}

.product-search {
  background: #708B9C;
  color: #FFF;
  padding: 0.6666em;
}
.product-search h2 {
  color: #FFF;
  margin-bottom: 0.4em;
  font-size: 1.5em;
}
.product-search p {
  margin-bottom: 0.8em;
  font-size: 0.9166666667em;
}
.product-search [type=text] {
  background-color: #FFF;
  float: left;
  height: 2em;
  line-height: 2;
  padding: 0 6px;
  width: 124px;
}
.product-search [type=submit] {
  background-color: #374751;
  border: 0;
  color: #FFF;
  float: left;
  height: 2em;
  line-height: 2;
  padding: 0;
  text-align: center;
  width: 28px;
}
.product-search .searchBox {
  background: transparent;
  float: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
}

/* Search */
/*
	======
	Banner
	======
*/
.banner-full {
  background-color: #FFF;
}

.banner {
  padding-bottom: 34px;
  padding-top: 20px;
  text-align: center;
}
@media (min-width: 1056px) {
  .banner {
    margin-left: auto;
    margin-right: auto;
  }
}
.banner h1,
.banner h2,
.banner h3 {
  font-family: sans-serif;
}
.banner img {
  margin: 0;
  vertical-align: top;
}
.banner h1 {
  margin-bottom: 0;
  font-size: 2.9166666667em;
}
.banner h2 {
  font-size: 1.6666666667em;
  margin-bottom: 1em;
}
.banner p {
  font-size: 1.3333333333em;
}
.banner a {
  color: #FC0;
  text-decoration: underline;
}
.banner .image-1,
.banner .image-2 {
  max-width: 100%;
}
.banner .carouselMask {
  margin-bottom: 1.5em;
}
.banner .feedListing li {
  background: #E20D21;
}
.banner .pager {
  margin-bottom: 1.5em;
  min-height: 18px;
}
.banner .pager li {
  background: #374751;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  height: 1.5em;
  line-height: 1.5;
  margin-right: 0.333333em;
  text-align: center;
  width: 1.5em;
  font-size: 0.9166666667em;
}
.banner .pager .pagerActive {
  background: #FC1241;
}
.banner .image-2 {
  margin-top: 20px;
}

@media (min-width: 1024px) {
  .banner-column {
    float: left;
    padding-left: 15px;
    padding-right: 15px;
    width: 50%;
  }
}
.banner-column + .banner-column {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .banner-column + .banner-column {
    margin-top: 0;
  }
}
.banner-column:first-child {
  padding-left: 0;
}
.banner-column:last-child {
  padding-right: 0;
}

.banner-content {
  background-color: #FFF;
  border: 13px solid #374751;
  margin-left: auto;
  margin-right: auto;
  min-height: 280px;
  max-width: 625px;
  text-align: left;
  padding: 12px 16px;
  position: relative;
}
@media (min-width: 1080px) {
  .banner-content {
    padding-left: 0;
  }
}
.banner-content h2 {
  color: #000;
  font-size: 2.5em;
  line-height: 1.1;
  margin-bottom: 8px;
}
.banner-content h2 a {
  color: #000;
  text-decoration: none;
}
.banner-content .banner-content_oldprice,
.banner-content .banner-content_price {
  font-weight: 700;
  line-height: 1.1;
}
.banner-content .banner-content_image {
  display: none;
  float: left;
  width: 37.6%;
}
@media (min-width: 1080px) {
  .banner-content .banner-content_image {
    display: block;
  }
}
@media (min-width: 1080px) {
  .banner-content .banner-content_image + .banner-content_textblock {
    margin-left: 40%;
  }
}
.banner-content .banner-content_text {
  background-color: #E2E8EB;
  padding: 8px;
}
.banner-content .banner-content_text p {
  font-size: 1.0833333333em;
  line-height: 1.2;
  margin: 0;
}
.banner-content .banner-content_text + div {
  margin-top: 6px;
}
.banner-content .banner-content_oldprice {
  font-size: 1.8333333333em;
  text-decoration: line-through;
}
.banner-content .banner-content_oldprice span {
  font-size: 0.6363636364em;
}
.banner-content .banner-content_price {
  color: #FC1241;
  font-size: 2.5em;
}
.banner-content .banner-content_price span {
  font-size: 0.6666666667em;
}
.banner-content .banner-content_brand {
  display: block;
  margin-top: 10px;
}
@media (min-width: 640px) {
  .banner-content .banner-content_brand {
    margin-top: 0;
    position: absolute;
    bottom: 12px;
    right: 15px;
  }
}
.banner-content .signpost {
  color: #FFF;
  font-size: 1.1666666667em;
  margin-top: 10px;
  text-decoration: none;
}
@media (min-width: 640px) {
  .banner-content .signpost {
    margin-top: 5px;
  }
}

.contentBanner img {
  float: left;
  margin-bottom: 36px;
}
.contentBanner blockquote {
  background: #FC1241;
  color: #FFF;
  height: 140px;
  margin: 0 0 36px 508px;
  padding: 15px;
  position: relative;
  font-size: 0.9166666667em;
}
.contentBanner blockquote:after {
  background-image: url(/site/images/bg/top-banner-quote.gif);
  bottom: -27px;
  content: "";
  height: 27px;
  left: 2px;
  position: absolute;
  width: 71px;
}
.contentBanner cite {
  display: block;
  padding-top: 1em;
}
.contentBanner cite span {
  display: block;
  font-style: normal;
}

/* Banner */
/*
	========
	Partners
	========
*/
.partners {
  border-bottom: 2px solid #C4C4C4;
  min-height: 68px;
  line-height: 68px;
  background: #e9e9e9;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U5ZTllOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: linear-gradient(top, #e9e9e9 0%, #ffffff 100%);
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
  text-align: center;
}
.lt-ie9 .partners {
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#e9e9e9", endColorstr="#ffffff",GradientType=0 );
}
.partners a + a {
  margin-left: 24px;
}
.partners img {
  vertical-align: middle;
}

/* Partners */
/*
	======
	Offers
	======
*/
.offers {
  margin-left: -24px;
  margin-right: -24px;
  padding: 30px 0;
  -webkit-font-smoothing: antialiased;
}
.offers .offers-title {
  color: #FFF;
  line-height: 2.4;
  margin-bottom: 0;
  padding: 0;
  text-align: center;
  text-transform: uppercase;
  font-size: 1.5em;
}
@media (min-width: 1024px) {
  .offers .offers-title {
    padding-left: 0.75em;
    padding-right: 0.75em;
    text-align: left;
  }
}
.offers h2,
.offers .prices {
  font-size: 1.3333333333em;
}
@media (min-width: 1024px) {
  .offers h2,
.offers .prices {
    font-size: 1.6666666667em;
  }
}
.offers img {
  border: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.offers h2 {
  height: 2.8em;
  line-height: 1.4;
  margin-bottom: 0.4em;
  overflow: hidden;
}
.offers .col {
  padding-left: 24px;
  padding-right: 24px;
}
@media (min-width: 768px) {
  .offers .col {
    float: left;
    width: 33.3333%;
  }
}
.offers .carouselMask {
  background: #374751;
}
.offers .featuredProducts .offers-title {
  background: #09C;
}
.offers .featuredProducts .signpost {
  background: #09C;
  border-left-color: #09C;
}
.offers .specialOffers .offers-title {
  background: #FC1241;
}
.offers .specialOffers .signpost {
  background: #FC1241;
  border-left-color: #FC1241;
}
.offers .signpost {
  font-size: 1.3333333333em;
}
.offers .img-link {
  display: block;
  position: relative;
}
.offers .roundall {
  margin: 0;
  position: absolute;
  right: 0.5em;
  top: 0.5em;
}
.offers .roundall.small {
  display: none;
}
.offers .productBox {
  color: #FFF;
}
.offers .productBox a {
  color: #FFF;
}
.offers .info {
  padding: 10px;
}
.offers .prices span {
  margin-right: 0.5em;
}
.offers .old-price {
  background: url(/site/images/bg/old-price.png) no-repeat center center;
  color: #999;
}
.offers .slick-dots {
  bottom: 0;
  margin: 0;
  position: static;
  right: 0;
  text-align: right;
  width: auto;
  z-index: 10;
}
@media (min-width: 1024px) {
  .offers .slick-dots {
    position: absolute;
  }
}
.offers .slick-dots li {
  border-left: 1px solid #708B9C;
  cursor: pointer;
  display: inline-block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 0.4em 0.4em;
  vertical-align: bottom;
}
.offers .slick-dots li:first-child {
  border-left: 0;
}
.offers .slick-dots button {
  color: #708B9C;
  font-size: 1em;
  line-height: inherit;
  padding: 0;
  text-indent: 0;
  width: auto;
  height: auto;
}
.offers .slick-dots button:before {
  content: normal;
}
.offers .slick-dots .slick-active button {
  color: #FFF;
}
.offers .adverts p {
  margin-bottom: 1.9em;
}
.offers .adverts p:last-child {
  margin: 0;
}
.offers .adverts p.last-child {
  margin: 0;
}

/* Offers */
/*
	=====
	Feeds
	=====
*/
.feeds {
  background: #374751;
  color: #FFF;
  line-height: 1.2;
  padding: 0.5em 0;
}
.feeds .accreditations,
.feeds .news {
  overflow: hidden;
  padding-left: 24px;
  padding-right: 24px;
}
.feeds .columns {
  margin-left: -24px;
  margin-right: -24px;
}
@media (min-width: 768px) {
  .feeds .accreditations {
    float: left;
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .feeds .accreditations {
    width: 33.3333%;
  }
}
.feeds .accreditations img {
  border: 1px solid #FFF;
  margin-left: auto;
  margin-right: auto;
  vertical-align: top;
}
.feeds .accreditations .carouselMask {
  margin-left: auto;
  margin-right: auto;
  max-width: 140px;
}
@media (min-width: 768px) {
  .feeds .accreditations .carouselMask {
    margin-left: 120px;
  }
}
@media (min-width: 1024px) {
  .feeds .accreditations .carouselMask {
    margin-left: 140px;
  }
}
@media (min-width: 1408px) {
  .feeds .accreditations .carouselMask {
    margin-left: 185px;
  }
}
@media (min-width: 768px) {
  .feeds .news {
    float: left;
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .feeds .news {
    width: 66.6666%;
  }
}
.feeds .news .carouselMask {
  font-weight: 700;
  min-height: 80px;
  padding-left: 8px;
  padding-right: 8px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .feeds .news .carouselMask {
    margin-left: 80px;
  }
}
@media (min-width: 1024px) {
  .feeds .news .carouselMask {
    margin-right: 20px;
  }
}
.feeds h2 {
  margin: 16px 0 8px;
  font-size: 1.1666666667em;
}
@media (min-width: 768px) {
  .feeds h2 {
    float: left;
    margin-bottom: 0;
  }
}
.feeds h2 span {
  color: #09C;
}
.feeds .slick-prev,
.feeds .slick-next {
  width: 6px;
  height: 12px;
}
.feeds .slick-prev:before,
.feeds .slick-next:before {
  border-color: transparent #09C;
  border-style: solid;
  border-width: 6px;
  content: "";
  display: block;
  overflow: hidden;
  width: 6px;
  height: 12px;
}
.feeds .slick-next {
  right: -10px;
}
.feeds .slick-next:before {
  border-right-width: 0;
}
.feeds .slick-prev {
  left: -10px;
}
.feeds .slick-prev:before {
  border-left-width: 0;
}
.feeds .carouselMask {
  margin: 0.5em 0;
}
.feeds a {
  color: #09C;
}
.feeds p {
  margin-bottom: 0;
}
.feeds .date {
  margin-bottom: 0.2em;
}
.feeds .read-article {
  font-size: 0.9166666667em;
}

/* Feeds */
/*
	========
	Carousel
	========
*/
.carousel .carousel-item {
  height: 200px;
}
@media (min-width: 768px) {
  .carousel .carousel-item {
    height: 300px;
  }
}
.carousel .carousel-item.item-1 {
  background: #FCC;
}
.carousel .carousel-item.item-2 {
  background: #CFC;
}
.carousel .carousel-item.item-3 {
  background: #CCF;
}
.carousel .carousel-item.item-4 {
  background: #FCF;
}
.carousel .slick-next {
  right: 10px;
}
.carousel .slick-prev {
  left: 10px;
}
.carousel .wrap {
  height: 200px;
}
@media (min-width: 768px) {
  .carousel .wrap {
    height: 300px;
  }
}
.carousel .wrap:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.carousel .wrap .text {
  display: inline-block;
  vertical-align: middle;
}
.carousel .text {
  background: rgba(255, 255, 255, 0.5);
  padding: 10px;
  width: 33.3333%;
}

/* Carousel */
/*
	===========
	Breadcrumbs
	===========
*/
.breadcrumbs, .breadcrumb {
  margin-bottom: 1em;
  text-align: left;
  font-size: 0.9166666667em;
}
.breadcrumbs li, .breadcrumb li {
  color: #09C;
  display: inline;
  padding-left: 0.4em;
}
.breadcrumbs li:after, .breadcrumb li:after {
  color: #374751;
  padding-left: 0.4em;
}
.breadcrumbs a, .breadcrumb a {
  color: #374751;
}

/* Breadcrumbs */
/*
	==========
	Home Boxes
	==========
*/
@media (min-width: 768px) {
  .home-boxes {
    margin-left: -10px;
    margin-right: -10px;
  }
  .home-boxes .col {
    float: left;
    padding-left: 10px;
    padding-right: 10px;
    width: 33.3333333333%;
  }
  .home-boxes .col:nth-child(n) {
    clear: none;
  }
  .home-boxes .col:nth-child(3n+1) {
    clear: left;
  }
}
.home-boxes .col {
  margin-bottom: 10px;
}
.home-boxes .inner {
  background: #EEF;
}

/* Home Boxes */
/*
	========
	Articles
	========
*/
@media (min-width: 768px) {
  .post .image {
    float: left;
    max-width: 180px;
  }
}
@media (min-width: 768px) {
  .post .image + .text {
    margin-left: 200px;
  }
}

/* Articles */
/*
	=====
	Forms
	=====
*/
.formRow {
  clear: both;
  margin: 0 0 0.8em;
}

.checkbox label, .radiobutton label {
  margin-left: 3px;
  vertical-align: middle;
}

.checkbox input, .radiobutton input {
  vertical-align: middle;
}

.form {
  margin-left: auto;
  margin-right: auto;
  max-width: 500px;
}
.form .form-row + * {
  margin-top: 12px;
}
@media (min-width: 550px) {
  .form .form-row label {
    float: left;
    width: 190px;
  }
}
@media (min-width: 550px) {
  .form .form-input {
    margin-left: 200px;
  }
}
.form .form-buttons {
  text-align: right;
}
.form.enquiry textarea {
  line-height: 1.5;
  min-height: 7.5em;
  padding: 6px;
  width: 274px;
}
.form.enquiry textarea,
.form.enquiry [type=text],
.form.enquiry [type=email] {
  display: block;
  width: 100%;
}
.form.enquiry .row {
  margin-left: -2px;
  margin-right: -2px;
}
.form.enquiry .row + .row {
  margin-top: 4px;
}
.form.enquiry .field {
  float: left;
  padding-left: 2px;
  padding-right: 2px;
  width: 50%;
}
.form.enquiry .field.wide {
  float: none;
  width: auto;
}
.form.enquiry .btnRow {
  padding-top: 1em;
}
.form.callBack [type=text] {
  max-width: 274px;
}
.form.callBack p {
  font-size: 0.9166666667em;
}
.form.callBack .rbl {
  padding: 0 0 0.2em;
}
.form.callBack .btnRow {
  padding-top: 12px;
}
@media (min-width: 1024px) {
  .form.callBack .btnRow {
    padding-top: 3.5em;
  }
}
.form.callBack .error {
  position: relative;
}
.form.callBack .error span {
  position: absolute;
}
.form.enquiry, .form.callBack {
  max-width: 100%;
}
.form.enquiry [type=text],
.form.enquiry [type=email],
.form.enquiry textarea, .form.callBack [type=text],
.form.callBack [type=email],
.form.callBack textarea {
  color: #FFF;
}
.form.enquiry :-moz-placeholder, .form.callBack :-moz-placeholder {
  color: #FFF;
}
.form.enquiry ::-moz-placeholder, .form.callBack ::-moz-placeholder {
  color: #FFF;
}
.form.enquiry ::-webkit-input-placeholder, .form.callBack ::-webkit-input-placeholder {
  color: #FFF;
}
.form.enquiry :-ms-input-placeholder, .form.callBack :-ms-input-placeholder {
  color: #FFF;
}
.form.enquiry .error, .form.callBack .error {
  display: block;
}
.form.enquiry .rbl, .form.callBack .rbl {
  display: block;
  line-height: 1;
  overflow: hidden;
}
.form.enquiry .rbl label, .form.callBack .rbl label {
  display: inline-block;
  margin-bottom: 1em;
  padding-left: 1.5em;
}
.form.enquiry .rbl input, .form.callBack .rbl input {
  position: absolute;
  left: -9999em;
}
.form.enquiry .rbl input + label, .form.callBack .rbl input + label {
  background: url(/site/images/input/radio.png) no-repeat 0 -12px;
  line-height: 1;
}
.form.enquiry .rbl input:checked + label, .form.callBack .rbl input:checked + label {
  background-position: 0 0;
}
@media (min-width: 1024px) {
  .form.enquiry .signpost, .form.callBack .signpost {
    font-size: 1.1666666667em;
  }
}
.form.enquiry span.error, .form.callBack span.error {
  color: #FFF;
}
.form.refer {
  max-width: 100%;
}
.form.refer input[type=text], .form.refer textarea {
  width: 466px;
}
.form.promo {
  max-width: 100%;
}
.form.promo label {
  display: block;
  margin-bottom: 0.5em;
}
.form.promo [type=text] {
  height: 26px;
  width: 134px;
}
.form.promo .signpost {
  font-size: 1.0833333333em;
  vertical-align: top;
}
.form.checkout {
  max-width: 100%;
}
.form.checkout label,
.form.checkout .lbl {
  font-weight: 600;
  line-height: 2;
  vertical-align: top;
}
@media (min-width: 1024px) {
  .form.checkout label,
.form.checkout .lbl {
    display: inline-block;
    width: 20.7852193995%;
  }
}
.form.checkout input,
.form.checkout select,
.form.checkout .niceselect-wrapper {
  width: 100%;
}
.form.checkout h2 {
  border-bottom: 1px solid #b8c6cf;
  color: #09C;
  font-size: 1.6666666667em;
  font-weight: 700;
  margin-bottom: 1em;
}
.form.checkout h2 .small {
  font-weight: 500;
}
.form.checkout h3 {
  color: #000;
  font-size: 1.3333333333em;
  font-weight: 600;
  margin-bottom: 1em;
}
.form.checkout h3 .small {
  font-weight: 500;
}
.form.checkout fieldset {
  margin-bottom: 1.5em;
}
.form.checkout textarea {
  line-height: 1.5;
  min-height: 7.5em;
  width: 90%;
}
.form.checkout .radiobutton label,
.form.checkout .radiobutton input,
.form.checkout .checkbox label,
.form.checkout .checkbox input {
  vertical-align: middle;
  width: auto;
}
.form.checkout .radiobutton label,
.form.checkout .checkbox label {
  margin: 0;
}
.form.checkout .checkbox label {
  display: inline;
}
.form.checkout .deliveryOpts label {
  margin: 0 0.25em 0 0;
}
.form.checkout .field {
  vertical-align: middle;
}
@media (min-width: 1024px) {
  .form.checkout .field {
    display: inline-block;
    width: 57.7367%;
  }
}
.form.checkout .newsletter label {
  display: inline;
  width: auto;
}
.form.checkout .formRow.logged-in {
  background: #EEE;
  border-bottom: 2px solid #09C;
  padding: 1em;
}
.form.checkout .formRow.logged-in .niceSelect {
  background: #FFF;
}
.form.user-account {
  max-width: 100%;
}
.form.user-account label {
  width: 30%;
}
.form.user-account .user-address .btnrow {
  margin-left: 30%;
}

/* Forms */
/*
	======
	Popups
	======
*/
#popup-contact h2 {
  font-size: 2.3333333333em;
  line-height: 1;
}
#popup-contact textarea {
  line-height: 1.5;
  min-height: 6em;
  padding: 6px;
}

/* Popups */
/*
	========
	Link Row
	========
*/
.linkRow {
  margin-bottom: 0.8em;
  overflow: hidden;
}
.linkRow a {
  background: #09C;
  color: #FFF;
  float: left;
  height: 2.7777777778em;
  line-height: 2.7777777778em;
  margin-left: 2%;
  padding: 0;
  text-align: center;
  width: 32%;
  font-size: 1.5em;
}
.linkRow a:first-child {
  margin-left: 0;
}
.linkRow a.first-child {
  margin-left: 0;
}

/* Link Row */
/*
	========
	Products
	========
*/
.expand {
  color: #09C;
  cursor: pointer;
  float: right;
  text-align: center;
}

.catListing {
  margin-left: -6px;
  margin-right: -6px;
  overflow: hidden;
  position: relative;
}
.catListing img {
  background: #FFF;
  margin: 0;
}
.catListing h2 {
  height: 29px;
  height: calc(1.25em + 4px);
  line-height: 1.25;
  margin-bottom: 0;
  overflow: hidden;
  padding: 2px 2px 2px 8px;
  font-size: 1.6666666667em;
}
.catListing h2 span {
  background: #09C;
  transition: background-color 0.2s linear;
}
.catListing h2 a {
  color: #FFF;
}
.catListing .box {
  background: #09C;
  border-left: 6px solid #FFF;
  border-right: 6px solid #FFF;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
  transition: background-color 0.2s linear;
}
@media (min-width: 480px) {
  .catListing .box {
    float: left;
    width: 50%;
  }
}
@media (min-width: 768px) {
  .catListing .box {
    width: 33.3333%;
  }
}
@media (min-width: 1200px) {
  .catListing .box {
    width: 25%;
  }
}
.catListing .box h2 {
  border-bottom: 1px solid transparent;
}
.catListing .box:nth-child(2n+1) {
  clear: left;
}
@media (min-width: 768px) {
  .catListing .box:nth-child(2n+1) {
    clear: none;
  }
}
.catListing .box:nth-child(3n) .catSubnav {
  right: 0;
}
@media (min-width: 768px) {
  .catListing .box:nth-child(3n+1) {
    clear: left;
  }
}
@media (min-width: 1200px) {
  .catListing .box:nth-child(3n+1) {
    clear: none;
  }
}
.catListing .box:nth-child(3n+1) .catSubnav {
  left: 0;
}
.catListing .box:nth-child(3n+2) .catSubnav {
  left: 50%;
}
.catListing .box:nth-child(3n+2) .catSubnav {
  left: -104.9%;
}
@media (min-width: 1200px) {
  .catListing .box:nth-child(4n+1) {
    clear: left;
  }
}
@media (min-width: 1200px) {
  .catListing .box:nth-child(4n+1) .catSubnav {
    left: 0;
  }
}
.catListing .box.showsub {
  background: #374751;
  z-index: 2;
}
.catListing .box.showsub h2 {
  background-position: 0 -25px;
  border-bottom: 1px solid #374751;
}
.catListing .box.showsub h2 span {
  background: #374751;
}
.catListing .box.showsub .catSubnav {
  height: 83%;
  width: 309.9173553719%;
}
.catListing .box.showsub .expand {
  background-position: 0 -25px;
}
.catListing .box > a {
  display: block;
  padding: 0 1px 1px;
  transition: height 0.3s ease-in-out;
}
.catListing .box > a:active, .catListing .box > a:focus {
  outline: none;
}
.catListing .box:hover {
  background-color: #374751;
}
.catListing .box:hover h2 span {
  background-color: #374751;
}
.catListing .expand {
  background-image: url(/site/images/icon/expand.gif);
  height: 25px;
  width: 25px;
}
.catListing .catSubnav {
  background: #374751;
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 30px;
  width: 0;
  transition: all 0.3s ease-in-out;
}
.catListing .catSubnav ul {
  padding: 10px;
  position: absolute;
  left: 0;
  top: 0;
  min-width: 730px;
  width: 100%;
}
.catListing .catSubnav li {
  float: left;
  padding: 0 2% 0.25%;
  width: 25%;
}
.catListing .catSubnav a {
  color: #FFF;
}
.catListing .catListing_image {
  background-color: #FFF;
  display: block;
  line-height: 250px;
  margin-bottom: 1px;
  margin-left: 1px;
  margin-right: 1px;
  text-align: center;
}

.product-listing {
  margin: 0 -6px 12px;
}
.product-listing h2 {
  font-weight: 500;
  height: 2.5em;
  line-height: 1.25;
  margin-bottom: 0.2em;
  font-size: 1.0833333333em;
  overflow: hidden;
}
.product-listing h2 a {
  color: #374751;
}
.product-listing img {
  border: 1px solid #374751;
  float: left;
}
.product-listing .productBox {
  margin-bottom: 2em;
  padding-left: 6px;
  padding-right: 6px;
}
@media (min-width: 480px) {
  .product-listing .productBox {
    float: left;
    width: 50%;
  }
}
.product-listing .productBox:nth-child(2n+1) {
  clear: left;
}
@media (min-width: 1408px) {
  .product-listing .productBox:nth-child(2n+1) {
    clear: none;
  }
}
@media (min-width: 1408px) {
  .product-listing .productBox:nth-child(3n+1) {
    clear: left;
  }
}
@media (min-width: 1408px) {
  .product-listing .productBox {
    width: 33.3333%;
  }
}
.product-listing .img-link {
  float: left;
  margin-right: 0.333333em;
  position: relative;
  width: 132px;
}
.product-listing .roundall {
  border: none;
  display: none;
  margin: 0;
  position: absolute;
  right: 0.5em;
  top: 0.5em;
}
.product-listing .roundall.small {
  display: block;
}
.product-listing .prices {
  font-weight: 700;
  font-size: 1.3333333333em;
}
.product-listing .prices .old {
  font-size: 0.875em;
  font-weight: 500;
  text-decoration: line-through;
}
.product-listing .old-price {
  display: none;
}
.product-listing .signpost {
  background: #09C;
  border-left-color: #09C;
  font-size: 1.1666666667em;
}
.product-listing .signpost.red {
  background: #FC1241;
  border-left-color: #FC1241;
}
.product-listing .info {
  margin-left: 136px;
}

.product {
  margin-bottom: 1.5em;
}
.product .title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: 1rem;
}
.product .title h1 {
  margin-bottom: 0;
  font-family: sans-serif;
  font-size: 2.8333333333em;
}
.product .offer,
.product .normal {
  display: block;
}
.product .price-old,
.product .price {
  display: block;
  font-weight: 700;
  font-size: 2.8333333333em;
}
.product .price-old .exvat,
.product .price .exvat {
  font-size: 0.6em;
}
.product .productImage {
  padding-top: 1em;
  position: relative;
}
@media (min-width: 768px) {
  .product .productImage {
    float: left;
    width: 40%;
  }
}
.product .productImage img {
  border: 1px solid #374751;
  display: block;
}
.product .productImage img.peli {
  position: absolute;
  bottom: 10px;
  right: 10px;
  border: none;
}
@media (min-width: 768px) {
  .product .productImage-thumbnails {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .product .productImage-thumbnails + .productDetails {
    margin-left: 50%;
  }
}
.product .productThumbnails {
  width: 100px;
  float: left;
}
@media (min-width: 1024px) {
  .product .productThumbnails {
    width: 130px;
  }
}
.product .productThumbnails .thumbnail {
  display: block;
}
.product .productThumbnails .thumbnail + .thumbnail {
  margin-top: 6px;
}
.product .productThumbnails .thumb + .thumb {
  margin-top: 6px;
}
.product .productThumbnails + .productImageMain {
  margin-left: 106px;
}
@media (min-width: 1024px) {
  .product .productThumbnails + .productImageMain {
    margin-left: 136px;
  }
}
.product .productImageMain {
  display: block;
}
.product .productDetails {
  padding-left: 10px;
  padding-top: 10px;
}
@media (min-width: 768px) {
  .product .productDetails {
    margin-left: 40%;
  }
}
.product .price-old {
  font-size: 2.3333333333em;
  text-decoration: line-through;
}
.product .buy label {
  display: inline-block;
  margin-left: 1em;
  font-size: 1.1666666667em;
  line-height: 1.8571428571;
}
.product .buy .niceselect-wrapper {
  display: inline-block;
  vertical-align: middle;
  width: 6em;
}
.product .buy > select {
  max-width: 6em;
}
.product .actions {
  padding: 2em 0;
}
.product .actions a {
  color: #374751;
  display: inline-block;
  margin-bottom: 0.4em;
  font-size: 1.1666666667em;
  line-height: 1.4285714286;
}
.product .actions .pdf {
  background-image: url(/site/images/icon/product-actions.png);
  padding-left: 32px;
}
.product .actions .pictos {
  color: #09C;
  display: inline-block;
  font-size: 1.65em;
  vertical-align: middle;
  width: 32px;
}
.product .signpost.basket {
  background-image: url(/site/images/icon/basket-white.png);
  background-position: 6px center;
  background-repeat: no-repeat;
  padding-left: 34px;
}
.product + .tabs {
  margin-bottom: 0;
}
.product + .tabs + {
  margin-top: 1.5em;
}

.product-tabs table {
  max-width: 100%;
}
@media (max-width: 767px) {
  .product-tabs table,
.product-tabs table td {
    border: none;
  }
  .product-tabs table tr:after {
    clear: both;
    content: "";
    display: table;
  }
  .product-tabs table tr + tr {
    border-top: 1px solid #CCC;
  }
  .product-tabs table td {
    width: auto !important;
  }
  .product-tabs table .PrdSpecItem {
    font-weight: 700;
  }
}
@media (max-width: 767px) and (min-width: 360px) {
  .product-tabs table .PrdSpecItem,
.product-tabs table .PrdSpecItem + td {
    float: left;
    width: 50% !important;
  }
}

.tbl-basket {
  margin-bottom: 12px;
}
.tbl-basket td {
  text-align: center;
  vertical-align: middle;
}
.tbl-basket button {
  background-color: transparent;
  background-position: center center;
  border: none;
  overflow: hidden;
  text-indent: -9999px;
  vertical-align: middle;
}
.tbl-basket [type=number] {
  width: 42px;
}
.tbl-basket .remove button {
  background-image: url(/site/images/icon/del.gif);
  width: 16px;
  height: 16px;
}
.tbl-basket .title {
  text-align: left;
}
.tbl-basket .image {
  width: 122px;
}
.tbl-basket .image img {
  max-width: 100px;
}
.tbl-basket .count button {
  background-image: url(/site/images/icon/refresh.png);
  background-size: 16px 16px;
  width: 16px;
  height: 16px;
}
@media (min--moz-device-pixel-ratio: 2), (min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) {
  .tbl-basket .count button {
    background-image: url(/site/images/icon/refresh@2x.png);
  }
}
.tbl-basket .old_price {
  opacity: 0.5;
  filter: alpha(opacity=50);
  text-decoration: line-through;
}
.tbl-basket .promo {
  border-left: none;
  border-bottom: none;
  text-align: left;
}
@media (max-width: 767px) {
  .tbl-basket tr.header {
    display: none;
  }
  .tbl-basket tr {
    border: 1px solid #09C;
  }
  .tbl-basket tr + tr {
    border-top: none;
  }
  .tbl-basket td {
    border: none;
    text-align: center;
  }
  .tbl-basket td:nth-child(5):before {
    content: "Price: ";
  }
  .tbl-basket td:nth-child(6):before {
    content: "Total: ";
  }
  .tbl-basket tfoot tr {
    border-top: none;
  }
  .tbl-basket tfoot .total_count,
.tbl-basket tfoot .total_cost {
    display: block;
    float: left;
    width: 50%;
  }
  .tbl-basket tfoot .promo {
    display: none;
  }
  .tbl-basket tfoot .footer:after {
    clear: both;
    content: "";
    display: table;
  }
  .tbl-basket .remove:before {
    content: "Remove product: ";
  }
  .tbl-basket .remove form {
    display: inline-block;
  }
  .tbl-basket .image {
    width: auto;
  }
  .tbl-basket .count:before {
    content: "Quantity ";
  }
  .tbl-basket .title {
    text-align: center;
  }
}

.basket-buttons {
  clear: both;
  text-align: right;
}
.basket-buttons form {
  margin-bottom: 12px;
}
@media (min-width: 600px) {
  .basket-buttons form {
    float: left;
    margin-bottom: 0;
  }
}
@media (max-width: 599px) {
  .basket-buttons .button {
    display: block;
    width: 100%;
  }
}

.address-col {
  margin: 0 0 10px 0;
}
@media (min-width: 600px) {
  .address-col {
    float: left;
    width: 50%;
  }
}

@media (min-width: 600px) {
  .left-address-col {
    padding-right: 10px;
  }
}

@media (min-width: 600px) {
  .right-address-col {
    padding-left: 10px;
  }
}

.checkout-address-select {
  margin: 0 0 10px 0;
}
.checkout-address-select select {
  float: left;
  margin: 0 10px 0 0;
  width: 60%;
}
.checkout-address-select .button {
  float: left;
  padding: 0.3em 1em;
}
.checkout-address-select + .button {
  margin: 10px 0;
  padding: 0.3em 1em;
}

.review-address .col {
  float: left;
  margin: 0 0 12px 0;
  width: 50%;
}

/* Products */
/*
	==========
	Offers / featured product tabs
	==========
*/
.tabs .slick-slider {
  margin-bottom: 0;
  padding-top: 24px;
  padding-bottom: 24px;
}
.tabs .slick-dots {
  bottom: -12px;
  margin: 0;
  position: static;
  right: 0;
  text-align: right;
  width: auto;
  z-index: 10;
}
@media (min-width: 1024px) {
  .tabs .slick-dots {
    position: absolute;
  }
}
.tabs .slick-dots li {
  border-left: 1px solid #FFF;
  cursor: pointer;
  display: inline-block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 0.4em 0.4em;
  vertical-align: bottom;
}
.tabs .slick-dots li:first-child {
  border-left: 0;
}
.tabs .slick-dots button {
  color: #FFF;
  font-size: 1em;
  font-weight: 700;
  line-height: inherit;
  padding: 0;
  text-indent: 0;
  width: auto;
  height: auto;
}
.tabs .slick-dots button:before {
  content: normal;
}
.tabs .slick-dots .slick-active button {
  color: #000;
}

.tabs .tab-links .offers-tab-link,
.tabs #offers-tab,
.tabs #offers-tab .signpost {
  background: #FC1241;
}

.tabs .tab-links .featured-tab-link,
.tabs #featured-tab,
.tabs #featured-tab .signpost {
  background: #09C;
}

.tabs #offers-tab .signpost {
  border-left-color: #FC1241;
}

.tabs #featured-tab .signpost {
  border-left-color: #09C;
}

.tabs .productBox {
  float: left;
  padding-left: 9px;
  padding-right: 9px;
  width: 230px;
}
.tabs .productBox form,
.tabs .productBox .info {
  background-color: #374751;
}
.tabs .productBox .img-link {
  background: #fff;
  display: block;
}
.tabs .productBox .img-link img {
  display: block;
  margin: 0 auto;
}
.tabs .productBox .info {
  padding: 0.8em 1em 1em;
  color: #fff;
}
.tabs .productBox a {
  color: #fff;
}
.tabs .productBox h2,
.tabs .productBox .prices {
  font-family: sans-serif;
  font-size: 1.66667em;
  font-weight: 700;
  line-height: 1.2;
}
.tabs .productBox h2 {
  height: 2.4em;
  margin-bottom: 0.2em;
}
.tabs .productBox .signpost {
  font-size: 1.33333em;
}
.tabs .productBox .prices .old {
  text-decoration: line-through;
}

/*
	==========
	Filter Bar
	==========
*/
#mse2_mfilter {
  float: none;
  line-height: 1.4;
  margin: 0;
  padding: 0;
}

#mse2_filters {
  background-color: #09C;
  color: #FFF;
  padding: 10px;
}
#mse2_filters fieldset + fieldset {
  margin-top: 20px;
}
#mse2_filters h4 {
  color: #FFF;
  font-size: 1.3333333333em;
  font-weight: 600;
}
#mse2_filters label {
  display: block;
}
#mse2_filters br {
  display: none;
}
#mse2_filters [type=checkbox] {
  vertical-align: middle;
}
#mse2_filters [type=input] {
  background-color: #FFF;
}
#mse2_filters .mse2_number_slider {
  margin-bottom: 12px;
}
#mse2_filters .field-number {
  overflow: hidden;
}
#mse2_filters .field-number label {
  padding-left: 60px;
  text-indent: -60px;
}
#mse2_filters .field-number input {
  float: right;
  width: 100%;
}
#mse2_filters .field-number + .field-number {
  margin-top: 5px;
}

#mse2_sort {
  margin: 0 0 20px 0;
}
#mse2_sort select {
  margin: 0 0 0 10px;
  width: 200px;
}

/* Filter Bar */
/*
	==============
	Checkout Steps
	==============
*/
.checkout-steps {
  margin: 1em 0;
}
.checkout-steps li {
  background: #708B9C;
  color: #FFF;
  list-style-type: decimal;
  list-style-position: inside;
  padding: 0 2%;
  position: relative;
  font-size: 1.5em;
  line-height: 2.1666666667;
}
@media (min-width: 768px) {
  .checkout-steps li {
    float: left;
    width: 33.3333%;
  }
}
.checkout-steps li:after {
  background-color: #708B9C;
  background-image: url(/site/images/bg/checkout-steps.png);
  height: 100%;
  position: absolute;
  right: 0;
  width: 23px;
}
@media (min-width: 768px) {
  .checkout-steps li:after {
    content: "";
  }
}
.checkout-steps li:last-child:after {
  background-color: #FFF;
}
.checkout-steps .active {
  background: #09C;
}
.checkout-steps .active:after {
  background-position: 0 -39px;
}
.checkout-steps .complete {
  background: #FC1241;
}
.checkout-steps .complete:after {
  background-color: #09C;
  background-position: 0 -78px;
}
.checkout-steps .final:after {
  background-color: #FC1241;
}

.checkout {
  margin-bottom: 1.5em;
}
.checkout .section-left,
.checkout .section-right {
  float: left;
}
.checkout .forgotten [type=submit],
.checkout .login [type=submit] {
  text-transform: uppercase;
}
.checkout .col-wrap {
  margin-left: -18px;
  margin-right: -18px;
}
.checkout .col {
  padding-left: 18px;
  padding-right: 18px;
}
@media (min-width: 640px) {
  .checkout .col {
    float: left;
    width: 50%;
  }
}
.checkout .col + .col {
  margin-top: 24px;
}
@media (min-width: 640px) {
  .checkout .col + .col {
    margin-top: 0;
  }
}
.checkout .forgotten .btn-row {
  padding-top: 2.9166666667em;
}
.checkout .deliveryAddress {
  height: 0;
  overflow: hidden;
}

.basket-cart,
.enter-details,
.order-review {
  position: relative;
  margin: 20px 0 0 0;
}
.basket-cart.disabled:after,
.enter-details.disabled:after,
.order-review.disabled:after {
  background: url(/site/images/bg/white-fade.png);
  background: rgba(255, 255, 255, 0.75);
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 40;
}

/* Checkout Steps */
/*
	=============
	Manufacturers
	=============
*/
.manufacturers {
  margin-left: -7px;
  margin-right: -7px;
}
.manufacturers li {
  float: left;
  margin-bottom: 14px;
  padding-left: 7px;
  padding-right: 7px;
  text-align: center;
  width: 100%;
}
@media (min-width: 400px) {
  .manufacturers li {
    width: 50%;
  }
}
@media (min-width: 600px) {
  .manufacturers li {
    width: 33%;
  }
}
@media (min-width: 1024px) {
  .manufacturers li {
    width: 25%;
  }
}
.manufacturers a {
  background: #09C;
  color: #FFF;
  display: block;
  padding: 0.5em 0;
}
.manufacturers h2 {
  margin-bottom: 0;
}
.manufacturers p {
  margin-bottom: 0;
}
.manufacturers img {
  display: block;
  margin: 0;
}
.manufacturers .inner {
  border: 1px solid #09C;
}

/* Manufacturers */
/*
	========
	Profile
	========
*/
#office-profile-form .header {
  margin: 3em 0 1em 0;
}
#office-profile-form .form-group {
  margin: 0 0 20px 0;
}
#office-profile-form .form-group .message,
#office-profile-form .form-group .desc {
  margin: 5px 0 0 0;
}
#office-profile-form .control-label {
  font-weight: bold;
}
#office-profile-form .avatar {
  *zoom: 1;
}
#office-profile-form .avatar:before, #office-profile-form .avatar:after {
  content: "";
  display: table;
}
#office-profile-form .avatar:after {
  clear: both;
}
#office-profile-form .avatar #profile-user-photo {
  float: left;
}
#office-profile-form .avatar .help-block,
#office-profile-form .avatar #profile-photo {
  float: right;
  margin-left: 20px;
  width: calc(100% - 120px);
}
#office-profile-form input[name=confirmpassword] {
  margin-top: 20px;
}

#add-address-form .form-row {
  margin: 0 0 20px 0;
}

#order-details-form .control-label {
  font-weight: bold;
}
@media (min-width: 600px) {
  #order-details-form .span6 {
    float: left;
    width: 50%;
  }
}

@media (min-width: 1024px) {
  .ui-autocomplete {
    width: auto !important;
    right: 0 !important;
  }
}

@media (max-width: 767px) {
  #mslistorders table tr + tr {
    margin-top: 12px;
  }
  #mslistorders table td:before {
    color: #09C;
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
  }
  #mslistorders table td + td {
    border-top: none;
  }
  #mslistorders table .num:before {
    content: "Order";
  }
  #mslistorders table .createdon:before {
    content: "Created On";
  }
  #mslistorders table .updatedon:before {
    content: "Updated On";
  }
  #mslistorders table .customer:before {
    content: "Customer";
  }
  #mslistorders table .cost:before {
    content: "Cost";
  }
  #mslistorders table .status:before {
    content: "Status";
  }
  #mslistorders table .view:before {
    content: "View";
  }
}
#mslistorders .mslistorders-row-actions:after {
  clear: both;
  content: "";
  display: table;
}

@media (max-width: 767px) {
  .tbl-addresses tr + tr {
    margin-top: 12px;
  }
  .tbl-addresses td + td {
    border-top: none;
  }
}

.lastest-model {
  margin-top: 3em;
}
.lastest-model .productImage {
  text-align: center;
}
@media (min-width: 768px) {
  .lastest-model .productImage {
    max-width: 130px;
  }
}
@media (min-width: 768px) {
  .lastest-model .productDetails {
    margin-left: 130px;
  }
}

.enquiry .field, .callBack .field {
  position: relative;
}
.enquiry .confirmemail, .enquiry .worktel, .callBack .confirmemail, .callBack .worktel {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  transform: translate(0, -25%);
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 16.428571429px;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.428571429;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer:before, .modal-footer:after {
  content: " ";
  display: table;
}
.modal-footer:after {
  clear: both;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }

  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }

  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9zZXR0aW5ncy5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiX2Jhc2Uuc2NzcyIsIl9vYmplY3RzLnNjc3MiLCJfbWluaXNob3Auc2NzcyIsIl9sYXlvdXQuc2NzcyIsIl9tb2R1bGVzLnNjc3MiLCJfaW5ib3guc2NzcyIsIl9ib290c3RyYXAuc2NzcyIsImJvb3RzdHJhcC9fbW9kYWxzLnNjc3MiLCJib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwiYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFTQTtBQUFBOztBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFpQkE7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBa0JBO0FBQUE7O0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQWVBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWdCQTtBQUFBOztBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjQTtBQUFBOztBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlQTtBQUFBOztBQUFBOztBQUFBOztBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBMEJBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFpQ0E7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFvQ0E7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFvQ0E7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUEwREE7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUE0QkE7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUE0QkE7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUEwQ0E7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtB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QUFSQTtFQUNDOztBQUNBO0VBQ0M7RUFDQTs7QUFNRjtFQUNDOztBQUdEO0VBQ0M7O0FBR0Q7RUFDQzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTs7O0FBSUY7QUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Q7QUFFQTtBQUFBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0VBQ0M7O0FBRUQ7QUFBQTtFQUNDOzs7QUFHRjtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtFQUNDOztBQUNBO0VBQ0M7OztBQUdGO0VBQ0M7O0FBQ0E7RUFDQzs7O0FBSUY7QUFFQTtFQUNDOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDQzs7O0FBTUg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUg1MkJDLG9CRzYyQkE7RUg1MkJBLGlCRzQyQkE7RUgzMkJBLGdCRzIyQkE7RUgxMkJBLGVHMDJCQTtFSHoyQkEsWUd5MkJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDQzs7O0FBSUY7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTs7QUFDQTtFQUNDO0VBQ0E7RUFDQTs7O0FBSUY7RUFDQzs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFNRDtFQUNDO0VBQ0E7RUFDQTs7O0FBR0Q7QUFDQTtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTs7O0FBR0Q7QUFDQTtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtBQUNBO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7OztBQUdEO0FBQUE7RUFFQzs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtBQUNBO0VBQ0M7SUFDQzs7O0FDM3RDQTtFQUNFOzs7QUFLRjtFQUNFOzs7QUNKSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtBQUVBO0VBQ0M7RUFDQTs7O0FBR0Q7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c0ZBO0lBRUU7Ozs7QUNqa0dDO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNiUjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDVUE7RUFDRTs7O0FBSUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFNDbVF5QjtFRGxRekI7RUFJQTs7QUFHQTtFRTBHQTtFQUNJO0VBQ0M7RUFDRztFQWtFUjtFQUNHO0VBQ0U7RUFDRzs7QUY5S1I7RUVzR0E7RUFDSTtFQUNDO0VBQ0c7OztBRnZHVjtFQUNFO0VBQ0E7OztBQUlGO0VBQ0U7RUFDQTtFQUNBOzs7QUFJRjtFQUNFO0VBQ0Esa0JDdWlCNkM7RUR0aUI3QztFQUNBO0VBQ0EsZUN1RDBCO0VDMUMxQixvQkZaQTtFRWFRLFlGYlI7RUFDQTtFQUVBOzs7QUFJRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxTQ29OeUI7RURuTnpCLGtCQzRoQjRCOztBRDFoQjVCO0VHckVBLFNIcUUwQjtFR2xFMUI7O0FIbUVBO0VHdEVBLFNGaW1CNEI7RUU5bEI1Qjs7O0FId0VGO0VBQ0UsU0N1Z0I0QjtFRHRnQjVCO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUlGO0VBQ0U7RUFDQSxhQzVCd0I7OztBRGlDMUI7RUFDRTtFQUNBLFNDaWY0Qjs7O0FEN2U5QjtFQUNFLFNDNGU0QjtFRDNlNUI7RUFDQTs7QUk1RkE7RUFFRTtFQUNBOztBQUVGO0VBQ0U7O0FKMEZGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7OztBQUtKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUY7RUFFRTtJQUNFLE9DbWUwQjtJRGxlMUI7OztFQUVGO0lFdkVBLG9CRndFRTtJRXZFTSxZRnVFTjs7O0VBSUY7SUFBWSxPQzRkZ0I7OztBRHpkOUI7RUFDRTtJQUFZLE9Dc2RnQiIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiMgU2V0dGluZ3MgKF9zZXR0aW5ncylcbiovXG5cbi8qXG4jIyBWYXJpYWJsZXNcblxuIyMjIEdlbmVyYWxcblxuJHBoaTogMS42MTgwMzM5ODg3NDkgLSBHb2xkZW4gcmF0aW9cbiovXG4kcGhpOiAxLjYxODAzMzk4ODc0OTtcblxuLypcbiMjIyBDb2xvdXJzXG5cbjxzcGFuIHN0eWxlPVwiY29sb3I6ICMzMzNcIj4kY29sb3VyLWJhc2UgLSAjMzMzPC9zcGFuPiA8c3BhbiBzdHlsZT1cImJhY2tncm91bmQ6ICMzMzM7IGNvbG9yOiAjRkZGO1wiPiZuYnNwOyRjb2xvdXItYmFzZSAtICMzMzMmbmJzcDs8L3NwYW4+XG5cbjxzcGFuIHN0eWxlPVwiY29sb3I6ICMzMzlcIj4kY29sb3VyLWhpZ2hsaWdodCAtICMzMzk8L3NwYW4+IDxzcGFuIHN0eWxlPVwiYmFja2dyb3VuZDogIzMzOTsgY29sb3I6ICNGRkY7XCI+Jm5ic3A7JGNvbG91ci1oaWdobGlnaHQgLSAjMzM5Jm5ic3A7PC9zcGFuPlxuXG48c3BhbiBzdHlsZT1cImNvbG9yOiAjMzM5XCI+JGNvbG91ci1saW5rIC0gIzMzOTwvc3Bhbj4gPHNwYW4gc3R5bGU9XCJiYWNrZ3JvdW5kOiAjMzM5OyBjb2xvcjogI0ZGRjtcIj4mbmJzcDskY29sb3VyLWxpbmsgLSAjMzM5Jm5ic3A7PC9zcGFuPlxuKi9cbiRjb2xvdXItYmFzZTogXHRcdCMzNzQ3NTE7XG4kY29sb3VyLWhpZ2hsaWdodDogXHQjMDlDOyAvLyBCbHVlXG4kY29sb3VyLWFsdDogXHRcdCNGQzEyNDE7IC8vIFJlZC9QaW5rXG4kY29sb3VyLXBhbGU6IFx0XHQjNzA4QjlDOyAvLyBQYWxlIEJsdWVcbiRjb2xvdXItZ3JleTogXHRcdCM5OTk7IC8vIFBhbGUgR3JleVxuJGNvbG91ci1vdXRsaW5lOiBcdCMwMDc1OUI7IC8vIEJsdWVcbiRjb2xvdXItbGluazogXHRcdCMwOUM7XG5cbi8qXG4jIyMgRm9udHNcblxuJGZvbnQtc2l6ZSAtIDEzXG5cbiRsaW5lLWhlaWdodCAtIDEuNFxuXG48c3BhbiBzdHlsZT1cImZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1wiPiRmb250LWJhc2UgLSBzYW5zLXNlcmlmPC9zcGFuPlxuXG48c3BhbiBzdHlsZT1cImZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1wiPiRmb250LWhlYWRlciAtIHNhbnMtc2VyaWY8L3NwYW4+XG4qL1xuJGZvbnQtc2l6ZTogXHQxMjtcbiRsaW5lLWhlaWdodDogXHQxLjQ7XG5cbiRmb250LWJhc2U6IFx0c2Fucy1zZXJpZjtcbiRmb250LWhlYWRlcjogXHRcImZyZWlnaHQtc2Fucy1wcm9cIiwgU2Fucy1TZXJpZjtcblxuXG4vKlxuIyMjIExheW91dFxuXG4kd2lkdGggLSA5NjBcblxuJGNvbHVtbnMgLSAyNFxuXG4kZ3V0dGVyIC0gMTJcbiovXG4kd2lkdGg6IFx0OTYwO1xuJGNvbHVtbnM6IFx0MjQ7XG4kZ3V0dGVyOiBcdDEyO1xuJGJyZWFrbWF4OiBcdDE0MDhweDtcblxuXG4vKlxuIyMgRnVuY3Rpb25zXG5cbiMjIyBlbSgkc2l6ZTogJGZvbnQtc2l6ZSwgJGNvbnRleHQ6ICRmcylcblxuV2lsbCBjb252ZXJ0IGEgcGl4ZWwgYmFzZWQgc2l6ZSB0byBhbiBlbSB2YWx1ZS5cbkZpcnN0IHZhbHVlIGlzIHRoZSB0YXJnZXQgc2l6ZSwgdGhlIHNlY29uZCB2YWx1ZSBpcyB0aGUgZm9udC1zaXplIG9mIHRoZSBjb250ZXh0IGl0IGlzIGluLlxuXG5FeGFtcGxlczpcbmBlbSgyNilgIC8vIDJlbSBpZiBiYXNlIGZvbnQtc2l6ZSBpcyAxM3B4XG5gZW0oMTgsIDEyKWAgLy8gMS41ZW1cbiovXG5AZnVuY3Rpb24gZW0oJHNpemU6ICRmb250LXNpemUsICRjb250ZXh0OiAkZm9udC1zaXplKSB7XG5cdEByZXR1cm4gJHNpemUvJGNvbnRleHQgKyBlbTtcbn1cblxuLypcbiMjIyBsaCgkc2l6ZTogJGZvbnQtc2l6ZSwgJGNvbnRleHQ6ICRmcylcblxuV2lsbCBwcm92aWRlIHRoZSBzYW1lIGZ1bmN0aW9uIGFzICdlbScgYWJvdmUgYnV0aCB3aXRob3V0IGFwcGVuZGluZyAnZW0nIHRvIHRoZSByZXN1bHQuXG5UaGlzIG1ha2VzIGl0IG1vcmUgc3VpdGFibGUgdG8gdXNlIGFzIGEgbGluZS1oZWlnaHQgdmFsdWUuXG5cbkV4YW1wbGVzOlxuYGxoKDI2KWAgLy8gMiBpZiBiYXNlIGZvbnQtc2l6ZSBpcyAxM3B4XG5gbGgoMTgsIDEyKWAgLy8gMS41XG4qL1xuQGZ1bmN0aW9uIGxoKCRzaXplOiAkZm9udC1zaXplLCAkY29udGV4dDogJGZvbnQtc2l6ZSkge1xuXHRAcmV0dXJuICRzaXplLyRjb250ZXh0O1xufVxuXG4vKlxuIyMjIGZsdWlkKCRjb2x1bW5zOiAxLCAkdG90YWwtY29sdW1uczogJGNvbHVtbnMpXG5cbldpbGwgcHJvdmlkZSB0aGUgJSByZXN1bHQgb2YgdGhlIGZpcnN0IHZhbHVlIGRpdmlkZWQgYnkgdGhlIHNlY29uZC5cblN1aXRhYmxlIGZvciB3b3JraW5nIG91dCBjb2x1bW5zIGFuZCBnZW5lcmFsICUgdmFsdWVzLlxuXG5FeGFtcGxlczpcbmBmbHVpZCgyLCA2KWAgLy8gMTIuNSVcbmBmbHVpZCgxMHB4LCA5NjBweClgIC8vIDEuMDQxNjY2NjY2NjY2NjY3JVxuKi9cbkBmdW5jdGlvbiBmbHVpZCgkY29sdW1uczogMSwgJHRvdGFsLWNvbHVtbnM6ICRjb2x1bW5zKVxue1xuICBAcmV0dXJuICgkY29sdW1ucyAvICR0b3RhbC1jb2x1bW5zKSAqIDEwMCU7XG59XG5cbi8qXG4jIyBNaXhpbnNcblxuTWl4aW5zIG11c3QgdG8gYmUgY2FsbGVkIHVzaW5nIEBpbmNsdWRlIChzY3NzKSBvciArIChzYXNzKVxuXG4jIyMgdmVuZG9yKCRwcm9wZXJ0eSwgJHZhbHVlKVxuXG5BZGQgdmVuZG9yIHByZWZpeGVzIHRvIGEgcHJvcGVydHkgYW5kIHByb3ZpZGUgdGhlIHZhbHVlIGZvciB0aGUgcHJvcGVydHlcblxuYEBpbmNsdWRlIHZlbmRvcihib3gtc2hhZG93LCAwIDAgMTBweCAwICMwMDApO2BcblxuT3V0cHV0czpcbmAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgIzAwMGBcbmAtbW96LWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgIzAwMGBcbmAtbXMtYm94LXNoYWRvdzogMCAwIDEwcHggMCAjMDAwYFxuYC1vLWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgIzAwMGBcbmBib3gtc2hhZG93OiAwIDAgMTBweCAwICMwMDBgXG4qL1xuQG1peGluIHZlbmRvcigkcHJvcGVydHksICR2YWx1ZS4uLikge1xuXHQtd2Via2l0LSN7JHByb3BlcnR5fTpcdCR2YWx1ZTtcblx0LW1vei0jeyRwcm9wZXJ0eX06XHRcdCR2YWx1ZTtcblx0LW1zLSN7JHByb3BlcnR5fTpcdFx0JHZhbHVlO1xuXHQtby0jeyRwcm9wZXJ0eX06XHRcdCR2YWx1ZTtcblx0I3skcHJvcGVydHl9Olx0XHRcdCR2YWx1ZTtcbn1cblxuLypcbiMjIyBsaXN0LXJlc2V0XG5cblJlc2V0cyBjdXJyZW50IGxpc3Qgb25seVxuXG48cHJlPlxudWwge1xuXHRAaW5jbHVkZSBsaXN0LXJlc2V0O1xufVxuPC9wcmU+XG5cbk91dHB1dHM6XG48cHJlPlxudWwge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG59XG51bCA+IGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbn1cbjwvcHJlPlxuKi9cbkBtaXhpbiBsaXN0LXJlc2V0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXG5cdD4gbGkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcblx0fVxufVxuXG4vKlxuIyMjIGxpc3QtcmVzZXQtZnVsbFxuXG5SZXNldCBjdXJyZW50IGFuZCBhbGwgY2hpbGQgbGlzdHNcblxuPHByZT5cbnVsIHtcblx0QGluY2x1ZGUgbGlzdC1yZXNldC1mdWxsO1xufVxuPC9wcmU+XG5cbk91dHB1dHM6XG48cHJlPlxudWwsIHVsIHVsLCB1bCBvbCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbn1cbnVsIGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbn1cblxuPC9wcmU+XG4qL1xuQG1peGluIGxpc3QtcmVzZXQtZnVsbCB7XG5cdCYsIHVsLCBvbCB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHRsaSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuXHR9XG59XG5cbi8qXG4jIyMgY2xlYXJmaXhcblxuQ2xlYXIgYW4gZWxlbWVudHMgZmxvYXRlZCBjaGlsZHJlblxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgY2xlYXJmaXg7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXYge1xuXHQqem9vbTogMTtcbn1cbmRpdjpiZWZvcmUsIGRpdjphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xufVxuZGl2OmFmdGVyIHtcblx0Y2xlYXI6IGJvdGg7XG59XG48L3ByZT5cbiovXG5AbWl4aW4gY2xlYXJmaXgge1xuXHQmOmJlZm9yZSwgJjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0fVxuXG4gICAgJjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbiAgICAqem9vbTogMTtcbn1cblxuLypcbiMjIyBrZXlmcmFtZXMoJG5hbWUpXG5cblNldCBhbmltYXRpb24ga2V5ZnJhbWVzIG92ZXIgbXVsdGlwbGUgYnJvd3NlciBleHRlbnNpb25zXG5cbjxwcmU+XG4uYm94IHtcblx0QGluY2x1ZGUga2V5ZnJhbWVzKG15LWFuaW1hdGlvbikge1xuXHRcdDAlIHsgb3BhY2l0eTogMDsgfVxuXHRcdDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbi5ib3gge1xuXHRALXdlYmtpdC1rZXlmcmFtZXMgbXktYW5pbWF0aW9uIHtcblx0ICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuXHQgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cblx0QC1tb3ota2V5ZnJhbWVzIG15LWFuaW1hdGlvbiB7XG5cdCAgMCUgICB7IG9wYWNpdHk6IDA7IH1cblx0ICAxMDAlIHsgb3BhY2l0eTogMTsgfVxuXHR9XG5cdEAtbXMta2V5ZnJhbWVzIG15LWFuaW1hdGlvbiB7XG5cdCAgMCUgICB7IG9wYWNpdHk6IDA7IH1cblx0ICAxMDAlIHsgb3BhY2l0eTogMTsgfVxuXHR9XG5cdEAtby1rZXlmcmFtZXMgbXktYW5pbWF0aW9uIHtcblx0ICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuXHQgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cblx0QGtleWZyYW1lcyBteS1hbmltYXRpb24ge1xuXHQgIDAlICAgeyBvcGFjaXR5OiAwOyB9XG5cdCAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cblx0fVxufVxuPC9wcmU+XG4qL1xuQG1peGluIGtleWZyYW1lcygkbmFtZSkge1xuXHRALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50XG5cdH1cblx0QC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcblx0XHRAY29udGVudFxuXHR9XG5cdEAtbXMta2V5ZnJhbWVzICN7JG5hbWV9IHtcblx0XHRAY29udGVudFxuXHR9XG5cdEAtby1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50XG5cdH1cblx0QGtleWZyYW1lcyAjeyRuYW1lfSB7XG5cdFx0QGNvbnRlbnRcblx0fVxufVxuXG4vKlxuIyMjIGhpZGRlbi1mdWxsXG5cbkNvbXBsZXRlbHkgaGlkZSBhbiBlbGVtZW50XG5cbjxwcmU+XG5kaXYge1xuXHRAaW5jbHVkZSBoaWRkZW4tZnVsbDtcbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbmRpdiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuPC9wcmU+XG4qL1xuQG1peGluIGhpZGRlbi1mdWxsIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qXG4jIyMgbWF4KCRtYXh3aWR0aDogJHdpZHRoKVxuXG5BIHNpbXBsZSBtYXgtd2lkdGggbWVkaWEgcXVlcnlcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIG1heCg3NjhweCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHRkaXYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbjwvcHJlPlxuKi9cbkBtaXhpbiBtYXgoJG1heHdpZHRoOiAkd2lkdGgpIHtcblx0QG1lZGlhIChtYXgtd2lkdGg6ICRtYXh3aWR0aCkge1xuXHRcdEBjb250ZW50XG5cdH1cbn1cblxuLypcbiMjIyBtaW4oJG1pbndpZHRoOiAkd2lkdGgpXG5cbkEgc2ltcGxlIG1pbi13aWR0aCBtZWRpYSBxdWVyeVxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHRkaXYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG48L3ByZT5cbiovXG5AbWl4aW4gbWluKCRtaW53aWR0aDogJHdpZHRoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAkbWlud2lkdGgpIHtcblx0XHRAY29udGVudFxuXHR9XG59XG5cbi8qXG4jIyMgcGl4ZWwtcmF0aW8oJHBpeGVscmF0aW86IDIsICRiYXNlZHBpOiA5NilcblxuQSBzaW1wbGUgcGl4ZWwtcmF0aW8gbWVkaWEgcXVlcnlcblxuJGJhc2VkcGkgaXMgdXNlZCBmb3IgZmluZSBjb250cm9sIG92ZXIgdGhlIGRwaSBxdWVyeSB2YWx1ZVxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgcGl4ZWwtcmF0aW8ge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZUAyeC5wbmcpO1xuXHR9XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5AbWVkaWFcblx0KC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG5cdCggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuXHQoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuXHQoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcblx0KCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcblx0KCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcblx0XHRkaXYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlQDJ4LnBuZyk7XG5cdFx0fVxuXHR9XG48L3ByZT5cbiovXG5AbWl4aW4gcGl4ZWwtcmF0aW8oJHBpeGVscmF0aW86IDIsICRiYXNlZHBpOiA5Nikge1xuXHRAbWVkaWFcblx0XHQoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpbyksXG5cdCAgXHQoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpbyksXG5cdCAgXHQoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpby8xKSxcblx0ICBcdCggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICRwaXhlbHJhdGlvKSxcblx0ICBcdCggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7JGJhc2VkcGkqJHBpeGVscmF0aW99ZHBpKSxcblx0ICBcdCggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7JHBpeGVscmF0aW99ZHBweCkge1xuXHRcdFx0QGNvbnRlbnRcblx0XHR9XG59XG5cbi8qXG4jIyMgZ2VuZXJhdGUoJHdpZHRoOiAxMHB4LCAkaGVpZ2h0OiAxMHB4LCAkcG9zaXRpb246IHN0YXRpYylcblxuQ3JlYXRlIGdlbmVyaWMgc3R5bGluZyBmb3IgOmJlZm9yZS86YWZ0ZXJcblxuJGhlaWdodCAvICR3aWR0aCAvICRwb3NpdGlvbiBhbGwgY29udHJvbCB0aGVpciBuYW1lc2FrZSBDU1MgcHJvcGVydGllc1xuXG48cHJlPlxuZGl2OmFmdGVyIHtcblx0QGluY2x1ZGUgZ2VuZXJhdGU7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXY6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMHB4O1xuXHRoZWlnaHQ6IDEwcHg7XG5cdHBvc2l0aW9uOiBzdGF0aWM7XG59XG48L3ByZT5cbiovXG5AbWl4aW4gZ2VuZXJhdGUoJHdpZHRoOiAxMHB4LCAkaGVpZ2h0OiAxMHB4LCAkcG9zaXRpb246IHN0YXRpYykge1xuXHRjb250ZW50OiBcIlwiO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcblx0cG9zaXRpb246ICRwb3NpdGlvbjtcbn1cblxuLypcbiMjIyBvcGFjaXR5KCRvOiAwLjUpXG5cbkhhbmRsZSBzdGFuZGFyZCAmIElFIG9wYWNpdHlcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIG9wYWNpdHkoLjc1KTtcbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbmRpdiB7XG5cdG9wYWNpdHk6IC43NTtcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbn1cbjwvcHJlPlxuKi9cbkBtaXhpbiBvcGFjaXR5KCRvOiAwLjUpIHtcblx0JG1zbzogJG8gKiAxMDA7XG5cdG9wYWNpdHk6ICRvO1xuXHRmaWx0ZXI6IGFscGhhKG9wYWNpdHk9I3skbXNvfSk7XG59XG5cblxuLypcbiMjIyBib3JkZXItcmFkaXVzKCR2YWw6IDEwcHgpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IoYm9yZGVyLXJhZGl1cylcbiovXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkdmFsOiAxMHB4KSB7XG5cdEBpbmNsdWRlIHZlbmRvcihib3JkZXItcmFkaXVzLCAkdmFsKTtcbn1cblxuLypcbiMjIyBib3gtc2hhZG93KCR2YWw6IDAgMCAxMHB4ICMwMDApXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IoYm94LXNoYWRvdylcbkFsbG93cyBtdWx0aXBsZSBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLlxuKi9cbkBtaXhpbiBib3gtc2hhZG93KCR2YWwuLi4pIHtcblx0QGluY2x1ZGUgdmVuZG9yKGJveC1zaGFkb3csICR2YWwpO1xufVxuXG4vKlxuIyMjIGdyYWRpZW50KCRkaXJlY3Rpb246dmVydGljYWwsICRzdGFydC1jb2xvcjogI2ZmZiwgJHN0YXJ0LXBvc2l0aW9uOiAwJSwgJGVuZC1jb2xvcjogIzAwMCwgJGVuZC1wb3NpdGlvbjogMTAwJSlcblxuQ3JlYXRlIGhvcml6b250YWwgLyB2ZXJ0aWNhbCBncmFkaWVudHNcblxuTm90ZSA6IERvZXMgbm90IGluY2x1ZGUgSUU5IGRhdGEgdXJpIHN1cHBvcnRcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIGdyYWRpZW50KCRzdGFydC1jb2xvcjogI0YwMCwgJGVuZC1jb2xvcjogIzBGMCk7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXYge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNGMDAgMCUsICMwRjAgMTAwJSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICNGMDApLCBjb2xvci1zdG9wKDEwMCUsICMwRjApKTtcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjRjAwIDAlLCAjMEYwIDEwMCUpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjRjAwIDAlLCAjMEYwIDEwMCUpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI0YwMCAwJSwgIzBGMCAxMDAlKTtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0YwMCAwJSwgIzBGMCAxMDAlKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xufVxuPC9wcmU+XG4qL1xuQG1peGluIGdyYWRpZW50KCRkaXJlY3Rpb246dmVydGljYWwsICRzdGFydC1jb2xvcjogI2ZmZiwgJHN0YXJ0LXBvc2l0aW9uOiAwJSwgJGVuZC1jb2xvcjogIzAwMCwgJGVuZC1wb3NpdGlvbjogMTAwJSkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBob3Jpem9udGFsIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKCRzdGFydC1wb3NpdGlvbiwkc3RhcnQtY29sb3IpLCBjb2xvci1zdG9wKCRlbmQtcG9zaXRpb24sICRlbmQtY29sb3IpKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcblx0fVxuXG5cdEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdmVydGljYWwge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKCRzdGFydC1wb3NpdGlvbiwgJHN0YXJ0LWNvbG9yKSwgY29sb3Itc3RvcCgkZW5kLXBvc2l0aW9uLCAkZW5kLWNvbG9yKSk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG5cdH1cbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0oJGFyZ3VtZW50cylcblxuRnJpZW5kbHkgaW50ZXJmYWNlIHRvIHZlbmRvcih0cmFuc2Zvcm0pIHcvYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuXG4qL1xuQG1peGluIHRyYW5zZm9ybSgkYXJndW1lbnRzKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2Zvcm0sICRhcmd1bWVudHMpO1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcbiMjIyB0cmFuc2l0aW9uKCRhcmd1bWVudHMpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNpdGlvbilcbiovXG5AbWl4aW4gdHJhbnNpdGlvbigkYXJndW1lbnRzLi4uKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2l0aW9uLCAkYXJndW1lbnRzKTtcbn1cblxuLypcbiMjIyBwZXJzcGVjdGl2ZSgkdmFsOiAwKVxuXG5GcmllbmRseSBpbnRlcmZhY2UgdG8gdmVuZG9yKHBlcnNwZWN0aXZlKVxuKi9cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkdmFsOiAwKSB7XG5cdEBpbmNsdWRlIHZlbmRvcihwZXJzcGVjdGl2ZSwgJHZhbCk7XG59XG5cbi8qXG4jIyMgcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWw6IDUwJSA1MCUpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IocGVyc3BlY3RpdmUtb3JpZ2luKVxuKi9cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHZhbDogNTAlIDUwJSkge1xuXHRAaW5jbHVkZSB2ZW5kb3IocGVyc3BlY3RpdmUtb3JpZ2luLCAkdmFsKTtcbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0tb3JpZ2luKCR2YWw6IDUwJSA1MCUpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNmb3JtLW9yaWdpbilcbiovXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkdmFsOiA1MCUgNTAlKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2Zvcm0tb3JpZ2luLCAkdmFsKTtcbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0tc3R5bGUoJHZhbDogcHJlc2VydmUtM2QpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNmb3JtLXN0eWxlKVxuKi9cbkBtaXhpbiB0cmFuc2Zvcm0tc3R5bGUoJHZhbDogcHJlc2VydmUtM2QpIHtcblx0QGluY2x1ZGUgdmVuZG9yKHRyYW5zZm9ybS1zdHlsZSwgJHZhbCk7XG59XG5cbi8qXG4jIyMgUGxhY2Vob2xkZXJzXG4qL1xuQG1peGluIHBsYWNlaG9sZGVyIHtcblx0Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50XG5cdH1cblx0OjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudFxuXHR9XG5cdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnRcblx0fVxuXHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudFxuXHR9XG59XG5cblxuLypcbiMjIyBib3hlcygkY29sczogMywgJGd1dHRlcjogMTBweCwgJHNlbGVjdG9yOiBcIi5jb2xcIilcblxuU2V0IHRoZSBjb250YWluZXIgYW5kIGl0cyBjaGlsZHJlbiAoYXMgIHNlbGVjdGVkIGJ5IHRoZSBzZWxlY3RvciBhcmd1bWVudCkgdG8gYmUgYSBzZXQgb2YgY29sdW1ucy5cbiovXG5AbWl4aW4gYm94ZXMoJGNvbHM6IDMsICRndXR0ZXI6IDEwcHgsICRzZWxlY3RvcjogXCIuY29sXCIpIHtcblx0bWFyZ2luLWxlZnQ6IC0kZ3V0dGVyO1xuXHRtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyO1xuXG5cdCN7JHNlbGVjdG9yfSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGFkZGluZy1sZWZ0OiAkZ3V0dGVyO1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRndXR0ZXI7XG5cdFx0d2lkdGg6IDEwMCUgLyAkY29scztcblxuXHRcdCY6bnRoLWNoaWxkKG4pIHtcblx0XHRcdGNsZWFyOiBub25lO1xuXHRcdH1cblxuXHRcdCY6bnRoLWNoaWxkKCN7JGNvbHN9bisxKSB7XG5cdFx0XHRjbGVhcjogbGVmdDtcblx0XHR9XG5cdH1cbn1cblxuXG5AbWl4aW4gdmFsaWduKCRpbm5lcjogXCIuaW5uZXJcIikge1xuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQjeyRpbm5lcn0ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG59XG5cblxuQG1peGluIGNvdmVyaW1hZ2Uge1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG5cbi8qXG4jIyBFeHRlbmRcblxuVXNlIHRoZXNlIHBsYWNlaG9sZGVyIHN0eWxlcyB3aXRoIEBleHRlbmQuXG5cbiMjIyAlZGVidWdcblxuVXNlZCB0byBoaWdobGlnaHQgaXRlbXMgdmlhIGJhY2tncm91bmQtY29sb3IuXG5DYW4gYmUgdXNlZnVsIGZvciBkZWJ1Z2dpbmcuXG4qL1xuJWRlYnVnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcGluayAhaW1wb3J0YW50O1xufVxuXG4vKlxuIyMjICVlbGxpcHNpc1xuXG5JZiB0aGUgZWxlbWVudCBoYXMgb3ZlcmZsb3dpbmcgdGV4dCB0aGUgdGV4dCB3aWxsIGJlIHRydW5jYXRlZCBhbmQgYW4gZWxsaXBzaXMgYXBwZW5kZWQgdG8gdGhlIGVuZC5cbiovXG4lZWxsaXBzaXMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtbXMtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC1vLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLypcbiMjIyAlaXJcblxuVXNlIHdoZW4gc2V0dGluZyBhbiBlbGVtZW50IHN1Y2ggYXMgYW4gaW5wdXQgYnV0dG9uIHRvIHVzZSBhIGJhY2tncm91bmQtaW1hZ2UuXG5cbk5vdCByZWNvbW1lbmRlZCB0byB1c2UgdGhpcyBtZXRob2QgdW5sZXNzIG5lY2Vzc2FyeS5cblRyeSBhbmQgdXNlIGFwcHJvcHJpYXRlIGVsZW1lbnRzIHdoZXJlIHBvc3NpYmxlIChgPGlucHV0IHR5cGU9XCJpbWFnZVwiIC8+YCBmb3IgZXhhbXBsZSkuXG4qL1xuJWlyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250OiAwIC8gMCBhO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLypcbiMjIyAlY2xlYXJmaXhcblxuQGV4dGVuZCBpbnRlcmZhY2UgZm9yIEBpbmNsdWRlIGNsZWFyZml4O1xuKi9cbiVjbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8qXG4jIyMgJWxpc3QtcmVzZXRcblxuQGV4dGVuZCBpbnRlcmZhY2UgZm9yIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG4qL1xuJWxpc3QtcmVzZXQge1xuXHRAaW5jbHVkZSBsaXN0LXJlc2V0O1xufVxuXG5cbi8qXG4jIyMgJWxpc3QtcmVzZXQtZnVsbFxuXG5AZXh0ZW5kIGludGVyZmFjZSBmb3IgQGluY2x1ZGUgbGlzdC1yZXNldC1mdWxsO1xuKi9cbiVsaXN0LXJlc2V0LWZ1bGwge1xuXHRAaW5jbHVkZSBsaXN0LXJlc2V0LWZ1bGw7XG59IiwiLypcbiMgTm9ybWFsaXplIChfbm9ybWFsaXplKVxuXG5ub3JtYWxpemUuY3NzIHYxLjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZVxuXG5HbG9iYWwgcmVzZXQuIFRoaXMgZmlsZSBzaG91bGQgbm90IGJlIGVkaXRlZC5cblxuKi9cblxuaHRtbCB7XG5cdEBpbmNsdWRlIHZlbmRvcihib3gtc2l6aW5nLCBib3JkZXItYm94KTtcbn1cblxuKiwgKjphZnRlciwgKjpiZWZvcmUge1xuXHRAaW5jbHVkZSB2ZW5kb3IoYm94LXNpemluZywgaW5oZXJpdCk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cblxuLy8gQ29ycmVjdHMgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQ29ycmVjdHMgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG5hdWRpbyxcbmNhbnZhcyxcbnZpZGVvIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQqZGlzcGxheTogaW5saW5lO1xuXHQqem9vbTogMTtcbn1cblxuLy8gUHJldmVudHMgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4vLyBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuYXVkaW86bm90KFtjb250cm9sc10pIHtcblx0ZGlzcGxheTogbm9uZTtcblx0aGVpZ2h0OiAwO1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBmb3IgYGhpZGRlbmAgYXR0cmlidXRlIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBGaXJlZm94IDMsIGFuZCBTYWZhcmkgNC5cbi8vIEtub3duIGlzc3VlOiBubyBJRSA2IHN1cHBvcnQuIFxuW2hpZGRlbl0ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vLyAxLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nIGBlbWAgdW5pdHMuXG4vLyAyLiBQcmV2ZW50cyBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nICB1c2VyIHpvb20uXG5odG1sIHtcblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuXHQtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vLyBBZGRyZXNzZXMgYGZvbnQtZmFtaWx5YCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gYHRleHRhcmVhYCBhbmQgb3RoZXIgZm9ybSBlbGVtZW50cy5cbmh0bWwsXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG59XG5cbi8vIEFkZHJlc3NlcyBtYXJnaW5zIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNi83LlxuYm9keSB7XG5cdG1hcmdpbjogMDtcbn1cblxuXG4vLyBBZGRyZXNzZXMgYG91dGxpbmVgIGluY29uc2lzdGVuY3kgYmV0d2VlbiBDaHJvbWUgYW5kIG90aGVyIGJyb3dzZXJzLlxuYTpmb2N1cyB7XG5cdG91dGxpbmU6IHRoaW4gZG90dGVkO1xufVxuXG4vLyBJbXByb3ZlcyByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuXHRvdXRsaW5lOiAwO1xufVxuXG4vLyBBZGRyZXNzZXMgZm9udCBzaXplcyBhbmQgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxuLy8gQWRkcmVzc2VzIGZvbnQgc2l6ZXMgd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuaDEge1xuXHRmb250LXNpemU6IDJlbTtcblx0bWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuaDIge1xuXHRmb250LXNpemU6IDEuNWVtO1xuXHRtYXJnaW46IDAuODNlbSAwO1xufVxuXG5oMyB7XG5cdGZvbnQtc2l6ZTogMS4xN2VtO1xuXHRtYXJnaW46IDFlbSAwO1xufVxuXG5oNCB7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRtYXJnaW46IDEuMzNlbSAwO1xufVxuXG5oNSB7XG5cdGZvbnQtc2l6ZTogMC44M2VtO1xuXHRtYXJnaW46IDEuNjdlbSAwO1xufVxuXG5oNiB7XG5cdGZvbnQtc2l6ZTogMC43NWVtO1xuXHRtYXJnaW46IDIuMzNlbSAwO1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA3LzgvOSwgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG5hYmJyW3RpdGxlXSB7XG5cdGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCAzKywgU2FmYXJpIDQvNSwgYW5kIENocm9tZS5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG5kZm4ge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDYvNy84LzkuXG5tYXJrIHtcblx0YmFja2dyb3VuZDogI2ZmMDtcblx0Y29sb3I6ICMwMDA7XG59XG5cbi8vIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG5wLFxucHJlIHtcblx0bWFyZ2luOiAxZW0gMDtcbn1cblxuLy8gQ29ycmVjdHMgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFIDYsIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNlcmlmO1xuXHRfZm9udC1mYW1pbHk6ICdjb3VyaWVyIG5ldycsIG1vbm9zcGFjZTtcblx0Zm9udC1zaXplOiAxZW07XG59XG5cbi8vIEltcHJvdmVzIHJlYWRhYmlsaXR5IG9mIHByZS1mb3JtYXR0ZWQgdGV4dCBpbiBhbGwgYnJvd3NlcnMuXG5wcmUge1xuXHR3aGl0ZS1zcGFjZTogcHJlO1xuXHR3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLy8gQWRkcmVzc2VzIENTUyBxdW90ZXMgbm90IHN1cHBvcnRlZCBpbiBJRSA2LzcuXG5xIHtcblx0cXVvdGVzOiBub25lO1xufVxuXG4vLyBBZGRyZXNzZXMgYHF1b3Rlc2AgcHJvcGVydHkgbm90IHN1cHBvcnRlZCBpbiBTYWZhcmkgNC5cbnE6YmVmb3JlLFxucTphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRjb250ZW50OiBub25lO1xufVxuXG4vLyBBZGRyZXNzZXMgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuc21hbGwge1xuXHRmb250LXNpemU6IDgwJTtcbn1cblxuLy8gUHJldmVudHMgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG5cdHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuXHRib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuIFxuZGwsXG5tZW51LFxub2wsXG51bCB7XG5cdG1hcmdpbjogMWVtIDA7XG59XG5cbmRkIHtcblx0bWFyZ2luOiAwIDAgMCA0MHB4O1xufVxuXG4vLyBBZGRyZXNzZXMgcGFkZGluZ3Mgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cbm1lbnUsXG5vbCxcbnVsIHtcblx0cGFkZGluZzogMCAwIDAgNDBweDtcbn1cblxuLy8gQ29ycmVjdHMgbGlzdCBpbWFnZXMgaGFuZGxlZCBpbmNvcnJlY3RseSBpbiBJRSA3LlxubmF2IHtcblx0dWwsIG9sIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cbn1cblxuXG4vLyAxLiBSZW1vdmVzIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4vLyAyLiBJbXByb3ZlcyBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFIDcuIFxuaW1nIHtcblx0Ym9yZGVyOiAwOyAvKiAxICovXG5cdC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cbn1cblxuLy8gQ29ycmVjdHMgb3ZlcmZsb3cgZGlzcGxheWVkIG9kZGx5IGluIElFIDkuXG5zdmc6bm90KDpyb290KSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLy8gQWRkcmVzc2VzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA2LzcvOC85LCBTYWZhcmkgNSwgYW5kIE9wZXJhIDExLlxuZmlndXJlIHtcblx0bWFyZ2luOiAwO1xufVxuXG5cbi8vIENvcnJlY3RzIG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuZm9ybSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuZmllbGRzZXQge1xuXHRib3JkZXI6IDA7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbn1cblxuXG4vLyAxLiBDb3JyZWN0cyBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDYvNy84LzkuXG4vLyAyLiBDb3JyZWN0cyB0ZXh0IG5vdCB3cmFwcGluZyBpbiBGaXJlZm94IDMuXG4vLyAzLiBDb3JyZWN0cyBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cbmxlZ2VuZCB7XG5cdGJvcmRlcjogMDsgLyogMSAqL1xuXHRwYWRkaW5nOiAwO1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAyICovXG5cdCptYXJnaW4tbGVmdDogLTdweDsgLyogMyAqL1xufVxuXG4vLyAxLiBDb3JyZWN0cyBmb250IHNpemUgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LCBGaXJlZm94IDMrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbi8vIDMuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cblx0bWFyZ2luOiAwOyAvKiAyICovXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMyAqL1xuXHQqdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMyAqL1xufVxuXG4vLyBBZGRyZXNzZXMgRmlyZWZveCAzKyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW4gdGhlIFVBIHN0eWxlc2hlZXQuXG5idXR0b24sXG5pbnB1dCB7XG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cblxuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4vLyAyLiBDb3JyZWN0cyBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZXMgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vIDQuIFJlbW92ZXMgaW5uZXIgc3BhY2luZyBpbiBJRSA3IHdpdGhvdXQgYWZmZWN0aW5nIG5vcm1hbCB0ZXh0IGlucHV0cy5cbi8vIFx0ICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cblx0Km92ZXJmbG93OiB2aXNpYmxlOyAgLyogNCAqL1xufVxuXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuYnV0dG9uW2Rpc2FibGVkXSxcbmlucHV0W2Rpc2FibGVkXSB7XG5cdGN1cnNvcjogZGVmYXVsdDtcbn1cblxuXG4vLyAxLiBBZGRyZXNzZXMgYm94IHNpemluZyBzZXQgdG8gY29udGVudC1ib3ggaW4gSUUgOC85LlxuLy8gMi4gUmVtb3ZlcyBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkuXG4vLyAzLiBSZW1vdmVzIGV4Y2VzcyBwYWRkaW5nIGluIElFIDcuXG4vLyAgICBLbm93biBpc3N1ZTogZXhjZXNzIHBhZGRpbmcgcmVtYWlucyBpbiBJRSA2LlxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG5cdCpoZWlnaHQ6IDEzcHg7IC8qIDMgKi9cblx0KndpZHRoOiAxM3B4OyAvKiAzICovXG59XG5cblxuLy8gMS4gQWRkcmVzc2VzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzc2VzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWUgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4vLyAgICAoUmVtb3ZlZCB0aGlzIGFzIHdlIHdhbnQgaXQgdG8gYmUgYm9yZGVyLWJveClcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xufVxuXG4vLyBSZW1vdmVzIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSA1IGFuZCBDaHJvbWUgb24gT1MgWC5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmVzIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDMrLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gUmVtb3ZlcyBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA2LzcvOC85LlxuLy8gMi4gSW1wcm92ZXMgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG50ZXh0YXJlYSB7XG5cdG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7IC8qIDIgKi9cblx0cmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG50YWJsZSB7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdGJvcmRlci1zcGFjaW5nOiAwO1xufVxudGQge1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuIiwiLypcbiMgQmFzZSBzdHlsZXM6IG9waW5pb25hdGVkIGRlZmF1bHRzIChfYmFzZSlcbiovXG5cblxuaHRtbCxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRjb2xvcjogJGNvbG91ci1iYXNlO1xufVxuXG5ib2R5LnNpdGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0Zm9udC1mYW1pbHk6ICRmb250LWJhc2U7XG5cdGZvbnQtc2l6ZTogZW0oJGZvbnQtc2l6ZSwgMTYpO1xuXHRsaW5lLWhlaWdodDogMS40O1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIFJlbW92ZSB0ZXh0LXNoYWRvdyBpbiBzZWxlY3Rpb24gaGlnaGxpZ2h0OiBoNWJwLmNvbS9pXG4vLyBUaGVzZSBzZWxlY3Rpb24gZGVjbGFyYXRpb25zIGhhdmUgdG8gYmUgc2VwYXJhdGUuXG4vLyBDdXN0b21pemUgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gbWF0Y2ggeW91ciBkZXNpZ24uXG46Oi1tb3otc2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogI2IzZDRmYztcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogI2IzZDRmYztcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIEEgYmV0dGVyIGxvb2tpbmcgZGVmYXVsdCBob3Jpem9udGFsIHJ1bGVcbmhyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMXB4O1xuXHRib3JkZXI6IDA7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXHRtYXJnaW46IDFlbSAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5cbi8vIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gaW1hZ2VzIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnM6IGg1YnAuY29tL2kvNDQwXG5pbWcge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBSZW1vdmUgZGVmYXVsdCBmaWVsZHNldCBzdHlsZXMuXG5maWVsZHNldCB7XG5cdGJvcmRlcjogMDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogQWxsb3cgb25seSB2ZXJ0aWNhbCByZXNpemluZyBvZiB0ZXh0YXJlYXMuXG4gKi9cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKlxuICogVGV4dCBSZXNldFxuICovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0Zm9udC1mYW1pbHk6ICRmb250LWhlYWRlcjtcblx0bWFyZ2luOiAwIDAgMC44ZW07XG59XG5cbmgxLFxuLmgxIHtcblx0Zm9udC1zaXplOiBlbSgzOCk7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5oMiB7XG5cdGZvbnQtc2l6ZToxLjNlbTtcbn1cbmgzIHtcblx0Zm9udC1zaXplOjEuMmVtO1xufVxucCB7IG1hcmdpbjogMCAwIDFlbTsgfVxuXG4vKlxuICogTGlua3NcbiAqL1xuYSB7XG5cdGNvbG9yOiAkY29sb3VyLWxpbms7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmhvdmVyIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0fVxufVxuXG5cbi8qIFRleHQgQWxpZ25tZW50ICovXG4uanVzdGlmeWxlZnQgXHR7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi5qdXN0aWZ5cmlnaHQgXHR7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4uanVzdGlmeWZ1bGwgXHR7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbi5qdXN0aWZ5Y2VudHJlIFx0eyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDaHJvbWUgRnJhbWUgcHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hyb21lZnJhbWUge1xuXHRtYXJnaW46IDAuMmVtIDA7XG5cdGJhY2tncm91bmQ6ICNjY2M7XG5cdGNvbG9yOiAjMDAwO1xuXHRwYWRkaW5nOiAwLjJlbSAwO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWxwZXIgY2xhc3Nlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEltYWdlIHJlcGxhY2VtZW50XG4gKi9cblxuLmlyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LyogSUUgNi83IGZhbGxiYWNrICovXG5cdCp0ZXh0LWluZGVudDogLTk5OTlweDtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cbn1cblxuLypcbiAqIEhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4gKi9cblxuLmhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5cbi5oaWRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAqIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW5yZWFkZXJzOiBoNWJwLmNvbS92XG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuIHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNhYmxlXG4gKiB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOiBoNWJwLmNvbS9wXG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcblx0Y2xpcDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRwb3NpdGlvbjogc3RhdGljO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLypcbiAqIEhpZGUgdmlzdWFsbHkgYW5kIGZyb20gc2NyZWVucmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICovXG5cbi5pbnZpc2libGUge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59Iiwi77u/LypcclxuIyMgIE9iamVjdCBzdHlsZXMgKF9vYmplY3RzKVxyXG5cclxuIyMjIEltYWdlc1xyXG4qL1xyXG5pbWcge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuXHQub2xkaWUgJiB7IG1heC13aWR0aDogbm9uZTsgfVxyXG5cclxuXHQmLnJpZ2h0IHtcclxuXHRcdGZsb2F0OiByaWdodDtcclxuXHRcdG1hcmdpbjogMCAwIDE2cHggMTZweDtcclxuXHR9XHJcblx0Ji5sZWZ0IHtcclxuXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0bWFyZ2luOiAwIDE2cHggMTZweCAwO1xyXG5cdH1cclxuXHJcblx0JltzdHlsZSo9XCJsZWZ0XCJdIHtcclxuXHRcdG1hcmdpbjogMCAxNnB4IDE2cHggMDtcclxuXHR9XHJcblx0JltzdHlsZSo9XCJyaWdodFwiXSB7XHJcblx0XHRtYXJnaW46IDAgMCAxNnB4IDE2cHg7XHJcblx0fVxyXG59XHJcblxyXG4uaW1nLW1hcCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdGEge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tIEZpZ3VyZXMvQ2FwdGlvbnMgLS0tLS0gLy9cclxuXHJcbmZpZ3VyZSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkY29sb3VyLWhpZ2hsaWdodDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0ZmlnY2FwdGlvbiB7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRjb2xvcjogIzk5OTtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTIpO1xyXG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0XHRwYWRkaW5nOiA2cHggMDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0LmZpZy1pbWcge1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG59XHJcblxyXG4uZmlnLWxlZnQge1xyXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxZW07XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDFlbTtcclxuXHR9XHJcbn1cclxuLmZpZy1yaWdodCB7XHJcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XHJcblx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxZW07XHJcblx0XHRtYXJnaW4tbGVmdDogMWVtO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tIEJ1dHRvbnMgLS0tLS0gLy9cclxuXHJcbi5idXR0b24sXHJcbi5idG4tcHJpbWFyeSxcclxuLmJ0bi1kZWZhdWx0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xyXG5cdGZvbnQtc2l6ZTogMWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0cGFkZGluZzogLjVlbSAxZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAuM3MgbGluZWFyKTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG91ci1oaWdobGlnaHQsIDIwJSk7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHR9XHJcblxyXG5cdCYubGFyZ2Uge1xyXG5cdFx0Zm9udC1zaXplOiAxLjVlbTtcclxuXHR9XHJcblxyXG5cdCYuYWx0IHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItYWx0O1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG91ci1hbHQsIDIwJSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmdyZXkge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1ncmV5O1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG91ci1ncmV5LCAyMCUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5sb2FkaW5nIHtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvYWpheC1sb2FkZXItcGluay5naWYpO1xyXG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDEycHggY2VudGVyO1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAyZW07XHJcblx0fVxyXG59XHJcblxyXG4ubG5rQmxvY2sge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kOiAkY29sb3VyLXBhbGU7XHJcblx0Ym9yZGVyLWxlZnQtY29sb3I6ICRjb2xvdXItcGFsZTtcclxuXHRjb2xvcjojRkZGO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0bGluZS1oZWlnaHQ6MjtcclxuXHRoZWlnaHQ6MmVtO1xyXG5cdHBhZGRpbmc6MCAuNzVlbTtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuXHRpbnB1dCB7XHJcblx0XHRiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyOjA7XHJcblx0XHRjb2xvcjogaW5oZXJpdDtcclxuXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkZXI7XHJcblx0XHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxuXHQmLmJsdWUge1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQ7XHJcblx0XHRib3JkZXItbGVmdC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XHJcblx0fVxyXG5cdCYud2hpdGUge1xyXG5cdFx0YmFja2dyb3VuZDogI0ZGRjtcclxuXHRcdGJvcmRlci1sZWZ0LWNvbG9yOiNGRkY7XHJcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3VyLWJhc2U7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYucmVkIHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItYWx0O1xyXG5cdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICRjb2xvdXItYWx0O1xyXG5cdH1cclxuXHQmLm5vcm1hbENhc2Uge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0fVxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Y29sb3I6I0ZGRjtcclxuXHR9XHJcbn1cclxuaW5wdXQubG5rQmxvY2sge1xyXG5cdGJvcmRlci13aWR0aDogMDtcclxuXHRoZWlnaHQ6IGVtKDI2KTtcclxuXHRsaW5lLWhlaWdodDogbGgoMjYpO1xyXG59XHJcblxyXG4uc2lnbnBvc3Qge1xyXG5cdEBleHRlbmQgLmxua0Jsb2NrO1xyXG5cdG1hcmdpbi1yaWdodDoxZW07XHJcblxyXG5cdCY6YWZ0ZXIsXHJcblx0LmFmdGVyIHtcclxuXHRcdGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlci1sZWZ0LWNvbG9yOiBpbmhlcml0O1xyXG5cdFx0Ym9yZGVyLXN0eWxlOnNvbGlkO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOjFlbSAwIDFlbSAxZW07XHJcblx0XHRjb250ZW50OlwiXCI7XHJcblx0XHRoZWlnaHQ6MDtcclxuXHRcdG92ZXJmbG93OmhpZGRlbjtcclxuXHRcdHBhZGRpbmctcmlnaHQ6MDtcclxuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0cmlnaHQ6LTFlbTtcclxuXHRcdHRvcDowO1xyXG5cdFx0d2lkdGg6MDtcclxuXHR9XHJcblxyXG5cdCYucmV2ZXJzZSB7XHJcblx0XHRib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvdXItcGFsZTtcclxuXHRcdG1hcmdpbi1sZWZ0OjFlbTtcclxuXHRcdG1hcmdpbi1yaWdodDowO1xyXG5cclxuXHRcdCYuYmx1ZSB7XHJcblx0XHRcdGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XHJcblx0XHR9XHJcblx0XHQmLnJlZCB7XHJcblx0XHRcdGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG91ci1hbHQ7XHJcblx0XHR9XHJcblx0XHQmLndoaXRlIHtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0LWNvbG9yOiNGRkY7XHJcblx0XHR9XHJcblx0XHQmOmFmdGVyLFxyXG5cdFx0LmFmdGVyIHtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0LWNvbG9yOmluaGVyaXQ7XHJcblx0XHRcdGJvcmRlci13aWR0aDoxZW0gMWVtIDFlbSAwO1xyXG5cdFx0XHRsZWZ0Oi0xZW07XHJcblx0XHRcdHJpZ2h0OjA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0gUHJpbnQgLS0tLS0gLy9cclxuLnByaW50IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vLyAtLS0tLSBMaW5rcyAtLS0tLSAvL1xyXG5cclxuLmxuayB7ICB9XHJcblxyXG4vLyAtLS0tLSBQYWdpbmF0aW9uIC0tLS0tIC8vXHJcblxyXG4ucGFnaW5hdGlvbiB7XHJcblx0QGV4dGVuZCAlbGlzdC1yZXNldDtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcblx0bGkge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lO1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAzcHg7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAzcHg7XHJcblx0fVxyXG5cclxuXHQuYWN0aXZlIHtcclxuXHRcdGEge1xyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0Y29udGVudDogJ1snO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICddJztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8gLS0tLS0gVmlkZW8gLS0tLS0gLy9cclxuXHJcbi52aWRlby1lbWJlZC1mcmFtZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zeXN0ZW0vYXNzZXRzL2ltYWdlcy9hamF4LWxvYWRlci5naWYpO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvLyBOZXdcclxuXHRwYWRkaW5nLWJvdHRvbTogNjIuNSU7IC8vIE9sZFxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0aWZyYW1lIHtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tIE92ZXJsYXlzIC0tLS0tIC8vXHJcbi5vdmVybGF5IHtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoL3NpdGUvaW1hZ2VzL2JsYWNrLTUwLnBuZyk7XHJcblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRsZWZ0OiAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4zcyBsaW5lYXIpO1xyXG5cclxuXHQmLmhpZGUge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdCYuc2hvdyB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG4ub3ZlcmxheS1ib3gge1xyXG5cdGJhY2tncm91bmQ6ICNGRkY7XHJcblx0bGVmdDogMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAuM3MgbGluZWFyKTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR6LWluZGV4OiAxMDE7XHJcblxyXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IC0yNTBweDtcclxuXHRcdHdpZHRoOiA1MDBweDtcclxuXHR9XHJcblxyXG5cdCYuaGlkZSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0Ji5zaG93IHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cclxuXHQuY2xvc2Uge1xyXG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiA1cHg7XHJcblx0XHR0b3A6NXB4O1xyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG4vLyAtLS0tLSBPdmVybGF5cyAtLS0tLSAvL1xyXG5cclxuLmNvb2tpZSB7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvdXItYmFzZTtcclxuXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCAuM3MgbGluZWFyKTtcclxuXHJcblx0JixcclxuXHRhIHtcclxuXHRcdGNvbG9yOiAjRkZGO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxuXHJcblx0LmlubmVyIHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3VyLWJhc2U7XHJcblx0fVxyXG5cclxuXHQubG5rLWFjY2VwdC1jb29raWVzIHtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdH1cclxuXHJcblx0Ji5zaG93IHtcclxuXHRcdGhlaWdodDogMzJweDtcclxuXHR9XHJcblx0Ji5oaWRlIHtcclxuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vLyAtLS0tLSBJbnB1dHMgLS0tLS0gLy9cclxudGV4dGFyZWEsXHJcbnNlbGVjdCxcclxuW3R5cGU9XCJ0ZXh0XCJdLFxyXG5bdHlwZT1cInBhc3N3b3JkXCJdLFxyXG5bdHlwZT1cImRhdGV0aW1lXCJdLFxyXG5bdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxyXG5bdHlwZT1cImRhdGVcIl0sXHJcblt0eXBlPVwibW9udGhcIl0sXHJcblt0eXBlPVwidGltZVwiXSxcclxuW3R5cGU9XCJ3ZWVrXCJdLFxyXG5bdHlwZT1cIm51bWJlclwiXSxcclxuW3R5cGU9XCJlbWFpbFwiXSxcclxuW3R5cGU9XCJ1cmxcIl0sXHJcblt0eXBlPVwic2VhcmNoXCJdLFxyXG5bdHlwZT1cInRlbFwiXSxcclxuW3R5cGU9XCJjb2xvclwiXSxcclxuW3R5cGU9XCJpbnB1dFwiXSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1vdXRsaW5lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0aGVpZ2h0OiAyZW07XHJcblx0bGluZS1oZWlnaHQ6IDI7XHJcblx0cGFkZGluZzogMCA2cHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxudGV4dGFyZWEge1xyXG5cdGhlaWdodDogYXV0bztcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuaW5wdXRbcmVhZG9ubHldIHtcclxuXHRiYWNrZ3JvdW5kOiAjYzBjMGMxO1xyXG59XHJcbnNlbGVjdCB7XHJcblx0cGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLmNoZWNrYm94LFxyXG4ucmFkaW9idXR0b24ge1xyXG5cdGxhYmVsIHtcclxuXHRcdG1hcmdpbi1sZWZ0OiAzcHg7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdH1cclxuXHRpbnB1dCB7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6ICRjb2xvdXItYmFzZTtcclxufVxyXG5cclxuLy8gLS0tLS0gTmljZSBTZWxlY3QgLS0tLS0gLy9cclxuLm5pY2VzZWxlY3Qtd3JhcHBlciB7XHJcblx0YmFja2dyb3VuZDogI0ZGRjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGhlaWdodDogZW0oMzApO1xyXG5cdGxpbmUtaGVpZ2h0OiBsaCgyOCk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwYWRkaW5nOiAwIDEwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDE7XHJcblxyXG5cdCYuZm9jdXMsXHJcblx0Jjpob3ZlciB7IGJvcmRlcjogMXB4IHNvbGlkICMzMzM7IH0gLyogVGhpcyBpcyBhcHBsaWVkIHdoZW4gdGhlIHVzZXIgdGFicyB0byBmb2N1cyBvciBob3ZlcnMgb24gYSBuaWNlIHNlbGVjdCBlbGVtZW50ICovXHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Ym9yZGVyLXRvcDogNXB4IHNvbGlkICMwMDA7XHJcblx0XHRib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRjb250ZW50OiBcIl5cIjtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0aGVpZ2h0OiAwO1xyXG5cdFx0bWFyZ2luLXRvcDogLTNweDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAxZW07XHJcblx0XHR0ZXh0LWluZGVudDogLTk5OTk5ZW07XHJcblx0XHR0b3A6IDUwJTtcclxuXHRcdHdpZHRoOiAwO1xyXG5cdFx0ei1pbmRleDogNTtcclxuXHR9IC8qIENyZWF0ZXMgdGhlIGFycm93IGFuZCBwb3NpdGlvbnMgaXQgdG8gdGhlIHJpZ2h0ICovXHJcblxyXG5cdC5uaWNlc2VsZWN0LXRleHQgeyBkaXNwbGF5OiBibG9jazsgfSAvKiBNYWtlIHN1cmUgdGhlIGxpbmUtaGVpZ2h0IG1hdGNoZXMgdGhlIGhlaWdodCBvZiAubmljZVNlbGVjdCBpbmNsdWRpbmcgcGFkZGluZyAqL1xyXG5cclxuXHRzZWxlY3Qge1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgI2VlZTtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMCk7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHRvcDogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0ei1pbmRleDogMTA7XHJcblx0fSAvKiBUaGUgaGVpZ2h0IG11c3QgbWF0Y2ggdGhlIG92ZXJhbGwgaGVpZ2h0IG9mIC5uaWNlU2VsZWN0IGluY2x1ZGluZyBwYWRkaW5nICovXHJcbn1cclxuXHJcblxyXG4vLyAtLS0tLSBGb3JtcyAtLS0tLSAvL1xyXG4uZm9ybSB7XHJcblx0LnJlcSB7XHJcblx0XHRjb2xvcjogI0YwMDtcclxuXHR9XHJcblxyXG5cdC5lcnJvciB7XHJcblx0XHRjb2xvcjogI0YwMDtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTEpO1xyXG5cdH1cclxufVxyXG5cclxuLmZvcm0taXRlbSB7XHJcblx0QGV4dGVuZCAlY2xlYXJmaXg7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcblx0bGFiZWwge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG5cclxuXHQuaW5wdXQge1xyXG5cclxuXHR9XHJcbn1cclxuXHJcbi5mb3JtLWJ1dHRvbnMge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi5mb3JtLWVycm9ycyB7XHJcblx0YmFja2dyb3VuZDogI0ZFRTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjRjAwO1xyXG5cdGNvbG9yOiAjRjAwO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblxyXG5cdDpsYXN0LWNoaWxkIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0gQWxlcnRzIC0tLS0tIC8vXHJcbiVhbGVydCB7XHJcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRib3JkZXItd2lkdGg6IDFweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblxyXG5cdCoge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHJcblx0KiArICoge1xyXG5cdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHR9XHJcbn1cclxuLmFsZXJ0LWVycm9yIHtcclxuXHRAZXh0ZW5kICVhbGVydDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkVFO1xyXG5cdGJvcmRlci1jb2xvcjogI0YwMDtcclxuXHRjb2xvcjogI0YwMDtcclxufVxyXG4uYWxlcnQtd2FybmluZyB7XHJcblx0QGV4dGVuZCAlYWxlcnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRTtcclxuXHRib3JkZXItY29sb3I6ICNDOTA7XHJcblx0Y29sb3I6ICNDOTA7XHJcbn1cclxuLmFsZXJ0LXN1Y2Nlc3Mge1xyXG5cdEBleHRlbmQgJWFsZXJ0O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNFRkU7XHJcblx0Ym9yZGVyLWNvbG9yOiAjMDkwO1xyXG5cdGNvbG9yOiAjMDkwO1xyXG59XHJcblxyXG4vLyAtLS0tLSBDYXJvdXNlbCAtLS0tLSAvL1xyXG4uY2Fyb3VzZWwtd3JhcCB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdC5jYXJvdXNlbCB7XHJcblx0XHRAZXh0ZW5kICVsaXN0LXJlc2V0O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlOyB9XHJcblxyXG5cdC5jYXJvdXNlbC1pdGVtIHsgZmxvYXQ6IGxlZnQ7IH1cclxufVxyXG5cclxuXHJcbi8vIC0tLS0tIEJpZyBUYXJnZXQgLS0tLS0gLy9cclxuLmhvdmVyIHsgY3Vyc29yOiBwb2ludGVyOyB9XHJcblxyXG4vLyAtLS0tLSBUZW1wbGF0ZXMgLS0tLS0gLy9cclxuXHJcblxyXG4vLyAtLS0tLSBFZGl0b3IgU3R5bGVzIC0tLS0tIC8vXHJcblxyXG4uc21hbGwgeyBmb250LXNpemU6IGVtKDkpOyB9XHJcbi54c21hbGwgeyBmb250LXNpemU6IGVtKDgpOyB9XHJcbi5sYXJnZSB7IGZvbnQtc2l6ZTogZW0oMTQpOyB9XHJcbi54bGFyZ2UgeyBmb250LXNpemU6IGVtKDE2KTsgfVxyXG5cclxuXHJcbi8vIC0tLS0tIEZvcm1zIC0tLS0tIC8vXHJcblxyXG5bY2xhc3NePWZvcm0tXSB7XHJcblxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0gaUZyYW1lcyAtLS0tLSAvL1xyXG5cclxuaWZyYW1lIHtcclxuXHJcbn1cclxuXHJcblxyXG4vLyAtLS0tLSBUYWJsZXMgLS0tLS0gLy9cclxuXHJcbnRhYmxlIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5ndC1pZTkgLnRibC1tb2JpbGUge1xyXG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpe1xyXG5cdFx0JiwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdHIsIHRkIHsgZGlzcGxheTogYmxvY2s7IH1cclxuXHRcdHRoZWFkLCB0aCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHR9XHJcbn1cclxuXHJcbi50YmwtbW9iaWxlLWF0dHIge1xyXG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpe1xyXG5cdFx0dHIge1xyXG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHRcdHRkIHtcclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xyXG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xyXG5cdFx0XHRcdGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi50YWJsZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblx0dGQsXHJcblx0dGgge1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XHJcblx0fVxyXG5cclxuXHR0aCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcclxuXHRcdGNvbG9yOiAjRkZGO1xyXG5cdFx0cGFkZGluZzogNnB4IDA7XHJcblx0fVxyXG5cclxuXHR0ZCB7XHJcblx0XHRwYWRkaW5nOiA2cHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0gQmxvY2txdW90ZSAtLS0tLSAvL1xyXG5ibG9ja3F1b3RlIHtcclxuXHRiYWNrZ3JvdW5kOiAkY29sb3VyLWFsdDtcclxuXHRjb2xvcjogI0ZGRjtcclxuXHRwYWRkaW5nOiAxNXB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRmb250LXNpemU6IGVtKDExKTtcclxuXHJcblx0cCB7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvYmcvdG9wLWJhbm5lci1xdW90ZS5naWYpO1xyXG5cdFx0Ym90dG9tOiAtMjdweDtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRoZWlnaHQ6IDI3cHg7XHJcblx0XHRsZWZ0OiAycHg7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR3aWR0aDogNzFweDtcclxuXHR9XHJcbn1cclxuY2l0ZSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cGFkZGluZy10b3A6IDFlbTtcclxufVxyXG5cclxuXHJcbi8vIC0tLS0tIFRhYnMgLS0tLS0gLy9cclxuLnRhYnMge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG5cclxuXHQudGFiLWxpbmtzIHtcclxuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xyXG5cdFx0QGV4dGVuZCAlbGlzdC1yZXNldDtcclxuXHJcblx0XHRsaSB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvdXItYmFzZTtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LWhlYWRlcjtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMjtcclxuXHRcdFx0cGFkZGluZzogMCAxLjI1JTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdG1heC13aWR0aDozMCU7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIuMjUlO1xyXG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDIuMjUlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdGNvbG9yOiNGRkY7XHJcblx0XHR9XHJcblxyXG5cdFx0aDIge1xyXG5cdFx0XHRmb250LXNpemU6IDFlbTtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cdFx0LnRhYi1hY3RpdmUge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLXBhbGU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudGFiIHtcclxuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG91ci1wYWxlO1xyXG5cdFx0cGFkZGluZzogMWVtO1xyXG5cdH1cclxuXHJcblx0LnRhYi1pbm5lciB7XHJcblx0XHRiYWNrZ3JvdW5kOiAjRkZGO1xyXG5cdFx0cGFkZGluZzogMWVtO1xyXG5cdH1cclxuXHQudGFiLWxpbmtzIC50YWItZmVhdHVyZWQsXHJcblx0LnRhYi1mZWF0dXJlZCB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodDtcclxuXHR9XHJcblx0LnRhYi1saW5rcyAudGFiLW9mZmVycyxcclxuXHQudGFiLW9mZmVycyB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWFsdDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8vIC0tLS0tIFBsdWdpbiBTdHlsaW5nIC0tLS0tIC8vXHJcblxyXG4vKiBTaGFyZVRoaXMgKi9cclxuLnNoYXJldGhpcyB7XHJcblx0c3BhbiB7XHJcblx0XHRAaW5jbHVkZSB2ZW5kb3IoYm94LXNpemluZywgY29udGVudC1ib3gpO1xyXG5cdH1cclxufVxyXG5cclxuLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stc2xpZGVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XHJcblx0dG91Y2gtYWN0aW9uOiBub25lO1xyXG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcclxufVxyXG4uc2xpY2stbGlzdCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblxyXG5cdCY6Zm9jdXMge1xyXG5cdFx0b3V0bGluZTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5zbGljay1sb2FkaW5nICYge1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZiB1cmwoL3NpdGUvaW1hZ2VzL2FqYXgtbG9hZGVyLmdpZikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcblx0fVxyXG5cclxuXHQmLmRyYWdnaW5nIHtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdGN1cnNvcjogaGFuZDtcclxuXHR9XHJcbn1cclxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCxcclxuLnNsaWNrLXRyYWNrLFxyXG4uc2xpY2stc2xpZGUsXHJcbi5zbGljay1zbGlkZSBpbWcge1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcblx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcbi5zbGljay10cmFjayB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHpvb206IDE7XHJcblxyXG5cdCY6YmVmb3JlLFxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdGRpc3BsYXk6IHRhYmxlO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRjbGVhcjogYm90aDtcclxuXHR9XHJcblxyXG5cdC5zbGljay1sb2FkaW5nICYge1xyXG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdH1cclxufVxyXG4uc2xpY2stc2xpZGUge1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiAxcHg7XHJcblx0aW1nIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0Ji5zbGljay1sb2FkaW5nIHtcclxuXHRcdFx0YmFja2dyb3VuZDogd2hpdGUgdXJsKC9zaXRlL2ltYWdlcy9hamF4LWxvYWRlci5naWYpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblxyXG5cdCYuZHJhZ2dpbmcgaW1nIHtcclxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuXHJcblx0LnNsaWNrLWluaXRpYWxpemVkICYge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG5cclxuXHQuc2xpY2stbG9hZGluZyAmIHtcclxuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR9XHJcblxyXG5cdC5zbGljay12ZXJ0aWNhbCAmIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vKiBJY29ucyAqL1xyXG4gQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6XCJzbGlja1wiO1xyXG5cdHNyYzp1cmwoXCIvc2l0ZS9mb250cy9zbGljay5lb3RcIik7XHJcblx0c3JjOnVybChcIi9zaXRlL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi9zaXRlL2ZvbnRzL3NsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3NpdGUvZm9udHMvc2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvc2l0ZS9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBBcnJvd3MgKi9cclxuXHJcbi5zbGljay1wcmV2LFxyXG4uc2xpY2stbmV4dCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGhlaWdodDogMjBweDtcclxuXHR3aWR0aDogMjBweDtcclxuXHRsaW5lLWhlaWdodDogMDtcclxuXHRmb250LXNpemU6IDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR0b3A6IDUwJTtcclxuXHRtYXJnaW4tdG9wOiAtMTBweDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdCY6Zm9jdXMge1xyXG5cdFx0b3V0bGluZTogbm9uZTtcclxuXHR9XHJcblx0Ji5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG5cdFx0b3BhY2l0eTogMC4yNTtcclxuXHR9XHJcbn1cclxuLnNsaWNrLXByZXY6YmVmb3JlLCAuc2xpY2stbmV4dDpiZWZvcmUge1xyXG5cdGZvbnQtZmFtaWx5Olwic2xpY2tcIjtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdG9wYWNpdHk6IDAuODU7XHJcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG4uc2xpY2stcHJldiB7XHJcblx0bGVmdDogLTI1cHg7XHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDonXFw4NTkyJztcclxuXHR9XHJcbn1cclxuLnNsaWNrLW5leHQge1xyXG5cdHJpZ2h0OiAtMjVweDtcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OidcXDg1OTQnO1xyXG5cdH1cclxufVxyXG5cclxuLyogRG90cyAqL1xyXG5cclxuLnNsaWNrLXNsaWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG4uc2xpY2stZG90cyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJvdHRvbTogLTQ1cHg7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRsaSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRoZWlnaHQ6IDIwcHg7XHJcblx0XHR3aWR0aDogMjBweDtcclxuXHRcdG1hcmdpbjogMHB4IDVweDtcclxuXHRcdHBhZGRpbmc6IDBweDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0XHRidXR0b24ge1xyXG5cdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0aGVpZ2h0OiAyMHB4O1xyXG5cdFx0XHR3aWR0aDogMjBweDtcclxuXHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDA7XHJcblx0XHRcdGZvbnQtc2l6ZTogMDtcclxuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRwYWRkaW5nOiA1cHg7XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdFx0Jjpmb2N1cyB7XHJcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRjb250ZW50OidcXDgyMjYnO1xyXG5cdFx0XHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjBweDtcclxuXHRcdFx0XHRmb250LWZhbWlseTpcInNsaWNrXCI7XHJcblx0XHRcdFx0Zm9udC1zaXplOiA2cHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdGNvbG9yOiBibGFjaztcclxuXHRcdFx0XHRvcGFjaXR5OiAwLjI1O1xyXG5cdFx0XHRcdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cdFx0XHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdFx0Ji5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcblx0XHRcdG9wYWNpdHk6IDAuNzU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIGpRdWVyeSBsaWdodEJveCBwbHVnaW5cclxuICogVGhpcyBqUXVlcnkgcGx1Z2luIHdhcyBpbnNwaXJlZCBhbmQgYmFzZWQgb24gTGlnaHRib3ggMiBieSBMb2tlc2ggRGhha2FyIChodHRwOi8vd3d3Lmh1ZGRsZXRvZ2V0aGVyLmNvbS9wcm9qZWN0cy9saWdodGJveDIvKVxyXG4gKiBhbmQgYWRhcHRlZCB0byBtZSBmb3IgdXNlIGxpa2UgYSBwbHVnaW4gZnJvbSBqUXVlcnkuXHJcbiAqIEBuYW1lIGpxdWVyeS1saWdodGJveC0wLjUuY3NzXHJcbiAqIEBhdXRob3IgTGVhbmRybyBWaWVpcmEgUGluaG8gLSBodHRwOi8vbGVhbmRyb3ZpZWlyYS5jb21cclxuICogQHZlcnNpb24gMC41XHJcbiAqIEBkYXRlIEFwcmlsIDExLCAyMDA4XHJcbiAqIEBjYXRlZ29yeSBqUXVlcnkgcGx1Z2luXHJcbiAqIEBjb3B5cmlnaHQgKGMpIDIwMDggTGVhbmRybyBWaWVpcmEgUGluaG8gKGxlYW5kcm92aWVpcmEuY29tKVxyXG4gKiBAbGljZW5zZSBDQyBBdHRyaWJ1dGlvbi1ObyBEZXJpdmF0aXZlIFdvcmtzIDIuNSBCcmF6aWwgLSBodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1uZC8yLjUvYnIvZGVlZC5lbl9VU1xyXG4gKiBAZXhhbXBsZSBWaXNpdCBodHRwOi8vbGVhbmRyb3ZpZWlyYS5jb20vcHJvamVjdHMvanF1ZXJ5L2xpZ2h0Ym94LyBmb3IgbW9yZSBpbmZvcm1hdGlvbnMgYWJvdXQgdGhpcyBqUXVlcnkgcGx1Z2luXHJcbiAqL1xyXG5cclxuI2pxdWVyeS1vdmVybGF5IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0ei1pbmRleDogOTA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA1MDBweDtcclxufVxyXG5cclxuI2pxdWVyeS1saWdodGJveCB7XHJcblx0QGluY2x1ZGUgdmVuZG9yKGJveC1zaXppbmcsIGNvbnRlbnQtYm94KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ei1pbmRleDogMTAwO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRsaW5lLWhlaWdodDogMDtcclxuXHRhIGltZyB7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4jbGlnaHRib3gtY29udGFpbmVyLWltYWdlLWJveCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0d2lkdGg6IDI1MHB4O1xyXG5cdGhlaWdodDogMjUwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbiNsaWdodGJveC1jb250YWluZXItaW1hZ2Uge1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbiNsaWdodGJveC1sb2FkaW5nIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiA0MCU7XHJcblx0bGVmdDogMCU7XHJcblx0aGVpZ2h0OiAyNSU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4jbGlnaHRib3gtbmF2IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4jbGlnaHRib3gtY29udGFpbmVyLWltYWdlLWJveCA+ICNsaWdodGJveC1uYXYge1xyXG5cdGxlZnQ6IDA7XHJcbn1cclxuXHJcbiNsaWdodGJveC1uYXYgYSB7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuI2xpZ2h0Ym94LW5hdi1idG5QcmV2LCAjbGlnaHRib3gtbmF2LWJ0bk5leHQge1xyXG5cdHdpZHRoOiA0OSU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHpvb206IDE7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbiNsaWdodGJveC1uYXYtYnRuUHJldiB7XHJcblx0bGVmdDogMDtcclxuXHRmbG9hdDogbGVmdDtcclxufVxyXG5cclxuI2xpZ2h0Ym94LW5hdi1idG5OZXh0IHtcclxuXHRyaWdodDogMDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbiNsaWdodGJveC1jb250YWluZXItaW1hZ2UtZGF0YS1ib3gge1xyXG5cdGZvbnQ6IDEwcHggVmVyZGFuYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0bGluZS1oZWlnaHQ6IDEuNGVtO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDAgMTBweCAwO1xyXG59XHJcblxyXG4jbGlnaHRib3gtY29udGFpbmVyLWltYWdlLWRhdGEge1xyXG5cdHBhZGRpbmc6IDAgMTBweDtcclxuXHRjb2xvcjogIzY2NjtcclxuXHQjbGlnaHRib3gtaW1hZ2UtZGV0YWlscyB7XHJcblx0XHR3aWR0aDogNzAlO1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdH1cclxufVxyXG5cclxuI2xpZ2h0Ym94LWltYWdlLWRldGFpbHMtY2FwdGlvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbiNsaWdodGJveC1pbWFnZS1kZXRhaWxzLWN1cnJlbnROdW1iZXIge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGNsZWFyOiBsZWZ0O1xyXG5cdHBhZGRpbmctYm90dG9tOiAxLjBlbTtcclxufVxyXG5cclxuI2xpZ2h0Ym94LXNlY05hdi1idG5DbG9zZSB7XHJcblx0d2lkdGg6IDY2cHg7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdHBhZGRpbmctYm90dG9tOiAwLjdlbTtcclxufVxyXG5cclxuXHJcbi8vIGpHcm93bFxyXG5cclxuZGl2LmpHcm93bCB7XHJcblx0ei1pbmRleDogXHRcdFx0OTk5OTtcclxuXHRjb2xvcjogXHRcdFx0XHQjZmZmO1xyXG5cdGZvbnQtc2l6ZTogXHRcdFx0MTJweDtcclxufVxyXG5cclxuLyoqIFNwZWNpYWwgSUU2IFN0eWxlIFBvc2l0aW9uaW5nICoqL1xyXG5kaXYuaWU2IHtcclxuXHRwb3NpdGlvbjogXHRcdFx0YWJzb2x1dGU7XHJcbn1cclxuXHJcbmRpdi5pZTYudG9wLXJpZ2h0IHtcclxuXHRyaWdodDogXHRcdFx0XHRhdXRvO1xyXG5cdGJvdHRvbTogXHRcdFx0YXV0bztcclxuXHRsZWZ0OiBcdFx0XHRcdGV4cHJlc3Npb24oICggMCAtIGpHcm93bC5vZmZzZXRXaWR0aCArICggZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIDogZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aCApICsgKCBpZ25vcmVNZTIgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdCA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IDogZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0ICkgKSArICdweCcgKTtcclxuXHR0b3A6IFx0XHRcdFx0ZXhwcmVzc2lvbiggKCAwICsgKCBpZ25vcmVNZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIDogZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgKSApICsgJ3B4JyApO1xyXG59XHJcblxyXG5kaXYuaWU2LnRvcC1sZWZ0IHtcclxuXHRsZWZ0OiBcdFx0XHRcdGV4cHJlc3Npb24oICggMCArICggaWdub3JlTWUyID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQgPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdCA6IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCApICkgKyAncHgnICk7XHJcblx0dG9wOiBcdFx0XHRcdGV4cHJlc3Npb24oICggMCArICggaWdub3JlTWUgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCA6IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wICkgKSArICdweCcgKTtcclxufVxyXG5cclxuZGl2LmllNi5ib3R0b20tcmlnaHQge1xyXG5cdGxlZnQ6IFx0XHRcdFx0ZXhwcmVzc2lvbiggKCAwIC0gakdyb3dsLm9mZnNldFdpZHRoICsgKCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggOiBkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoICkgKyAoIGlnbm9yZU1lMiA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0ID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQgOiBkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQgKSApICsgJ3B4JyApO1xyXG5cdHRvcDogXHRcdFx0XHRleHByZXNzaW9uKCAoIDAgLSBqR3Jvd2wub2Zmc2V0SGVpZ2h0ICsgKCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0ID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCA6IGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0ICkgKyAoIGlnbm9yZU1lID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgOiBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCApICkgKyAncHgnICk7XHJcbn1cclxuXHJcbmRpdi5pZTYuYm90dG9tLWxlZnQge1xyXG5cdGxlZnQ6IFx0XHRcdFx0ZXhwcmVzc2lvbiggKCAwICsgKCBpZ25vcmVNZTIgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdCA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IDogZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0ICkgKSArICdweCcgKTtcclxuXHR0b3A6IFx0XHRcdFx0ZXhwcmVzc2lvbiggKCAwIC0gakdyb3dsLm9mZnNldEhlaWdodCArICggZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgOiBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCApICsgKCBpZ25vcmVNZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgPyBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIDogZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgKSApICsgJ3B4JyApO1xyXG59XHJcblxyXG5kaXYuaWU2LmNlbnRlciB7XHJcblx0bGVmdDogXHRcdFx0XHRleHByZXNzaW9uKCAoIDAgKyAoIGlnbm9yZU1lMiA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0ID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQgOiBkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQgKSApICsgJ3B4JyApO1xyXG5cdHRvcDogXHRcdFx0XHRleHByZXNzaW9uKCAoIDAgKyAoIGlnbm9yZU1lID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgOiBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCApICkgKyAncHgnICk7XHJcblx0d2lkdGg6IFx0XHRcdFx0MTAwJTtcclxufVxyXG5cclxuLyoqIE5vcm1hbCBTdHlsZSBQb3NpdGlvbnMgKiovXHJcbmRpdi5qR3Jvd2wge1xyXG5cdHBvc2l0aW9uOlx0XHRcdGFic29sdXRlO1xyXG59XHJcblxyXG5ib2R5ID4gZGl2LmpHcm93bCB7XHJcblx0cG9zaXRpb246XHRcdFx0Zml4ZWQ7XHJcbn1cclxuXHJcbmRpdi5qR3Jvd2wudG9wLWxlZnQge1xyXG5cdGxlZnQ6IFx0XHRcdFx0MHB4O1xyXG5cdHRvcDogXHRcdFx0XHQwcHg7XHJcbn1cclxuXHJcbmRpdi5qR3Jvd2wudG9wLXJpZ2h0IHtcclxuXHRyaWdodDogXHRcdFx0XHQwcHg7XHJcblx0dG9wOiBcdFx0XHRcdDBweDtcclxufVxyXG5cclxuZGl2LmpHcm93bC5ib3R0b20tbGVmdCB7XHJcblx0bGVmdDogXHRcdFx0XHQwcHg7XHJcblx0Ym90dG9tOlx0XHRcdFx0MHB4O1xyXG59XHJcblxyXG5kaXYuakdyb3dsLmJvdHRvbS1yaWdodCB7XHJcblx0cmlnaHQ6IFx0XHRcdFx0MHB4O1xyXG5cdGJvdHRvbTogXHRcdFx0MHB4O1xyXG59XHJcblxyXG5kaXYuakdyb3dsLmNlbnRlciB7XHJcblx0dG9wOiBcdFx0XHRcdDBweDtcclxuXHR3aWR0aDogXHRcdFx0XHQ1MCU7XHJcblx0bGVmdDogXHRcdFx0XHQyNSU7XHJcbn1cclxuXHJcbi8qKiBDcm9zcyBCcm93c2VyIFN0eWxpbmcgKiovXHJcbmRpdi5jZW50ZXIgZGl2LmpHcm93bC1ub3RpZmljYXRpb24sIGRpdi5jZW50ZXIgZGl2LmpHcm93bC1jbG9zZXIge1xyXG5cdG1hcmdpbi1sZWZ0OiBcdFx0YXV0bztcclxuXHRtYXJnaW4tcmlnaHQ6IFx0XHRhdXRvO1xyXG59XHJcblxyXG5kaXYuakdyb3dsIGRpdi5qR3Jvd2wtbm90aWZpY2F0aW9uLCBkaXYuakdyb3dsIGRpdi5qR3Jvd2wtY2xvc2VyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBcdFx0IzAwMDtcclxuXHRvcGFjaXR5OiBcdFx0XHRcdC44NTtcclxuXHQtbXMtZmlsdGVyOiBcdFx0XHRcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTg1KVwiOyBcclxuXHRmaWx0ZXI6IFx0XHRcdFx0cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9ODUpOyBcclxuXHR6b29tOiBcdFx0XHRcdFx0MTtcclxuXHR3aWR0aDogXHRcdFx0XHRcdDIzNXB4O1xyXG5cdHBhZGRpbmc6IFx0XHRcdFx0MTBweDtcclxuXHRtYXJnaW4tdG9wOiBcdFx0XHQ1cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogXHRcdFx0NXB4O1xyXG5cdGZvbnQtZmFtaWx5OiBcdFx0XHRUYWhvbWEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblx0Zm9udC1zaXplOiBcdFx0XHRcdDFlbTtcclxuXHR0ZXh0LWFsaWduOiBcdFx0XHRsZWZ0O1xyXG5cdGRpc3BsYXk6IFx0XHRcdFx0bm9uZTtcclxuXHQtbW96LWJvcmRlci1yYWRpdXM6IFx0NXB4O1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czpcdDVweDtcclxufVxyXG5cclxuZGl2LmpHcm93bCBkaXYuakdyb3dsLW5vdGlmaWNhdGlvbiB7XHJcblx0bWluLWhlaWdodDogXHRcdFx0NDBweDtcclxufVxyXG5cclxuZGl2LmpHcm93bCBkaXYuakdyb3dsLW5vdGlmaWNhdGlvbixcclxuZGl2LmpHcm93bCBkaXYuakdyb3dsLWNsb3NlciB7XHJcblx0bWFyZ2luOiBcdFx0XHRcdDEwcHg7XHJcbn1cclxuXHJcbmRpdi5qR3Jvd2wgZGl2LmpHcm93bC1ub3RpZmljYXRpb24gZGl2LmpHcm93bC1oZWFkZXIge1xyXG5cdGZvbnQtd2VpZ2h0OiBcdFx0XHRib2xkO1xyXG5cdGZvbnQtc2l6ZTpcdFx0XHRcdC44NWVtO1xyXG59XHJcblxyXG5kaXYuakdyb3dsIGRpdi5qR3Jvd2wtbm90aWZpY2F0aW9uIGRpdi5qR3Jvd2wtY2xvc2Uge1xyXG5cdHotaW5kZXg6XHRcdFx0XHQ5OTtcclxuXHRmbG9hdDogXHRcdFx0XHRcdHJpZ2h0O1xyXG5cdGZvbnQtd2VpZ2h0OiBcdFx0XHRib2xkO1xyXG5cdGZvbnQtc2l6ZTogXHRcdFx0XHQxZW07XHJcblx0Y3Vyc29yOlx0XHRcdFx0XHRwb2ludGVyO1xyXG59XHJcblxyXG5kaXYuakdyb3dsIGRpdi5qR3Jvd2wtY2xvc2VyIHtcclxuXHRwYWRkaW5nLXRvcDogXHRcdFx0NHB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiBcdFx0NHB4O1xyXG5cdGN1cnNvcjogXHRcdFx0XHRwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTpcdFx0XHRcdC45ZW07XHJcblx0Zm9udC13ZWlnaHQ6IFx0XHRcdGJvbGQ7XHJcblx0dGV4dC1hbGlnbjogXHRcdFx0Y2VudGVyO1xyXG59XHJcblxyXG4vKiogSGlkZSBqR3Jvd2wgd2hlbiBwcmludGluZyAqKi9cclxuQG1lZGlhIHByaW50IHtcclxuXHRkaXYuakdyb3dsIHtcclxuXHRcdGRpc3BsYXk6IFx0XHRcdG5vbmU7XHJcblx0fVxyXG59IiwiLnByb2R1Y3REZXRhaWxzIHtcbiAgLnZhdC1wcmljZSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gIH1cbn1cblxuLnByaWNlcyB7XG4gIC52YXQtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gIH1cbn0iLCLvu78vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgTGF5b3V0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qXG5cdD09PT09PT09PVxuXHRObyBTY3JpcHRcblx0PT09PT09PT09XG4qL1xuLnNpdGUtYWxlcnQge1xuXHRiYWNrZ3JvdW5kOiAjRkZGO1xuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgI0YwMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IGVtKDEyKTtcblx0bGVmdDogMDtcblx0cGFkZGluZzogNXB4IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dG9wOiAwO1xuXHR3aWR0aDoxMDAlO1xuXHR6LWluZGV4OiAxMDA7XG59XG4vKiBObyBTY3JpcHQgKi9cblxuLmZ1bGwge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4ud3JhcCB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXHRtYXJnaW4tbGVmdDogNSU7XG5cdG1hcmdpbi1yaWdodDogNSU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHdpZHRoOiA5MCU7XG5cblx0QGluY2x1ZGUgbWluKCRicmVha21heCkge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHR3aWR0aDogMTI4MHB4O1xuXHR9XG59XG5cbi5taWQge1xuXHRiYWNrZ3JvdW5kOiAjRkZGO1xuXHRtYXJnaW4tYm90dG9tOiAzZW07XG5cdG1pbi1oZWlnaHQ6IDM1MXB4O1xuXHRwYWRkaW5nOiAwIDAgMTBweDtcblx0d2lkdGg6IGF1dG87XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oJGJyZWFrbWF4KSB7XG5cdFx0d2lkdGg6IDEzMDBweDtcblx0fVxufVxuXG4ubGVmdC1jb2wge1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMXB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0d2lkdGg6IDI4JTtcblx0fVxuXG5cdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHR3aWR0aDogMjUlO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oJGJyZWFrbWF4KSB7XG5cdFx0d2lkdGg6IDIwJTtcblx0fVxuXG5cdGgyIHtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0Zm9udC1zaXplOiBlbSgyMCk7XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHR9XG5cdH1cblxuXHQuc2lnbnBvc3Qge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0bWFyZ2luLXRvcDogMWVtO1xuXHRcdHBhZGRpbmctbGVmdDogLjVlbTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXG5cdFx0LndmLWxvYWRpbmcgJixcblx0XHQud2YtaW5hY3RpdmUgJiB7XG5cdFx0XHRmb250LXNpemU6IDFlbTtcblx0XHR9XG5cdH1cbn1cblxuLm1haW4tY29sIHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDcyJTtcblx0fVxuXHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0d2lkdGg6IDc1JTtcblx0fVxuXG5cdEBpbmNsdWRlIG1pbigkYnJlYWttYXgpIHtcblx0XHR3aWR0aDogODAlO1xuXHR9XG59XG5cbi8vIE1vYmlsZSA0IENvbHVtbiBsYXlvdXQgLy9cbi5tb2JpbGUtY29sLTEge1xuXHR3aWR0aDogMjUlO1xufVxuLm1vYmlsZS1jb2wtMiB7XG5cdHdpZHRoOiA1MCU7XG59XG4ubW9iaWxlLWNvbC0zIHtcblx0d2lkdGg6IDc1JTtcbn1cbi5tb2JpbGUtY29sLTQge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLy8gVGFibGV0IDggQ29sdW1uIGxheW91dCAvL1xuLnRhYmxldC1jb2wtMSB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiAxMi41JTtcblx0fVxufVxuLnRhYmxldC1jb2wtMiB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiAyNSU7XG5cdH1cbn1cbi50YWJsZXQtY29sLTMge1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHR3aWR0aDogMzcuNSU7XG5cdH1cbn1cbi50YWJsZXQtY29sLTQge1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG59XG4udGFibGV0LWNvbC01IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDYyLjUlO1xuXHR9XG59XG4udGFibGV0LWNvbC02IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDc1JTtcblx0fVxufVxuLnRhYmxldC1jb2wtNyB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiA4Ny41JTtcblx0fVxufVxuLnRhYmxldC1jb2wtOCB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG5cbi8vIERlc2t0b3AgMTIgQ29sdW1uIGxheW91dCAvL1xuLmRlc2t0b3AtY29sLTEge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogOC4zMzMzJTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTIge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogMTYuNjY2NiU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC0zIHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDI1JTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTQge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogMzMuMzMzMyU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC01IHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDQxLjY2NjYlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtNiB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC03IHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDU4LjMzMzMlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtOCB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA2Ni42NjY2JTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTkge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogNzUlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtMTAge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogODMuMzMzMyU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC0xMSB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA5MS42NjY2JTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTEyIHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuXG4vLyBQbGFjZWhvbGRlcnNcbiVtb2JpbGUtb25seSB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuJXRhYmxldC1vbmx5IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuJWRlc2t0b3Atb25seSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuJW5vdC1kZXNrdG9wIHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4lbW9iaWxlLXRhYmxldC1pYiB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4ldGFibGV0LW9ubHktaWIge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuJWRlc2t0b3Atb25seS1pYiB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG59XG5cbi5tb2JpbGUtb25seSB7XG5cdEBleHRlbmQgJW1vYmlsZS1vbmx5O1xufVxuLnRhYmxldC1vbmx5IHtcblx0QGV4dGVuZCAldGFibGV0LW9ubHk7XG59XG4uZGVza3RvcC1vbmx5IHtcblx0QGV4dGVuZCAlZGVza3RvcC1vbmx5O1xufVxuXG5cbi5ub3QtZGVza3RvcCB7XG5cdEBleHRlbmQgJW5vdC1kZXNrdG9wO1xufVxuXG5cbi50YWJsZXQtb25seS1pYiB7XG5cdEBleHRlbmQgJXRhYmxldC1vbmx5LWliO1xufVxuLmRlc2t0b3Atb25seS1pYiB7XG5cdEBleHRlbmQgJWRlc2t0b3Atb25seS1pYjtcbn1cblxuXG5cbiV0YWJsZXQtdXAge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4lZGVza3RvcC11cCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi50YWJsZXQtdXAge1xuXHRAZXh0ZW5kICV0YWJsZXQtdXA7XG59XG5cbi5kZXNrdG9wLXVwIHtcblx0QGV4dGVuZCAlZGVza3RvcC11cDtcbn0iLCIvKlxuXHQ9PT09PT09XG5cdE1vZHVsZXNcblx0PT09PT09PVxuXG5cdE1vZHVsZSBsZXZlbCBDU1Mgc2hvdWxkIGJlIHBsYWNlZCBpbiB0aGlzIGZpbGUuXG5cdE1vZHVsZXMgYXJlIHNlbGYtY29udGFpbmVkIHNlY3Rpb25zIG9mIG1hcmt1cC5cblx0TW9kdWxlcyBjYW4gZXhpc3Qgd2l0aCBvdGhlciBtb2R1bGVzLlxuXHRNb2R1bGVzIGNhbiBvZnRlbiBpbmNsdWRlIG9iamVjdHMuXG5cblx0RVhBTVBMRVM6OlxuXG5cdFwiU2l0ZSBIZWFkZXJcIiB3b3VsZCBiZSBhIG1vZHVsZS5cblxuXHRcIlRvcCBOYXZpZ2F0aW9uXCIgbWF5IGV4aXN0IHdpdGhpbiB0aGUgXCJTaXRlIEhlYWRlclwiIG1hcmt1cCBidXQgaXQgaXMgY2FwYWJsZSBvZiBleGlzdGluZyBhcyBpdHMgb3duIG1vZHVsZSBhbmQgc28gc2hvdWxkIGJlIGRvbmUgc2VwYXJhdGVseS5cbiovXG5cblxuLypcblx0PT09PT09PT09PT09PT09XG5cdFNpdGUgQmFja2dyb3VuZFxuXHQ9PT09PT09PT09PT09PT1cbiovXG4uc2l0ZS1iYWNrZ3JvdW5kIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2JnL3RvcC1ibG9jay5wbmcpLCB1cmwoL3NpdGUvaW1hZ2VzL2JnL21lc2gucG5nKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05MHB4LCAwIDA7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14LCByZXBlYXQ7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oMTAwMHB4KSB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjFweCwgMCAwO1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKDEwMDBweCkge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLThweCwgMCAwO1xuXHR9XG59XG5cbi5zaXRlLXdyYXAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG59XG4vKiBTaXRlIEJhY2tncm91bmQgKi9cblxuXG4vKlxuXHQ9PT09PT09PT09PVxuXHRTaXRlIEhlYWRlclxuXHQ9PT09PT09PT09PVxuKi9cbi5oZWFkZXItc2l0ZSB7XG5cdGJhY2tncm91bmQ6I0ZGRjtcblx0bWFyZ2luLWJvdHRvbTogLjc1ZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ei1pbmRleDoyO1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxuXHQubG9nbyB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0d2lkdGg6IDMzLjMzMzMlO1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMzBweDtcblx0XHRcdC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHR9XG5cdH1cblxuXHQudGVsIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vcGhvbmUuZ2lmKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDExcHggMTFweDtcblx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGZvbnQtc2l6ZTogZW0oMjApO1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRjbGVhcjogcmlnaHQ7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tdG9wOiA2cHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAyMnB4IDIzcHg7XG5cdFx0XHRmb250LXNpemU6IGVtKDMwKTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6MzBweDtcblx0XHR9XG5cdH1cbn1cblxuLnRvcExpbmtzIHtcblx0bWFyZ2luOiAxNXB4IDAgMTJweCA1MCU7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi10b3A6IDEycHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTJweDtcblx0fVxuXG5cdC5sbmtCbG9jayxcblx0LnNpZ25wb3N0IHtcblx0XHRtYXJnaW4tbGVmdDo0cHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdH1cblx0fVxuXHQuYnV0dG9ucyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cblx0XHQubG5rQmxvY2ssXG5cdFx0LnNpZ25wb3N0IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQrICoge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2cHg7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQucmVnaXN0ZXIge1xuXHRcdGNvbG9yOiMwMDA7XG5cdFx0bWFyZ2luLWxlZnQ6NnB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG5cdFx0Zm9udC1zaXplOiBlbSgxMSk7XG5cdH1cblx0LmxvZ2dlZGluIHtcblx0XHRjb2xvcjogIzAwMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDFlbTtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0fVxufVxuXG4ucmV2aWV3LWFkZHJlc3MgcCB7XG5cdG1hcmdpbjogMDtcbn1cblxuLm1pbmlCYXNrZXQge1xuXHRiYWNrZ3JvdW5kOnVybCgvc2l0ZS9pbWFnZXMvaWNvbi9iYXNrZXQuZ2lmKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG5cdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0bGluZS1oZWlnaHQ6IDE4cHg7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdHBhZGRpbmctbGVmdDogMjhweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy1sZWZ0OiAzNnB4O1xuXHR9XG5cblx0YSB7XG5cdFx0Y29sb3I6ICRjb2xvdXItYmFzZTtcblx0fVxuXG5cdC5lbXB0eSxcblx0Lm5vdF9lbXB0eSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRjb250ZW50OiAnIHwnO1xuXHRcdH1cblx0fVxuXG5cdC5jb250ZW50cyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdH1cblx0fVxuXG5cdC5lbXB0eSB7fVxuXHQubm90X2VtcHR5IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmZ1bGwge1xuXHRcdHdpZHRoOiBhdXRvO1xuXG5cdFx0LmVtcHR5IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdC5ub3RfZW1wdHkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qIFNpdGUgSGVhZGVyICovXG5cblxuLy8gLmZ1bGwge1xuLy8gXHRAZXh0ZW5kICVjbGVhcmZpeDtcbi8vIFx0b3ZlcmZsb3c6IGhpZGRlbjtcbi8vIFx0cG9zaXRpb246cmVsYXRpdmU7XG4vLyBcdHotaW5kZXg6MjtcblxuLy8gXHQmLnRvcCB7XG4vLyBcdFx0YmFja2dyb3VuZDojRkZGO1xuLy8gXHRcdGhlaWdodDo1ODJweDtcbi8vIFx0XHRsZWZ0OjA7XG4vLyBcdFx0cG9zaXRpb246YWJzb2x1dGU7XG4vLyBcdFx0dG9wOjA7XG4vLyBcdFx0d2lkdGg6MTAwJTtcbi8vIFx0XHR6LWluZGV4OjE7XG4vLyBcdH1cbi8vIH1cblxuXG4vKlxuXHQ9PT09PT09PT09PVxuXHRTaXRlIEZvb3RlclxuXHQ9PT09PT09PT09PVxuKi9cbi5mb290ZXItc2l0ZSB7XG5cdGNvbG9yOiAjRkZGO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nLXRvcDozMHB4O1xuXG5cdGEge1xuXHRcdGNvbG9yOiNGRkY7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjojRkZGO1xuXHRcdH1cblx0fVxuXG5cdC50ZWwsXG5cdC5mYXgsXG5cdC5lbWFpbCB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCBjZW50ZXI7XG5cdFx0cGFkZGluZy1sZWZ0OjEuMjVlbTtcblx0fVxuXHQuY29sIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDI0cHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjRweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdHdpZHRoOiAzMy4zMzMzJTtcblx0XHR9XG5cblx0XHQrIHtcblx0XHRcdC5jb2wge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMnB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmNvbnRhY3Qge1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRmb250LXNpemU6IGVtKDE4KTtcblx0XHR9XG5cdH1cblx0LnRlbCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3Bob25lLXdoaXRlLnBuZyk7XG5cdH1cblx0LmZheCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3ByaW50LnBuZyk7XG5cdH1cblx0LmVtYWlsIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vbWFpbC5wbmcpO1xuXHR9XG59XG5cbi5mb290ZXItY29sdW1ucyB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXHRtYXJnaW4tbGVmdDogLTI0cHg7XG5cdG1hcmdpbi1yaWdodDogLTI0cHg7XG59XG5cbi5jb3B5cmlnaHQge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG91ci1iYXNlO1xuXHRjbGVhcjogYm90aDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0bWFyZ2luLXRvcDogMTJweDtcblx0cGFkZGluZzoxZW0gMCAzZW07XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxufVxuLyogU2l0ZSBGb290ZXIgKi9cblxuXG4vKlxuXHQ9PT09PT09PT09XG5cdE5hdmlnYXRpb25cblx0PT09PT09PT09PVxuKi9cbi5uYXYtbWFpbiB7XG5cdEBleHRlbmQgJXRhYmxldC11cDtcblx0Y2xlYXI6IGxlZnQ7XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcblxuXHQ+IHVsIHtcblx0XHQ+IGxpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHQrIGxpIHtcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblxuXHRcdFx0PiBhIHtcblx0XHRcdFx0cGFkZGluZzogNXB4IDA7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdFx0cGFkZGluZzogMCAxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHVsIHtcblx0XHR1bCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdFx0bGVmdDogLTk5OWVtO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRsaSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHQ+IHVsIHtcblx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC4zcyBsaW5lYXIpO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LmFjdGl2ZSB7XG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtcHJvZHVjdCB7XG5cdEBleHRlbmQgJXRhYmxldC11cDtcblx0YmFja2dyb3VuZDogJGNvbG91ci1iYXNlO1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogNHB4IDVweDtcblxuXHR1bCB7XG5cdFx0Y2xlYXI6IG5vbmU7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LWhlYWRlcjtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9XG5cdGxpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHQmOm50aC1jaGlsZCgxKSB7XG5cdFx0XHRhIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG91ci1hbHQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0YSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRhIHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLXBhbGU7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bGluZS1oZWlnaHQ6IDI7XG5cdFx0bWFyZ2luLXJpZ2h0OiAzcHg7XG5cdFx0cGFkZGluZzogMCA4cHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LXNpemU6IGVtKDE2KTtcblxuXHRcdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0XHRwYWRkaW5nOiAwIDEycHg7XG5cdFx0fVxuXHR9XG5cblx0LmFjdGl2ZSB7XG5cdFx0YSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWJhc2U7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtc2VsZWN0IHtcblx0QGV4dGVuZCAlbW9iaWxlLW9ubHk7XG5cblx0c2VsZWN0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4ubmF2LW1vYmlsZSB7XG5cdEBleHRlbmQgJW1vYmlsZS1vbmx5O1xuXHRjbGVhcjogYm90aDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHR1bCB7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oaGVpZ2h0IDAuM3MgbGluZWFyKTtcblxuXHRcdHVsIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRsaSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiA1cHg7XG5cdH1cblxuXHQub3Blbixcblx0Ji5vcGVuIHtcblx0XHQ+IHVsIHtcblx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRcdGhlaWdodDogYXV0bztcblxuXHRcdFx0KyB1bCB7XG5cdFx0XHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5hdi1tb2JpbGUtaGVhZGVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL25hdmljb24uc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5wYXJlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCIrXCI7XG5cdFx0XHRsaW5lLWhlaWdodDogMzBweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0fVxuXHRcdGEge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xuXHRcdH1cblxuXHRcdCYub3BlbiB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogXCItXCI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtc2lkZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdG1hcmdpbi1ib3R0b206IDI0cHg7XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHR1bCB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXG5cdGxpIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG5cdH1cblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IDVweCAwO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC4zcyk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHR9XG5cdH1cblxuXHQuYWN0aXZlIHtcblx0XHQ+IHtcblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnZpZXctbW9yZSB7XG5cblx0XHRkaXYge1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oaGVpZ2h0IDJzKTtcblx0XHR9XG5cblx0XHQ+IGEge1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtZm9vdGVyIHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG5cblx0bGkge1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0fVxuXG5cdFx0KyBsaSB7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI0ZGRjtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ3wnO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiA1cHggMDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cbn1cblxuLm5hdi1wcm9maWxlIHtcblx0bWFyZ2luOiA4cHggMDtcblxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0KyBsaSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0QGluY2x1ZGUgbWF4KDM1MHB4KSB7XG5cdFx0XHRcdHBhZGRpbmc6IDAuNWVtIDAuNzVlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLyogTmF2aWdhdGlvbiAqL1xuXG5cbi8qXG5cdD09PT09PVxuXHRTZWFyY2hcblx0PT09PT09XG4qL1xuLnNlYXJjaEJveCxcbi5tc2VhcmNoMiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdGZsb2F0OiByaWdodDtcblx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdG1hcmdpbjogMnB4IDJweCAwIDA7XG5cdHBhZGRpbmc6IDAgNnB4O1xuXG5cdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDNweDtcblx0XHRtYXJnaW4tdG9wOiA0cHg7XG5cdH1cblxuXHRbdHlwZT10ZXh0XSB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGZsb2F0OnJpZ2h0O1xuXHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdGhlaWdodDogMjhweDtcblx0XHRsaW5lLWhlaWdodDoxLjU7XG5cdFx0cGFkZGluZzo1cHg7XG5cdFx0d2lkdGg6MTQ2cHg7XG5cdH1cblxuXHRbdHlwZT1pbWFnZV0ge1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdH1cbn1cblxuLnByb2R1Y3Qtc2VhcmNoIHtcblx0YmFja2dyb3VuZDogJGNvbG91ci1wYWxlO1xuXHRjb2xvcjogI0ZGRjtcblx0cGFkZGluZzogLjY2NjZlbTtcblxuXHRoMiB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0bWFyZ2luLWJvdHRvbTouNGVtO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogLjhlbTtcblx0XHRmb250LXNpemU6IGVtKDExKTtcblx0fVxuXG5cdFt0eXBlPXRleHRdIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdGhlaWdodDogMmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAyO1xuXHRcdHBhZGRpbmc6IDAgNnB4O1xuXHRcdHdpZHRoOiAxMjRweDtcblx0fVxuXHRbdHlwZT1zdWJtaXRdIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2U7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdGhlaWdodDogMmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAyO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHdpZHRoOiAyOHB4O1xuXHR9XG5cblx0LnNlYXJjaEJveCB7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cGFkZGluZzogMDtcblx0fVxufVxuLyogU2VhcmNoICovXG5cblxuLypcblx0PT09PT09XG5cdEJhbm5lclxuXHQ9PT09PT1cbiovXG4uYmFubmVyLWZ1bGwge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuLmJhbm5lciB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXHRwYWRkaW5nLWJvdHRvbTogMzRweDtcblx0cGFkZGluZy10b3A6IDIwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBtaW4oMTA1NnB4KSB7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG5cblx0aDEsXG5cdGgyLFxuXHRoMyB7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LWJhc2U7XG5cdH1cblxuXHRpbWcge1xuXHRcdG1hcmdpbjogMDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHR9XG5cdGgxIHsgbWFyZ2luLWJvdHRvbTowOyBmb250LXNpemU6IGVtKDM1KSB9XG5cdGgyIHsgZm9udC1zaXplOiBlbSgyMCk7IG1hcmdpbi1ib3R0b206MWVtOyB9XG5cdHAgeyBmb250LXNpemU6IGVtKDE2KTsgfVxuXHRhIHsgY29sb3I6I0ZDMDsgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsgfVxuXG5cdC5pbWFnZS0xLFxuXHQuaW1hZ2UtMiB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LmNhcm91c2VsTWFzayB7XG5cdFx0bWFyZ2luLWJvdHRvbToxLjVlbTtcblxuXHRcdC5wYWdlciB7XG5cdFx0XHRAZXh0ZW5kIC5oaWRkZW47XG5cdFx0fVxuXHR9XG5cdC5mZWVkTGlzdGluZyB7XG5cdFx0bGkge1xuXHRcdFx0YmFja2dyb3VuZDojRTIwRDIxO1xuXHRcdH1cblx0fVxuXG5cdC5wYWdlciB7IG1hcmdpbi1ib3R0b206MS41ZW07IG1pbi1oZWlnaHQ6IDE4cHg7XG5cdFx0bGkgeyBiYWNrZ3JvdW5kOiAkY29sb3VyLWJhc2U7IGNvbG9yOiNGRkY7IGN1cnNvcjogcG9pbnRlcjsgZGlzcGxheTppbmxpbmUtYmxvY2s7IGZvbnQtd2VpZ2h0OmJvbGQ7IGhlaWdodDoxLjVlbTsgbGluZS1oZWlnaHQ6MS41OyBtYXJnaW4tcmlnaHQ6LjMzMzMzM2VtOyB0ZXh0LWFsaWduOmNlbnRlcjsgd2lkdGg6MS41ZW07IGZvbnQtc2l6ZTogZW0oMTEpOyB9XG5cdFx0LnBhZ2VyQWN0aXZlIHsgYmFja2dyb3VuZDogI0ZDMTI0MTsgfVxuXHR9XG5cblx0LmltYWdlLTIge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdH1cbn1cblxuLmJhbm5lci1jb2x1bW4ge1xuXHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cdFx0d2lkdGg6IDUwJTtcblx0fVxuXG5cdCsgLmJhbm5lci1jb2x1bW4ge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxufVxuXG4uYmFubmVyLWNvbnRlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRib3JkZXI6IDEzcHggc29saWQgIzM3NDc1MTtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0bWluLWhlaWdodDogMjgwcHg7XG5cdG1heC13aWR0aDogNjI1cHg7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHBhZGRpbmc6IDEycHggMTZweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIG1pbigxMDgwcHgpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdH1cblxuXHRoMiB7XG5cdFx0Y29sb3I6ICMwMDA7XG5cdFx0Zm9udC1zaXplOiBlbSgzMCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMTtcblx0XHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5iYW5uZXItY29udGVudF9vbGRwcmljZSxcblx0LmJhbm5lci1jb250ZW50X3ByaWNlIHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdH1cblxuXHQuYmFubmVyLWNvbnRlbnRfaW1hZ2Uge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDM3LjYlO1xuXG5cdFx0QGluY2x1ZGUgbWluKDEwODBweCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0KyAuYmFubmVyLWNvbnRlbnRfdGV4dGJsb2NrIHtcblx0XHRcdEBpbmNsdWRlIG1pbigxMDgwcHgpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDQwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYmFubmVyLWNvbnRlbnRfdGV4dCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0UyRThFQjtcblx0XHRwYWRkaW5nOiA4cHg7XG5cblx0XHRwIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cblx0XHQrIGRpdiB7XG5cdFx0XHRtYXJnaW4tdG9wOiA2cHg7XG5cdFx0fVxuXHR9XG5cblx0LmJhbm5lci1jb250ZW50X29sZHByaWNlIHtcblx0XHRmb250LXNpemU6IGVtKDIyKTtcblx0XHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblxuXHRcdHNwYW4ge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCwgMjIpO1xuXHRcdH1cblx0fVxuXHQuYmFubmVyLWNvbnRlbnRfcHJpY2Uge1xuXHRcdGNvbG9yOiAkY29sb3VyLWFsdDtcblx0XHRmb250LXNpemU6IGVtKDMwKTtcblxuXHRcdHNwYW4ge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgyMCwgMzApO1xuXHRcdH1cblx0fVxuXG5cdC5iYW5uZXItY29udGVudF9icmFuZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblxuXHRcdEBpbmNsdWRlIG1pbig2NDBweCkge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMTJweDtcblx0XHRcdHJpZ2h0OiAxNXB4O1xuXHRcdH1cblx0fVxuXG5cdC5zaWducG9zdCB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRAaW5jbHVkZSBtaW4oNjQwcHgpIHtcblx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHR9XG5cdH1cbn1cblxuLmNvbnRlbnRCYW5uZXIge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblxuXHRpbWcge1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdG1hcmdpbi1ib3R0b206IDM2cHg7XG5cdH1cblxuXHRibG9ja3F1b3RlIHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWFsdDtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRoZWlnaHQ6IDE0MHB4O1xuXHRcdG1hcmdpbjogMCAwIDM2cHggNTA4cHg7XG5cdFx0cGFkZGluZzogMTVweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Zm9udC1zaXplOiBlbSgxMSk7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvYmcvdG9wLWJhbm5lci1xdW90ZS5naWYpO1xuXHRcdFx0Ym90dG9tOi0yN3B4O1xuXHRcdFx0Y29udGVudDpcIlwiO1xuXHRcdFx0aGVpZ2h0OjI3cHg7XG5cdFx0XHRsZWZ0OjJweDtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0d2lkdGg6NzFweDtcblx0XHR9XG5cdH1cblx0Y2l0ZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZy10b3A6MWVtO1xuXG5cdFx0c3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdH1cbn1cbi8qIEJhbm5lciAqL1xuXG5cbi8qXG5cdD09PT09PT09XG5cdFBhcnRuZXJzXG5cdD09PT09PT09XG4qL1xuLnBhcnRuZXJzIHtcblx0Ym9yZGVyLWJvdHRvbToycHggc29saWQgI0M0QzRDNDtcblx0bWluLWhlaWdodDo2OHB4O1xuXHRsaW5lLWhlaWdodDo2OHB4O1xuXHRiYWNrZ3JvdW5kOiAjZTllOWU5O1xuXHRiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlU1WlRsbE9TSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5tWm1abVptWWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG5cdGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgICNlOWU5ZTkgMCUsICNmZmZmZmYgMTAwJSk7XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsI2U5ZTllOSksIGNvbG9yLXN0b3AoMTAwJSwjZmZmZmZmKSk7XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgICNlOWU5ZTkgMCUsI2ZmZmZmZiAxMDAlKTtcblx0YmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgICNlOWU5ZTkgMCUsI2ZmZmZmZiAxMDAlKTtcblx0YmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICAjZTllOWU5IDAlLCNmZmZmZmYgMTAwJSk7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0b3AsICAjZTllOWU5IDAlLCNmZmZmZmYgMTAwJSk7XG5cdC5sdC1pZTkgJiB7IGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZTllOWU5JywgZW5kQ29sb3JzdHI9JyNmZmZmZmYnLEdyYWRpZW50VHlwZT0wICk7IH1cblx0Ym94LXNoYWRvdzogMCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdGEge1xuXHRcdCsgYSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjRweDtcblx0XHR9XG5cdH1cblxuXHRpbWcge1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdH1cbn1cbi8qIFBhcnRuZXJzICovXG5cblxuLypcblx0PT09PT09XG5cdE9mZmVyc1xuXHQ9PT09PT1cbiovXG4ub2ZmZXJzIHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdG1hcmdpbi1sZWZ0OiAtMjRweDtcblx0bWFyZ2luLXJpZ2h0OiAtMjRweDtcblx0cGFkZGluZzogMzBweCAwO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuXHQub2ZmZXJzLXRpdGxlIHtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRsaW5lLWhlaWdodDogMi40O1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LXNpemU6IGVtKDE4KTtcblxuXHRcdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMC43NWVtO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMC43NWVtO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cdH1cblxuXHRoMixcblx0LnByaWNlcyB7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRmb250LXNpemU6IGVtKDIwKTtcblx0XHR9XG5cdH1cblxuXHRpbWcge1xuXHRcdGJvcmRlcjogMDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdH1cblxuXG5cdGgyIHtcblx0XHRoZWlnaHQ6Mi44ZW07XG5cdFx0bGluZS1oZWlnaHQ6MS40O1xuXHRcdG1hcmdpbi1ib3R0b206LjRlbTtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdH1cblxuXHQvLyBDb2x1bW4gU3R5bGluZ1xuXHQuY29sIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDI0cHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjRweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdHdpZHRoOiAzMy4zMzMzJTtcblx0XHR9XG5cdH1cblx0LmNhcm91c2VsTWFzayB7XG5cdFx0YmFja2dyb3VuZDogJGNvbG91ci1iYXNlO1xuXHR9XG5cblx0LmZlYXR1cmVkUHJvZHVjdHMge1xuXHRcdC5vZmZlcnMtdGl0bGUge1xuXHRcdFx0YmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0fVxuXHRcdC5zaWducG9zdCB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHR9XG5cdH1cblx0LnNwZWNpYWxPZmZlcnMge1xuXHRcdC5vZmZlcnMtdGl0bGUge1xuXHRcdFx0YmFja2dyb3VuZDogJGNvbG91ci1hbHQ7XG5cdFx0fVxuXHRcdC5zaWducG9zdCB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWFsdDtcblx0XHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3VyLWFsdDtcblx0XHR9XG5cdH1cblx0LnNpZ25wb3N0IHtcblx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0fVxuXHQuaW1nLWxpbmsge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0fVxuXHQucm91bmRhbGwge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IC41ZW07XG5cdFx0dG9wOi41ZW07XG5cblx0XHQmLnNtYWxsIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gUHJvZHVjdCBCb3ggU3R5bGluZ1xuXHQucHJvZHVjdEJveCB7XG5cdFx0Y29sb3I6I0ZGRjtcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6I0ZGRjtcblx0XHR9XG5cdH1cblx0LmluZm8ge1xuXHRcdHBhZGRpbmc6MTBweDtcblx0fVxuXG5cdC5wcmljZXMge1xuXHRcdHNwYW4geyBtYXJnaW4tcmlnaHQ6LjVlbTsgfVxuXHR9XG5cdC5vbGQtcHJpY2UgeyBiYWNrZ3JvdW5kOnVybCgvc2l0ZS9pbWFnZXMvYmcvb2xkLXByaWNlLnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IGNvbG9yOiAkY29sb3VyLWdyZXk7IH1cblxuXG5cdC8vIFBhZ2VyIFN0eWxpbmdcblx0LnNsaWNrLWRvdHMge1xuXHRcdGJvdHRvbTowO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdHJpZ2h0OjA7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0ei1pbmRleDogMTA7XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3VyLXBhbGU7XG5cdFx0XHRjdXJzb3I6cG9pbnRlcjtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwIC40ZW0gMC40ZW07XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLWxlZnQ6MDsgfVxuXHRcdH1cblx0XHRidXR0b24ge1xuXHRcdFx0Y29sb3I6ICRjb2xvdXItcGFsZTtcblx0XHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0dGV4dC1pbmRlbnQ6IDA7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdGhlaWdodDogYXV0bztcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBub3JtYWw7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5zbGljay1hY3RpdmUge1xuXHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0Y29sb3I6I0ZGRjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYWR2ZXJ0cyB7XG5cdFx0cCB7IG1hcmdpbi1ib3R0b206IDEuOWVtO1xuXHRcdFx0JjpsYXN0LWNoaWxkIHsgbWFyZ2luOiAwOyB9XG5cdFx0XHQmLmxhc3QtY2hpbGQgeyBtYXJnaW46IDA7IH1cblx0XHR9XG5cdH1cbn1cbi8qIE9mZmVycyAqL1xuXG5cbi8qXG5cdD09PT09XG5cdEZlZWRzXG5cdD09PT09XG4qL1xuLmZlZWRzIHtcblx0YmFja2dyb3VuZDogJGNvbG91ci1iYXNlO1xuXHRjb2xvcjojRkZGO1xuXHRsaW5lLWhlaWdodDoxLjI7XG5cdHBhZGRpbmc6LjVlbSAwO1xuXG5cdC5hY2NyZWRpdGF0aW9ucyxcblx0Lm5ld3Mge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cGFkZGluZy1sZWZ0OiAyNHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDI0cHg7XG5cdH1cblxuXHQuY29sdW1ucyB7XG5cdFx0bWFyZ2luLWxlZnQ6IC0yNHB4O1xuXHRcdG1hcmdpbi1yaWdodDogLTI0cHg7XG5cdH1cblxuXHQuYWNjcmVkaXRhdGlvbnMge1xuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0d2lkdGg6IDMzLjMzMzMlO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0fVxuXG5cdFx0LmNhcm91c2VsTWFzayB7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdG1heC13aWR0aDogMTQwcHg7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTIwcHg7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE0MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oJGJyZWFrbWF4KSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxODVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubmV3cyB7XG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRmbG9hdDpsZWZ0O1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHR3aWR0aDogNjYuNjY2NiU7XG5cdFx0fVxuXG5cdFx0LmNhcm91c2VsTWFzayB7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0bWluLWhlaWdodDogODBweDtcblx0XHRcdHBhZGRpbmctbGVmdDogOHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogOHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogODBweDtcblx0XHRcdH1cblxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRoMiB7XG5cdFx0bWFyZ2luOiAxNnB4IDAgOHB4O1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0c3BhbiB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLXByZXYsXG5cdC5zbGljay1uZXh0IHtcblx0XHR3aWR0aDogNnB4O1xuXHRcdGhlaWdodDogMTJweDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiA2cHg7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0d2lkdGg6IDZweDtcblx0XHRcdGhlaWdodDogMTJweDtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stbmV4dCB7XG5cdFx0cmlnaHQ6IC0xMHB4O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Ym9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1wcmV2IHtcblx0XHRsZWZ0OiAtMTBweDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5jYXJvdXNlbE1hc2sge1xuXHRcdG1hcmdpbjogMC41ZW0gMDtcblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0fVxuXHRwIHtcblx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdH1cblx0LmRhdGUge1xuXHRcdG1hcmdpbi1ib3R0b206LjJlbTtcblx0fVxuXHQucmVhZC1hcnRpY2xlIHtcblx0XHRmb250LXNpemU6IGVtKDExKTtcblx0fVxufVxuLyogRmVlZHMgKi9cblxuXG4vKlxuXHQ9PT09PT09PVxuXHRDYXJvdXNlbFxuXHQ9PT09PT09PVxuKi9cbi5jYXJvdXNlbCB7XG5cdC5jYXJvdXNlbC1pdGVtIHtcblx0XHRoZWlnaHQ6IDIwMHB4O1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRoZWlnaHQ6IDMwMHB4O1xuXHRcdH1cblxuXHRcdCYuaXRlbS0xIHtcblx0XHRcdGJhY2tncm91bmQ6ICNGQ0M7XG5cdFx0fVxuXHRcdCYuaXRlbS0yIHtcblx0XHRcdGJhY2tncm91bmQ6ICNDRkM7XG5cdFx0fVxuXHRcdCYuaXRlbS0zIHtcblx0XHRcdGJhY2tncm91bmQ6ICNDQ0Y7XG5cdFx0fVxuXHRcdCYuaXRlbS00IHtcblx0XHRcdGJhY2tncm91bmQ6ICNGQ0Y7XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLW5leHQge1xuXHRcdHJpZ2h0OiAxMHB4O1xuXHR9XG5cblx0LnNsaWNrLXByZXYge1xuXHRcdGxlZnQ6IDEwcHg7XG5cdH1cblxuXHQud3JhcCB7XG5cdFx0aGVpZ2h0OiAyMDBweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0aGVpZ2h0OiAzMDBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSB2YWxpZ24oXCIudGV4dFwiKTtcblx0fVxuXG5cdC50ZXh0IHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHR3aWR0aDogMzMuMzMzMyU7XG5cdH1cbn1cbi8qIENhcm91c2VsICovXG5cblxuLypcblx0PT09PT09PT09PT1cblx0QnJlYWRjcnVtYnNcblx0PT09PT09PT09PT1cbiovXG4uYnJlYWRjcnVtYnMsIC5icmVhZGNydW1iIHtcblx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRmb250LXNpemU6IGVtKDExKTtcblxuXHRsaSB7XG5cdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRwYWRkaW5nLWxlZnQ6IC40ZW07XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWJhc2U7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6LjRlbTtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHR9XG59XG4vKiBCcmVhZGNydW1icyAqL1xuXG5cbi8qXG5cdD09PT09PT09PT1cblx0SG9tZSBCb3hlc1xuXHQ9PT09PT09PT09XG4qL1xuLmhvbWUtYm94ZXMge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRAaW5jbHVkZSBib3hlcygzKTtcblx0fVxuXG5cdC5jb2wge1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblxuXHQuaW5uZXIge1xuXHRcdGJhY2tncm91bmQ6ICNFRUY7XG5cdH1cbn1cbi8qIEhvbWUgQm94ZXMgKi9cblxuXG4vKlxuXHQ9PT09PT09PVxuXHRBcnRpY2xlc1xuXHQ9PT09PT09PVxuKi9cbi5wb3N0IHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cblx0LmltYWdlIHtcblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0bWF4LXdpZHRoOiAxODBweDtcblx0XHR9XG5cblx0XHQrIC50ZXh0IHtcblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMjAwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4vKiBBcnRpY2xlcyAqL1xuXG5cbi8qXG5cdD09PT09XG5cdEZvcm1zXG5cdD09PT09XG4qL1xuLmZvcm1Sb3cge1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luOiAwIDAgMC44ZW07XG59XG4uY2hlY2tib3ggbGFiZWwsIC5yYWRpb2J1dHRvbiBsYWJlbCB7IG1hcmdpbi1sZWZ0OjNweDsgdmVydGljYWwtYWxpZ246bWlkZGxlOyB9XG4uY2hlY2tib3ggaW5wdXQsIC5yYWRpb2J1dHRvbiBpbnB1dCB7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgfVxuXG4uZm9ybSB7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdG1heC13aWR0aDogNTAwcHg7XG5cblx0LmZvcm0tcm93IHtcblx0XHQrICoge1xuXHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHR9XG5cblx0XHRsYWJlbCB7XG5cdFx0XHRAaW5jbHVkZSBtaW4oNTUwcHgpIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdHdpZHRoOiAxOTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZm9ybS1pbnB1dCB7XG5cdFx0QGluY2x1ZGUgbWluKDU1MHB4KSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjAwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmZvcm0tYnV0dG9ucyB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cblxuXHQmLmVucXVpcnkge1xuXG5cdFx0dGV4dGFyZWEge1xuXHRcdFx0bGluZS1oZWlnaHQ6MS41O1xuXHRcdFx0bWluLWhlaWdodDo3LjVlbTtcblx0XHRcdHBhZGRpbmc6NnB4O1xuXHRcdFx0d2lkdGg6Mjc0cHg7XG5cdFx0fVxuXG5cdFx0dGV4dGFyZWEsXG5cdFx0W3R5cGU9dGV4dF0sXG5cdFx0W3R5cGU9ZW1haWxdIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0LnJvdyB7XG5cdFx0XHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtMnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAtMnB4O1xuXG5cdFx0XHQrIC5yb3cge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA0cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmZpZWxkIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAycHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAycHg7XG5cdFx0XHR3aWR0aDogNTAlO1xuXG5cdFx0XHQmLndpZGUge1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ0blJvdyB7XG5cdFx0XHRwYWRkaW5nLXRvcDoxZW07XG5cdFx0fVxuXHR9XG5cblx0Ji5jYWxsQmFjayB7XG5cdFx0W3R5cGU9dGV4dF0ge1xuXHRcdFx0bWF4LXdpZHRoOiAyNzRweDtcblx0XHR9XG5cdFx0cCB7XG5cdFx0XHRmb250LXNpemU6IGVtKDExKTtcblx0XHR9XG5cdFx0LnJibCB7XG5cdFx0XHRwYWRkaW5nOjAgMCAuMmVtO1xuXHRcdH1cblx0XHQuYnRuUm93IHtcblx0XHRcdHBhZGRpbmctdG9wOiAxMnB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAzLjVlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmVycm9yIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmVucXVpcnksXG5cdCYuY2FsbEJhY2sge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblxuXHRcdFt0eXBlPXRleHRdLFxuXHRcdFt0eXBlPWVtYWlsXSxcblx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRjb2xvcjojRkZGO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdH1cblxuXHRcdC5lcnJvciB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHQucmJsIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRsaW5lLWhlaWdodDoxO1xuXHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXG5cdFx0XHRsYWJlbCB7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjFlbTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjEuNWVtO1xuXHRcdFx0fVxuXHRcdFx0aW5wdXQge1xuXHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDotOTk5OWVtO1xuXG5cdFx0XHRcdCsgbGFiZWwge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6dXJsKC9zaXRlL2ltYWdlcy9pbnB1dC9yYWRpby5wbmcpIG5vLXJlcGVhdCAwIC0xMnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjE7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmNoZWNrZWQge1xuXHRcdFx0XHRcdCsge1xuXHRcdFx0XHRcdFx0bGFiZWwge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNpZ25wb3N0IHtcblxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNwYW4uZXJyb3Ige1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0fVxuXHR9XG5cblx0Ji5yZWZlciB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdGlucHV0W3R5cGU9dGV4dF0sIHRleHRhcmVhIHsgd2lkdGg6NDY2cHg7IH1cblx0fVxuXG5cdCYucHJvbW8ge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRsYWJlbCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXHRcdH1cblxuXHRcdFt0eXBlPXRleHRdIHtcblx0XHRcdGhlaWdodDogMjZweDtcblx0XHRcdHdpZHRoOiAxMzRweDtcblx0XHR9XG5cblx0XHQuc2lnbnBvc3Qge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxMyk7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdH1cblx0fVxuXG5cdCYuY2hlY2tvdXQge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRsYWJlbCxcblx0XHQubGJsIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRsaW5lLWhlaWdodDoyO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0d2lkdGg6MjAuNzg1MjE5Mzk5NTM4MTElO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlucHV0LFxuXHRcdHNlbGVjdCxcblx0XHQubmljZXNlbGVjdC13cmFwcGVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdGgyIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRjb2xvdXItYmFzZSwgNTAlKTtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjApO1xuXHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbToxZW07XG5cblx0XHRcdC5zbWFsbCB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aDMge1xuXHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxZW07XG5cblx0XHRcdC5zbWFsbCB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0ZmllbGRzZXQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbToxLjVlbTtcblx0XHR9XG5cblx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjU7XG5cdFx0XHRtaW4taGVpZ2h0OjcuNWVtO1xuXHRcdFx0d2lkdGg6OTAlO1xuXHRcdH1cblxuXHRcdC5yYWRpb2J1dHRvbixcblx0XHQuY2hlY2tib3gge1xuXHRcdFx0bGFiZWwsXG5cdFx0XHRpbnB1dCB7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHRsYWJlbCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuY2hlY2tib3gge1xuXHRcdFx0bGFiZWwgeyBkaXNwbGF5OmlubGluZTsgfVxuXHRcdH1cblxuXHRcdC5kZWxpdmVyeU9wdHMge1xuXHRcdFx0bGFiZWwgeyBtYXJnaW46MCAuMjVlbSAwIDA7IH1cblx0XHR9XG5cblx0XHQuZmllbGQge1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiA1Ny43MzY3JTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQubmV3c2xldHRlciB7XG5cdFx0XHRsYWJlbCB7IGRpc3BsYXk6IGlubGluZTsgd2lkdGg6IGF1dG87IH1cblx0XHR9XG5cblx0XHQuZm9ybVJvdy5sb2dnZWQtaW4geyBiYWNrZ3JvdW5kOiAjRUVFOyBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7IHBhZGRpbmc6IDFlbTtcblx0XHRcdC5uaWNlU2VsZWN0IHsgYmFja2dyb3VuZDogI0ZGRjsgfVxuXHRcdH1cblx0fVxuXG5cdCYudXNlci1hY2NvdW50IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0bGFiZWwgeyB3aWR0aDogMzAlOyB9XG5cdFx0LnVzZXItYWRkcmVzcyB7XG5cdFx0XHQuYnRucm93IHsgbWFyZ2luLWxlZnQ6IDMwJTsgfVxuXHRcdH1cblx0fVxufVxuLyogRm9ybXMgKi9cblxuXG4vKlxuXHQ9PT09PT1cblx0UG9wdXBzXG5cdD09PT09PVxuKi9cbiNwb3B1cC1jb250YWN0IHtcblx0QGV4dGVuZCAub3ZlcmxheS1ib3g7XG5cblx0aDIge1xuXHRcdGZvbnQtc2l6ZTogZW0oMjgpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHR9XG5cblx0dGV4dGFyZWEge1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0bWluLWhlaWdodDogNmVtO1xuXHRcdHBhZGRpbmc6IDZweDtcblx0fVxufVxuI3BvcHVwLXZpZGVvIHtcblx0QGV4dGVuZCAub3ZlcmxheS1ib3g7XG59XG4jcG9wdXAtcmVmZXIge1xuXHRAZXh0ZW5kIC5vdmVybGF5LWJveDtcbn1cbi8qIFBvcHVwcyAqL1xuXG5cbi8qXG5cdD09PT09PT09XG5cdExpbmsgUm93XG5cdD09PT09PT09XG4qL1xuLmxpbmtSb3cgeyBtYXJnaW4tYm90dG9tOi44ZW07IG92ZXJmbG93OmhpZGRlbjtcblx0YSB7IGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0OyBjb2xvcjogI0ZGRjsgZmxvYXQ6IGxlZnQ7IGhlaWdodDo1MCAvIDE4ICsgMGVtOyBsaW5lLWhlaWdodDo1MCAvIDE4ICsgMGVtOyBtYXJnaW4tbGVmdDogMiU7IHBhZGRpbmc6MDsgdGV4dC1hbGlnbjogY2VudGVyOyB3aWR0aDogMzIlOyBmb250LXNpemU6IGVtKDE4KTsgQGV4dGVuZCAubG5rQmxvY2s7XG5cdFx0JjpmaXJzdC1jaGlsZCB7IG1hcmdpbi1sZWZ0OjA7IH1cblx0XHQmLmZpcnN0LWNoaWxkIHsgbWFyZ2luLWxlZnQ6MDsgfVxuXHR9XG59XG4vKiBMaW5rIFJvdyAqL1xuXG5cbi8qXG5cdD09PT09PT09XG5cdFByb2R1Y3RzXG5cdD09PT09PT09XG4qL1xuLmV4cGFuZCB7XG5cdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmbG9hdDogcmlnaHQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jYXRMaXN0aW5nIHtcblx0bWFyZ2luLWxlZnQ6IC02cHg7XG5cdG1hcmdpbi1yaWdodDogLTZweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGltZyB7XG5cdFx0YmFja2dyb3VuZDogI0ZGRjtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHRoMiB7XG5cdFx0aGVpZ2h0OiAyOXB4O1xuXHRcdGhlaWdodDogY2FsYygxLjI1ZW0gKyA0cHgpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRwYWRkaW5nOiAycHggMnB4IDJweCA4cHg7XG5cdFx0Zm9udC1zaXplOiBlbSgyMCk7XG5cblx0XHRzcGFuIHtcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIC4ycyBsaW5lYXIpO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6I0ZGRjtcblx0XHR9XG5cdH1cblxuXHQuYm94IHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRib3JkZXItbGVmdDogNnB4IHNvbGlkICNGRkY7XG5cdFx0Ym9yZGVyLXJpZ2h0OiA2cHggc29saWQgI0ZGRjtcblx0XHRtYXJnaW4tYm90dG9tOiAxMnB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyKTtcblxuXHRcdEBpbmNsdWRlIG1pbig0ODBweCkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0d2lkdGg6IDMzLjMzMzMlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1pbigxMjAwcHgpIHtcblx0XHRcdHdpZHRoOiAyNSU7XG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdH1cblxuXG5cdFx0Ly8gMiBQZXIgUm93XG5cdFx0JjpudGgtY2hpbGQoMm4rMSkge1xuXHRcdFx0Y2xlYXI6IGxlZnQ7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRjbGVhcjogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyAzIFBlciBSb3dcblx0XHQmOm50aC1jaGlsZCgzbikge1xuXHRcdFx0LmNhdFN1Ym5hdiB7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgzbisxKSB7XG5cdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdFx0Y2xlYXI6IGxlZnQ7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1pbigxMjAwcHgpIHtcblx0XHRcdFx0Y2xlYXI6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC5jYXRTdWJuYXYge1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgzbisyKSB7XG5cdFx0XHQuY2F0U3VibmF2IHtcblx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0fVxuXG5cdFx0XHQuY2F0U3VibmF2IHtcblx0XHRcdFx0bGVmdDogLTEwNC45MCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gNCBQZXIgUm93XG5cdFx0JjpudGgtY2hpbGQoNG4rMSkge1xuXHRcdFx0QGluY2x1ZGUgbWluKDEyMDBweCkge1xuXHRcdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0LmNhdFN1Ym5hdiB7XG5cdFx0XHRcdEBpbmNsdWRlIG1pbigxMjAwcHgpIHtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQmLnNob3dzdWIge1xuXHRcdFx0YmFja2dyb3VuZDogJGNvbG91ci1iYXNlO1xuXHRcdFx0ei1pbmRleDogMjtcblxuXHRcdFx0aDIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNXB4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG91ci1iYXNlO1xuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvdXItYmFzZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY2F0U3VibmF2IHtcblx0XHRcdFx0aGVpZ2h0OiA4MyU7XG5cdFx0XHRcdHdpZHRoOiAzMDkuOTE3MzU1MzcxOTAwOCU7XG5cdFx0XHR9XG5cblx0XHRcdC5leHBhbmQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQ+IGEge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwYWRkaW5nOiAwIDFweCAxcHg7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCAuM3MgZWFzZS1pbi1vdXQpO1xuXG5cdFx0XHQmOmFjdGl2ZSxcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1iYXNlO1xuXG5cdFx0XHRoMiB7XG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItYmFzZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5leHBhbmQge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9leHBhbmQuZ2lmKTtcblx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0d2lkdGg6IDI1cHg7XG5cdH1cblxuXHQuY2F0U3VibmF2IHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWJhc2U7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMzBweDtcblx0XHR3aWR0aDogMDtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgZWFzZS1pbi1vdXQpO1xuXG5cdFx0dWwge1xuXHRcdFx0cGFkZGluZzogMTBweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRtaW4td2lkdGg6IDczMHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRwYWRkaW5nOiAwIDIlIC4yNSU7XG5cdFx0XHR3aWR0aDogMjUlO1xuXHRcdH1cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdH1cblx0fVxuXG5cdC5jYXRMaXN0aW5nX2ltYWdlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGxpbmUtaGVpZ2h0OiAyNTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IDFweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDFweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cbn1cblxuLmNhdFN1Ym5hdiB7XG5cdHVsIHtcblx0XHRAZXh0ZW5kICVsaXN0LXJlc2V0O1xuXHR9XG59XG5cbi5wcm9kdWN0LWxpc3Rpbmcge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0bWFyZ2luOiAwIC02cHggMTJweDtcblxuXHRoMiB7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRoZWlnaHQ6IDIuNWVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRcdG1hcmdpbi1ib3R0b206IC4yZW07XG5cdFx0Zm9udC1zaXplOiBlbSgxMyk7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRjb2xvdXItYmFzZTtcblx0XHR9XG5cdH1cblxuXHRpbWcge1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvdXItYmFzZTtcblx0XHRmbG9hdDogbGVmdDtcblx0fVxuXG5cdC5wcm9kdWN0Qm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAyZW07XG5cdFx0cGFkZGluZy1sZWZ0OiA2cHg7XG5cdFx0cGFkZGluZy1yaWdodDogNnB4O1xuXG5cdFx0QGluY2x1ZGUgbWluKDQ4MHB4KSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0JjpudGgtY2hpbGQoMm4rMSkge1xuXHRcdFx0Y2xlYXI6IGxlZnQ7XG5cblx0XHRcdEBpbmNsdWRlIG1pbigkYnJlYWttYXgpIHtcblx0XHRcdFx0Y2xlYXI6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JjpudGgtY2hpbGQoM24rMSkge1xuXHRcdFx0QGluY2x1ZGUgbWluKCRicmVha21heCkge1xuXHRcdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4oJGJyZWFrbWF4KSB7XG5cdFx0XHR3aWR0aDogMzMuMzMzMyU7XG5cdFx0fVxuXHR9XG5cblx0LmltZy1saW5rIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW4tcmlnaHQ6IC4zMzMzMzNlbTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d2lkdGg6IDEzMnB4O1xuXHR9XG5cblx0LnJvdW5kYWxsIHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAuNWVtO1xuXHRcdHRvcDogLjVlbTtcblxuXHRcdCYuc21hbGwge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG5cdC5wcmljZXMge1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cblx0XHQub2xkIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQsIDE2KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0XHR9XG5cdH1cblx0Lm9sZC1wcmljZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQuc2lnbnBvc3Qge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcblxuXHRcdCYucmVkIHtcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvdXItYWx0O1xuXHRcdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICRjb2xvdXItYWx0O1xuXHRcdH1cblx0fVxuXHQuaW5mbyB7XG5cdFx0bWFyZ2luLWxlZnQ6IDEzNnB4O1xuXHR9XG59XG5cbi8vIEJhc2ljIHRlbXBsYXRlIGxheW91dCBmb3IgcHJvZHVjdHNcbi5wcm9kdWN0IHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG5cdC50aXRsZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRnYXA6IDFyZW07XG5cblx0XHRoMSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG5cdFx0XHRmb250LXNpemU6IGVtKDM0KTtcblx0XHR9XG5cdH1cblxuXG5cdC5vZmZlcixcblx0Lm5vcm1hbCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQucHJpY2Utb2xkLFxuXHQucHJpY2Uge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtd2VpZ2h0OjcwMDtcblx0XHRmb250LXNpemU6IGVtKDM0KTtcblxuXHRcdC5leHZhdCB7XG5cdFx0XHRmb250LXNpemU6IDAuNmVtO1xuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0SW1hZ2Uge1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdHBhZGRpbmctdG9wOiAxZW07XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDQwJTtcblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1iYXNlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRcdCYucGVsaSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAxMHB4O1xuXHRcdFx0XHRyaWdodDogMTBweDtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQucHJvZHVjdEltYWdlLXRodW1ibmFpbHMge1xuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHQrIC5wcm9kdWN0RGV0YWlscyB7XG5cdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDUwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucHJvZHVjdFRodW1ibmFpbHMge1xuXHRcdHdpZHRoOiAxMDBweDtcblx0XHRmbG9hdDogbGVmdDtcblxuXHRcdEBpbmNsdWRlIG1pbigxMDI0cHgpIHtcblx0XHRcdHdpZHRoOiAxMzBweDtcblx0XHR9XG5cblx0XHQudGh1bWJuYWlsIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHQrIC50aHVtYm5haWwge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRodW1iIHtcblx0XHRcdCsgLnRodW1iIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogNnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCsgLnByb2R1Y3RJbWFnZU1haW4ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEwNnB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMzZweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucHJvZHVjdEltYWdlTWFpbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQucHJvZHVjdERldGFpbHMge1xuXHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDQwJTtcblx0XHR9XG5cdH1cblxuXHQucHJpY2Utb2xkIHtcblx0XHRmb250LXNpemU6IGVtKDI4KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0fVxuXG5cdC5idXkge1xuXHRcdGxhYmVsIHtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0bWFyZ2luLWxlZnQ6MWVtO1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogbGgoMjYsIDE0KTtcblx0XHR9XG5cblx0XHQubmljZXNlbGVjdC13cmFwcGVyIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR3aWR0aDogNmVtO1xuXHRcdH1cblxuXHRcdD4ge1xuXHRcdFx0c2VsZWN0IHtcblx0XHRcdFx0bWF4LXdpZHRoOiA2ZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5hY3Rpb25zIHtcblx0XHRwYWRkaW5nOjJlbSAwO1xuXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOi40ZW07XG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiBsaCgyMCwgMTQpO1xuXHRcdH1cblxuXHRcdC5wZGYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3Byb2R1Y3QtYWN0aW9ucy5wbmcpO1xuXHRcdFx0cGFkZGluZy1sZWZ0OjMycHg7XG5cdFx0fVxuXG5cdFx0LnBpY3RvcyB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IDEuNjVlbTtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR3aWR0aDogMzJweDtcblx0XHR9XG5cdH1cblx0LnNpZ25wb3N0LmJhc2tldCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2Jhc2tldC13aGl0ZS5wbmcpO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDZweCBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRwYWRkaW5nLWxlZnQ6IDM0cHg7XG5cdH1cblxuXHQrIC50YWJzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0KyAge1xuXHRcdFx0bWFyZ2luLXRvcDogMS41ZW07XG5cdFx0fVxuXHR9XG59XG5cbi5wcm9kdWN0LXRhYnMge1xuXHR0YWJsZSB7XG5cdFx0QGV4dGVuZCAudGJsLW1vYmlsZTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0XHRAaW5jbHVkZSBtYXgoNzY3cHgpIHtcblx0XHRcdCYsXG5cdFx0XHR0ZCB7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0dHIge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCsgdHIge1xuXHRcdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0NDO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHR0ZCB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5QcmRTcGVjSXRlbSB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHR9XG5cblx0XHRcdC5QcmRTcGVjSXRlbSxcblx0XHRcdC5QcmRTcGVjSXRlbSArIHRkIHtcblxuXHRcdFx0XHRAaW5jbHVkZSBtaW4oMzYwcHgpIHtcblx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHR3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4udGJsLWJhc2tldCB7XG5cdEBleHRlbmQgLnRhYmxlO1xuXHRAZXh0ZW5kIC50YmwtbW9iaWxlO1xuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xuXG5cdHRkIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG5cdGJ1dHRvbiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblx0W3R5cGU9bnVtYmVyXSB7XG5cdFx0d2lkdGg6IDQycHg7XG5cdH1cblxuXHQucmVtb3ZlIHtcblx0XHRidXR0b24ge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2RlbC5naWYpO1xuXHRcdFx0d2lkdGg6IDE2cHg7XG5cdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0fVxuXHR9XG5cblx0LnRpdGxlIHtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0LmltYWdlIHtcblx0XHR3aWR0aDogMTIycHg7XG5cblx0XHRpbWcge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDBweDtcblx0XHR9XG5cdH1cblxuXHQuY291bnQge1xuXHRcdGJ1dHRvbiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vcmVmcmVzaC5wbmcpO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdGhlaWdodDogMTZweDtcblxuXHRcdFx0QGluY2x1ZGUgcGl4ZWwtcmF0aW8ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vcmVmcmVzaEAyeC5wbmcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5vbGRfcHJpY2Uge1xuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMC41KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0fVxuXG5cdC5wcm9tbyB7XG5cdFx0Ym9yZGVyLWxlZnQ6IG5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0QGluY2x1ZGUgbWF4KDc2N3B4KSB7XG5cdFx0dHIuaGVhZGVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0dHIge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG5cblx0XHRcdCsgdHIge1xuXHRcdFx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHR0ZCB7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdCY6bnRoLWNoaWxkKDUpIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdQcmljZTogJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoNikge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ1RvdGFsOiAnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGZvb3Qge1xuXHRcdFx0dHIge1xuXHRcdFx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHQudG90YWxfY291bnQsXG5cdFx0XHQudG90YWxfY29zdCB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdH1cblxuXHRcdFx0LnByb21vIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmZvb3RlciB7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnJlbW92ZSB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdSZW1vdmUgcHJvZHVjdDogJztcblx0XHRcdH1cblxuXHRcdFx0Zm9ybSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaW1hZ2Uge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXG5cdFx0LmNvdW50IHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJ1F1YW50aXR5ICc7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRpdGxlIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn1cblxuLmJhc2tldC1idXR0b25zIHtcblx0Y2xlYXI6IGJvdGg7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdGZvcm0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNjAwcHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uIHtcblx0XHRAaW5jbHVkZSBtYXgoNTk5cHgpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG59XG5cbi5hZGRyZXNzLWNvbCB7XG5cdG1hcmdpbjogMCAwIDEwcHggMDtcblxuXHRAaW5jbHVkZSBtaW4oNjAwcHgpIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG59XG5cbi5sZWZ0LWFkZHJlc3MtY29sIHtcblx0QGluY2x1ZGUgbWluKDYwMHB4KSB7XG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0fVxufVxuXG4ucmlnaHQtYWRkcmVzcy1jb2wge1xuXHRAaW5jbHVkZSBtaW4oNjAwcHgpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdH1cbn1cblxuLmNoZWNrb3V0LWFkZHJlc3Mtc2VsZWN0IHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdG1hcmdpbjogMCAwIDEwcHggMDtcblxuXHRzZWxlY3Qge1xuIFx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW46IDAgMTBweCAwIDA7XG5cdFx0d2lkdGg6IDYwJTtcbiBcdH1cblxuXHQuYnV0dG9uIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRwYWRkaW5nOiAwLjNlbSAxZW07XG5cdH1cblxuXHQrIC5idXR0b24ge1xuXHRcdG1hcmdpbjogMTBweCAwO1xuXHRcdHBhZGRpbmc6IDAuM2VtIDFlbTtcblx0fVxufVxuXG4ucmV2aWV3LWFkZHJlc3MgLmNvbCB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IDAgMCAxMnB4IDA7XG5cdHdpZHRoOiA1MCU7XG59XG4vKiBQcm9kdWN0cyAqL1xuXG5cbi8qXG5cdD09PT09PT09PT1cblx0T2ZmZXJzIC8gZmVhdHVyZWQgcHJvZHVjdCB0YWJzXG5cdD09PT09PT09PT1cbiovXG4udGFicyB7XG5cdC5zbGljay1zbGlkZXIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy10b3A6IDI0cHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDI0cHg7XG5cdH1cblxuXHQvLyBQYWdlciBTdHlsaW5nXG5cdC5zbGljay1kb3RzIHtcblx0XHRib3R0b206IC0xMnB4O1xuXHRcdG1hcmdpbjogMDtcblx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHotaW5kZXg6IDEwO1xuXG5cdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZGRjtcblx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDAgLjRlbSAwLjRlbTtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBib3R0b207XG5cblx0XHRcdCY6Zmlyc3QtY2hpbGQgeyBib3JkZXItbGVmdDowOyB9XG5cdFx0fVxuXHRcdGJ1dHRvbiB7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdHRleHQtaW5kZW50OiAwO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogbm9ybWFsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2xpY2stYWN0aXZlIHtcblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuLnRhYnMgLnRhYi1saW5rcyAub2ZmZXJzLXRhYi1saW5rLFxuLnRhYnMgI29mZmVycy10YWIsXG4udGFicyAjb2ZmZXJzLXRhYiAuc2lnbnBvc3Qge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3VyLWFsdDtcbn1cbi50YWJzIC50YWItbGlua3MgLmZlYXR1cmVkLXRhYi1saW5rLFxuLnRhYnMgI2ZlYXR1cmVkLXRhYixcbi50YWJzICNmZWF0dXJlZC10YWIgLnNpZ25wb3N0IHtcblx0YmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQ7XG59XG4udGFicyAjb2ZmZXJzLXRhYiAuc2lnbnBvc3Qge1xuXHRib3JkZXItbGVmdC1jb2xvcjogJGNvbG91ci1hbHQ7XG59XG4udGFicyAjZmVhdHVyZWQtdGFiIC5zaWducG9zdCB7XG5cdGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbn1cbi50YWJzIC5wcm9kdWN0Qm94IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gICAgd2lkdGg6IDIzMHB4O1xuXG4gICAgZm9ybSxcbiAgICAuaW5mbyB7XG4gICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgfVxuXG5cdC5pbWctbGluayB7XG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdGltZyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5pbmZvIHtcblx0XHRwYWRkaW5nOiAwLjhlbSAxZW0gMWVtO1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG5cblx0YSB7XG5cdFx0Y29sb3I6ICNmZmY7XG5cdH1cblxuXHRoMixcblx0LnByaWNlcyB7XG5cdFx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiAxLjY2NjY3ZW07XG4gICAgXHRmb250LXdlaWdodDogNzAwO1xuICAgIFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0fVxuXG5cdGgyIHtcblx0XHRoZWlnaHQ6IDIuNGVtO1xuICAgIFx0bWFyZ2luLWJvdHRvbTogMC4yZW07XG5cdH1cblxuXHQuc2lnbnBvc3Qge1xuXHRcdGZvbnQtc2l6ZTogMS4zMzMzM2VtO1xuXHR9XG5cblx0LnByaWNlcyB7XG5cdFx0Lm9sZCB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0XHR9XG5cdH1cbn1cblxuXG4vKlxuXHQ9PT09PT09PT09XG5cdEZpbHRlciBCYXJcblx0PT09PT09PT09PVxuKi9cbiNtc2UyX21maWx0ZXIge1xuXHRmbG9hdDogbm9uZTtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuI21zZTJfZmlsdGVycyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRjb2xvcjogI0ZGRjtcblx0cGFkZGluZzogMTBweDtcblxuXHRmaWVsZHNldCB7XG5cdFx0KyBmaWVsZHNldCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdH1cblx0fVxuXG5cdGg0IHtcblx0XHRjb2xvcjojRkZGO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdH1cblxuXHRsYWJlbCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHRiciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdFt0eXBlPWNoZWNrYm94XSB7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG5cdFt0eXBlPWlucHV0XSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0fVxuXG5cdC5tc2UyX251bWJlcl9zbGlkZXIge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdH1cblxuXHQuZmllbGQtbnVtYmVyIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0bGFiZWwge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA2MHB4O1xuXHRcdFx0dGV4dC1pbmRlbnQ6IC02MHB4O1xuXHRcdH1cblx0XHRpbnB1dCB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cblx0XHQrIHtcblx0XHRcdC5maWVsZC1udW1iZXIge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbiNtc2UyX3NvcnQge1xuXHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cblx0c2VsZWN0IHtcblx0XHRtYXJnaW46IDAgMCAwIDEwcHg7XG5cdFx0d2lkdGg6IDIwMHB4O1xuXHR9XG59XG4vKiBGaWx0ZXIgQmFyICovXG5cblxuLypcblx0PT09PT09PT09PT09PT1cblx0Q2hlY2tvdXQgU3RlcHNcblx0PT09PT09PT09PT09PT1cbiovXG4uY2hlY2tvdXQtc3RlcHMge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0QGV4dGVuZCAlbGlzdC1yZXNldDtcblx0bWFyZ2luOiAxZW0gMDtcblxuXHRsaSB7XG5cdFx0YmFja2dyb3VuZDogJGNvbG91ci1wYWxlO1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcblx0XHRsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG5cdFx0cGFkZGluZzogMCAyJTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Zm9udC1zaXplOiBlbSgxOCk7XG5cdFx0bGluZS1oZWlnaHQ6IGxoKDM5LCAxOCk7XG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDMzLjMzMzMlO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1wYWxlO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9iZy9jaGVja291dC1zdGVwcy5wbmcpO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR3aWR0aDogMjNweDtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5hY3RpdmUge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zOXB4O1xuXHRcdH1cblx0fVxuXHQuY29tcGxldGUge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItYWx0O1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTc4cHg7XG5cdFx0fVxuXHR9XG5cdC5maW5hbCB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWFsdDtcblx0XHR9XG5cdH1cbn1cblxuLmNoZWNrb3V0IHtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG5cblx0LnNlY3Rpb24tbGVmdCxcblx0LnNlY3Rpb24tcmlnaHQge1xuXHRcdGZsb2F0OmxlZnQ7XG5cdH1cblxuXHQuZm9yZ290dGVuLFxuXHQubG9naW4ge1xuXHRcdFt0eXBlPXN1Ym1pdF0ge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHR9XG5cdH1cblxuXHQuY29sLXdyYXAge1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdG1hcmdpbi1sZWZ0OiAtMThweDtcblx0XHRtYXJnaW4tcmlnaHQ6IC0xOHB4O1xuXHR9XG5cblx0LmNvbCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxOHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDE4cHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNjQwcHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHQrIC5jb2wge1xuXHRcdFx0bWFyZ2luLXRvcDogMjRweDtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDY0MHB4KSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZvcmdvdHRlbiB7XG5cdFx0LmJ0bi1yb3cge1xuXHRcdFx0cGFkZGluZy10b3A6IDIuOTE2NjY2NjY2NjY2NjY3ZW07XG5cdFx0fVxuXHR9XG5cblx0LmRlbGl2ZXJ5QWRkcmVzcyB7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cbn1cblxuLmJhc2tldC1jYXJ0LFxuLmVudGVyLWRldGFpbHMsXG4ub3JkZXItcmV2aWV3IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW46IDIwcHggMCAwIDA7XG5cblx0Ji5kaXNhYmxlZCB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoL3NpdGUvaW1hZ2VzL2JnL3doaXRlLWZhZGUucG5nKTtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0ei1pbmRleDogNDA7XG5cdFx0fVxuXHR9XG59XG4vKiBDaGVja291dCBTdGVwcyAqL1xuXG5cbi8qXG5cdD09PT09PT09PT09PT1cblx0TWFudWZhY3R1cmVyc1xuXHQ9PT09PT09PT09PT09XG4qL1xuLm1hbnVmYWN0dXJlcnMge1xuXHRAZXh0ZW5kICVsaXN0LXJlc2V0O1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0bWFyZ2luLWxlZnQ6IC03cHg7XG5cdG1hcmdpbi1yaWdodDogLTdweDtcblxuXHRsaSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTRweDtcblx0XHRwYWRkaW5nLWxlZnQ6IDdweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiA3cHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QGluY2x1ZGUgbWluKDQwMHB4KSB7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1pbig2MDBweCkge1xuXHRcdFx0d2lkdGg6IDMzJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHR3aWR0aDogMjUlO1xuXHRcdH1cblx0fVxuXG5cdGEge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IC41ZW0gMDtcblx0fVxuXG5cdGgyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0LmlubmVyIHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0fVxufVxuLyogTWFudWZhY3R1cmVycyAqL1xuXG5cbi8qXG5cdD09PT09PT09XG5cdFByb2ZpbGVcblx0PT09PT09PT1cbiovXG4jb2ZmaWNlLXByb2ZpbGUtZm9ybSB7XG5cdC5oZWFkZXIge1xuXHRcdG1hcmdpbjogM2VtIDAgMWVtIDA7XG5cdH1cblx0LmZvcm0tZ3JvdXAge1xuXHRcdG1hcmdpbjogMCAwIDIwcHggMDtcblxuXHRcdC5tZXNzYWdlLFxuXHRcdC5kZXNjIHtcblx0XHRcdG1hcmdpbjogNXB4IDAgMCAwO1xuXHRcdH1cblx0fVxuXHQuY29udHJvbC1sYWJlbCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblx0LmF2YXRhciB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cblx0XHQjcHJvZmlsZS11c2VyLXBob3RvIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdH1cblx0XHQuaGVscC1ibG9jayxcblx0XHQjcHJvZmlsZS1waG90byB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG5cdFx0fVxuXHR9XG5cdGlucHV0W25hbWU9Y29uZmlybXBhc3N3b3JkXSB7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxufVxuI2FkZC1hZGRyZXNzLWZvcm0ge1xuXHQuZm9ybS1yb3cge1xuXHRcdG1hcmdpbjogMCAwIDIwcHggMDtcblx0fVxufVxuI29yZGVyLWRldGFpbHMtZm9ybSB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXG5cdC5jb250cm9sLWxhYmVsIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHQuc3BhbjYge1xuXHRcdEBpbmNsdWRlIG1pbig2MDBweCkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdH1cblx0fVxufVxuXG4udWktYXV0b2NvbXBsZXRlIHtcblx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0cmlnaHQ6IDAgIWltcG9ydGFudDtcblx0fVxufVxuXG4jbXNsaXN0b3JkZXJzIHtcblx0dGFibGUge1xuXHRcdEBleHRlbmQgLnRibC1tb2JpbGU7XG5cblx0XHRAaW5jbHVkZSBtYXgoNzY3cHgpIHtcblx0XHRcdHRyIHtcblx0XHRcdFx0KyB0ciB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0dGQge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQrIHRkIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5udW0ge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ09yZGVyJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY3JlYXRlZG9uIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdDcmVhdGVkIE9uJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQudXBkYXRlZG9uIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdVcGRhdGVkIE9uJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY3VzdG9tZXIge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ0N1c3RvbWVyJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY29zdCB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiAnQ29zdCc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnN0YXR1cyB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiAnU3RhdHVzJztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQudmlldyB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiAnVmlldyc7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubXNsaXN0b3JkZXJzLXJvdy1hY3Rpb25zIHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHR9XG5cdH1cbn1cblxuLnRibC1hZGRyZXNzZXMge1xuXHRAZXh0ZW5kIC50YmwtbW9iaWxlO1xuXG5cdEBpbmNsdWRlIG1heCg3NjdweCkge1xuXHRcdHRyICsgdHIge1xuXHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHR9XG5cdFx0dGQgKyB0ZCB7XG5cdFx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4ubGFzdGVzdC1tb2RlbCB7XG5cdG1hcmdpbi10b3A6IDNlbTtcblxuXHQucHJvZHVjdEltYWdlIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdG1heC13aWR0aDogMTMwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnByb2R1Y3REZXRhaWxzIHtcblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMzBweDtcblx0XHR9XG5cdH1cbn0iLCIuZW5xdWlyeSwgLmNhbGxCYWNrIHtcbiAgICAuZmllbGQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmNvbmZpcm1lbWFpbCwgLndvcmt0ZWwge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBtYXJnaW46IC0xcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICB9XG59IiwiLyohXG4gKiBCb290c3RyYXAgdjMuMy41IChodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTUgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9taXhpbnNcIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9ub3JtYWxpemVcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvZ2x5cGhpY29uc1wiO1xuXG4vLyBDb3JlIENTU1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvZ3JpZFwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2Ryb3Bkb3duc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9uYXZzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL2xhYmVsc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9iYWRnZXNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3RodW1ibmFpbHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvYWxlcnRzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvbWVkaWFcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvbGlzdC1ncm91cFwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9wYW5lbHNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC93ZWxsc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvcG9wb3ZlcnNcIjtcbi8vIEBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG4vLyBAaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuLy8gQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiLy9cbi8vIE1vZGFsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHNoaXRcblxuLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC0yNSUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuM3MgZWFzZS1vdXQpO1xuICB9XG4gICYuaW4gLm1vZGFsLWRpYWxvZyB7IEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKSB9XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjsgLy9vbGQgYnJvd3NlcnMgZmFsbGJhY2sgKGllOCBldGMpXG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAzcHggOXB4IHJnYmEoMCwwLDAsLjUpKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBAaW5jbHVkZSBvcGFjaXR5KDApOyB9XG4gICYuaW4geyBAaW5jbHVkZSBvcGFjaXR5KCRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC10aXRsZS1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIG1pbi1oZWlnaHQ6ICgkbW9kYWwtdGl0bGUtcGFkZGluZyArICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IHdpbGwgYmUgcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG5cblxuLy8gQW5pbWF0aW9uc1xuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xufVxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xufVxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSl7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iXX0= */
