@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
*/
/*
### Responsive

*/
/*
## 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;
*/
.eventbrite, .case-study, .case-study-blocks, .news-blocks, .course-blocks, .tutors .tutor, .facilities, .course-block, .form-prospectus .prospectus-select, .form-prospectus .cols, .form-application_steps, .home-boxes, .split-3, .split-2, .form-item, .listing .post {
  *zoom: 1;
}
.eventbrite:before, .case-study:before, .case-study-blocks:before, .news-blocks:before, .course-blocks:before, .tutors .tutor:before, .facilities:before, .course-block:before, .form-prospectus .prospectus-select:before, .form-prospectus .cols:before, .form-application_steps:before, .home-boxes:before, .split-3:before, .split-2:before, .form-item:before, .listing .post:before, .eventbrite:after, .case-study:after, .case-study-blocks:after, .news-blocks:after, .course-blocks:after, .tutors .tutor:after, .facilities:after, .course-block:after, .form-prospectus .prospectus-select:after, .form-prospectus .cols:after, .form-application_steps:after, .home-boxes:after, .split-3:after, .split-2:after, .form-item:after, .listing .post:after {
  content: "";
  display: table;
}
.eventbrite:after, .case-study:after, .case-study-blocks:after, .news-blocks:after, .course-blocks:after, .tutors .tutor:after, .facilities:after, .course-block:after, .form-prospectus .prospectus-select:after, .form-prospectus .cols:after, .form-application_steps:after, .home-boxes:after, .split-3:after, .split-2:after, .form-item:after, .listing .post:after {
  clear: both;
}

/*
### %list-reset

@extend interface for @include list-reset;
*/
.course-key ul, .form-application_steps, .home-carousel-nav ul, .overlay .modal-inner .modal-content > .flex .course-dates-list ul, .pagination {
  margin: 0;
  padding: 0;
}
.course-key ul > li, .form-application_steps > li, .home-carousel-nav ul > li, .overlay .modal-inner .modal-content > .flex .course-dates-list ul > li, .pagination > li {
  list-style: none;
  list-style-image: none;
  margin: 0;
}

/*
### %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: #000000;
}

html {
  font-size: 10px;
  font-size: 62.5%;
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body.site {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  word-wrap: break-word;
  overflow-x: hidden;
  font-size-adjust: none;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

::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;
  min-width: 0;
  -webkit-min-width: 0;
}

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

/*
 * Text Reset
 */
h1, .h1 {
  font-family: "Poppins", sans-serif;
  color: #213462;
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  line-height: 0.9;
  margin: 0;
}
h1.extra-large, h1.large, .h1.extra-large, .h1.large {
  font-size: 3.8rem;
  color: #FFFFFF;
}
h1.extra-large.dark-blue, h1.extra-large span.dark-blue, h1.large.dark-blue, h1.large span.dark-blue, .h1.extra-large.dark-blue, .h1.extra-large span.dark-blue, .h1.large.dark-blue, .h1.large span.dark-blue {
  color: #213462;
}
h1.extra-large.yellow, h1.extra-large span.yellow, h1.large.yellow, h1.large span.yellow, .h1.extra-large.yellow, .h1.extra-large span.yellow, .h1.large.yellow, .h1.large span.yellow {
  color: #ffbf2e;
}
@media (min-width: 769px) {
  h1, .h1 {
    font-size: 5rem;
  }
  h1.extra-large, h1.large, .h1.extra-large, .h1.large {
    font-size: 6rem;
    letter-spacing: -0.02em;
  }
}
@media (min-width: 1201px) {
  h1.extra-large, h1.large, .h1.extra-large, .h1.large {
    font-size: 7rem;
  }
}
@media (min-width: 1440px) {
  h1.extra-large, .h1.extra-large {
    font-size: 9rem;
  }
}

h2, .h2 {
  font-family: "Poppins", sans-serif;
  color: #213462;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.03em;
}
@media (min-width: 640px) {
  h2, .h2 {
    font-size: 2.4rem;
  }
}

h3, .h3 {
  font-family: "Poppins", sans-serif;
  color: #213462;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3636363636;
}
@media (min-width: 640px) {
  h3, .h3 {
    font-size: 2.2rem;
  }
}

/*
 * Links
 */
a {
  text-decoration: none;
  color: inherit;
}
a:focus {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}

/*
 * Lists
 */
ul {
  color: #003399;
  list-style-type: square;
  padding-left: 20px;
}
ul li {
  margin-bottom: 0.5em;
}

ol {
  padding-left: 20px;
}
ol li {
  margin-bottom: 0.5em;
}

button:focus {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}

nav li {
  margin: 0;
}

/* 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 {
  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;
}

.aspect-ratio-image, .banner-image .banner-image-bg, .text-thumbnail {
  min-height: 0;
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
  overflow: hidden;
  display: block;
  text-decoration: none;
}
.aspect-ratio-image::before, .banner-image .banner-image-bg::before, .text-thumbnail::before {
  content: "";
  display: block;
  height: 0;
  min-height: 0;
  width: 100%;
  z-index: 0;
}
.aspect-ratio-image::after, .banner-image .banner-image-bg::after, .text-thumbnail::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.flex {
  display: -ms-flexbox;
  display: flex;
}

.flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.no-margin {
  margin: 0 !important;
}

.no-padding {
  padding: 0 !important;
}

/*
##  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;
}

figure {
  border-bottom: 1px dotted #003399;
  margin-bottom: 10px;
  padding-bottom: 30px;
  position: relative;
}
figure figcaption {
  bottom: 0;
  color: #999;
  font-size: 0.9230769231em;
  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;
  }
}

.expand {
  height: 0;
  overflow: hidden;
  position: relative;
  transition: height 0.3s;
}

.main-col .content-block .course-search-block .filter, .main-col .content-block .course-search-section .filter-sortby .filter, .main-col .content-block .course-search-block .filter-sortby .filter, .news.filter, .events .filter {
  margin: 0 -0.5rem;
  padding: 0;
}
.main-col .content-block .course-search-block .filter .row, .main-col .content-block .course-search-section .filter-sortby .filter .row, .news.filter .row, .events .filter .row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.main-col .content-block .course-search-block .filter a, .main-col .content-block .course-search-section .filter-sortby .filter a, .main-col .content-block .course-search-block .filter-sortby .filter a, .news.filter a, .events .filter a, .main-col .content-block .course-search-block .filter span, .main-col .content-block .course-search-section .filter-sortby .filter span, .main-col .content-block .course-search-block .filter-sortby .filter span, .news.filter span, .events .filter span {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  border-radius: 34px;
  background-color: #213462;
  border: 1px solid #213462;
  color: #FFFFFF;
  font-size: 1.4rem;
  line-height: 1.357;
  height: 5rem;
  margin: 0.5rem;
  padding: 1rem 2rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s;
}
.main-col .content-block .course-search-block .filter a.has-no-events, .main-col .content-block .course-search-section .filter-sortby .filter a.has-no-events, .news.filter a.has-no-events, .events .filter a.has-no-events, .main-col .content-block .course-search-block .filter span.has-no-events, .main-col .content-block .course-search-section .filter-sortby .filter span.has-no-events, .news.filter span.has-no-events, .events .filter span.has-no-events {
  color: #AAAAAA;
  background-color: rgba(68, 68, 68, 0.15);
  border: 1px solid rgba(68, 68, 68, 0.15);
}
.main-col .content-block .course-search-block .filter a:hover, .main-col .content-block .course-search-section .filter-sortby .filter a:hover, .news.filter a:hover, .events .filter a:hover, .main-col .content-block .course-search-block .filter a.active, .main-col .content-block .course-search-section .filter-sortby .filter a.active, .news.filter a.active, .events .filter a.active {
  color: #213462;
  background-color: #FFFFFF;
}
.main-col .content-block .course-search-block .filter .days a, .main-col .content-block .course-search-section .filter-sortby .filter .days a, .news.filter .days a, .events .filter .days a, .main-col .content-block .course-search-block .filter .days span, .main-col .content-block .course-search-section .filter-sortby .filter .days span, .news.filter .days span, .events .filter .days span {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  border: none;
  border-radius: 0;
  font-size: 1.5rem;
  color: #213462;
  background-color: transparent;
}
.main-col .content-block .course-search-block .filter .days a.has-no-events, .main-col .content-block .course-search-section .filter-sortby .filter .days a.has-no-events, .news.filter .days a.has-no-events, .events .filter .days a.has-no-events, .main-col .content-block .course-search-block .filter .days span.has-no-events, .main-col .content-block .course-search-section .filter-sortby .filter .days span.has-no-events, .news.filter .days span.has-no-events, .events .filter .days span.has-no-events {
  color: #AAAAAA;
}

.listing a {
  display: block;
  text-decoration: none;
}
.listing .post + .post {
  margin-top: 40px;
}
.listing .sub {
  border-bottom: 1px dashed #003399;
  color: #999;
  display: block;
  font-size: 1.2307692308em;
  margin-bottom: 8px;
  padding-bottom: 10px;
}

.page-date {
  display: block;
  color: rgba(33, 52, 98, 0.75);
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: right;
  margin: 1rem 0 4rem;
}

.pagination {
  margin: 3rem 0 0rem;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.pagination > li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  min-width: 3rem;
  height: 3rem;
  padding: 1rem !important;
  border-radius: 4px;
  border: 1px solid #213462;
  background: #213462;
  margin: 0 0.5rem;
}
.pagination > li::before {
  content: none !important;
}
.pagination > li:hover {
  background: #FFFFFF;
}
.pagination > li:hover a, .pagination > li:hover span {
  color: #213462 !important;
}
.pagination a, .pagination span {
  display: inline-block;
  border-radius: 4px;
  color: #FFFFFF !important;
  font-size: 1.4rem;
  font-weight: 400;
  text-decoration: none !important;
}
.pagination .active {
  background: #FFFFFF;
}
.pagination .active a, .pagination .active span {
  color: #213462 !important;
}
.pagination .control, .pagination .disabled {
  display: none;
}

.button, .button-arrow, .button-prospectus-post, .button-prospectus-download, .button-twitter, .button-course, .button-print, .button-prospectus, .button-apply, .button-workplace, .button-dotted-white, .button-outline-dark-blue, .button-transparent, .button-white, .button-highlight-5, .button-highlight-4, .button-highlight-3, .button-highlight-2, .button-secondary, .nav-horizontal a, .btn {
  background: #003399;
  background-repeat: no-repeat;
  border: 2px solid #003399;
  border-radius: 5px;
  color: #FFFFFF;
  display: inline-block;
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  font-weight: 600;
  padding: 1rem 3rem;
  text-align: center;
  text-decoration: none;
  outline: none;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}
.button:hover, .button-arrow:hover, .button-prospectus-post:hover, .button-prospectus-download:hover, .button-twitter:hover, .button-course:hover, .button-print:hover, .button-prospectus:hover, .button-apply:hover, .button-workplace:hover, .button-dotted-white:hover, .button-outline-dark-blue:hover, .button-transparent:hover, .button-white:hover, .button-highlight-5:hover, .button-highlight-4:hover, .button-highlight-3:hover, .button-highlight-2:hover, .button-secondary:hover, .nav-horizontal a:hover, .btn:hover {
  background-color: #FFF;
  color: #003399;
}
.button.button-loading, .button-loading.button-arrow, .button-loading.button-prospectus-post, .button-loading.button-prospectus-download, .button-loading.button-twitter, .button-loading.button-course, .button-loading.button-print, .button-loading.button-prospectus, .button-loading.button-apply, .button-loading.button-workplace, .button-loading.button-dotted-white, .button-loading.button-outline-dark-blue, .button-loading.button-transparent, .button-loading.button-white, .button-loading.button-highlight-5, .button-loading.button-highlight-4, .button-loading.button-highlight-3, .button-loading.button-highlight-2, .button-loading.button-secondary, .nav-horizontal a.button-loading, .btn.button-loading {
  background-color: grey;
  border: 2px solid grey;
  color: white;
  pointer-events: none;
}
.button.button-loading:hover, .button-loading.button-arrow:hover, .button-loading.button-prospectus-post:hover, .button-loading.button-prospectus-download:hover, .button-loading.button-twitter:hover, .button-loading.button-course:hover, .button-loading.button-print:hover, .button-loading.button-prospectus:hover, .button-loading.button-apply:hover, .button-loading.button-workplace:hover, .button-loading.button-dotted-white:hover, .button-loading.button-outline-dark-blue:hover, .button-loading.button-transparent:hover, .button-loading.button-white:hover, .button-loading.button-highlight-5:hover, .button-loading.button-highlight-4:hover, .button-loading.button-highlight-3:hover, .button-loading.button-highlight-2:hover, .button-loading.button-secondary:hover, .nav-horizontal a.button-loading:hover, .btn.button-loading:hover {
  background-color: grey;
  color: white;
}
.button.block, .block.button-arrow, .block.button-prospectus-post, .block.button-prospectus-download, .block.button-twitter, .block.button-course, .block.button-print, .block.button-prospectus, .block.button-apply, .block.button-workplace, .block.button-dotted-white, .block.button-outline-dark-blue, .block.button-transparent, .block.button-white, .block.button-highlight-5, .block.button-highlight-4, .block.button-highlight-3, .block.button-highlight-2, .block.button-secondary, .nav-horizontal a.block, .btn.block {
  display: block;
  width: 100%;
}
.button.large, .large.button-arrow, .large.button-prospectus-post, .large.button-prospectus-download, .large.button-twitter, .large.button-course, .large.button-print, .large.button-prospectus, .large.button-apply, .large.button-workplace, .large.button-dotted-white, .large.button-outline-dark-blue, .large.button-transparent, .large.button-white, .large.button-highlight-5, .large.button-highlight-4, .large.button-highlight-3, .large.button-highlight-2, .large.button-secondary, .nav-horizontal a.large, .btn.large {
  font-size: 1.8rem;
  padding: 1.05rem 3rem;
}
.button.xlarge, .xlarge.button-arrow, .xlarge.button-prospectus-post, .xlarge.button-prospectus-download, .xlarge.button-twitter, .xlarge.button-course, .xlarge.button-print, .xlarge.button-prospectus, .xlarge.button-apply, .xlarge.button-workplace, .xlarge.button-dotted-white, .xlarge.button-outline-dark-blue, .xlarge.button-transparent, .xlarge.button-white, .xlarge.button-highlight-5, .xlarge.button-highlight-4, .xlarge.button-highlight-3, .xlarge.button-highlight-2, .xlarge.button-secondary, .nav-horizontal a.xlarge, .btn.xlarge {
  font-size: 1.8rem;
  padding: 1.1rem 2rem;
  width: 100%;
}
.button.semibold, .semibold.button-arrow, .semibold.button-prospectus-post, .semibold.button-prospectus-download, .semibold.button-twitter, .semibold.button-course, .semibold.button-print, .semibold.button-prospectus, .semibold.button-apply, .semibold.button-workplace, .semibold.button-dotted-white, .semibold.button-outline-dark-blue, .semibold.button-transparent, .semibold.button-white, .semibold.button-highlight-5, .semibold.button-highlight-4, .semibold.button-highlight-3, .semibold.button-highlight-2, .semibold.button-secondary, .nav-horizontal a.semibold, .btn.semibold {
  font-weight: 600;
}
.button.bold, .bold.button-arrow, .bold.button-prospectus-post, .bold.button-prospectus-download, .bold.button-twitter, .bold.button-course, .bold.button-print, .bold.button-prospectus, .bold.button-apply, .bold.button-workplace, .bold.button-dotted-white, .bold.button-outline-dark-blue, .bold.button-transparent, .bold.button-white, .bold.button-highlight-5, .bold.button-highlight-4, .bold.button-highlight-3, .bold.button-highlight-2, .bold.button-secondary, .nav-horizontal a.bold, .btn.bold {
  font-weight: 700;
}
@media (min-width: 769px) {
  .button.large, .large.button-arrow, .large.button-prospectus-post, .large.button-prospectus-download, .large.button-twitter, .large.button-course, .large.button-print, .large.button-prospectus, .large.button-apply, .large.button-workplace, .large.button-dotted-white, .large.button-outline-dark-blue, .large.button-transparent, .large.button-white, .large.button-highlight-5, .large.button-highlight-4, .large.button-highlight-3, .large.button-highlight-2, .large.button-secondary, .nav-horizontal a.large, .btn.large {
    padding: 1.6rem 3rem;
  }
  .button.xlarge, .xlarge.button-arrow, .xlarge.button-prospectus-post, .xlarge.button-prospectus-download, .xlarge.button-twitter, .xlarge.button-course, .xlarge.button-print, .xlarge.button-prospectus, .xlarge.button-apply, .xlarge.button-workplace, .xlarge.button-dotted-white, .xlarge.button-outline-dark-blue, .xlarge.button-transparent, .xlarge.button-white, .xlarge.button-highlight-5, .xlarge.button-highlight-4, .xlarge.button-highlight-3, .xlarge.button-highlight-2, .xlarge.button-secondary, .nav-horizontal a.xlarge, .btn.xlarge {
    padding: 2.6rem 4rem;
  }
}

.button-secondary, .nav-horizontal a {
  background-color: #777;
  border-color: #777;
}
.button-secondary:hover, .nav-horizontal a:hover {
  background-color: #FFF;
  color: #777;
}

.button-highlight-2 {
  background-color: #45A6EC;
  border-color: #45A6EC;
  color: black;
}
.button-highlight-2:hover {
  background-color: transparent;
  color: #45A6EC;
}

.button-highlight-3 {
  background-color: #066;
  border-color: #066;
}
.button-highlight-3:hover {
  background-color: #FFF;
  color: #066;
}

.button-highlight-4 {
  background-color: #8C0000;
  border-color: #8C0000;
}
.button-highlight-4:hover {
  background-color: #FFF;
  color: #8C0000;
}

.button-highlight-5 {
  background-color: #213462;
  border-color: #213462;
}
.button-highlight-5:hover {
  background-color: #FFF;
  color: #213462;
}

.button-white {
  background-color: #FFF;
  border-color: #FFF;
  color: #003399;
}
.button-white:hover {
  background-color: #003399;
  color: #FFF;
}

.button-transparent {
  background-color: transparent;
  border-color: #FFF;
  color: #FFF;
}
.button-transparent:hover {
  background-color: #fff;
  color: #003399;
}

.button-outline-dark-blue {
  background-color: transparent;
  border-color: #003399;
  color: #003399 !important;
}
.button-outline-dark-blue:hover {
  background-color: #003399;
  color: #FFFFFF !important;
}

.button-dotted-white {
  background-color: transparent;
  border-color: #FFFFFF;
  color: #FFFFFF !important;
  border-style: dotted;
}
.button-dotted-white:hover {
  background-color: transparent;
  border-color: #003399;
  color: #003399 !important;
}

.button-workplace {
  background-image: url(/site/images/icon/white/workplace.svg);
  background-position: 95% center;
  background-size: 19px 16px;
  padding-right: 10px;
  float: left;
  margin-left: 10px;
  background-color: transparent;
  border: 0;
}
.no-svg .button-workplace {
  background-image: url(/site/images/icon/white/workplace.png);
}
.button-workplace:hover {
  background-color: transparent;
  border: 0;
}

.button-prospectus {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
  background-position: 8px center;
  background-size: 33px 17px;
  padding-left: 48px;
}
.no-svg .button-prospectus {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}
.button-prospectus.no-text {
  padding-left: 32px;
}
.button-prospectus.button-highlight-3:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-builder.svg);
}
.no-svg .button-prospectus.button-highlight-3:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-builder.png);
}

.button-print {
  background-image: url(/site/images/icon/white/print.svg);
  background-position: 8px center;
  background-size: 18px 18px;
  padding-left: 36px;
}
.no-svg .button-print {
  background-image: url(/site/images/icon/white/print.png);
}
.button-print:hover {
  background-image: url(/site/images/icon/highlight/print.svg);
}
.no-svg .button-print:hover {
  background-image: url(/site/images/icon/highlight/print.png);
}

.button-course {
  background-image: url(/site/images/icon/white/course.svg);
  background-position: 9px center;
  background-size: 16px 15px;
  padding-left: 32px;
}
.no-svg .button-course {
  background-image: url(/site/images/icon/white/course.png);
}
.button-course.button-white {
  background-image: url(/site/images/icon/highlight/course.svg);
}
.no-svg .button-course.button-white {
  background-image: url(/site/images/icon/highlight/course.png);
}
.button-course.button-white:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .button-course.button-white:hover {
  background-image: url(/site/images/icon/white/course.png);
}

.button-twitter {
  background-image: url(/site/images/icon/white/twitter.svg);
  background-position: 20px center;
  background-size: 24px auto;
  padding-left: 6rem;
}
.no-svg .button-twitter {
  background-image: url(/site/images/icon/white/twitter.png);
}
.button-twitter:hover {
  background-image: url(/site/images/icon/highlight/twitter.svg);
}
.no-svg .button-twitter:hover {
  background-image: url(/site/images/icon/highlight/twitter.png);
}

.button-prospectus-download {
  background-image: url(/site/images/icon/white/prospectus-download.svg);
}
.button-prospectus-download.xlarge {
  background-position: 16px center;
  background-size: 59px 38px;
  padding-left: 92px;
}
.no-svg .button-prospectus-download.xlarge {
  background-image: url(/site/images/icon/white/prospectus-download-xlarge.png);
}
.button-prospectus-download.button-highlight-3:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-download.svg);
}
.no-svg .button-prospectus-download.button-highlight-3.xlarge:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-download-xlarge.png);
}

.button-prospectus-post {
  background-image: url(/site/images/icon/white/prospectus-post.svg);
}
.button-prospectus-post.xlarge {
  background-position: 16px center;
  background-size: 59px 34px;
  padding-left: 92px;
}
.no-svg .button-prospectus-post.xlarge {
  background-image: url(/site/images/icon/white/prospectus-post-xlarge.png);
}
.button-prospectus-post.button-highlight-3:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-post.svg);
}
.no-svg .button-prospectus-post.button-highlight-3.xlarge:hover {
  background-image: url(/site/images/icon/highlight-3/prospectus-post-xlarge.png);
}

.button-arrow {
  padding-right: 22px;
  position: relative;
}
.button-arrow:before {
  background-image: url(/site/images/icon/white/chevron-right.svg);
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  margin-top: -5px;
  right: 8px;
  top: 50%;
}
.no-svg .button-arrow:before {
  background-image: url(/site/images/icon/white/chevron-right.png);
}
.button-arrow:hover:before {
  background-image: url(/site/images/icon/highlight/chevron-right.svg);
}
.no-svg .button-arrow:hover:before {
  background-image: url(/site/images/icon/highlight/chevron-right.png);
}

.course-button {
  background-color: #777;
  color: #FFF;
  display: block;
  font-weight: 800;
  line-height: 1.2;
  padding: 15px;
  text-decoration: none;
  transition: background-color 0.3s, color 0.3s;
}
.course-button:hover {
  background-color: #FFF;
  color: #777;
}
.course-button[data-coursetype*=Full-Time] {
  background-color: #3D0051;
}
.course-button[data-coursetype*=Full-Time]:hover {
  background-color: #FFF;
  color: #3D0051;
}
.course-button[data-coursetype*=Full-Time].is-workplace:hover {
  background-image: url(/site/images/icon/highlight-3/workplace.svg);
}
.no-svg .course-button[data-coursetype*=Full-Time].is-workplace:hover {
  background-image: url(/site/images/icon/highlight-3/workplace.png);
}
.course-button[data-coursetype*=Part-Time], .course-button[data-coursetype*="Higher Education"] {
  background-color: #8C0000;
}
.course-button[data-coursetype*=Part-Time]:hover, .course-button[data-coursetype*="Higher Education"]:hover {
  background-color: #FFF;
  color: #8C0000;
}
.course-button[data-coursetype*=Part-Time].is-workplace:hover, .course-button[data-coursetype*="Higher Education"].is-workplace:hover {
  background-image: url(/site/images/icon/highlight-4/workplace.svg);
}
.no-svg .course-button[data-coursetype*=Part-Time].is-workplace:hover, .no-svg .course-button[data-coursetype*="Higher Education"].is-workplace:hover {
  background-image: url(/site/images/icon/highlight-4/workplace.png);
}
.course-button[data-coursetype*=Apprenticeship] {
  background-color: #004000;
}
.course-button[data-coursetype*=Apprenticeship]:hover {
  background-color: #FFF;
  color: #004000;
}
.course-button[data-coursetype*=Apprenticeship].is-workplace:hover {
  background-image: url(/site/images/icon/course-3/workplace.svg);
}
.no-svg .course-button[data-coursetype*=Apprenticeship].is-workplace:hover {
  background-image: url(/site/images/icon/course-3/workplace.png);
}
.course-button.is-workplace {
  background-image: url(/site/images/icon/white/workplace.svg);
  background-position: 95% center;
  background-size: 19px 16px;
  padding-right: 46px;
}
.no-svg .course-button.is-workplace {
  background-image: url(/site/images/icon/white/workplace.png);
}
.course-button.is-workplace:hover {
  background-image: url(/site/images/icon/grey/workplace.svg);
}
.no-svg .course-button.is-workplace:hover {
  background-image: url(/site/images/icon/grey/workplace.png);
}

.flag-loan {
  background: #003399;
  background-repeat: no-repeat;
  border: 1px solid #003399;
  border-radius: 0;
  color: #FFF;
  display: inline-block;
  font-family: "Poppins", sans-serif;
  font-size: 1.0769230769em;
  line-height: 1;
  padding: 7px 9px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s, color 0.3s;
}

.flag-loan {
  background-color: #3D0051;
  background-image: url(/site/images/icon/white/loan.svg);
  background-position: 5px center;
  border-color: #3D0051;
  padding-left: 32px;
}
.no-svg .flag-loan {
  background-image: url(/site/images/icon/white/loan.png);
}

.lnk-email {
  background-image: url(/site/images/icon/highlight/email.svg);
  background-position: 0 center;
  background-size: 19px 14px;
  padding-left: 28px;
  text-decoration: none;
}
.no-svg .lnk-email {
  background-image: url(/site/images/icon/highlight/email.png);
}

.video-embed-frame {
  padding-bottom: 56.25%;
  position: relative;
  width: 100%;
}
.video-embed-frame iframe {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
}

.video-embed-overlay {
  background-color: #fff;
  background-position: center center;
  background-size: cover;
  position: absolute;
  z-index: 20;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 1;
  filter: alpha(opacity=100);
  transition: opacity 0.3s;
}
.video-embed-overlay.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.video-embed-overlay:after {
  background-image: url(/site/images/icon/highlight/video-play.svg);
  content: "";
  height: 100px;
  width: 100px;
  top: 50%;
  left: 50%;
  margin-top: -50px;
  margin-left: -50px;
  opacity: 0.7;
  filter: alpha(opacity=70);
  position: absolute;
  transition: opacity 0.3s;
}
.no-svg .video-embed-overlay:after {
  background-image: url(/site/images/icon/highlight/video-play.png);
}
.video-embed-overlay:hover:after {
  opacity: 1;
  filter: alpha(opacity=100);
}

/* =======
   Overlay
   ======= */
.case-study-blocks h2 span, .news-blocks h2 span {
  background-color: transparent;
  display: inline-block;
  margin-left: -12px;
  padding: 6px 12px;
  transition: background-color 0.3s, color 0.3s;
}
.case-study-blocks h2:hover span, .news-blocks h2:hover span {
  background-color: #213462;
  color: #FFF;
}

.fadeblock {
  background-color: transparent;
  padding-left: 1px;
  padding-right: 1px;
  transition: background-color 0.3s, color 0.3s;
}
.fadeblock:hover {
  background-color: #003399;
  color: #FFF;
}

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

input, textarea {
  font-family: "Poppins", sans-serif;
}

textarea,
[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] {
  border-radius: 4px;
  background: #FFFFFF;
  height: 5rem;
  margin: 0;
  padding: 0 2rem;
  transition: box-shadow 0.3s ease-out;
  outline: none;
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
  border: 1px solid #999999;
  color: #000000;
  width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
}
textarea:focus, textarea:hover,
[type=text]:focus,
[type=text]:hover,
[type=password]:focus,
[type=password]:hover,
[type=datetime]:focus,
[type=datetime]:hover,
[type=datetime-local]:focus,
[type=datetime-local]:hover,
[type=date]:focus,
[type=date]:hover,
[type=month]:focus,
[type=month]:hover,
[type=time]:focus,
[type=time]:hover,
[type=week]:focus,
[type=week]:hover,
[type=number]:focus,
[type=number]:hover,
[type=email]:focus,
[type=email]:hover,
[type=url]:focus,
[type=url]:hover,
[type=search]:focus,
[type=search]:hover,
[type=tel]:focus,
[type=tel]:hover,
[type=color]:focus,
[type=color]:hover {
  border-color: #000000;
}
textarea:focus,
[type=text]:focus,
[type=password]:focus,
[type=datetime]:focus,
[type=datetime-local]:focus,
[type=date]:focus,
[type=month]:focus,
[type=time]:focus,
[type=week]:focus,
[type=number]:focus,
[type=email]:focus,
[type=url]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=color]:focus {
  border-color: #000000;
  box-shadow: 0 0 5px #003399;
}
textarea:-moz-placeholder,
[type=text]:-moz-placeholder,
[type=password]:-moz-placeholder,
[type=datetime]:-moz-placeholder,
[type=datetime-local]:-moz-placeholder,
[type=date]:-moz-placeholder,
[type=month]:-moz-placeholder,
[type=time]:-moz-placeholder,
[type=week]:-moz-placeholder,
[type=number]:-moz-placeholder,
[type=email]:-moz-placeholder,
[type=url]:-moz-placeholder,
[type=search]:-moz-placeholder,
[type=tel]:-moz-placeholder,
[type=color]:-moz-placeholder {
  color: rgba(153, 153, 153, 0.8);
  opacity: 1;
  font-size: 1.4rem;
}
textarea::-moz-placeholder,
[type=text]::-moz-placeholder,
[type=password]::-moz-placeholder,
[type=datetime]::-moz-placeholder,
[type=datetime-local]::-moz-placeholder,
[type=date]::-moz-placeholder,
[type=month]::-moz-placeholder,
[type=time]::-moz-placeholder,
[type=week]::-moz-placeholder,
[type=number]::-moz-placeholder,
[type=email]::-moz-placeholder,
[type=url]::-moz-placeholder,
[type=search]::-moz-placeholder,
[type=tel]::-moz-placeholder,
[type=color]::-moz-placeholder {
  color: rgba(153, 153, 153, 0.8);
  opacity: 1;
  font-size: 1.4rem;
}
textarea::-webkit-input-placeholder,
[type=text]::-webkit-input-placeholder,
[type=password]::-webkit-input-placeholder,
[type=datetime]::-webkit-input-placeholder,
[type=datetime-local]::-webkit-input-placeholder,
[type=date]::-webkit-input-placeholder,
[type=month]::-webkit-input-placeholder,
[type=time]::-webkit-input-placeholder,
[type=week]::-webkit-input-placeholder,
[type=number]::-webkit-input-placeholder,
[type=email]::-webkit-input-placeholder,
[type=url]::-webkit-input-placeholder,
[type=search]::-webkit-input-placeholder,
[type=tel]::-webkit-input-placeholder,
[type=color]::-webkit-input-placeholder {
  color: rgba(153, 153, 153, 0.8);
  opacity: 1;
  font-size: 1.4rem;
}
textarea:-ms-input-placeholder,
[type=text]:-ms-input-placeholder,
[type=password]:-ms-input-placeholder,
[type=datetime]:-ms-input-placeholder,
[type=datetime-local]:-ms-input-placeholder,
[type=date]:-ms-input-placeholder,
[type=month]:-ms-input-placeholder,
[type=time]:-ms-input-placeholder,
[type=week]:-ms-input-placeholder,
[type=number]:-ms-input-placeholder,
[type=email]:-ms-input-placeholder,
[type=url]:-ms-input-placeholder,
[type=search]:-ms-input-placeholder,
[type=tel]:-ms-input-placeholder,
[type=color]:-ms-input-placeholder {
  color: rgba(153, 153, 153, 0.8);
  opacity: 1;
  font-size: 1.4rem;
}
@media (min-width: 769px) {
  textarea,
[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] {
    height: 6rem;
  }
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.form-field, .main-col .content-block .form-query .form-field {
  max-height: 999999px;
}
.form-field > p, .main-col .content-block .form-query .form-field > p {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #FFFFFF;
  margin: 1rem 0 3rem;
}
.form-field > label, .main-col .content-block .form-query .form-field > label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: justify;
      justify-content: space-between;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  padding-bottom: 8px;
  word-wrap: normal;
  color: #FFFFFF;
}
.form-field > label span, .main-col .content-block .form-query .form-field > label span {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  letter-spacing: -0.01em;
  padding-left: 2rem;
  display: inline-block;
  -ms-flex-positive: 0;
      flex-grow: 0;
}
.form-field + .form-field, .main-col .content-block .form-query .form-field + .form-field {
  margin-top: 2rem;
}
@media (min-width: 769px) {
  .form-field > p, .main-col .content-block .form-query .form-field > p {
    font-size: 1.6rem;
  }
  .form-field + .form-field, .main-col .content-block .form-query .form-field + .form-field {
    margin-top: 3rem;
  }
}

.form-field label.error, .main-col .content-block .form-query .form-field label.error, .form-field .main-col .content-block .form-application .form-field-section label.error-text, .main-col .content-block .form-application .form-field-section .form-field label.error-text, .form-field span.error, .main-col .content-block .form-query .form-field span.error, .open-quali-button + .error, .main-col .content-block .form-application .form-field-section .open-quali-button + label.error-text {
  display: inline-block !important;
  padding-top: 8px;
  color: #CD2C27;
  font-size: 1.4rem;
  letter-spacing: -0.02em;
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
  padding-bottom: 0;
}

.form-input .input-checkbox input[type=checkbox] {
  height: 0;
  opacity: 0;
  width: 0;
}
.form-input .input-checkbox input[type=checkbox] + label {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.01em;
  color: #FFFFFF;
  position: relative;
  padding-left: 4.5rem;
  display: inline-block;
}
.form-input .input-checkbox input[type=checkbox] + label:before {
  content: "";
  display: block;
  width: 3rem;
  height: 3rem;
  border: 1px solid #999999;
  border-radius: 4px;
  background: #FFFFFF;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.form-input .input-checkbox input[type=checkbox] + label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMiAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA2LjMzMzMzTDQuMjE0MjkgOSAxMSAxIiBzdHJva2U9IiMyMTM0NjIiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 11px;
  width: 3rem;
  height: 3rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.form-input .input-checkbox input[type=checkbox]:focus + label::before {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}
.form-input .input-checkbox input[type=checkbox]:checked + label:after {
  opacity: 1;
}

.form-input.input-checkbox-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.form-input.input-checkbox-group .input-checkbox {
  max-width: 100%;
}
.form-input.input-checkbox-group .input-checkbox + .input-checkbox {
  margin-top: 2.6rem;
}
.form-input.input-checkbox-group.horizontal {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: -1rem;
}
.form-input.input-checkbox-group.horizontal > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.form-input.input-checkbox-group.horizontal .input-checkbox {
  margin: 1rem 0;
}
.form-input.input-checkbox-group.horizontal .input-checkbox + .input-checkbox {
  margin-top: 1rem;
}
@media (min-width: 769px) {
  .form-input.input-checkbox-group.horizontal {
    margin-top: -1.5rem;
  }
  .form-input.input-checkbox-group.horizontal > * {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
  }
  .form-input.input-checkbox-group.horizontal .input-checkbox {
    margin: 1.5rem 0;
  }
  .form-input.input-checkbox-group.horizontal .input-checkbox + .input-checkbox {
    margin-top: 1.5rem;
  }
}

.form-input-textarea textarea {
  resize: none;
  height: auto;
  padding: 1.5rem 2rem;
  white-space: normal;
  text-overflow: initial;
}

.form-input.complex-input {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
}
.form-input.complex-input .button, .form-input.complex-input .button-secondary, .form-input.complex-input .nav-horizontal a, .nav-horizontal .form-input.complex-input a, .form-input.complex-input .button-highlight-2, .form-input.complex-input .button-highlight-3, .form-input.complex-input .button-highlight-4, .form-input.complex-input .button-highlight-5, .form-input.complex-input .button-white, .form-input.complex-input .button-transparent, .form-input.complex-input .button-outline-dark-blue, .form-input.complex-input .button-dotted-white, .form-input.complex-input .button-workplace, .form-input.complex-input .button-apply, .form-input.complex-input .button-prospectus, .form-input.complex-input .button-print, .form-input.complex-input .button-course, .form-input.complex-input .button-twitter, .form-input.complex-input .button-prospectus-download, .form-input.complex-input .button-prospectus-post, .form-input.complex-input .button-arrow {
  width: 100%;
  height: 5rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: 1rem;
}
@media (min-width: 769px) {
  .form-input.complex-input {
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .form-input.complex-input [type=text] {
    -ms-flex-positive: 1;
        flex-grow: 1;
    border-radius: 4px 0 0 4px;
  }
  .form-input.complex-input .button, .form-input.complex-input .button-secondary, .form-input.complex-input .nav-horizontal a, .nav-horizontal .form-input.complex-input a, .form-input.complex-input .button-highlight-2, .form-input.complex-input .button-highlight-3, .form-input.complex-input .button-highlight-4, .form-input.complex-input .button-highlight-5, .form-input.complex-input .button-white, .form-input.complex-input .button-transparent, .form-input.complex-input .button-outline-dark-blue, .form-input.complex-input .button-dotted-white, .form-input.complex-input .button-workplace, .form-input.complex-input .button-apply, .form-input.complex-input .button-prospectus, .form-input.complex-input .button-print, .form-input.complex-input .button-course, .form-input.complex-input .button-twitter, .form-input.complex-input .button-prospectus-download, .form-input.complex-input .button-prospectus-post, .form-input.complex-input .button-arrow {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    width: auto;
    height: 6rem;
    margin-top: 0;
  }
}

.other-input, .refugee-field, .other-first-lang-field, .quali-explain-field, .js-employ-section, .under19-living-section, .second-contact-section, .addresses-list-container, .payment-address-section, .apprenticeship-fulltime, .EHCP-field, .receive-fund-field, .armed-forces-field, .household-field, .eu-resident-field, .agreement-wrapper {
  width: 100%;
}
.other-input.hide-animation, .refugee-field.hide-animation, .other-first-lang-field.hide-animation, .quali-explain-field.hide-animation, .js-employ-section.hide-animation, .under19-living-section.hide-animation, .second-contact-section.hide-animation, .addresses-list-container.hide-animation, .payment-address-section.hide-animation, .apprenticeship-fulltime.hide-animation, .EHCP-field.hide-animation, .receive-fund-field.hide-animation, .armed-forces-field.hide-animation, .household-field.hide-animation, .eu-resident-field.hide-animation, .agreement-wrapper.hide-animation {
  transform: scaleY(0);
  overflow: hidden;
  height: 0;
  transform-origin: top;
  transition: all 0.42s ease;
  margin-top: 0;
}
.other-input.hide-animation.show, .refugee-field.hide-animation.show, .other-first-lang-field.hide-animation.show, .quali-explain-field.hide-animation.show, .js-employ-section.hide-animation.show, .under19-living-section.hide-animation.show, .second-contact-section.hide-animation.show, .addresses-list-container.hide-animation.show, .payment-address-section.hide-animation.show, .apprenticeship-fulltime.hide-animation.show, .EHCP-field.hide-animation.show, .receive-fund-field.hide-animation.show, .armed-forces-field.hide-animation.show, .household-field.hide-animation.show, .eu-resident-field.hide-animation.show, .agreement-wrapper.hide-animation.show {
  transform: scaleY(1);
  height: auto;
  margin-top: 2rem;
}
@media (min-width: 769px) {
  .other-input.hide-animation.show, .refugee-field.hide-animation.show, .other-first-lang-field.hide-animation.show, .quali-explain-field.hide-animation.show, .js-employ-section.hide-animation.show, .under19-living-section.hide-animation.show, .second-contact-section.hide-animation.show, .addresses-list-container.hide-animation.show, .payment-address-section.hide-animation.show, .apprenticeship-fulltime.hide-animation.show, .EHCP-field.hide-animation.show, .receive-fund-field.hide-animation.show, .armed-forces-field.hide-animation.show, .household-field.hide-animation.show, .eu-resident-field.hide-animation.show, .agreement-wrapper.hide-animation.show {
    margin-top: 3rem;
  }
}
.other-input + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .refugee-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .other-first-lang-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .quali-explain-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .js-employ-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .under19-living-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .second-contact-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .addresses-list-container + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .payment-address-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .apprenticeship-fulltime + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .EHCP-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .receive-fund-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .armed-forces-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .household-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .eu-resident-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .agreement-wrapper + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field) {
  margin-top: 2rem;
}
@media (min-width: 769px) {
  .other-input + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .refugee-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .other-first-lang-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .quali-explain-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .js-employ-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .under19-living-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .second-contact-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .addresses-list-container + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .payment-address-section + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .apprenticeship-fulltime + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .EHCP-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .receive-fund-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .armed-forces-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .household-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .eu-resident-field + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field), .agreement-wrapper + .form-field:not(.EHCP-field):not(.receive-fund-field):not(.armed-forces-field) {
    margin-top: 3rem;
  }
}

.form-field.wider.agreement-wrapper.hide-animation.js-refund-policy.show {
  padding-top: 5px;
}

.input-checkbox label a {
  text-decoration: underline;
}

.input-type-1 {
  left: -9999px;
  position: absolute;
}

input[readonly] {
  background-color: #EEE;
}
input[readonly]:focus {
  background-color: #EEE;
  border-color: #AAA;
}

select::-ms-expand {
  display: none;
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 4px;
  background-color: #FFFFFF;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMWw1IDUgNS01IiBzdHJva2U9IiMyMTM0NjIiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-position: center right 2rem;
  height: 6rem;
  width: 100%;
  border: 1px solid #999999;
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
  transition: box-shadow 0.3s ease-out;
  outline: none;
  padding: 0 3.5rem 0 2rem;
}
select:focus, select:hover {
  border-color: #000000;
}
select:focus {
  box-shadow: 0 0 5px #003399;
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}
select:disabled, select:disabled:hover {
  opacity: 0.75;
  border-color: #999999;
  background-color: rgba(0, 0, 0, 0.35);
}

.niceselect-wrapper {
  background-color: #FFFFFF;
  color: #000000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  height: 6rem;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  padding: 0 4rem 0 2rem;
  position: relative;
  text-align: left;
  transition: box-shadow 0.3s ease-out;
  z-index: 1;
  border-radius: 4px;
}
.niceselect-wrapper.focus {
  border-color: #000000;
  box-shadow: 0 0 5px #003399;
}
.niceselect-wrapper.niceselect-default {
  color: rgba(153, 153, 153, 0.8);
}
.niceselect-wrapper .niceselect-text {
  -ms-flex-positive: 1;
      flex-grow: 1;
  font-size: 1.4rem;
  line-height: 1.5;
  opacity: 1;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-right: 2rem;
}
@media (max-width: 414px) {
  .niceselect-wrapper .niceselect-text {
    padding-right: 0;
  }
}
.niceselect-wrapper select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  border: none;
  z-index: 10;
  outline: none;
  border-radius: 4px;
  border: 1px solid #999999;
  text-overflow: ellipsis;
}

.multiple-select {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin: 0 -0.5rem;
}
.multiple-select > * {
  margin: 0 0.5rem;
}
@media (min-width: 769px) {
  .multiple-select {
    margin: 0 -1rem;
  }
  .multiple-select > * {
    margin: 0 1rem;
  }
}

.input-radio-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.input-radio-group .input-radio {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  font-size: 1.4rem;
  transition: margin-right 0.15s linear;
  margin: 0;
}
.input-radio-group .input-radio label {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  z-index: 10;
  height: 6rem;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  margin-bottom: 0;
  overflow: hidden;
  cursor: pointer;
  padding: 0 2rem;
  line-height: 1.4375;
  font-weight: 400;
  text-align: center;
  color: #444444;
  background: #FFFFFF;
  border: 1px solid #CCCCCC;
  border-radius: 4px 0px 0px 4px;
  transition: background 0.3s ease-out, color 0.3s ease-out, border-color 0.3s ease-out;
}
.input-radio-group .input-radio label::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 11px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMiAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA2LjMzMzMzTDQuMjE0MjkgOSAxMSAxIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: 12px 11px;
  opacity: 0;
  transition: opacity 0.125s linear 0.125s, width 0.125s linear 0.125s;
}
.input-radio-group .input-radio input[type=radio] {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-radio-group .input-radio input[type=radio]:checked + label {
  color: #FFFFFF;
  border-color: #213462;
  background: #213462;
}
.input-radio-group .input-radio input[type=radio]:checked + label::after {
  width: 12px;
  opacity: 1;
}
.input-radio-group .input-radio input[type=radio]:focus + label {
  color: #FFFFFF;
  border-color: #213462;
  background: #213462;
}
.input-radio-group .input-radio + .input-radio label {
  border-radius: 0px 4px 4px 0px;
}

.input-radio-simple-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: -1.2rem;
}
.input-radio-simple-group .input-radio-simple {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  font-size: 1.6rem;
  margin: 0;
  padding-top: 0.3rem;
  padding-bottom: 0.3rem;
  margin-top: 1.2rem;
}
.input-radio-simple-group .input-radio-simple label {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.01em;
  color: #213462;
  padding-left: 4.5rem;
  position: relative;
  display: block;
  cursor: pointer;
}
.input-radio-simple-group .input-radio-simple label:before {
  content: "";
  display: block;
  border: 1px solid #999999;
  border-radius: 50%;
  background: #FFFFFF;
  position: absolute;
  top: 50%;
  left: 0;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
}
.input-radio-simple-group .input-radio-simple label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMiAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA2LjMzMzMzTDQuMjE0MjkgOSAxMSAxIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 11px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.2s linear;
}
.input-radio-simple-group .input-radio-simple input[type=radio] {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-radio-simple-group .input-radio-simple input[type=radio]:checked + label::before {
  border-color: #213462;
}
.input-radio-simple-group .input-radio-simple input[type=radio]:checked + label::after {
  opacity: 1;
  background-color: #213462;
}
.input-radio-simple-group.vertical {
  -ms-flex-align: start;
      align-items: flex-start;
  margin-top: 0;
}
.input-radio-simple-group.vertical .input-radio-simple {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-top: 1.6rem;
}
@media (min-width: 769px) {
  .input-radio-simple-group .input-radio-simple {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
@media (min-width: 1201px) {
  .input-radio-simple-group .input-radio-simple {
    -ms-flex-preferred-size: 23.8%;
        flex-basis: 23.8%;
  }
}

.input-radio-tag {
  font-size: 1.4rem;
  line-height: 1.357;
  margin: 0.5rem;
  transition: margin-right 0.15s linear;
}
.input-radio-tag label {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  z-index: 10;
  height: 5rem;
  margin-bottom: 0;
  overflow: hidden;
  cursor: pointer;
  padding: 0 2rem;
  line-height: 1.357;
  font-weight: 400;
  text-align: center;
  color: #213462;
  background: #FFFFFF;
  border: 2px solid #213462;
  border-radius: 34px;
  transition: background 0.3s ease-out, color 0.3s ease-out, border-color 0.3s ease-out;
}
.input-radio-tag label::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 11px;
  margin-left: 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMiAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA2LjMzMzMzTDQuMjE0MjkgOSAxMSAxIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: 12px 11px;
  opacity: 0;
  transition: opacity 0.125s linear 0.125s, width 0.125s linear 0.125s, margin-left 0.125s linear 0.125s;
}
.input-radio-tag input[type=radio] {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-radio-tag input[type=radio]:checked + label {
  color: #FFFFFF;
  border-color: #213462;
  background: #213462;
}
.input-radio-tag input[type=radio]:checked + label::after {
  width: 12px;
  opacity: 1;
  margin-left: 2rem;
}
.input-radio-tag input[type=radio]:focus + label {
  color: #FFFFFF;
  border-color: #213462;
  background: #213462;
}
.input-radio-tag.purple label {
  color: #3D0051;
  border-color: #3D0051;
}
.input-radio-tag.purple input[type=radio]:checked + label, .input-radio-tag.purple input[type=radio]:focus + label {
  border-color: #3D0051;
  background: linear-gradient(182.86deg, #3D0051 0%, #661880 100%);
}
.input-radio-tag.red label {
  color: #8C0000;
  border-color: #8C0000;
}
.input-radio-tag.red input[type=radio]:checked + label, .input-radio-tag.red input[type=radio]:focus + label {
  border-color: #8C0000;
  background: linear-gradient(182.86deg, #8C0000 0%, #C92A2A 99.42%);
}
.input-radio-tag.green label {
  color: #004000;
  border-color: #004000;
}
.input-radio-tag.green input[type=radio]:checked + label, .input-radio-tag.green input[type=radio]:focus + label {
  border-color: #004000;
  background: linear-gradient(182.91deg, #004000 1.08%, #168216 100%);
}
.input-radio-tag.pink label {
  color: #F41D68;
  border-color: #F41D68;
}
.input-radio-tag.pink input[type=radio]:checked + label, .input-radio-tag.pink input[type=radio]:focus + label {
  border-color: #F41D68;
  background: linear-gradient(182.91deg, #A41346 1.08%, #F41D68 100%);
}

.tooltip-container {
  width: 100%;
  height: 6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  margin-left: 2rem;
}
.tooltip-container .tooltip {
  position: relative;
  display: inline;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  color: #003399;
  text-decoration: underline;
  letter-spacing: -0.01em;
  z-index: 2;
  cursor: pointer;
}
.tooltip-container .tooltip::before, .tooltip-container .tooltip::after {
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  pointer-events: none;
}
.tooltip-container .tooltip:before {
  content: attr(data-tooltip);
  position: absolute;
  left: 100%;
  bottom: 150%;
  width: 22rem;
  margin-bottom: 5px;
  margin-left: -80px;
  padding: 1rem 1.5rem;
  border-radius: 8px;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
  color: #FFFFFF;
  background-color: #444444;
}
.tooltip-container .tooltip::after {
  content: " ";
  position: absolute;
  left: 50%;
  bottom: 150%;
  width: 0;
  margin-left: -5px;
  border-top: 5px solid #444444;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  font-size: 0;
  line-height: 0;
}
.tooltip-container .tooltip:hover::before, .tooltip-container .tooltip:hover::after {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

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

.lbl {
  color: #999;
  line-height: 15px;
  text-transform: uppercase;
}

.other-field {
  display: none;
}
.other-field.show {
  display: block;
}

.checkbox {
  display: inline-block;
  margin-bottom: 30px;
  margin-right: 30px;
  overflow: hidden;
  position: relative;
}
.checkbox input {
  position: absolute;
  left: -999%;
}
.checkbox input:checked + .box {
  background-color: #003399;
  border-color: #003399;
}
.checkbox input:checked ~ .lbl {
  color: #003399;
  font-weight: 800;
}
.checkbox label {
  margin-left: 0;
}
.checkbox .box {
  background-image: url(/site/images/icon/white/tick.svg);
  background-position: center center;
  background-size: 24px 22px;
  border: 1px solid #AAA;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  vertical-align: middle;
  transition: background-color 0.3s;
}
.no-svg .checkbox .box {
  background-image: url(/site/images/icon/white/tick.png);
}

.checkbox-list {
  margin-top: 10px;
}
.checkbox-list label {
  color: #003399;
  display: block;
}
.checkbox-list label + label {
  margin-top: 10px;
}
.checkbox-list input {
  position: absolute;
  left: -999%;
}
.checkbox-list input:checked + .box {
  background-color: #003399;
  border-color: #003399;
}
.checkbox-list input:checked ~ .lbl {
  color: #003399;
}
.checkbox-list .lbl {
  color: #003399;
  display: block;
  margin-left: 25px;
  text-transform: none;
}
.checkbox-list .box {
  background-image: url(/site/images/icon/white/tick.svg);
  background-position: center center;
  background-size: 12px 11px;
  border: 1px solid #AAA;
  float: left;
  width: 15px;
  height: 15px;
  margin-right: 10px;
  vertical-align: middle;
  transition: background-color 0.3s;
}
.no-svg .checkbox-list .box {
  background-image: url(/site/images/icon/white/tick.png);
}
.checkbox-list + input {
  margin-top: 20px;
}

:-moz-placeholder {
  color: #666666;
  opacity: 1;
}

::-moz-placeholder {
  color: #666666;
  opacity: 1;
}

::-webkit-input-placeholder {
  color: #666666;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #666666;
  opacity: 1;
}

.placeholder-replacement {
  color: #666666;
  opacity: 1;
}

label.error, .main-col .content-block .form-application .form-field-section label.error-text {
  color: #F00;
}

.form-item {
  margin-bottom: 10px;
}
.form-item label {
  display: block;
}
.input-group {
  display: table;
  width: 100%;
}
.input-group > * {
  display: table-cell;
}

.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: 1rem;
  padding: 1rem;
}
.alert-success *, .alert-warning *, .alert-error * {
  margin: 0;
}
.alert-success * + *, .alert-warning * + *, .alert-error * + * {
  margin-top: 1rem;
}

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

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

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

.hover {
  cursor: pointer;
}

.small {
  font-size: 0.6923076923em;
}

.xsmall {
  font-size: 0.6153846154em;
}

.large {
  font-size: 1.0769230769em;
}

.xlarge {
  font-size: 1.2307692308em;
}

.introtext {
  color: #003399;
  font-size: 1.3846153846em;
}

.colour-highlight {
  color: #003399;
}

.dashed {
  border-bottom: 1px dashed #003399;
}

.display-inline {
  display: inline;
}

.display-inline-block {
  display: inline-block;
}

table {
  max-width: 100%;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .gt-ie9 .tbl-mobile, .gt-ie9 .tbl-course, .gt-ie9 .tbl-mobile table, .gt-ie9 .tbl-course table, .gt-ie9 .tbl-mobile tbody, .gt-ie9 .tbl-course tbody, .gt-ie9 .tbl-mobile tr, .gt-ie9 .tbl-course tr, .gt-ie9 .tbl-mobile td, .gt-ie9 .tbl-course td {
    display: block;
  }
  .gt-ie9 .tbl-mobile thead, .gt-ie9 .tbl-course thead, .gt-ie9 .tbl-mobile th, .gt-ie9 .tbl-course th {
    display: none;
  }
}

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

/* ShareThis */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-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-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;
  margin-left: auto;
  margin-right: auto;
}
.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;
  left: 0;
  bottom: 0;
  width: 4.8rem;
  height: 4rem;
  display: block;
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  color: transparent;
  background: #FFFFFF;
  cursor: pointer;
  overflow: hidden;
  z-index: 1;
}
.slick-prev:focus, .slick-next:focus {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}
.slick-prev.slick-disabled::before, .slick-next.slick-disabled::before {
  opacity: 0.25;
}

.slick-prev::before, .slick-next::before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxOSAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAgNUgxOE0xOCA1TDEzLjUgMU0xOCA1TDEzLjUgOSIgc3Ryb2tlPSJibGFjayIvPgo8L3N2Zz4K");
  background-repeat: no-repeat;
  background-size: 19px 10px;
  background-position: center center;
  background-color: #FFFFFF;
  width: 4.8rem;
  height: 4rem;
  display: inline-block;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 0;
  transform-origin: top center;
}

.slick-prev {
  left: 0;
}
.slick-prev::before {
  transform: rotate(180deg) translateY(-50%);
}

.slick-next {
  left: 4.8rem;
  border-radius: 0px 5px 0px 0px;
}
.slick-next:before {
  transform: rotate(0deg) translateY(-50%);
}

.slick-dots {
  position: absolute;
  right: 0;
  bottom: 0;
  list-style: none;
  background: #FFFFFF;
  border-radius: 5px 0px 0px 0px;
  margin: 0;
  padding: 0 1rem !important;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  cursor: pointer;
  padding: 0 !important;
}
.slick-dots li:before {
  width: 0 !important;
  height: 0 !important;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button::before {
  content: "舦";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  font-family: "slick";
  font-size: 0.6rem;
  line-height: 12px;
  text-align: center;
  color: #CCCCCC;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button::before {
  color: #000000;
}
.prospectus-selector .form-item {
  display: inline-block;
}
.prospectus-selector .checkbox {
  margin-bottom: 0;
}

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

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

.wrap {
  margin: auto;
  max-width: 120rem;
  width: 100%;
}
@media (min-width: 1200px) {
  .wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

.content-wrap {
  max-width: 120rem;
}

.fullwidth-wrap {
  max-width: 100%;
}

.block-center {
  max-width: 78rem;
  margin-left: auto;
  margin-right: auto;
}

.content-block-layout {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.content-block-layout .left-col, .content-block-layout .right-col {
  overflow: hidden;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-order: 1;
      order: 1;
}
.content-block-layout .left-col + .main-col, .content-block-layout .right-col + .main-col {
  -ms-flex-order: 0;
      order: 0;
}
@media (min-width: 1025px) {
  .content-block-layout {
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .content-block-layout .left-col {
    -ms-flex-preferred-size: 33.33%;
        flex-basis: 33.33%;
    -ms-flex-order: 0;
        order: 0;
  }
  .content-block-layout .left-col + .main-col {
    -ms-flex-preferred-size: 66.67%;
        flex-basis: 66.67%;
    -ms-flex-order: 1;
        order: 1;
  }
  .content-block-layout .right-col {
    -ms-flex-preferred-size: 33.33%;
        flex-basis: 33.33%;
    -ms-flex-order: 1;
        order: 1;
  }
  .content-block-layout .right-col + .main-col {
    -ms-flex-preferred-size: 66.67%;
        flex-basis: 66.67%;
    -ms-flex-order: 0;
        order: 0;
  }
}

.content-block-layout + .content-block-layout, .content-block-layout + .content-block {
  margin-top: 3rem;
}
@media (min-width: 769px) {
  .content-block-layout + .content-block-layout, .content-block-layout + .content-block {
    margin-top: 4rem;
  }
}
@media (min-width: 1025px) {
  .content-block-layout + .content-block-layout, .content-block-layout + .content-block {
    margin-top: 5.6rem;
  }
}

.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) {
  .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;
  }
}

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

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

.content-block {
  padding-left: 3rem;
  padding-right: 3rem;
}

.left-col .content-block, .right-col .content-block, .left-col + .main-col .content-block, .right-col + .main-col .content-block {
  padding-left: 3rem;
  padding-right: 3rem;
}
.left-col .content-block + .content-block, .right-col .content-block + .content-block, .left-col + .main-col .content-block + .content-block, .right-col + .main-col .content-block + .content-block {
  margin-top: 4rem;
}
.left-col .content-block + .accreditations, .right-col .content-block + .accreditations, .left-col + .main-col .content-block + .accreditations, .right-col + .main-col .content-block + .accreditations {
  margin-top: 10px;
}
@media (min-width: 1025px) {
  .left-col .content-block, .right-col .content-block, .left-col + .main-col .content-block, .right-col + .main-col .content-block {
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .left-col .content-block + .content-block, .right-col .content-block + .content-block, .left-col + .main-col .content-block + .content-block, .right-col + .main-col .content-block + .content-block {
    margin-top: 5.6rem;
  }
}

@media (min-width: 920px) {
  .split-2 {
    display: -ms-flexbox;
    display: flex;
  }
  .split-2 > .col {
    width: 50%;
  }
  .split-2 > .col:first-child {
    padding-right: 20px;
  }
  .split-2 > .col:last-child {
    padding-left: 20px;
  }
}

.split-3 > .col + .col {
  margin-top: 3rem;
}
@media (min-width: 920px) {
  .split-3 > .col {
    float: left;
    width: 33.3333333333%;
  }
  .split-3 > .col + .col {
    margin-top: 0;
  }
}

.main-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.left-content {
  -ms-flex-preferred-size: 66.667%;
      flex-basis: 66.667%;
}

.right-content {
  -ms-flex-preferred-size: 33.333%;
      flex-basis: 33.333%;
}

.content-layout {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  width: 100%;
}
.content-layout .left-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.content-layout.right-left, .content-layout.left-right {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}
.content-layout.right-left .right-content, .content-layout.left-right .right-content {
  display: none;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .content-layout.right-left .right-content, .content-layout.left-right .right-content {
    max-width: 33.333%;
  }
}
.content-layout.right-left .left-content, .content-layout.left-right .left-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .content-layout.right-left .left-content, .content-layout.left-right .left-content {
    max-width: 100%;
  }
}
@media (min-width: 1025px) {
  .content-layout.right-left .right-content, .content-layout.left-right .right-content {
    display: -ms-flexbox;
    display: flex;
  }
  .content-layout.right-left .left-content, .content-layout.left-right .left-content {
    -ms-flex-preferred-size: 66.67%;
        flex-basis: 66.67%;
  }
}
@media screen and (min-width: 1025px) and (-ms-high-contrast: active), (min-width: 1025px) and (-ms-high-contrast: none) {
  .content-layout.right-left .left-content, .content-layout.left-right .left-content {
    max-width: 66.667%;
  }
}
.content-layout.left-right {
  -ms-flex-direction: row;
      flex-direction: row;
}

.one-col > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .one-col > * {
    max-width: 100%;
  }
}

.two-cols > * {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols > * {
    max-width: 50%;
  }
}

.five-cols > * {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .five-cols > * {
    max-width: 20%;
  }
}

.three-cols > * {
  -ms-flex-preferred-size: calc(33.33% - 5px);
      flex-basis: calc(33.33% - 5px);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .three-cols > * {
    max-width: calc(33.33% - 5px);
  }
}

.four-cols > * {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .four-cols > * {
    max-width: 25%;
  }
}

@media (max-width: 768px) {
  .two-cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .two-cols > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
@media (max-width: 768px) and (-ms-high-contrast: none), (max-width: 768px) and (-ms-high-contrast: active) {
  .two-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 920px) {
  .three-cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .three-cols > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
@media (max-width: 920px) and (-ms-high-contrast: none), (max-width: 920px) and (-ms-high-contrast: active) {
  .three-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 920px) {
  .five-cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .five-cols > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
@media (max-width: 920px) and (-ms-high-contrast: none), (max-width: 920px) and (-ms-high-contrast: active) {
  .five-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 920px) {
  .four-cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .four-cols > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
@media (max-width: 920px) and (-ms-high-contrast: none), (max-width: 920px) and (-ms-high-contrast: active) {
  .four-cols > * {
    max-width: 100%;
  }
}
.text-thumbnail .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*
	=============
	Cards
	=============
*/
.promo-card, .news-card, .upcoming-event-card, .course-card, .career-card, .case-study-card, .staff-card {
  padding: 0 1rem;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-decoration: none;
  cursor: pointer;
}

.news-card .readmore-button, .case-study-card .readmore-button {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.01em;
  color: #003399;
  line-height: 1.5;
  text-decoration: underline;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: none;
  padding: 0;
  margin-top: 1rem;
}

.promos {
  padding-left: 1rem;
  padding-right: 1rem;
}
.promos > *:first-child .text-thumbnail::after {
  background: linear-gradient(257.67deg, #3D0051 0%, #661880 100%);
}
.promos > *:nth-child(2) .text-thumbnail::after {
  background: linear-gradient(257.67deg, #8C0000 0%, #C92A2A 99.42%);
}
.promos > *:last-child .text-thumbnail::after {
  background: linear-gradient(257.85deg, #004000 1.08%, #168216 100%);
}

.promo-card {
  padding: 0;
  margin-right: 5px;
}
.promo-card .inner {
  display: block;
  height: 100%;
  padding: 1rem 2rem 3rem;
  z-index: 2;
}
.promo-card .inner .inner-header, .promo-card .inner .content {
  width: 100%;
}
.promo-card .inner h1, .promo-card .inner p {
  width: 100%;
  margin: 0;
}
.promo-card .inner .inner-header h1 {
  margin-bottom: 1.6rem;
}
.promo-card .inner .inner-header h1.word-break-all {
  word-break: break-all;
}
.promo-card .inner img {
  position: absolute;
  right: 2rem;
  bottom: 3rem;
  width: 6rem;
  height: 6rem;
}
.promo-card .inner .content p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.03em;
}
.promo-card .inner .content p ~ p {
  margin-top: 1rem;
}
.promo-card .inner .content p:last-child {
  padding-right: 7rem;
}
.promo-card + .promo-card {
  padding-top: 1rem;
}
.promo-card.darkblue {
  border-top: 25px solid #222C4F;
}
.promo-card.brightblue {
  border-top: 25px solid #00afea;
}
.promo-card.green {
  border-top: 25px solid #55B45E;
}
.promo-card.altgreen {
  border-top: 25px solid #99ff33;
}
.promo-card.blue {
  border-top: 25px solid #26448E;
}
.promo-card.darkblue {
  border-top: 25px solid #222c4f;
}
.promo-card.altblue {
  border-top: 25px solid #6699ff;
}
.promo-card.orange {
  border-top: 25px solid #F67238;
}
.promo-card.pink {
  border-top: 25px solid #F34497;
}
.promo-card.yellow {
  border-top: 25px solid #FFCC00;
}
.promo-card.purple {
  border-top: 25px solid #6c5ca7;
}
.promo-card.full-width {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.promo-card.full-width .inner {
  min-height: 12rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .promo-card.full-width {
    max-width: 100%;
  }
}
.promo-card.half-width {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
.promo-card.half-width .inner {
  min-height: 12rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .promo-card.half-width {
    max-width: 100%;
  }
}
.promo-card.tooltip {
  position: relative;
}
.promo-card.tooltip::before, .promo-card.tooltip::after {
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  pointer-events: none;
}
.promo-card.tooltip:before {
  content: attr(data-tooltip);
  position: absolute;
  left: calc((100% - 30rem) * 0.5);
  bottom: 100%;
  width: 30rem;
  padding: 1rem 1.5rem;
  margin-bottom: 5px;
  border-radius: 6px;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: left;
  color: #FFFFFF;
  background-color: inherit;
  box-shadow: 0px 2px 8px 2px rgba(0, 0, 0, 0.35);
}
.promo-card.tooltip::after {
  content: " ";
  position: absolute;
  left: calc(50% - 3px);
  bottom: 100%;
  width: 0;
  border-top: 5px solid #444444;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  font-size: 0;
  line-height: 0;
}
.promo-card.tooltip:hover::before, .promo-card.tooltip:hover::after {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}
.promo-card.larger .inner {
  position: relative;
  background-size: 200px auto;
  background-position: right bottom;
  min-height: 26.5rem;
}
.promo-card.larger .inner .inner-header {
  position: absolute;
  top: 3rem;
  right: 2rem;
  width: auto;
  height: auto;
}
.promo-card.larger .inner .inner-header h1 {
  display: inline-block;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  margin-bottom: 0;
}
.promo-card.larger .inner .content {
  padding-right: 4rem;
}
.promo-card.larger .inner .content h3 {
  line-height: 1.2;
  word-break: break-all;
  color: #FFFFFF;
  margin: 0 0 1.2rem;
  text-transform: uppercase;
}
.promo-card.larger .inner .content p, .promo-card.larger .inner .content a {
  position: relative;
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.03em;
  color: #FFFFFF;
  text-decoration: none;
  max-width: 42.5rem;
  padding-left: 4rem;
}
.promo-card.larger .inner .content p::before, .promo-card.larger .inner .content a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 28px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzciIGhlaWdodD0iNzYiIHZpZXdCb3g9IjAgMCA3NyA3NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSAxaDY0LjV2N0g4djU5LjVoNTRWMzVoN3YzOS41TDEgNzVWMXoiIGZpbGw9IiNGRkZERkQiLz48cGF0aCBkPSJNMzYgNDIuNWwtMTMuNS0xNC01IDVMMzcgNTNsMzktNDAuNS01LTUtMzUgMzV6IiBmaWxsPSIjRkZGREZEIi8+PHBhdGggZD0iTTEgMWg2NC41djdIOHY1OS41aDU0VjM1aDd2MzkuNUwxIDc1VjF6IiBzdHJva2U9IiNmZmYiLz48cGF0aCBkPSJNMzYgNDIuNWwtMTMuNS0xNC01IDVMMzcgNTNsMzktNDAuNS01LTUtMzUgMzV6IiBzdHJva2U9IiNmZmYiLz48L3N2Zz4=");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left top;
}
.promo-card.larger .inner .content .promo-feature-item + .promo-feature-item {
  margin-top: 1.6rem;
}
@media (min-width: 540px) {
  .promo-card .inner .content {
    padding-right: 8rem;
  }
  .promo-card .inner .content p:last-child {
    padding-right: 0;
  }
}
@media (min-width: 769px) {
  .promo-card .inner .inner-header h1 {
    font-size: 3rem;
  }
  .promo-card .inner img {
    width: 8rem;
    height: 8rem;
  }
  .promo-card .inner .content {
    padding-right: 9rem;
  }
  .promo-card.full-width .inner {
    min-height: 14rem;
  }
  .promo-card.larger .inner {
    min-height: 36.5rem;
  }
  .promo-card.larger .inner .inner-header h1 {
    font-size: 4rem;
  }
  .promo-card.larger .inner .content {
    padding-right: 5rem;
  }
}
@media (min-width: 920px) {
  .promo-card .inner .content {
    padding-right: 0;
  }
  .promo-card .inner .content p:last-child {
    padding-right: 9rem;
  }
  .promo-card + .promo-card {
    padding-top: 0;
  }
}
@media (min-width: 1025px) {
  .promo-card .inner {
    padding: 1rem 3rem 3rem;
  }
  .promo-card .inner img {
    right: 3rem;
    width: 9rem;
    height: 9rem;
  }
  .promo-card .inner .content p:last-child {
    padding-right: 9rem;
  }
  .promo-card.full-width .inner {
    min-height: 15rem;
  }
  .promo-card.larger .inner {
    padding: 5rem;
    min-height: 46.5rem;
    background-size: auto 425px;
  }
  .promo-card.larger .inner .inner-header {
    top: 5rem;
    right: 5rem;
  }
  .promo-card.larger .inner .content h3, .promo-card.larger .inner .content p, .promo-card.larger .inner .content a {
    font-size: 2.5rem;
  }
  .promo-card.larger .inner .content .promo-feature-item + .promo-feature-item {
    margin-top: 3.6rem;
  }
}
@media (min-width: 1201px) {
  .promo-card .inner .inner-header h1 {
    font-size: 3.5rem;
  }
  .promo-card.larger .inner .inner-header h1 {
    font-size: 4.5rem;
  }
}

.news-card {
  border-radius: 5px;
}
.news-card .text-thumbnail {
  border-radius: 5px;
}
.news-card .text-thumbnail::before {
  padding-bottom: 54.14%;
}
.news-card .text-thumbnail.large::before {
  padding-bottom: 135%;
}
.news-card .text-thumbnail::after {
  content: none;
}
.news-card .news-info {
  padding-left: 2rem;
  padding-right: 2rem;
}
.news-card h2 {
  margin: 2rem 0 1rem;
  color: #213462;
  line-height: 1.3;
  font-size: 2rem !important;
}
.news-card .page-date {
  text-align: left;
  margin: 0 0 0.4rem;
}
.news-card .news-preview-text {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.01em;
  color: #444444;
  margin: 0;
}
.news-card .news-preview-text.small {
  font-size: 1.6rem;
}
@media (max-width: 769px) {
  .news-card + .news-card {
    margin-bottom: 3rem;
  }
}
.news-card.people h2 {
  margin: 1rem 0 0;
}
.news-card.people p {
  margin-bottom: 4rem;
}
@media (min-width: 640px) {
  .news-card .text-thumbnail::before {
    padding-bottom: 45%;
  }
  .news-card .text-thumbnail.large::before {
    padding-bottom: 135%;
  }
}
@media (min-width: 769px) {
  .news-card .text-thumbnail::before {
    padding-bottom: 54.14%;
  }
  .news-card .text-thumbnail.large::before {
    padding-bottom: 135%;
  }
  .news-card .news-info {
    padding-left: 0;
    padding-right: 0;
  }
  .news-card h2 {
    margin-bottom: 1.6rem;
  }
  .news-card .news-preview-text {
    letter-spacing: -0.03em;
  }
  .news-card .readmore-button {
    display: none;
  }
  .news-card + .news-card {
    margin-top: 0;
  }
}
@media (min-width: 1025px) {
  .news-card {
    padding: 0 2rem;
  }
}

.upcoming-event-card {
  border-radius: 5px;
  padding: 0.5rem 1rem;
}
.upcoming-event-card .text-thumbnail {
  border-radius: 5px;
  background-color: #C4C4C4;
}
.upcoming-event-card .text-thumbnail::before {
  padding-bottom: 58.62%;
}
.upcoming-event-card .text-thumbnail::after {
  content: none;
}
.upcoming-event-card .inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 3rem 2rem;
  z-index: 2;
  border-radius: 5px;
}
.upcoming-event-card .inner.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  border: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}
.upcoming-event-card .inner h3 {
  text-align: center;
  margin: 1.6rem 0 0.8rem;
  width: 100%;
}
.upcoming-event-card .inner p {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin: 0;
  width: 100%;
}
.upcoming-event-card .inner .event-date-text {
  padding: 0 1rem;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #FFFFFF;
  background-color: #000000;
  width: auto;
}
@media (min-width: 640px) {
  .upcoming-event-card .text-thumbnail::before {
    padding-bottom: 45%;
  }
}
@media (min-width: 769px) {
  .upcoming-event-card {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .upcoming-event-card .text-thumbnail::before {
    padding-bottom: 58.62%;
  }
  .upcoming-event-card .inner h1 {
    font-size: 4rem;
  }
}
@media (min-width: 1025px) {
  .upcoming-event-card {
    padding: 2rem;
  }
  .upcoming-event-card .inner {
    padding: 1rem;
  }
  .upcoming-event-card .inner h1 {
    font-size: 5rem;
    margin: 2.6rem 0 1.8rem;
  }
  .upcoming-event-card .inner p {
    font-size: 2rem;
    font-weight: 400;
  }
  .upcoming-event-card .inner .event-date-text {
    font-size: 3rem;
  }
}

.course-card {
  padding: 0 2rem;
}
.course-card .course-card-inner {
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  padding: 3rem 2.5rem;
  position: relative;
  background: #FFFFFF;
  border-radius: 5px;
  min-height: 25.3rem;
  height: 100%;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}
.course-card .course-card-inner > h3 {
  color: #000000 !important;
  margin: 0;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -0.02em;
  width: 100%;
}
.course-card .course-card-inner .course-type {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.02em;
  margin: 1rem 0 1.2rem;
}
.course-card .course-card-inner .course-brief {
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: #444444;
  margin: 0 0 2rem;
  -ms-flex-positive: 1;
      flex-grow: 1;
  width: 100%;
}
.course-card .course-card-inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  border-radius: 5px 5px 0px 0px;
  z-index: 1;
}
.course-card .course-card-inner::after {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: 20px 10px;
  display: inline-block;
  width: 2rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-card.purple .course-card-inner .course-type {
  color: #3D0051;
}
.course-card.purple .course-card-inner::before {
  background: linear-gradient(182.86deg, #3D0051 0%, #661880 100%);
}
.course-card.purple .course-card-inner::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAyMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNLjMzMDA3OCA1SDE4LjMzMDFtMCAwbC00LjUtNG00LjUgNGwtNC41IDQiIHN0cm9rZT0idXJsKCNwYWludDBfbGluZWFyKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjE4LjMzMDEiIHkxPSIxIiB4Mj0iLjY2ODM1IiB5Mj0iOS42ODc2OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMzRDAwNTEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM2NjE4ODAiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4=");
}
.course-card.red .course-card-inner .course-type {
  color: #8C0000;
}
.course-card.red .course-card-inner::before {
  background: linear-gradient(182.86deg, #8C0000 0%, #C92A2A 99.42%);
}
.course-card.red .course-card-inner::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAyMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNLjY2MDE1NiA1SDE4LjY2MDJtMCAwbC00LjUtNG00LjUgNGwtNC41IDQiIHN0cm9rZT0idXJsKCNwYWludDBfbGluZWFyKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjE4LjY2MDIiIHkxPSIuOTk5OTk5IiB4Mj0iLjk5ODQyOCIgeTI9IjkuNjg3NjkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjOEMwMDAwIi8+PHN0b3Agb2Zmc2V0PSIuOTk0MjIiIHN0b3AtY29sb3I9IiNDOTJBMkEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4=");
}
.course-card.green .course-card-inner .course-type {
  color: #004000;
}
.course-card.green .course-card-inner::before {
  background: linear-gradient(182.91deg, #004000 1.08%, #168216 100%);
}
.course-card.green .course-card-inner::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAyMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNLjMzMDA3OCA1SDE4LjMzMDFtMCAwbC00LjUtNG00LjUgNGwtNC41IDQiIHN0cm9rZT0idXJsKCNwYWludDBfbGluZWFyKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjE4LjE4NDEiIHkxPSIxLjE4NDk3IiB4Mj0iLjY1NzQ0MyIgeTI9IjkuNjc1NzUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMDA0MDAwIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMTY4MjE2Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+");
}
.course-card.pink .course-card-inner .course-type {
  color: #F41D68;
}
.course-card.pink .course-card-inner::before {
  background: linear-gradient(182.91deg, #F41D68 1.08%, #F983AC 100%);
}
.course-card.pink .course-card-inner::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTAgNWgxOG0wIDBsLTQuNS00TTE4IDVsLTQuNSA0IiBzdHJva2U9InVybCgjcGFpbnQwX2xpbmVhcikiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXIiIHgxPSIxOCIgeTE9IjEiIHgyPSIuMzM4MjcyIiB5Mj0iOS42ODc2OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNGNDFENjgiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGOTgzQUMiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4=");
}

.banner-external-card {
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-decoration: none;
  width: 100%;
  background: #213462;
  color: #FFFFFF;
}
.banner-external-card .flex {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 3rem;
}
.banner-external-card .flex h2 {
  color: #FFFFFF;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0;
  width: 100%;
}
.banner-external-card .flex h2 + p {
  margin-bottom: 0;
}
.banner-external-card .flex .underline {
  text-decoration: underline;
}
.banner-external-card .flex .underline:hover {
  text-decoration: none;
}
.banner-external-card .flex .button, .banner-external-card .flex .button-secondary, .banner-external-card .flex .nav-horizontal a, .nav-horizontal .banner-external-card .flex a, .banner-external-card .flex .button-highlight-2, .banner-external-card .flex .button-highlight-3, .banner-external-card .flex .button-highlight-4, .banner-external-card .flex .button-highlight-5, .banner-external-card .flex .button-white, .banner-external-card .flex .button-transparent, .banner-external-card .flex .button-outline-dark-blue, .banner-external-card .flex .button-dotted-white, .banner-external-card .flex .button-workplace, .banner-external-card .flex .button-apply, .banner-external-card .flex .button-prospectus, .banner-external-card .flex .button-print, .banner-external-card .flex .button-course, .banner-external-card .flex .button-twitter, .banner-external-card .flex .button-prospectus-download, .banner-external-card .flex .button-prospectus-post, .banner-external-card .flex .button-arrow {
  margin-top: 1.5rem;
}
@media (min-width: 920px) {
  .banner-external-card {
    height: auto;
    border-radius: 5px;
  }
  .banner-external-card .flex {
    padding: 4rem;
  }
  .banner-external-card .flex h2 {
    font-size: 2.2rem;
    margin: 0;
  }
  .banner-external-card .flex h2 + p {
    font-size: 1.2rem;
  }
  .banner-external-card .flex .button, .banner-external-card .flex .button-secondary, .banner-external-card .flex .nav-horizontal a, .nav-horizontal .banner-external-card .flex a, .banner-external-card .flex .button-highlight-2, .banner-external-card .flex .button-highlight-3, .banner-external-card .flex .button-highlight-4, .banner-external-card .flex .button-highlight-5, .banner-external-card .flex .button-white, .banner-external-card .flex .button-transparent, .banner-external-card .flex .button-outline-dark-blue, .banner-external-card .flex .button-dotted-white, .banner-external-card .flex .button-workplace, .banner-external-card .flex .button-apply, .banner-external-card .flex .button-prospectus, .banner-external-card .flex .button-print, .banner-external-card .flex .button-course, .banner-external-card .flex .button-twitter, .banner-external-card .flex .button-prospectus-download, .banner-external-card .flex .button-prospectus-post, .banner-external-card .flex .button-arrow {
    margin-top: 3rem;
  }
}
@media (min-width: 1201px) {
  .banner-external-card .flex {
    padding: 4rem;
  }
  .banner-external-card .flex h2 {
    font-size: 3.2rem;
    margin: 0;
  }
  .banner-external-card .flex h2 + p {
    font-size: 1.6rem;
  }
}

.career-card {
  border-radius: 5px;
}
.career-card .text-thumbnail {
  border-radius: 5px;
}
.career-card .text-thumbnail::before {
  padding-bottom: 45.95%;
}
.career-card .text-thumbnail::after {
  opacity: 0.7;
  background: linear-gradient(45.87deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
}
.career-card .inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding: 2rem;
  z-index: 2;
}
.career-card .inner h2 {
  font-size: 2.2rem;
  font-weight: 900;
  color: #FFFFFF;
  letter-spacing: -0.02em;
  line-height: 1.28;
  width: 100%;
  margin: 0;
}
@media (min-width: 1025px) {
  .career-card {
    padding: 0 2rem;
  }
  .career-card .inner {
    padding: 2.4rem 3rem;
  }
}
@media (min-width: 1201px) {
  .career-card .inner h2 {
    font-size: 2.6rem;
  }
}

.case-study-card .text-thumbnail::before {
  padding-bottom: 58.32%;
}
.case-study-card .text-thumbnail::after {
  content: none;
}
.case-study-card .case-info {
  padding-left: 2rem;
  padding-right: 2rem;
}
.case-study-card h2 {
  margin: 2rem 0 0;
  color: #213462;
  line-height: 1.3;
  font-weight: 900;
  text-transform: uppercase;
}
.case-study-card .level-text {
  font-size: 1.2rem;
  line-height: 1.333;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #000000;
  margin: 0.8rem 0 1.2rem;
}
.case-study-card .case-preview-text {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.01em;
  color: #444444;
  margin: 0;
}
.case-study-card + .case-study-card {
  margin-top: 3rem;
}
@media (min-width: 640px) {
  .case-study-card .text-thumbnail::before {
    padding-bottom: 45%;
  }
}
@media (min-width: 769px) {
  .case-study-card .text-thumbnail::before {
    padding-bottom: 73.63%;
  }
  .case-study-card .case-info {
    padding-left: 0;
    padding-right: 0;
  }
  .case-study-card .level-text {
    margin: 0.4rem 0 1.4rem;
  }
  .case-study-card + .case-study-card {
    margin-top: 0;
  }
}
@media (min-width: 1025px) {
  .case-study-card {
    padding: 0 2rem;
  }
  .case-study-card h2 {
    font-size: 3.4rem;
    margin-top: 3.6rem;
  }
  .case-study-card .case-preview-text, .case-study-card .readmore-button {
    font-size: 2rem;
  }
  .case-study-card .level-text {
    margin: 0.8rem 0 1.8rem;
  }
}

.staff-card {
  padding: 0 0.5rem;
  display: block;
}
.staff-card .text-thumbnail {
  border-radius: 5px;
}
.staff-card .text-thumbnail::before {
  padding-bottom: 100%;
}
.staff-card .text-thumbnail::after {
  content: none;
}
.staff-card h3 {
  margin: 0;
}
.staff-card .staff-info {
  padding: 1rem 1rem 0;
}
.staff-card .staff-info p {
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: -0.03em;
  color: #666666;
  margin: 0;
}
.staff-card .staff-info p.job-title {
  color: #213462;
  margin-bottom: 0.4rem;
}
@media (min-width: 1025px) {
  .staff-card {
    padding: 0 2.5rem;
  }
  .staff-card h3 {
    font-size: 2rem;
    font-size: 2rem;
    line-height: 1.5;
    margin: 1.8rem 0 0;
  }
  .staff-card .staff-info {
    padding: 0;
  }
  .staff-card .staff-info p {
    font-size: 1.8rem;
    color: #444444;
  }
  .staff-card .staff-info p.job-title {
    margin-bottom: 1.2rem;
  }
}

/*
	=============
	Card Blocks
	=============
*/
.card-block {
  padding-left: 1rem;
  padding-right: 1rem;
  -ms-flex-align: center;
      align-items: center;
}
.card-block .card-header-text {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  font-size: 2.8rem;
  color: #213462;
  text-align: center;
  margin: 0;
  -ms-flex-order: 0;
      order: 0;
}
.card-block .card-actions {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-order: 2;
      order: 2;
  margin-top: 3rem;
}
.card-block .card-actions + .card-block-content {
  -ms-flex-order: 1;
      order: 1;
}
.card-block .card-block-content {
  margin: 3rem -1rem 0;
  width: calc(100% + 2rem);
}
.card-block .card-block-content:only-child {
  margin-top: 0;
}
@media (min-width: 640px) {
  .card-block .card-header-text {
    -ms-flex-preferred-size: 65%;
        flex-basis: 65%;
    font-size: 4rem;
    text-align: left;
  }
  .card-block .card-header-text.wide {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  .card-block .card-actions {
    -ms-flex-preferred-size: 35%;
        flex-basis: 35%;
    -ms-flex-pack: end;
        justify-content: flex-end;
    margin-top: 0;
    -ms-flex-order: 1;
        order: 1;
  }
  .card-block .card-actions + .card-block-content {
    -ms-flex-order: 2;
        order: 2;
  }
}
@media (min-width: 769px) {
  .card-block .card-block-content {
    margin-top: 5rem;
  }
}
@media (min-width: 1025px) {
  .card-block .card-header-text {
    font-size: 5rem;
  }
  .card-block .card-block-content {
    margin: 3rem -2rem 0;
    width: calc(100% + 4rem);
  }
}

.latest-news {
  max-width: 120rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 3rem;
}
.latest-news + .upcoming-events {
  margin-top: 3rem;
}
@media (min-width: 769px) {
  .promos + .latest-news {
    padding-top: 4rem;
  }
  .promos + .latest-news + .upcoming-events {
    margin-top: 4rem;
  }
}
@media (min-width: 1025px) {
  .promos + .latest-news {
    padding-top: 5rem;
  }
  .promos + .latest-news + .upcoming-events {
    margin-top: 5rem;
  }
}

.upcoming-events {
  border-top: 2px solid #CCCCCC;
  padding-top: 3rem;
}
@media (min-width: 769px) {
  .upcoming-events {
    padding-top: 5rem;
  }
  .upcoming-events .card-block-content {
    margin-top: 4.5rem;
  }
}

.news-list {
  margin: 3rem -2rem 0;
}
@media (min-width: 1025px) {
  .news-list .news-card {
    padding: 2rem;
  }
}

.events-list {
  margin: 2rem -2rem 4rem;
}

.course-list {
  margin: -2rem -3rem 0;
  padding-bottom: 4rem;
  -ms-flex-direction: row;
      flex-direction: row;
}
.course-list.js-course-search-results {
  position: relative;
  margin-top: 0;
  padding-bottom: 0;
}
.course-list.js-course-search-results:not(:empty) {
  padding: 2rem 0;
}
.course-list.js-course-search-results::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background: rgba(204, 204, 204, 0.2);
  z-index: 0;
}
.course-list .course-card {
  padding: 0.5rem 1rem;
}
@media (min-width: 769px) {
  .course-list.js-course-search-results {
    margin: -2rem -2rem 0;
  }
  .course-list.js-course-search-results:empty {
    margin: 0;
  }
  .course-list.js-course-search-results::before {
    left: calc((100vw - 100%) * -0.5);
  }
  .course-list .course-card {
    padding: 1rem;
  }
}
@media (min-width: 1025px) {
  .course-list .course-card {
    padding: 2rem;
  }
}

.careers-list {
  margin: 0.5rem 0;
}
.careers-list .career-card {
  padding: 0.5rem 1rem;
}
@media (min-width: 640px) {
  .careers-list > * {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
@media (min-width: 640px) and (-ms-high-contrast: none), (min-width: 640px) and (-ms-high-contrast: active) {
  .careers-list > * {
    max-width: 50%;
  }
}
@media (min-width: 640px) {
  .careers-list .career-card {
    padding: 1rem;
  }
}
@media (min-width: 1025px) {
  .careers-list {
    margin: -1.5rem 0.5rem 0;
  }
  .careers-list .career-card {
    padding: 2.5rem;
  }
  .careers-list > * {
    -ms-flex-preferred-size: 33.33%;
        flex-basis: 33.33%;
  }
}
@media (min-width: 1025px) and (-ms-high-contrast: none), (min-width: 1025px) and (-ms-high-contrast: active) {
  .careers-list > * {
    max-width: 33.33%;
  }
}
@media (min-width: 1201px) {
  .careers-list {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
  }
}

.case-studies .card-header-text {
  font-size: 2.4rem;
  text-align: left;
  padding: 0 2rem;
}
.case-studies .card-block-content.one-col > .case-study-card:only-child {
  padding: 0;
}
.case-studies .card-block-content.one-col > .case-study-card:only-child .inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
  z-index: 2;
  position: relative;
  left: auto;
  right: 0;
  margin: 0 2rem;
  padding: 0 1rem 4rem;
  border-bottom: 2px solid #CCCCCC;
}
.case-studies .card-block-content.one-col > .case-study-card:only-child .inner h2 {
  font-size: 2.8rem;
  margin-top: 0.6rem;
}
.case-studies .card-block-content.one-col > .case-study-card:only-child .inner .casestudy-text {
  font-size: 1.2rem;
  font-weight: 900;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  line-height: 1.2;
  color: rgba(33, 52, 98, 0.5);
  margin: 3rem 0 0;
}
@media (min-width: 769px) {
  .case-studies .card-header-text {
    font-size: 4rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child {
    padding-left: 1rem;
    padding-right: 1rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .text-thumbnail {
    width: 50%;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .text-thumbnail::before {
    padding-bottom: 80.87%;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner {
    width: 50%;
    height: 100%;
    margin: 0;
    padding: 3rem 4rem;
    background: rgba(204, 204, 204, 0.2);
    border-bottom: none;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner h2 {
    font-size: 3.6rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner .level-text {
    margin-top: 1.2rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner .casestudy-text {
    font-size: 2rem;
    margin: 0;
  }
}
@media (min-width: 1025px) {
  .case-studies .card-header-text {
    padding: 0;
    font-size: 5rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .text-thumbnail::before {
    padding-bottom: 77.29%;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner {
    padding: 3rem 6rem;
  }
  .case-studies .card-block-content.one-col > .case-study-card:only-child .inner h2 {
    font-size: 5rem;
    margin-top: 1.2rem;
  }
}

@media (min-width: 1025px) {
  .left-col + .main-col .promo-card.larger .inner {
    padding: 3rem;
    min-height: 40.5rem;
    background-size: auto 365px;
  }
  .left-col + .main-col .promo-card.larger .inner .inner-header {
    top: 3rem;
    right: 3rem;
  }
  .left-col + .main-col .promo-card.larger .inner .content h3, .left-col + .main-col .promo-card.larger .inner .content p, .left-col + .main-col .promo-card.larger .inner .content a {
    font-size: 2.2rem;
  }
}

@media (min-width: 1201px) {
  .promos, .card-block {
    padding-left: 0;
    padding-right: 0;
  }
}
/*
	===========
	Site Header
	===========
*/
.header-site {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 6rem;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  transition: height 0.2s linear;
  z-index: 200;
}
.header-site > .wrap {
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.header-site .logo-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.header-site .logo-group .logo {
  background-image: url("/site/images/logo/eastleigh.svg");
  display: block;
  width: 78px;
  height: 89px;
  margin-right: 2rem;
}
.header-site .logo-group .logo-shgc {
  background-image: url("/site/images/logo/shcg.svg");
  display: block;
  width: 150px;
  height: 46px;
  margin-right: 5rem;
}
.header-site.open-search {
  background: #FFFFFF;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}
.header-site.open-search .nav-main .navwrap {
  overflow: hidden;
  width: 0;
  transition: width 0.2s linear;
}
.header-site.open-search .search-bar {
  width: 100%;
  transition: width 0.2s linear;
}
.header-site.open-search .search-bar .js-search-close {
  display: block;
}
.header-site.open-search .search-bar .search {
  -ms-flex-positive: 1;
      flex-grow: 1;
  width: 100%;
  padding-right: 3rem;
}
.header-site.open-search .search-bar .search .form-search .input-field {
  position: relative;
  display: block;
  width: 100%;
}
.header-site.open-search .search-bar .search .form-search .form-search-button {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
}
.header-site.open-search .search-bar .search .form-search .form-search-button span {
  display: none;
}
.header-site.open-search .logo {
  display: none;
}
.header-site.open-search .nav-mobile {
  height: 100%;
  -ms-flex-direction: column;
      flex-direction: column;
}
.header-site.open-search .nav-mobile .nav-mobile-header {
  display: none;
}
.header-site.open-search .nav-mobile .nav-mobile_inner {
  height: 0;
}
.header-site.open-search .nav-mobile .search-bar {
  height: auto;
  padding: 2rem 3rem;
  margin: 0;
  border-bottom: 2px solid #CCCCCC;
}
.header-site.open-search .nav-mobile .search-content {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
}
.header-site.open-menu .search-bar .form-search .form-search-button {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
}
.header-site.scrolling, .header-site.white {
  background: #FFFFFF;
}
.header-site.scrolling > .wrap::before, .header-site.white > .wrap::before {
  background: #003399;
}
.header-site.scrolling .nav-main .nav > ul > li > a, .header-site.white .nav-main .nav > ul > li > a {
  color: #003399;
}
.header-site.scrolling .nav-main .apply-button a.button, .header-site.scrolling .nav-main .apply-button a.button-secondary, .header-site.scrolling .nav-main .apply-button .nav-horizontal a, .nav-horizontal .header-site.scrolling .nav-main .apply-button a, .header-site.scrolling .nav-main .apply-button a.button-highlight-2, .header-site.scrolling .nav-main .apply-button a.button-highlight-3, .header-site.scrolling .nav-main .apply-button a.button-highlight-4, .header-site.scrolling .nav-main .apply-button a.button-highlight-5, .header-site.scrolling .nav-main .apply-button a.button-white, .header-site.scrolling .nav-main .apply-button a.button-transparent, .header-site.scrolling .nav-main .apply-button a.button-outline-dark-blue, .header-site.scrolling .nav-main .apply-button a.button-dotted-white, .header-site.scrolling .nav-main .apply-button a.button-workplace, .header-site.scrolling .nav-main .apply-button a.button-apply, .header-site.scrolling .nav-main .apply-button a.button-prospectus, .header-site.scrolling .nav-main .apply-button a.button-print, .header-site.scrolling .nav-main .apply-button a.button-course, .header-site.scrolling .nav-main .apply-button a.button-twitter, .header-site.scrolling .nav-main .apply-button a.button-prospectus-download, .header-site.scrolling .nav-main .apply-button a.button-prospectus-post, .header-site.scrolling .nav-main .apply-button a.button-arrow, .header-site.white .nav-main .apply-button a.button, .header-site.white .nav-main .apply-button a.button-secondary, .header-site.white .nav-main .apply-button .nav-horizontal a, .nav-horizontal .header-site.white .nav-main .apply-button a, .header-site.white .nav-main .apply-button a.button-highlight-2, .header-site.white .nav-main .apply-button a.button-highlight-3, .header-site.white .nav-main .apply-button a.button-highlight-4, .header-site.white .nav-main .apply-button a.button-highlight-5, .header-site.white .nav-main .apply-button a.button-white, .header-site.white .nav-main .apply-button a.button-transparent, .header-site.white .nav-main .apply-button a.button-outline-dark-blue, .header-site.white .nav-main .apply-button a.button-dotted-white, .header-site.white .nav-main .apply-button a.button-workplace, .header-site.white .nav-main .apply-button a.button-apply, .header-site.white .nav-main .apply-button a.button-prospectus, .header-site.white .nav-main .apply-button a.button-print, .header-site.white .nav-main .apply-button a.button-course, .header-site.white .nav-main .apply-button a.button-twitter, .header-site.white .nav-main .apply-button a.button-prospectus-download, .header-site.white .nav-main .apply-button a.button-prospectus-post, .header-site.white .nav-main .apply-button a.button-arrow {
  background: #003399;
  border-color: #003399;
}
.header-site.scrolling .nav-main .apply-button a.button:hover, .header-site.scrolling .nav-main .apply-button a.button-secondary:hover, .header-site.scrolling .nav-main .apply-button .nav-horizontal a:hover, .nav-horizontal .header-site.scrolling .nav-main .apply-button a:hover, .header-site.scrolling .nav-main .apply-button a.button-highlight-2:hover, .header-site.scrolling .nav-main .apply-button a.button-highlight-3:hover, .header-site.scrolling .nav-main .apply-button a.button-highlight-4:hover, .header-site.scrolling .nav-main .apply-button a.button-highlight-5:hover, .header-site.scrolling .nav-main .apply-button a.button-white:hover, .header-site.scrolling .nav-main .apply-button a.button-transparent:hover, .header-site.scrolling .nav-main .apply-button a.button-outline-dark-blue:hover, .header-site.scrolling .nav-main .apply-button a.button-dotted-white:hover, .header-site.scrolling .nav-main .apply-button a.button-workplace:hover, .header-site.scrolling .nav-main .apply-button a.button-apply:hover, .header-site.scrolling .nav-main .apply-button a.button-prospectus:hover, .header-site.scrolling .nav-main .apply-button a.button-print:hover, .header-site.scrolling .nav-main .apply-button a.button-course:hover, .header-site.scrolling .nav-main .apply-button a.button-twitter:hover, .header-site.scrolling .nav-main .apply-button a.button-prospectus-download:hover, .header-site.scrolling .nav-main .apply-button a.button-prospectus-post:hover, .header-site.scrolling .nav-main .apply-button a.button-arrow:hover, .header-site.white .nav-main .apply-button a.button:hover, .header-site.white .nav-main .apply-button a.button-secondary:hover, .header-site.white .nav-main .apply-button .nav-horizontal a:hover, .nav-horizontal .header-site.white .nav-main .apply-button a:hover, .header-site.white .nav-main .apply-button a.button-highlight-2:hover, .header-site.white .nav-main .apply-button a.button-highlight-3:hover, .header-site.white .nav-main .apply-button a.button-highlight-4:hover, .header-site.white .nav-main .apply-button a.button-highlight-5:hover, .header-site.white .nav-main .apply-button a.button-white:hover, .header-site.white .nav-main .apply-button a.button-transparent:hover, .header-site.white .nav-main .apply-button a.button-outline-dark-blue:hover, .header-site.white .nav-main .apply-button a.button-dotted-white:hover, .header-site.white .nav-main .apply-button a.button-workplace:hover, .header-site.white .nav-main .apply-button a.button-apply:hover, .header-site.white .nav-main .apply-button a.button-prospectus:hover, .header-site.white .nav-main .apply-button a.button-print:hover, .header-site.white .nav-main .apply-button a.button-course:hover, .header-site.white .nav-main .apply-button a.button-twitter:hover, .header-site.white .nav-main .apply-button a.button-prospectus-download:hover, .header-site.white .nav-main .apply-button a.button-prospectus-post:hover, .header-site.white .nav-main .apply-button a.button-arrow:hover {
  background: transparent;
}
.header-site.scrolling .search-bar .form-search .form-search-button, .header-site.white .search-bar .form-search .form-search-button {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
}
.header-site.scrolling .nav-mobile .search-bar .form-search .form-search-button span, .header-site.white .nav-mobile .search-bar .form-search .form-search-button span {
  color: #003399;
}
.header-site.scrolling .nav-mobile-button, .header-site.white .nav-mobile-button {
  color: #003399;
}
.header-site.scrolling .nav-mobile-button.nav-mobile-header, .header-site.white .nav-mobile-button.nav-mobile-header {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxNCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSAxaDEyTTEgNWgxMk0xIDloMTIiIHN0cm9rZT0iIzAwMzM5OSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
}
.header-site.scrolling .nav-sub > ul > li > a, .header-site.white .nav-sub > ul > li > a {
  color: #003399;
}
@media (max-width: 539px) {
  .header-site.mobile-white {
    background: #FFFFFF;
  }
  .header-site.mobile-white .search-bar .form-search .form-search-button {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
  }
  .header-site.mobile-white .nav-mobile .search-bar .form-search .form-search-button span {
    color: #003399;
  }
  .header-site.mobile-white .nav-mobile-button {
    color: #003399;
  }
  .header-site.mobile-white .nav-mobile-button.nav-mobile-header {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxNCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSAxaDEyTTEgNWgxMk0xIDloMTIiIHN0cm9rZT0iIzAwMzM5OSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
  }
}
@media (max-width: 1024px) {
  .header-site .logo-group {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .header-site .logo-group .logo {
    width: 44px;
    height: 50px;
  }
  .header-site .logo-group .logo-shgc {
    width: 81px;
    height: 25px;
    margin-right: 0;
  }
}
@media (min-width: 1025px) {
  .header-site {
    height: 15.5rem;
  }
  .header-site > .wrap {
    padding-top: 3.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
  }
  .header-site > .wrap::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #FFFFFF;
  }
  .header-site.open-search {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    height: 15.5rem;
  }
  .header-site.open-search.scrolling, .header-site.open-search.white {
    background: #FFFFFF;
  }
  .header-site.open-search .logo {
    display: block;
  }
}
@media (min-width: 1201px) {
  .header-site > .wrap {
    padding-left: 0;
    padding-right: 0;
  }
  .header-site > .wrap::before {
    left: -6rem;
    width: calc(100% + 12rem);
  }
}

/* Site Header */
.header-site + .content-wrap.main {
  overflow-x: visible;
  margin-top: 6rem;
}
.header-site + .content-wrap.main .content-section {
  padding-bottom: 0;
}
@media (min-width: 1025px) {
  .header-site + .content-wrap.main {
    margin-top: 15.5rem;
  }
}

/*
	==========
	Navigation
	==========
*/
.nav-main {
  display: none;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: end;
      justify-content: flex-end;
  height: 100%;
  padding-top: 3rem;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.nav-main .navwrap {
  height: 100%;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.nav-main .nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  height: 100%;
}
.nav-main .nav > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
}
.nav-main .nav > ul > li {
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding-bottom: 3rem;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.nav-main .nav > ul > li > a {
  color: #FFFFFF;
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3888888889;
}
.nav-main .nav > ul > li.open, .nav-main .nav > ul > li:hover {
  position: relative;
}
.nav-main .nav > ul > li.open::before, .nav-main .nav > ul > li:hover::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 0;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
  border-bottom: 16px solid #003399;
  transform: translateX(-50%);
}
.nav-main .nav > ul > li.open .mega-nav, .nav-main .nav > ul > li:hover .mega-nav {
  opacity: 1;
  width: 100%;
  z-index: 100;
  border-top: 2px solid #003399;
}
.nav-main .nav > ul li > .mega-nav {
  position: fixed;
  top: 15.2rem;
  left: 0;
  width: 0;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.25s linear;
  background: #FFFFFF;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
.nav-main .nav > ul li > .mega-nav h2 {
  font-family: "Poppins", sans-serif;
  color: #213462;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.03em;
  margin-bottom: 1rem;
}
.nav-main .nav > ul li > .mega-nav li {
  padding: 0.6rem 0;
}
.nav-main .nav > ul li > .mega-nav li, .nav-main .nav > ul li > .mega-nav li a {
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375;
  color: #000000;
}
.nav-main .nav > ul li > .mega-nav li.see-all {
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.nav-main .nav > ul li > .mega-nav .see-all-button {
  font-size: 1.8rem;
  font-weight: 700;
  padding-left: 2rem;
  padding-right: 2rem;
  margin-top: 2rem;
}
.nav-main .nav > ul li > .mega-nav .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: stretch;
      align-items: stretch;
}
.nav-main .nav > ul li > .mega-nav .left-content {
  -ms-flex-preferred-size: 70.833%;
      flex-basis: 70.833%;
  -ms-flex-positive: 1;
      flex-grow: 1;
  padding: 2rem 2rem 2rem 1rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  width: 100%;
}
.nav-main .nav > ul li > .mega-nav .left-content ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-height: 38rem;
}
.nav-main .nav > ul li > .mega-nav .left-content .left-content-inner {
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.nav-main .nav > ul li > .mega-nav .left-content .left-content-inner:only-child ul li {
  width: 32%;
}
.nav-main .nav > ul li > .mega-nav .right-content {
  -ms-flex-preferred-size: 29.167%;
      flex-basis: 29.167%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  padding: 2rem 1rem 2rem 4rem;
}
.nav-main .nav > ul li > .mega-nav .right-content > * {
  position: relative;
  z-index: 1;
}
.nav-main .nav > ul li > .mega-nav .right-content::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 51, 153, 0.05);
  z-index: 0;
}
.nav-main .nav > ul li > .mega-nav .right-content li, .nav-main .nav > ul li > .mega-nav .right-content li a {
  color: #213462;
}
.nav-main .nav > ul li > .mega-nav .left-content {
  -ms-flex-preferred-size: 0%;
      flex-basis: 0%;
  padding: 0;
}
.nav-main .nav > ul li > .mega-nav .right-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding: 0;
}
.nav-main .nav > ul li > .mega-nav .right-content h2 {
  display: none;
}
.nav-main .nav > ul li > .mega-nav .right-content::before {
  content: none;
}
.nav-main .nav > ul li > .mega-nav .right-content ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 23rem;
  padding: 4rem 1rem 4rem;
  max-width: 120rem;
  width: 100%;
  margin: 0 auto;
}
.nav-main .nav > ul li > .mega-nav .right-content ul li {
  padding: 1rem 0;
}
.nav-main .nav > ul li > .mega-nav .right-content li, .nav-main .nav > ul li > .mega-nav .right-content li a {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.2222222222;
  letter-spacing: -0.03em;
  color: #213462;
}
.nav-main .apply-button {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.nav-main .apply-button a.button, .nav-main .apply-button a.button-secondary, .nav-main .apply-button .nav-horizontal a, .nav-horizontal .nav-main .apply-button a, .nav-main .apply-button a.button-highlight-2, .nav-main .apply-button a.button-highlight-3, .nav-main .apply-button a.button-highlight-4, .nav-main .apply-button a.button-highlight-5, .nav-main .apply-button a.button-white, .nav-main .apply-button a.button-transparent, .nav-main .apply-button a.button-outline-dark-blue, .nav-main .apply-button a.button-dotted-white, .nav-main .apply-button a.button-workplace, .nav-main .apply-button a.button-apply, .nav-main .apply-button a.button-prospectus, .nav-main .apply-button a.button-print, .nav-main .apply-button a.button-course, .nav-main .apply-button a.button-twitter, .nav-main .apply-button a.button-prospectus-download, .nav-main .apply-button a.button-prospectus-post, .nav-main .apply-button a.button-arrow {
  background: transparent;
  border-color: #FFFFFF;
}
.nav-main .apply-button a.button:hover, .nav-main .apply-button a.button-secondary:hover, .nav-main .apply-button .nav-horizontal a:hover, .nav-horizontal .nav-main .apply-button a:hover, .nav-main .apply-button a.button-highlight-2:hover, .nav-main .apply-button a.button-highlight-3:hover, .nav-main .apply-button a.button-highlight-4:hover, .nav-main .apply-button a.button-highlight-5:hover, .nav-main .apply-button a.button-white:hover, .nav-main .apply-button a.button-transparent:hover, .nav-main .apply-button a.button-outline-dark-blue:hover, .nav-main .apply-button a.button-dotted-white:hover, .nav-main .apply-button a.button-workplace:hover, .nav-main .apply-button a.button-apply:hover, .nav-main .apply-button a.button-prospectus:hover, .nav-main .apply-button a.button-print:hover, .nav-main .apply-button a.button-course:hover, .nav-main .apply-button a.button-twitter:hover, .nav-main .apply-button a.button-prospectus-download:hover, .nav-main .apply-button a.button-prospectus-post:hover, .nav-main .apply-button a.button-arrow:hover {
  border-color: #213462;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .nav-main .nav > ul li > .mega-nav .left-content .left-content-inner:only-child {
    width: 100%;
  }
  .nav-main .nav > ul li > .mega-nav .left-content ul {
    height: 38rem;
  }
}
@media (min-width: 1025px) {
  .nav-main {
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 1201px) {
  .nav-main .nav > ul li > .mega-nav .left-content {
    padding-left: 0;
  }
  .nav-main .nav > ul li > .mega-nav .right-content {
    padding-right: 0;
  }
  .nav-main .nav > ul li > .mega-nav .right-content::before {
    width: calc((100vw - 120rem) * 0.5 + 100%);
  }
  .nav-main .nav > ul li:nth-last-child(-n+2) > .mega-nav .right-content ul {
    padding-left: 0;
    padding-right: 0;
  }
}

.nav-select {
  padding: 2rem 0;
}
.nav-select label {
  display: block;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: #213462;
  margin-bottom: 2rem;
}
.nav-select select {
  display: block;
  width: 100%;
}
@media (min-width: 1025px) {
  .nav-select {
    display: none;
  }
}

.nav-mobile {
  width: 100%;
  height: 6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.nav-mobile ul:not(.sub-menu) {
  padding: 2rem;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.nav-mobile ul:not(.sub-menu) > li {
  position: relative;
}
.nav-mobile ul:not(.sub-menu) > li > a, .nav-mobile ul:not(.sub-menu) > li > span {
  display: block;
  padding: 1.5rem 0;
  color: #213462;
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
  padding-right: 3rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.nav-mobile ul:not(.sub-menu) > li > a:not(:only-child)::after {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi4yNDI2NSAxMC4yNDI2TDEwLjQ4NTMgNiA2LjI0MjY1IDEuNzU3MzYiIHN0cm9rZT0iIzAzOSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
  background-size: 12px 12px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
  position: absolute;
  top: 50%;
  right: 0;
  width: 12px;
  height: 12px;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0;
  transform: translateY(-50%);
}
.nav-mobile ul:not(.sub-menu) > li + li {
  border-top: 1px solid rgba(0, 51, 153, 0.2);
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container, .nav-mobile .nav-mobile_inner > ul .nav-level2-container, .nav-mobile .nav-mobile_inner > ul .nav-level3-container {
  position: fixed;
  display: none;
  -ms-flex-direction: column;
      flex-direction: column;
  top: 0;
  left: 100%;
  width: 100%;
  height: 100%;
  z-index: 300;
  overflow: hidden;
  background: #FFFFFF;
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container .return-header, .nav-mobile .nav-mobile_inner > ul .nav-level2-container .return-header, .nav-mobile .nav-mobile_inner > ul .nav-level3-container .return-header {
  margin: 0 2rem;
  height: 6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  border-bottom: 2px solid #003399;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container .return-header .back-btn, .nav-mobile .nav-mobile_inner > ul .nav-level2-container .return-header .back-btn, .nav-mobile .nav-mobile_inner > ul .nav-level3-container .return-header .back-btn {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi4yNDI2NCAxLjk5OTk3TDIgNi4yNDI2MWw0LjI0MjY0IDQuMjQyNjkiIHN0cm9rZT0iIzAzOSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
  background-size: 12px 12px;
  background-repeat: no-repeat;
  background-position: left center;
  background-color: transparent;
  width: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0;
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container .return-header span, .nav-mobile .nav-mobile_inner > ul .nav-level2-container .return-header span, .nav-mobile .nav-mobile_inner > ul .nav-level3-container .return-header span {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #003399;
  -ms-flex-positive: 1;
      flex-grow: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  width: 100%;
  white-space: nowrap;
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container .return-header .nav-mobile-button, .nav-mobile .nav-mobile_inner > ul .nav-level2-container .return-header .nav-mobile-button, .nav-mobile .nav-mobile_inner > ul .nav-level3-container .return-header .nav-mobile-button {
  margin-right: 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMS43NTczOSAxLjc1NzM2bDguNDg1MzEgOC40ODUyNE0xLjc1NzM5IDEwLjI0MjZsOC40ODUzMS04LjQ4NTI0IiBzdHJva2U9IiMwMzkiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
  background-size: 12px 12px;
  background-position: center right;
  width: 4rem;
  padding: 0;
}
.nav-mobile .nav-mobile_inner > ul .nav-level1-container > ul, .nav-mobile .nav-mobile_inner > ul .nav-level2-container > ul, .nav-mobile .nav-mobile_inner > ul .nav-level3-container > ul {
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.nav-mobile .nav-mobile-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  background-repeat: no-repeat;
  border: none;
  height: 6rem;
  color: #FFFFFF;
  text-align: center;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  line-height: 1.25;
  outline: none;
}
.nav-mobile .nav-mobile-button:focus {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}
.nav-mobile .nav-mobile-button.nav-mobile-header {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxNCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSAxaDEyTTEgNWgxMk0xIDloMTIiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
  background-size: 14px 10px;
  background-position: right center;
  padding: 0 2.4rem 0 0;
  margin-right: 2rem;
}
.nav-mobile .search-bar {
  width: auto;
  padding-bottom: 0;
  margin: 0 0 0 2rem;
}
.nav-mobile .search-bar .search .form-search .form-search-button {
  width: auto;
  height: 6rem;
  background-position: left center;
  padding: 0 0 0 2.4rem;
}
.nav-mobile .search-bar .search .form-search .form-search-button span {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  line-height: 1.25;
  color: #FFFFFF;
}
.nav-mobile .search-content {
  display: none;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  padding: 10rem 3rem 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.nav-mobile .search-content p {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: rgba(0, 0, 0, 0.5);
}
.nav-mobile.open {
  background-color: #FFFFFF;
}
.nav-mobile.open .nav-mobile-button {
  color: #003399;
}
.nav-mobile.open .nav-mobile-button.nav-mobile-header {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMS43NTczOSAxLjc1NzM2bDguNDg1MzEgOC40ODUyNE0xLjc1NzM5IDEwLjI0MjZsOC40ODUzMS04LjQ4NTI0IiBzdHJva2U9IiMwMzkiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
  background-size: 12px 12px;
}
@media (min-width: 1025px) {
  .nav-mobile {
    display: none;
  }
}

.nav-mobile_inner {
  position: relative;
  width: 100%;
  height: 0;
  background: #FFFFFF;
  transition: height 0.2s linear;
  overflow-x: hidden;
  overflow-y: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -webkit-overflow-scrolling: touch;
}
.nav-mobile_inner .apply-button {
  padding: 0 2.5rem 3rem;
}
.nav-mobile_inner .apply-button .button, .nav-mobile_inner .apply-button .button-secondary, .nav-mobile_inner .apply-button .nav-horizontal a, .nav-horizontal .nav-mobile_inner .apply-button a, .nav-mobile_inner .apply-button .button-highlight-2, .nav-mobile_inner .apply-button .button-highlight-3, .nav-mobile_inner .apply-button .button-highlight-4, .nav-mobile_inner .apply-button .button-highlight-5, .nav-mobile_inner .apply-button .button-white, .nav-mobile_inner .apply-button .button-transparent, .nav-mobile_inner .apply-button .button-outline-dark-blue, .nav-mobile_inner .apply-button .button-dotted-white, .nav-mobile_inner .apply-button .button-workplace, .nav-mobile_inner .apply-button .button-apply, .nav-mobile_inner .apply-button .button-prospectus, .nav-mobile_inner .apply-button .button-print, .nav-mobile_inner .apply-button .button-course, .nav-mobile_inner .apply-button .button-twitter, .nav-mobile_inner .apply-button .button-prospectus-download, .nav-mobile_inner .apply-button .button-prospectus-post, .nav-mobile_inner .apply-button .button-arrow {
  width: 100%;
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}
.open .nav-mobile_inner {
  height: calc(100vh - 6rem);
  height: calc(var(--vh, 1vh) * 100 - 6rem);
  overflow: scroll;
}

.nav-side {
  width: 100%;
  display: none;
}
.nav-side li, .nav-side li a {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #000000;
}
.nav-side ul li {
  position: relative;
}
.nav-side ul li a {
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
}
.nav-side ul li > a:not(:only-child) {
  position: relative;
  padding-left: 2rem;
}
.nav-side ul li > a:not(:only-child)::before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiICB2aWV3Qm94PSIwIDAgMTQgMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTAgNWgxMm0wIDBMNy41IDFNMTIgNUw3LjUgOSIgc3Ryb2tlPSIjMDM5IiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4=");
  background-size: 14px 10px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 10px;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0;
  transform: translateY(-50%);
}
.nav-side ul li > ul {
  width: 100%;
  max-height: 0;
  overflow: hidden;
  padding-left: 2rem;
  transition: max-height 0.35s linear;
}
.nav-side ul li > ul > li > a:not(:only-child)::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDggMTAiICBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xIDFsNC41IDRMMSA5IiBzdHJva2U9IiMwMzkiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-size: 8px 10px;
  width: 8px;
  height: 10px;
}
.nav-side ul li > ul li:first-child {
  margin-top: 2.2rem;
}
.nav-side ul li > ul li:last-child {
  margin-bottom: 0.6rem;
}
.nav-side ul li > ul li + li {
  margin-top: 1.4rem;
}
.nav-side ul li.active > a {
  opacity: 0.35;
}
.nav-side ul li + li {
  margin-top: 1.6rem;
}
@media (min-width: 1025px) {
  .nav-side {
    display: block;
  }
}

.nav-horizontal {
  display: none;
  text-align: center;
}
@media (min-width: 768px) {
  .nav-horizontal {
    display: block;
  }
}
.nav-horizontal li {
  display: inline-block;
  padding-left: 4px !important;
  padding-right: 4px;
  padding-bottom: 8px;
}
.nav-horizontal li::before {
  content: none !important;
}
.nav-horizontal .active > a {
  background-color: #fff;
  color: #777;
}

.nav-sub {
  position: absolute;
  top: 0;
  right: 1rem;
  display: none;
}
.nav-sub > ul {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  height: 3.5rem;
}
.nav-sub > ul > li {
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0;
}
.nav-sub > ul > li > a, .nav-sub > ul > li > span {
  color: #FFFFFF;
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2857142857;
}
.nav-sub > ul > li + li {
  padding-left: 3rem;
}
@media (min-width: 1025px) {
  .nav-sub {
    display: block;
  }
}
@media (min-width: 1201px) {
  .nav-sub {
    right: 0;
  }
}

.mobile-sub {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
  border-top: 1px solid rgba(0, 51, 153, 0.2);
}
.mobile-sub > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -1rem;
  padding: 2rem 0;
}
.mobile-sub > ul > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}
.mobile-sub > ul > li > a, .mobile-sub > ul > li > span {
  display: block;
  padding: 1rem;
  color: #213462;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.28;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

/* Navigation */
/*
	===========
	Site Footer
	===========
*/
.footer-site {
  padding: 0 0 4rem 0;
}
.footer-site .footer-apply-now {
  padding: 3rem 3rem 2rem;
  background: rgba(0, 51, 153, 0.8);
}
.footer-site .footer-apply-now .wrap {
  height: 100%;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.footer-site .footer-apply-now .apply-text {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  color: #FFFFFF;
  margin: 0 0 1.6rem;
}
@media (min-width: 640px) {
  .footer-site .footer-apply-now {
    height: 12rem;
    padding: 1rem 3rem 0;
  }
  .footer-site .footer-apply-now .wrap {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .footer-site .footer-apply-now .apply-text {
    margin: 1.6rem 0;
  }
}
@media (min-width: 1440px) {
  .footer-site .footer-apply-now {
    padding-left: 0;
    padding-right: 0;
  }
}
.footer-site .wrap {
  padding-left: 3rem;
  padding-right: 3rem;
}
.footer-site .footer-bar h2 {
  font-family: "Poppins", sans-serif;
  color: #213462;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  margin-bottom: 1.1rem;
}
.footer-site .footer-bar .address a {
  color: #003399;
}
.footer-site .footer-bar .address a, .footer-site .footer-bar .address span {
  display: block;
  font-style: normal;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.6875;
}
.footer-site .footer-bar .address a.heavier, .footer-site .footer-bar .address span.heavier {
  font-weight: 600;
}
.footer-site .footer-bar .address .email {
  margin-bottom: 2rem;
}
.footer-site .footer-bar .address .email span {
  display: inline-block;
  text-decoration: underline;
}
.footer-site .footer-bar .nav-footer ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.footer-site .footer-bar .nav-footer ul li {
  padding: 0.5rem 0;
}
.footer-site .footer-bar .nav-footer ul li a {
  color: #000000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375;
  transition: color 0.3s;
}
.footer-site .footer-bar .nav-footer ul li a:hover {
  color: #003399;
}
.footer-site .footer-bar .footer-columns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 2px solid rgba(33, 52, 98, 0.2);
}
.footer-site .footer-bar .footer-columns .col-1 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding-bottom: 2.5rem;
}
.footer-site .footer-bar .footer-columns .col-2 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding-bottom: 2rem;
}
.footer-site .footer-bar .footer-columns > *:last-child {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  padding-top: 0;
  padding-bottom: 3rem;
}
.footer-site > .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 4rem;
}
.footer-site > .wrap .accreditation {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -1.5rem -0.6rem 1rem;
  padding-bottom: 1.5rem;
  border-bottom: 2px solid rgba(33, 52, 98, 0.2);
}
.footer-site > .wrap .accreditation-item {
  max-width: 33.3333%;
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-align: center;
  padding: 1.5rem 0.6rem;
}
.footer-site > .wrap .accreditation img {
  max-height: 5rem;
  width: auto;
}
.footer-site > .wrap .copyright {
  display: inline-block;
  font-weight: 600;
  color: #000000;
  line-height: 1.6875;
}
.footer-site > .wrap .footer-row {
  margin-top: 2rem;
  margin-bottom: 2rem;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.footer-site > .wrap .nav-terms {
  display: block;
}
.footer-site > .wrap .nav-terms li {
  line-height: 1.6875;
}
.footer-site > .wrap .nav-terms li a {
  display: inline-block;
  color: #000000;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.6875;
}
@media (min-width: 768px) {
  .footer-site {
    padding-bottom: 10rem;
  }
  .footer-site .footer-bar .wrap {
    padding-top: 10rem;
  }
  .footer-site .footer-bar h2 {
    margin-bottom: 2.1rem;
  }
  .footer-site .footer-bar .nav-footer ul {
    height: 29rem;
  }
  .footer-site .footer-bar .nav-footer ul li {
    padding-top: 1rem;
    padding-bottom: 1rem;
    width: 33.33333333%;
  }
  .footer-site .footer-bar .footer-columns {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    padding-bottom: 5rem;
  }
  .footer-site .footer-bar .footer-columns .col-1 {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    padding-top: 0.6rem;
    padding-bottom: 0;
  }
  .footer-site .footer-bar .footer-columns .col-2 {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
    padding-top: 0.6rem;
    padding-bottom: 0;
  }
  .footer-site .footer-bar .footer-columns > *:last-child {
    -ms-flex-align: end;
        align-items: flex-end;
    text-align: right;
    padding-bottom: 0;
  }
  .footer-site > .wrap {
    padding-top: 6rem;
    -ms-flex-align: center;
        align-items: center;
  }
  .footer-site > .wrap .accreditation {
    margin: 0 0 6rem;
    padding-bottom: 6rem;
  }
  .footer-site > .wrap .accreditation-item {
    padding: 1.2rem;
    -ms-flex-preferred-size: 12%;
        flex-basis: 12%;
    -ms-flex-negative: 1;
        flex-shrink: 1;
  }
  .footer-site > .wrap .accreditation img {
    max-height: 8rem;
  }
  .footer-site > .wrap .copyright {
    line-height: 1;
  }
  .footer-site > .wrap .footer-row {
    margin-top: 0;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .footer-site > .wrap .nav-terms {
    display: inline-block;
    padding-left: 1rem;
  }
  .footer-site > .wrap .nav-terms li {
    display: inline-block;
    line-height: 1;
  }
  .footer-site > .wrap .nav-terms li:not(:first-child) {
    border-left: 2px solid #000000;
  }
  .footer-site > .wrap .nav-terms li a {
    line-height: 1;
    padding: 0 1rem;
  }
}
@media (min-width: 1260px) {
  .footer-site .wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

/* Site Footer */
.socials {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.socials li {
  margin: 0;
}
.socials li a {
  display: block;
  font-size: 0;
  width: 2.6rem;
  height: 2.6rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.socials li a.facebook {
  background-image: url("/site/images/icon/socials/facebook.svg");
}
.socials li a.youtube {
  background-image: url("/site/images/icon/socials/youtube.svg");
}
.socials li a.linkedin {
  background-image: url("/site/images/icon/socials/linkedin.svg");
}
.socials li a.twitter {
  background-image: url("/site/images/icon/socials/twitter.svg");
}
.socials li a.instagram {
  background-image: url("/site/images/icon/socials/ins.svg");
}
.socials li + li {
  margin-left: 3rem;
}
@media (min-width: 768px) {
  .socials {
    margin-bottom: 3rem;
  }
  .socials li a {
    width: 3rem;
    height: 3rem;
  }
}

/*
	===============
	Content Section
	===============
*/
.content-section {
  background-color: #FFFFFF;
}

.content-block-layout .main-col:only-child {
  width: 100%;
}

.main-col h1 {
  line-height: 1.2;
}
.main-col h2, .main-col h3, .main-col h4 {
  color: #213462;
}
.main-col p, .main-col ul li, .main-col ol li {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #444444;
}
.main-col p a, .main-col ul li a, .main-col ol li a {
  color: #003399;
  text-decoration: underline;
}
.main-col td a {
  color: #003399;
  text-decoration: underline;
}
.main-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.main-col ul li {
  padding-left: 2.8rem;
  position: relative;
}
.main-col ul li ul {
  margin-top: 0.5em;
}
.main-col ul li:not(:empty)::before {
  content: "";
  position: absolute;
  display: inline-block;
  top: 1rem;
  left: 0;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  font-size: 0;
  background: #003399;
}
.main-col ol {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: li;
}
.main-col ol li {
  counter-increment: li;
  padding-left: 2.8rem;
  position: relative;
}
.main-col ol li ol {
  margin-top: 0.5em;
}
.main-col ol li ol li {
  list-style-type: none;
  padding-left: 4.8rem;
}
.main-col ol li ol li::before {
  content: counter(li, lower-alpha) ".";
}
.main-col ol li::before {
  content: counter(li) ".";
  font-weight: bold;
  color: #003399;
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
}
.main-col table {
  display: block;
  width: 100%;
  overflow-y: auto;
  border-collapse: collapse;
  border-spacing: 0;
  -webkit-overflow-scrolling: touch;
}
.main-col table td, .main-col table th {
  padding: 1rem 1.5rem;
  vertical-align: middle;
  border: 1px solid #003399;
  font-size: 1.4rem;
  color: #000000;
}
.main-col table td p, .main-col table th p {
  font-size: 1.4rem;
  color: #000000;
  margin: 0;
}
.main-col table thead td, .main-col table th {
  background-color: #003399;
  color: #FFFFFF;
}
@media (min-width: 769px) {
  .main-col h2 {
    font-size: 3.2rem;
  }
  .main-col p, .main-col ul li {
    font-size: 2rem;
  }
  .main-col table {
    display: table;
  }
}

.main-col .content-block > *:first-child {
  margin-top: 0;
}
.main-col .content-block.carousel-wrap, .main-col .content-block.full-video-block {
  padding: 0;
}
@media (min-width: 1025px) {
  .main-col .content-block {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media (min-width: 1440px) {
  .main-col .content-block {
    padding-left: 0;
    padding-right: 0;
  }
}

.information-item {
  padding: 0 4rem;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-decoration: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.information-item img {
  width: 4.4rem;
  height: 4.4rem;
}
.information-item > h1, .information-item > h2, .information-item > h3 {
  font-size: 2rem;
  margin: 1.6rem 0 0.6rem;
  letter-spacing: -0.03em;
}
.information-item > p {
  margin: 0;
  text-align: center;
}
@media (min-width: 1025px) {
  .information-item {
    padding: 2rem 2rem 0;
  }
  .information-item img {
    width: 6rem;
    height: 6rem;
  }
  .information-item > h1, .information-item > h2, .information-item > h3 {
    font-size: 2.2rem;
    margin: 2.6rem 0 1.4rem;
  }
}

.infomation-block {
  max-width: 120rem;
  width: 100%;
  padding: 3rem 0;
  position: relative;
}
.infomation-block .card-header-text {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  text-align: center;
  margin-bottom: 3rem;
}
.infomation-block .card-block-content {
  margin: 0;
}
.infomation-block.full-width-bg {
  padding: 5rem 0;
}
.infomation-block.full-width-bg::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #213462;
  z-index: 0;
}
.infomation-block.full-width-bg .split-3 .col + .col {
  margin-top: 4rem;
}
.infomation-block.full-width-bg .information-item h1, .infomation-block.full-width-bg .information-item h2, .infomation-block.full-width-bg .information-item h3 {
  font-size: 4rem;
  font-weight: 900;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem;
}
.infomation-block.full-width-bg .information-item h1, .infomation-block.full-width-bg .information-item h2, .infomation-block.full-width-bg .information-item h3, .infomation-block.full-width-bg .information-item p {
  color: #FFFFFF;
}
@media (min-width: 769px) {
  .infomation-block.full-width-bg .information-item h1, .infomation-block.full-width-bg .information-item h2, .infomation-block.full-width-bg .information-item h3 {
    font-size: 5rem;
  }
}
@media (min-width: 920px) {
  .infomation-block.full-width-bg {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
  .infomation-block.full-width-bg .split-3 .col + .col {
    margin-top: 0;
  }
}
@media (min-width: 1201px) {
  .infomation-block.full-width-bg::before {
    left: calc((100vw - 100%) * -0.5);
  }
}

.oversize-bg {
  position: relative;
}
.oversize-bg > * {
  position: relative;
  z-index: 2;
}
.oversize-bg::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
@media (min-width: 1201px) {
  .oversize-bg::before {
    left: -6rem;
    width: calc(100% + 12rem);
  }
}

.quote-block {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center;
  padding: 4rem 5rem 3.6rem;
}
.quote-block::before {
  background: rgba(204, 204, 204, 0.3);
}
.quote-block .quote-mark {
  border-radius: 50%;
  width: 6rem;
  height: 6rem;
  background-color: #213462;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzciIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAzNyAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTUuNjAyNCAxNC43MjMyVjMwSDBWMTkuOTI2MmMwLTMuODM3Ni42Njg2NzUtNy4zMDYzIDIuMDA2MDItMTAuNDA1OTFDMy4zNDMzNyA2LjM0Njg2IDUuNjA5NDQgMy4xNzM0MyA4LjgwNDIyIDBMMTQuNDg4IDQuNDI4MDRjLTEuNzgzMiAxLjkxODgyLTMuMTU3NyAzLjY5MDA0LTQuMTIzNSA1LjMxMzY2LS45NjU5MSAxLjYyMzYtMS41OTc0MyAzLjI4NDEtMS44OTQ2MiA0Ljk4MTVoNy4xMzI1MnptMjEuMzk3NiAwVjMwSDIxLjM5NzZWMTkuOTI2MmMwLTMuODM3Ni42Njg3LTcuMzA2MyAyLjAwNi0xMC40MDU5MUMyNC43NDEgNi4zNDY4NiAyNy4wMDcgMy4xNzM0MyAzMC4yMDE4IDBsNS42ODM3IDQuNDI4MDRjLTEuNzgzMSAxLjkxODgyLTMuMTU3NiAzLjY5MDA0LTQuMTIzNCA1LjMxMzY2LS45NjU5IDEuNjIzNi0xLjU5NzQgMy4yODQxLTEuODk0NiA0Ljk4MTVIMzd6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  background-position: center center;
  background-size: auto 18px;
}
.quote-block > h3 {
  color: #444444;
  font-weight: 400;
  max-width: 72rem;
  margin: 2rem 0 2.4rem;
}
.quote-block .quote-author {
  font-size: 1.4rem;
  color: rgba(0, 51, 153, 0.7);
  margin: 0;
}
@media (min-width: 769px) {
  .quote-block .quote-mark {
    width: 8rem;
    height: 8rem;
    background-size: auto 24px;
  }
  .quote-block .quote-author {
    font-size: 2rem;
    color: #003399;
  }
}
@media (min-width: 1025px) {
  .quote-block {
    padding: 6rem 6rem 5.6rem;
  }
  .quote-block .quote-mark {
    width: 10rem;
    height: 10rem;
    background-size: auto 30px;
  }
  .quote-block > h3 {
    margin: 3rem 0 2.7rem;
  }
}

.limited-info-block {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 3rem;
}
.limited-info-block::before {
  background: rgba(33, 52, 98, 0.15);
}
.limited-info-block > h1 {
  font-size: 2.4rem;
  color: #213462;
}
.limited-info-block > p {
  color: #000000;
  max-width: 72rem;
  margin: 1.6rem 0;
}
@media (min-width: 769px) {
  .limited-info-block {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .limited-info-block > h1 {
    font-size: 5rem;
  }
}
@media (min-width: 1025px) {
  .limited-info-block {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .limited-info-block > p {
    margin: 2.4rem 0;
  }
}
@media (min-width: 1201px) {
  .limited-info-block {
    padding-left: 0;
    padding-right: 0;
  }
}

/* text-image */
.split-2 .col > .rte {
  padding: 0 3rem 3rem;
}
.split-2 .col > .rte > * {
  width: 100%;
  margin-top: 1rem;
}
.split-2 .col > .rte p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #444444;
  margin-bottom: 0;
}
@media (min-width: 769px) {
  .split-2 .col > .rte {
    padding: 0 1rem 3rem;
  }
}
@media (min-width: 920px) {
  .split-2 .col > .rte > *:first-child {
    margin-top: 0;
  }
}
@media (min-width: 1025px) {
  .split-2 .col > .rte > * {
    max-width: 54rem;
  }
  .split-2 .col > .rte > * + * {
    margin-top: 1.8rem;
  }
  .split-2 .col > .rte p {
    font-size: 2rem;
  }
}
@media (min-width: 1201px) {
  .split-2 .col > .rte {
    padding: 0;
  }
}

@media (min-width: 1025px) {
  .split-2 .col:last-child .rte > * {
    margin-left: auto;
  }
}

.split-2 .col .content-block:not(.rte) {
  padding: 0 1rem;
}
@media (min-width: 1201px) {
  .split-2 .col .content-block:not(.rte) {
    padding: 0;
  }
}

.split-2 .col > .content-block.carousel-wrap {
  padding: 0;
  overflow: hidden;
  position: relative;
}
.split-2 .col > .content-block.carousel-wrap + .content-block {
  margin-top: 0;
  padding: 0;
}
.split-2 .col > .content-block.carousel-wrap + .content-block p {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #444444;
  padding: 0.4rem 3rem 0;
}
@media (min-width: 1025px) {
  .split-2 .col > .content-block.carousel-wrap + .content-block p {
    margin: 2rem 0 0;
  }
}

.full-video-block .video-clip {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
}
.full-video-block .video-clip iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 1201px) {
  .full-video-block {
    border-radius: 5px;
  }
  .full-video-block .video-clip, .full-video-block .video-clip iframe {
    border-radius: 5px;
  }
}

/* Content Section */
/*
	============
	Image Banner
	============
*/
.banner-image {
  position: relative;
}
.banner-image .banner-image-bg::before {
  padding-bottom: 46.39%;
}
.banner-image .banner-image-bg.empty:before {
  padding-bottom: 100px !important;
}
.banner-image .banner-image-bg .banner-image-inner {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
.banner-image .banner-image-bg .banner-image-inner.mobile + .banner-image-inner {
  display: none;
}
.banner-image > .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
  padding-top: 40rem;
}
.banner-image > .inner .wrap {
  height: 100%;
}
@media (min-width: 600px) {
  .banner-image .banner-image-bg .banner-image-inner.mobile {
    display: none;
  }
  .banner-image .banner-image-bg .banner-image-inner.mobile + .banner-image-inner {
    display: block;
  }
}

.banner-image.home-banner-image .wrap .search, .banner-image.landing-banner-image .wrap .search, .course-search-section .search, .course-search-block .search {
  max-width: 60rem;
  width: 100%;
}
.banner-image.home-banner-image .wrap .search .form-search .input-field, .banner-image.landing-banner-image .wrap .search .form-search .input-field, .course-search-section .search .form-search .input-field, .course-search-block .search .form-search .input-field {
  position: relative;
  display: block;
  width: 100%;
}
.banner-image.home-banner-image .wrap .search .form-search .form-search-button, .banner-image.landing-banner-image .wrap .search .form-search .form-search-button, .course-search-section .search .form-search .form-search-button, .course-search-block .search .form-search .form-search-button {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
}

.home-banner {
  margin-top: 5rem;
}
@media (min-width: 1201px) {
  .home-banner {
    margin-top: 15rem;
  }
}
.home-banner .image-right {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 45%;
}
@media (max-width: 768px) {
  .home-banner .image-right {
    display: none;
  }
}
.home-banner .main-content {
  display: -ms-flexbox;
  display: flex;
}
.home-banner .main-content .left {
  -ms-flex-positive: 1;
      flex-grow: 1;
  max-width: 60%;
}
@media (max-width: 539px) {
  .home-banner .main-content .left {
    max-width: 100%;
  }
}
@media (max-width: 539px) {
  .home-banner + .home-content-wrap {
    margin-top: 6rem;
  }
}

.banner-image.home-banner-image {
  height: 100%;
}
.banner-image.home-banner-image .banner-image-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: right top;
}
.banner-image.home-banner-image .banner-image-bg::before {
  content: none;
}
.banner-image.home-banner-image .banner-image-bg::after {
  height: 25%;
}
@media (max-width: 540px) {
  .banner-image.home-banner-image .banner-image-bg {
    background-image: none !important;
  }
}
.banner-image.home-banner-image.home-slide-bg-blue {
  background-color: #003399;
}
.banner-image.home-banner-image.home-slide-bg-yellow {
  background-color: #ffbf2e;
}
.banner-image.home-banner-image.home-slide-bg-blue-green {
  background-image: linear-gradient(17.78deg, #95C11F 21.26%, #7BBA54 35.05%, #56B19F 56.07%, #3FABCF 71.11%, #36A9E1 78.6%);
}
.banner-image.home-banner-image.home-slide-bg-blue-green.home-slide-img-dual .banner-image-bg::after {
  background-color: #36A9E1;
}
.banner-image.home-banner-image.home-slide-bg-blue-green.home-slide-img-dual .banner-image-bg .banner-image-inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, #36A9E1 0%, rgba(54, 169, 225, 0) 100%);
}
.banner-image.home-banner-image.home-slide-bg-pink-blue {
  background-image: linear-gradient(180deg, #DF84B5 -0.92%, #DF84B5 17.12%, #C99BC0 42.06%, #A3C1D3 87.65%, #A3C1D3 101.45%);
}
.banner-image.home-banner-image.home-slide-bg-pink-blue.home-slide-img-dual .banner-image-bg::after {
  background-color: #DF84B5;
}
.banner-image.home-banner-image.home-slide-bg-pink-blue.home-slide-img-dual .banner-image-bg .banner-image-inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, #DF84B5 0%, rgba(54, 169, 225, 0) 100%);
}
.banner-image.home-banner-image.home-slide-bg-red-orange {
  background-image: linear-gradient(359.95deg, #D60B52 -0.77%, #D60B52 15.02%, #DA1E4B 30.43%, #E35139 61.83%, #F1981F 101.27%);
}
.banner-image.home-banner-image.home-slide-bg-red-orange.home-slide-img-dual .banner-image-bg::after {
  background-color: #D60B52;
}
.banner-image.home-banner-image.home-slide-bg-red-orange.home-slide-img-dual .banner-image-bg .banner-image-inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, #D60B52 0%, rgba(54, 169, 225, 0) 100%);
}
.banner-image.home-banner-image.home-slide-img-dual .banner-image-bg .banner-image-inner {
  height: 75%;
  background-position: left bottom, right bottom;
  background-size: auto 100%, auto 100%;
}
.banner-image.home-banner-image .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding: 3rem 3rem 10rem;
}
.banner-image.home-banner-image .wrap h1.blue, .banner-image.home-banner-image .wrap p.blue {
  color: #222c4f;
}
.banner-image.home-banner-image .wrap h1 span {
  display: block;
}
.banner-image.home-banner-image .wrap .button, .banner-image.home-banner-image .wrap .button-secondary, .banner-image.home-banner-image .wrap .button-highlight-2, .banner-image.home-banner-image .wrap .button-highlight-3, .banner-image.home-banner-image .wrap .button-highlight-4, .banner-image.home-banner-image .wrap .button-highlight-5, .banner-image.home-banner-image .wrap .button-white, .banner-image.home-banner-image .wrap .button-transparent, .banner-image.home-banner-image .wrap .button-outline-dark-blue, .banner-image.home-banner-image .wrap .button-dotted-white, .banner-image.home-banner-image .wrap .button-workplace, .banner-image.home-banner-image .wrap .button-apply, .banner-image.home-banner-image .wrap .button-prospectus, .banner-image.home-banner-image .wrap .button-print, .banner-image.home-banner-image .wrap .button-course, .banner-image.home-banner-image .wrap .button-twitter, .banner-image.home-banner-image .wrap .button-prospectus-download, .banner-image.home-banner-image .wrap .button-prospectus-post, .banner-image.home-banner-image .wrap .button-arrow, .banner-image.home-banner-image .wrap .nav-horizontal a, .nav-horizontal .banner-image.home-banner-image .wrap a {
  font-size: 1.6rem;
  padding-top: 1.05rem;
  padding-bottom: 1.05rem;
  margin-top: 2rem;
}
.banner-image.home-banner-image .wrap h1 + p {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.3461538462;
  color: #FFFFFF;
  margin: 1.2rem 0 1.6rem;
}
.banner-image.home-banner-image .wrap h1 + .images-container {
  margin-top: 1rem;
}
.banner-image.home-banner-image .wrap .images-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  margin: -1rem;
}
.banner-image.home-banner-image .wrap .images-container .image-wrap {
  padding: 1rem;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 33.33%;
      flex-basis: 33.33%;
  max-width: 12rem;
}
.banner-image.home-banner-image .wrap .images-container .image-wrap .image-item {
  width: 100%;
  padding-bottom: 100%;
  border-radius: 50%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.banner-image.home-banner-image + .home-content-wrap > * + * {
  margin-top: 3rem;
}
.banner-image.home-banner-image > .inner {
  position: relative;
  padding-top: 6rem;
}
@media (min-width: 540px) {
  .banner-image.home-banner-image .wrap {
    -ms-flex-pack: center;
        justify-content: center;
    padding-bottom: 8rem;
  }
  .banner-image.home-banner-image .wrap h1 + p {
    font-size: 2.6rem;
    margin: 2.4rem 0 2.4rem;
  }
}
@media (min-width: 769px) {
  .banner-image.home-banner-image .wrap .button, .banner-image.home-banner-image .wrap .button-secondary, .banner-image.home-banner-image .wrap .button-highlight-2, .banner-image.home-banner-image .wrap .button-highlight-3, .banner-image.home-banner-image .wrap .button-highlight-4, .banner-image.home-banner-image .wrap .button-highlight-5, .banner-image.home-banner-image .wrap .button-white, .banner-image.home-banner-image .wrap .button-transparent, .banner-image.home-banner-image .wrap .button-outline-dark-blue, .banner-image.home-banner-image .wrap .button-dotted-white, .banner-image.home-banner-image .wrap .button-workplace, .banner-image.home-banner-image .wrap .button-apply, .banner-image.home-banner-image .wrap .button-prospectus, .banner-image.home-banner-image .wrap .button-print, .banner-image.home-banner-image .wrap .button-course, .banner-image.home-banner-image .wrap .button-twitter, .banner-image.home-banner-image .wrap .button-prospectus-download, .banner-image.home-banner-image .wrap .button-prospectus-post, .banner-image.home-banner-image .wrap .button-arrow, .banner-image.home-banner-image .wrap .nav-horizontal a, .nav-horizontal .banner-image.home-banner-image .wrap a {
    font-size: 1.8rem;
    margin-top: 3rem;
  }
  .banner-image.home-banner-image .wrap .images-container .image-wrap {
    max-width: 12rem;
  }
  .banner-image.home-banner-image + .home-content-wrap > * + * {
    margin-top: 4rem;
  }
}
@media (min-width: 1025px) {
  .banner-image.home-banner-image + .home-content-wrap > * + * {
    margin-top: 6rem;
  }
  .banner-image.home-banner-image > .inner {
    padding-top: 40rem;
  }
}
@media (min-width: 1201px) {
  .banner-image.home-banner-image .wrap {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 3rem;
  }
  .banner-image.home-banner-image .wrap h1.large {
    font-size: 6rem;
  }
  .banner-image.home-banner-image .wrap h1 + .images-container {
    margin-top: 0.5rem;
  }
  .banner-image.home-banner-image .wrap .images-container {
    margin: -1.5rem;
  }
  .banner-image.home-banner-image .wrap .images-container .image-wrap {
    padding: 1.5rem;
    max-width: 15rem;
  }
}

.home-banner-carousel .slick-list, .home-banner-carousel .slick-track, .home-banner-carousel .slide-item {
  height: 100%;
}
.home-banner-carousel .slick-track {
  display: -ms-flexbox;
  display: flex;
}
.home-banner-carousel .slick-track .slick-slide {
  display: -ms-flexbox;
  display: flex;
  height: auto;
}
.home-banner-carousel .slick-slide > div {
  width: 100%;
}
.home-banner-carousel .slick-prev, .home-banner-carousel .slick-next, .home-banner-carousel .slick-autoplay-toggle-button {
  position: absolute;
  border: none;
  left: auto;
  bottom: 3rem;
  width: 4rem;
  height: 4rem;
  background: #000000;
  padding: 0;
}
.home-banner-carousel .slick-prev::before, .home-banner-carousel .slick-next::before, .home-banner-carousel .slick-autoplay-toggle-button::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAyMCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNLTdlLTcgNUgxOG0wIDBsLTQuNS00TTE4IDVsLTQuNSA0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-size: 20px 10px;
  background-color: #000000;
  width: 4rem;
  height: 4rem;
}
.home-banner-carousel .slick-prev {
  right: 14rem;
}
.home-banner-carousel .slick-next {
  right: 9rem;
  border-radius: 0;
}
.home-banner-carousel .slick-autoplay-toggle-button {
  z-index: 10;
  right: 3rem;
}
.home-banner-carousel .slick-autoplay-toggle-button .slick-play-icon:before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIvPg0KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zIDUuNDk2ODZDMyAzLjE3NjYyIDUuNTIxMTYgMS43MzQ2NSA3LjUyMTA2IDIuOTExMDZMMTguNTc2NCA5LjQxNDIzQzIwLjU0ODQgMTAuNTc0MiAyMC41NDg0IDEzLjQyNTkgMTguNTc2NCAxNC41ODU4TDcuNTIxMDYgMjEuMDg5QzUuNTIxMTYgMjIuMjY1NCAzIDIwLjgyMzQgMyAxOC41MDMyVjUuNDk2ODZaIiBmaWxsPSJ3aGl0ZSIvPg0KPC9zdmc+");
  background-size: 3rem 3rem;
  background-position: center;
  background-color: #000000;
  width: 4rem;
  height: 4rem;
  display: inline-block;
}
.home-banner-carousel .slick-autoplay-toggle-button .slick-pause-icon:before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjAgNUwyMCAxOUMyMCAyMC42NTY5IDE4LjY1NjkgMjIgMTcgMjJMMTYgMjJDMTQuMzQzMSAyMiAxMyAyMC42NTY5IDEzIDE5TDEzIDVDMTMgMy4zNDMxNCAxNC4zNDMxIDIgMTYgMkwxNyAyQzE4LjY1NjkgMiAyMCAzLjM0MzE1IDIwIDVaIiBmaWxsPSJ3aGl0ZSIvPg0KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDJDOS42NTY4NSAyIDExIDMuMzQzMTUgMTEgNUwxMSAxOUMxMSAyMC42NTY5IDkuNjU2ODUgMjIgOCAyMkw3IDIyQzUuMzQzMTUgMjIgNCAyMC42NTY5IDQgMTlMNCA1QzQgMy4zNDMxNCA1LjM0MzE1IDIgNyAyTDggMloiIGZpbGw9IndoaXRlIi8+DQo8L3N2Zz4=");
  background-size: 3rem 3rem;
  background-position: center;
  background-color: #000000;
  width: 4rem;
  height: 4rem;
  display: inline-block;
}
@media (min-width: 769px) {
  .home-banner-carousel .slick-prev, .home-banner-carousel .slick-next, .home-banner-carousel .slick-autoplay-toggle-button {
    width: 5rem;
    height: 5rem;
  }
  .home-banner-carousel .slick-prev::before, .home-banner-carousel .slick-next::before, .home-banner-carousel .slick-autoplay-toggle-button::before {
    width: 5rem;
    height: 5rem;
  }
}
@media (min-width: 1201px) {
  .home-banner-carousel .slick-prev {
    right: calc((100vw - 120rem) * 0.5 + 14rem);
  }
  .home-banner-carousel .slick-next {
    right: calc((100vw - 120rem) * 0.5 + 7rem);
  }
  .home-banner-carousel .slick-autoplay-toggle-button {
    right: calc((100vw - 120rem) * 0.5);
  }
}

.banner-image.content-banner-image, .banner-image.landing-banner-image {
  margin-top: 6rem;
  z-index: 21;
}
.banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
  padding-bottom: 58.67%;
}
.banner-image.content-banner-image .banner-image-bg .banner-image-inner, .banner-image.landing-banner-image .banner-image-bg .banner-image-inner {
  background-position: left center;
  background-size: cover;
}
.banner-image.content-banner-image > .inner, .banner-image.landing-banner-image > .inner {
  position: relative;
  padding-top: 3rem;
}
.banner-image.content-banner-image .wrap .content-layout, .banner-image.landing-banner-image .wrap .content-layout {
  height: 100%;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.banner-image.content-banner-image .wrap .content-layout h2.sub, .banner-image.landing-banner-image .wrap .content-layout h2.sub {
  color: white;
}
.banner-image.content-banner-image .wrap .left-content, .banner-image.content-banner-image .wrap .right-content, .banner-image.landing-banner-image .wrap .left-content, .banner-image.landing-banner-image .wrap .right-content {
  padding-left: 3rem;
  padding-right: 3rem;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.banner-image.content-banner-image .wrap .left-content h1, .banner-image.landing-banner-image .wrap .left-content h1 {
  text-transform: none;
}
.banner-image.content-banner-image + .content-wrap, .banner-image.landing-banner-image + .content-wrap {
  margin-top: 0;
  max-width: 132rem;
}
.banner-image.content-banner-image + .content-wrap .main-col, .banner-image.landing-banner-image + .content-wrap .main-col {
  padding-top: 3rem;
}
@media (min-width: 769px) {
  .banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 46.39%;
  }
  .banner-image.content-banner-image .wrap .left-content h1, .banner-image.landing-banner-image .wrap .left-content h1 {
    font-size: 5rem;
    line-height: 1.12;
  }
}
@media (min-width: 920px) {
  .banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 36%;
  }
}
@media (min-width: 1025px) {
  .banner-image.content-banner-image, .banner-image.landing-banner-image {
    margin-top: 15.5rem;
  }
  .banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
  .banner-image.content-banner-image > .inner, .banner-image.landing-banner-image > .inner {
    position: absolute;
  }
  .banner-image.content-banner-image .wrap, .banner-image.landing-banner-image .wrap {
    max-width: 132rem;
  }
}
@media (min-width: 1201px) {
  .banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
  .banner-image.content-banner-image .wrap, .banner-image.landing-banner-image .wrap {
    padding-right: 6rem;
  }
  .banner-image.content-banner-image .wrap .left-content h1, .banner-image.landing-banner-image .wrap .left-content h1 {
    font-size: 7rem;
  }
  .banner-image.content-banner-image + .content-wrap, .banner-image.landing-banner-image + .content-wrap {
    padding-right: 6rem;
  }
}
@media (min-width: 1440px) {
  .banner-image.content-banner-image .banner-image-bg::before, .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 29.24%;
  }
}

.banner-image.landing-banner-image.course-detail-banner-image .banner-image-bg::after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap {
  margin-top: 0;
  max-width: 120rem;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block h2 {
  margin-bottom: 3rem;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block h3 {
  margin-bottom: 1.8rem;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block p {
  margin: 0;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block p + p {
  margin: 1.8rem 0 0;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block + .content-block {
  margin-top: 3rem;
}
.banner-image.landing-banner-image.course-detail-banner-image + .content-wrap .main-col .content-block.sharethis {
  padding-top: 0;
  padding-bottom: 0;
  border-bottom: 0;
}
@media (min-width: 769px) {
  .banner-image.landing-banner-image.course-detail-banner-image .wrap .left-content h1 {
    font-size: 4rem;
  }
}
@media (min-width: 1201px) {
  .banner-image.landing-banner-image.course-detail-banner-image .wrap .left-content h1 {
    font-size: 5rem;
  }
}
@media (min-width: 1440px) {
  .banner-image.landing-banner-image.course-detail-banner-image .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
}

.banner-image.content-banner-image .banner-image-bg .map {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.banner-image.content-banner-image .wrap .right-content {
  background: #003399;
  color: #FFFFFF;
  height: 8rem;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.banner-image.content-banner-image .wrap .right-content h2 {
  margin: 0;
  color: #FFFFFF;
}
.banner-image.content-banner-image .wrap .left-content h1 {
  font-size: 3rem;
  color: #213462;
  letter-spacing: -0.02em;
  line-height: 1.1;
  text-transform: none;
  margin: 0;
}
@media (min-width: 1025px) {
  .banner-image.content-banner-image .wrap .left-content, .banner-image.content-banner-image .wrap .right-content {
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .banner-image.content-banner-image .wrap .left-content {
    background: #FFFFFF;
    padding-top: 5.4rem;
  }
  .banner-image.content-banner-image.no-right .wrap .left-content {
    padding: 3.4rem 3rem 0;
  }
  .banner-image.content-banner-image + .content-wrap .right-col, .banner-image.content-banner-image + .content-wrap .left-col, .banner-image.content-banner-image + .content-wrap .main-col {
    padding-top: 4rem;
  }
  .banner-image.content-banner-image + .content-wrap .right-col .content-block-layout.display-all .main-col, .banner-image.content-banner-image + .content-wrap .left-col .content-block-layout.display-all .main-col, .banner-image.content-banner-image + .content-wrap .main-col .content-block-layout.display-all .main-col {
    padding-top: 0;
  }
  .banner-image.content-banner-image + .content-wrap .right-col, .banner-image.content-banner-image + .content-wrap .left-col {
    position: relative;
  }
  .banner-image.content-banner-image + .content-wrap .right-col::before, .banner-image.content-banner-image + .content-wrap .left-col::before {
    content: "";
    position: absolute;
    top: -8rem;
    left: 0;
    width: 30rem;
    height: 54rem;
    background: linear-gradient(94.41deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 12.19%);
  }
  .banner-image.content-banner-image + .content-wrap .left-col::before {
    left: auto;
    right: 0;
    background: linear-gradient(-94.41deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 12.19%);
  }
  .banner-image.content-banner-image + .content-wrap .main-col:only-child .content-block {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .banner-image.content-banner-image + .content-wrap .main-col:only-child .content-block .form-query {
    max-width: 84rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

.banner-image.course-banner-image {
  margin-top: 6rem;
  z-index: 21;
}
.banner-image.course-banner-image .banner-image-bg::before {
  padding-bottom: 77.33%;
}
.banner-image.course-banner-image .banner-image-bg::after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
}
.banner-image.course-banner-image .banner-external-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
@media (min-width: 920px) {
  .banner-image.course-banner-image .banner-external-container {
    position: absolute;
    right: 0;
    bottom: 6rem;
    width: 100%;
    z-index: 9999;
    padding-right: 3rem;
  }
  .banner-image.course-banner-image .banner-external-container .banner-external-card {
    z-index: 2;
    -ms-flex-preferred-size: 33.333%;
        flex-basis: 33.333%;
  }
}
@media (min-width: 1201px) {
  .banner-image.course-banner-image .banner-external-container {
    right: calc((100% - 120rem) * 0.5);
    bottom: 10rem;
    padding-right: 0;
    max-width: 120rem;
  }
}
.banner-image.course-banner-image .inner {
  padding: 0 3rem 3rem;
}
.banner-image.course-banner-image .wrap .content-layout, .banner-image.course-banner-image .wrap .main-content {
  height: 100%;
}
.banner-image.course-banner-image .wrap .main-content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  width: 100%;
}
.banner-image.course-banner-image .wrap .main-content h1 {
  font-size: 3rem;
  color: #FFFFFF;
  letter-spacing: -0.02em;
  line-height: 1.1;
  text-transform: none;
  margin: 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.banner-image.course-banner-image .wrap .main-content .left-content {
  position: absolute;
  bottom: 20%;
  padding-bottom: 10rem;
}
@media (min-width: 1201px) {
  .banner-image.course-banner-image .wrap .main-content .left-content {
    bottom: 0;
    width: 30%;
  }
}
.banner-image.course-banner-image .wrap .main-content .left-content h1 {
  font-size: 2.4rem;
  line-height: 1.2;
}
@media (min-width: 1201px) {
  .banner-image.course-banner-image .wrap .main-content .left-content h1 {
    font-size: 5rem;
  }
}
.banner-image.course-banner-image .wrap .main-content .left-content h2 {
  color: white;
}
.banner-image.course-banner-image .wrap .main-content .left-content .margin-right {
  margin-right: 1rem;
}
.banner-image.course-banner-image .wrap .course-prices {
  width: 100%;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.banner-image.course-banner-image .wrap .course-prices > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.banner-image.course-banner-image .wrap .course-prices h3 {
  font-weight: 900;
  text-transform: uppercase;
  color: #FFFFFF;
  margin: 0;
  position: relative;
}
.banner-image.course-banner-image .wrap .course-prices h3::after {
  content: "";
  display: inline-block;
  height: 2px;
  background: #FFFFFF;
  -ms-flex-positive: 1;
      flex-grow: 1;
  margin-left: 2rem;
}
.banner-image.course-banner-image .wrap .course-prices p {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #FFFFFF;
  margin: 0;
}
.banner-image.course-banner-image .wrap .course-prices p.bold {
  font-weight: 400;
}
.banner-image.course-banner-image .wrap .course-prices .price-item, .banner-image.course-banner-image .wrap .course-prices .course-name h3 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0.2rem 0;
}
.banner-image.course-banner-image .wrap .course-prices .course-name h3 {
  padding-bottom: 1.6rem;
}
.banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block-layout, .banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block {
  margin-top: 3rem;
}
.banner-image.course-banner-image + .course-wrap .main-col > * + * {
  margin-top: 3rem;
}
@media (min-width: 600px) {
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 62.75%;
  }
}
@media (min-width: 769px) {
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 46.39%;
  }
  .banner-image.course-banner-image .inner {
    padding: 0 3rem;
  }
  .banner-image.course-banner-image .wrap .main-content h1 {
    font-size: 5rem;
  }
  .banner-image.course-banner-image .wrap .course-prices {
    margin: 0;
    padding: 3rem 0;
    border-top: 2px solid #FFFFFF;
  }
  .banner-image.course-banner-image .wrap .course-prices h3::after {
    content: none;
  }
  .banner-image.course-banner-image .wrap .course-prices p {
    font-size: 2rem;
  }
  .banner-image.course-banner-image .wrap .course-prices p.bold {
    font-weight: 700;
  }
  .banner-image.course-banner-image .wrap .course-prices .course-name {
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
  }
  .banner-image.course-banner-image .wrap .course-prices .course-name h3 {
    padding-bottom: 0;
  }
  .banner-image.course-banner-image .wrap .course-prices .price-item {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    -ms-flex-direction: column;
        flex-direction: column;
  }
  .banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block-layout, .banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block {
    margin-top: 4rem;
  }
  .banner-image.course-banner-image + .course-wrap .main-col > * + * {
    margin-top: 4rem;
  }
}
@media (min-width: 920px) {
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 32%;
  }
}
@media (min-width: 1025px) {
  .banner-image.course-banner-image {
    margin-top: 15.5rem;
  }
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
  .banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block-layout, .banner-image.course-banner-image + .course-wrap .content-block-layout + .content-block {
    margin-top: 6rem;
  }
  .banner-image.course-banner-image + .course-wrap .main-col > * + * {
    margin-top: 6rem;
  }
  .banner-image.course-banner-image + .course-wrap .main-col:only-child .content-block .form-query {
    max-width: 84rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1201px) {
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
  .banner-image.course-banner-image .wrap .main-content h1 {
    font-size: 7rem;
  }
}
@media (min-width: 1440px) {
  .banner-image.course-banner-image .banner-image-bg::before {
    padding-bottom: 29.24%;
  }
}

.banner-image.landing-banner-image {
  background: linear-gradient(14.69deg, #95C11F 21.26%, #7BBA54 35.05%, #56B19F 56.07%, #3FABCF 71.11%, #36A9E1 78.6%);
}
.banner-image.landing-banner-image.darkblue {
  background: #222C4F;
}
.banner-image.landing-banner-image.brightblue {
  background: #00afea;
}
.banner-image.landing-banner-image.brightblue.tooltip::after {
  border-top-color: #00afea;
}
.banner-image.landing-banner-image.green {
  background: #55B45E;
}
.banner-image.landing-banner-image.blue {
  background: #26448E;
}
.banner-image.landing-banner-image.blue.tooltip::after {
  border-top-color: #26448E;
}
.banner-image.landing-banner-image.orange {
  background: #F67238;
}
.banner-image.landing-banner-image.orange.tooltip::after {
  border-top-color: #F67238;
}
.banner-image.landing-banner-image.pink {
  background: #F34497;
}
.banner-image.landing-banner-image.pink.tooltip::after {
  border-top-color: #F34497;
}
.banner-image.landing-banner-image.yellow {
  background: #FFCC00;
}
.banner-image.landing-banner-image.yellow.tooltip::after {
  border-top-color: #FFCC00;
}
.banner-image.landing-banner-image .banner-image-bg::before {
  padding-bottom: 75%;
}
.banner-image.landing-banner-image > .inner {
  position: absolute;
  padding-bottom: 0;
}
.banner-image.landing-banner-image .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.banner-image.landing-banner-image .wrap h1 {
  color: #FFFFFF;
  font-size: 2.4rem;
  line-height: 1.2;
}
.banner-image.landing-banner-image .wrap h3, .banner-image.landing-banner-image .wrap h2 {
  color: #FFFFFF;
  font-weight: 600;
  margin: 1.5rem 0 0;
}
.banner-image.landing-banner-image .wrap p {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.3461538462;
  color: #FFFFFF;
  margin: 1.2rem 0 1.6rem;
}
.banner-image.landing-banner-image .wrap .content-layout {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.banner-image.landing-banner-image .wrap .left-content {
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding-bottom: 3rem;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.banner-image.landing-banner-image .wrap .right-content {
  display: block;
  padding-left: 0;
  padding-right: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media (min-width: 540px) {
  .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 62.25%;
  }
  .banner-image.landing-banner-image .wrap h1 {
    font-size: 3rem;
    line-height: 1.12;
  }
  .banner-image.landing-banner-image .wrap h3 + p {
    font-size: 2.6rem;
    margin: 2.4rem 0 2.4rem;
  }
}
@media (min-width: 769px) {
  .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
}
@media (min-width: 920px) {
  .banner-image.landing-banner-image {
    margin-bottom: 0;
  }
  .banner-image.landing-banner-image .wrap {
    padding-bottom: 6rem;
  }
  .banner-image.landing-banner-image .wrap .content-layout {
    padding-right: 3rem;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .banner-image.landing-banner-image .wrap .left-content {
    -ms-flex-preferred-size: 66.667%;
        flex-basis: 66.667%;
    padding-bottom: 0;
    max-width: 66.667%;
  }
  .banner-image.landing-banner-image .wrap .right-content {
    -ms-flex-preferred-size: 33.333%;
        flex-basis: 33.333%;
    max-width: 33.333%;
  }
}
@media (min-width: 1025px) {
  .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
  .banner-image.landing-banner-image .wrap h3 {
    margin: 2.4rem 0 0;
  }
  .banner-image.landing-banner-image + .landing-wrap .main-col:only-child .content-block .form-query {
    max-width: 84rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1201px) {
  .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
  .banner-image.landing-banner-image .wrap {
    padding-bottom: 10rem;
  }
  .banner-image.landing-banner-image .wrap .content-layout {
    padding-left: 0;
    padding-right: 0;
  }
  .banner-image.landing-banner-image .wrap .left-content {
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .banner-image.landing-banner-image .wrap h1 {
    font-size: 7rem;
  }
}
@media (min-width: 1440px) {
  .banner-image.landing-banner-image .banner-image-bg::before {
    padding-bottom: 29.24%;
  }
}

.banner-image.apply-banner-image {
  background: linear-gradient(14.69deg, #95C11F 21.26%, #7BBA54 35.05%, #56B19F 56.07%, #3FABCF 71.11%, #36A9E1 78.6%);
  margin-top: 6rem;
  z-index: 21;
}
.banner-image.apply-banner-image .banner-image-bg::before {
  padding-bottom: 100%;
}
.banner-image.apply-banner-image .banner-image-bg .banner-image-inner {
  background-position: left center;
  background-size: cover;
}
.banner-image.apply-banner-image .inner {
  padding: 3rem;
}
.banner-image.apply-banner-image .wrap .content-layout {
  height: 100%;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}
.banner-image.apply-banner-image .wrap .content-layout h1 {
  text-transform: none;
  color: #FFFFFF;
  margin-bottom: 2rem;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols {
  width: 100%;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols .summary {
  padding-right: 1rem;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols .summary h2, .banner-image.apply-banner-image .wrap .content-layout .two-cols .summary h3 {
  color: #FFFFFF;
  margin: 0.4rem 0;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-wrap {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  margin-top: 2rem;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-wrap .second-summary {
  display: none;
}
.banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-button {
  width: 100%;
  padding-left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  text-decoration: underline;
  border-style: none;
  font-size: 1.6rem;
}
@media (min-width: 480px) {
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 58.67%;
  }
}
@media (min-width: 769px) {
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 46.39%;
  }
  .banner-image.apply-banner-image .wrap .content-layout h1 {
    font-size: 5rem;
    margin-bottom: 4rem;
  }
  .banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-wrap {
    margin-top: 0;
  }
  .banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-button {
    height: 6rem;
    padding-left: 3rem;
    -ms-flex-pack: center;
        justify-content: center;
    border-style: dotted;
    text-decoration: none;
  }
}
@media (min-width: 920px) {
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 40%;
  }
}
@media (min-width: 1025px) {
  .banner-image.apply-banner-image {
    margin-top: 15.5rem;
  }
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
  .banner-image.apply-banner-image .wrap .content-layout .two-cols .second-choice-button {
    height: 8rem;
    font-size: 2.2rem;
  }
}
@media (min-width: 1201px) {
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
  .banner-image.apply-banner-image .inner {
    padding: 3rem 0 0;
  }
  .banner-image.apply-banner-image .wrap .content-layout h1 {
    font-size: 7rem;
    margin-bottom: 5.6rem;
  }
  .banner-image.apply-banner-image + .content-wrap {
    padding-left: 6rem;
  }
}
@media (min-width: 1440px) {
  .banner-image.apply-banner-image .banner-image-bg::before {
    padding-bottom: 29.24%;
  }
}

.banner-image.landing-banner-image.all-results-banner-image, .banner-image.course-banner-image {
  margin-bottom: 8rem;
}
.banner-image.landing-banner-image.all-results-banner-image .header-filters .wrap, .banner-image.course-banner-image .header-filters .wrap {
  padding: 0 1rem;
  max-width: 120rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.banner-image.landing-banner-image.all-results-banner-image .header-filters .wrap h2, .banner-image.course-banner-image .header-filters .wrap h2 {
  margin: 0;
  color: #FFFFFF;
  text-transform: uppercase;
  font-weight: 900;
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: none;
}
@media (min-width: 640px) {
  .banner-image.landing-banner-image.all-results-banner-image .header-filters .wrap h2, .banner-image.course-banner-image .header-filters .wrap h2 {
    display: block;
    color: white;
  }
}
@media (min-width: 769px) {
  .banner-image.landing-banner-image.all-results-banner-image, .banner-image.course-banner-image {
    margin-bottom: 10rem;
  }
  .banner-image.landing-banner-image.all-results-banner-image.no-bottom-margin, .banner-image.course-banner-image.no-bottom-margin {
    margin-bottom: 0;
  }
}
@media (min-width: 1025px) {
  .banner-image.landing-banner-image.all-results-banner-image, .banner-image.course-banner-image {
    margin-bottom: 14rem;
  }
  .banner-image.landing-banner-image.all-results-banner-image.no-bottom-margin, .banner-image.course-banner-image.no-bottom-margin {
    margin-bottom: 0;
  }
}
@media (min-width: 1201px) {
  .banner-image.landing-banner-image.all-results-banner-image .header-filters .wrap, .banner-image.course-banner-image .header-filters .wrap {
    padding: 0;
  }
}

.banner-image.course-banner-image + .course-wrap .content-section:first-child .content-block-layout:first-child > .main-col > .content-block.courses:first-child {
  margin-top: -5rem;
}

.banner-image.landing-banner-image.all-results-banner-image + .landing-wrap {
  overflow-x: visible;
}
@media (min-width: 1201px) {
  .banner-image.landing-banner-image.all-results-banner-image + .landing-wrap .course-list {
    margin: -2rem -2rem 0;
  }
}

.banner-image.external-banner-image .banner-image-bg {
  z-index: auto;
  overflow: visible;
}
.banner-image.external-banner-image .banner-image-bg .inner {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.banner-image.external-banner-image .banner-image-bg .inner .wrap {
  margin-top: 0;
  margin-bottom: 0;
}
.banner-image.external-banner-image .banner-external-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
@media (min-width: 920px) {
  .banner-image.external-banner-image .banner-external-container {
    position: absolute;
    right: 0;
    bottom: 6rem;
    width: 100%;
    z-index: auto;
    padding-right: 3rem;
  }
  .banner-image.external-banner-image .banner-external-container .banner-external-card {
    z-index: 2;
    -ms-flex-preferred-size: 33.333%;
        flex-basis: 33.333%;
  }
}
@media (min-width: 1201px) {
  .banner-image.external-banner-image .banner-external-container {
    right: calc((100% - 120rem) * 0.5);
    bottom: 10rem;
    padding-right: 0;
    max-width: 120rem;
  }
}

.course-search-prediction-wrapper {
  position: relative;
}
.course-search-prediction-wrapper .search-predictions {
  position: absolute;
  top: 6rem;
  left: 0;
  max-width: 60rem;
  width: 100% !important;
}
@media (min-width: 1025px) {
  .course-search-prediction-wrapper .search-predictions {
    top: 7rem;
  }
}

/* Image Banner */
.courses {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (min-width: 1201px) {
  .courses {
    margin-left: -6rem;
    margin-right: -6rem;
  }
}

.main-col .content-block.courses {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 1201px) {
  .main-col .content-block.courses {
    margin-left: calc((100vw - 120rem) * -0.5);
    margin-right: calc((100vw - 120rem) * -0.5);
  }
}
@media (min-width: 1320px) {
  .main-col .content-block.courses {
    padding-left: 0;
    padding-right: 0;
    margin-left: -6rem;
    margin-right: -6rem;
  }
}

.main-col .content-block .accordion-header {
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-decoration: none;
  cursor: pointer;
  width: 100%;
}
.main-col .content-block .accordion-header .text-thumbnail::before {
  padding-bottom: 34.667%;
}
.main-col .content-block .accordion-header .text-thumbnail::after {
  content: none;
}
.main-col .content-block .accordion-header .inner {
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  padding: 3rem;
  z-index: 2;
}
.main-col .content-block .accordion-header .inner h2 {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: #FFFFFF !important;
  width: 100%;
  margin: 0;
}
.main-col .content-block .accordion-header .inner p {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.03em;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.8);
  width: 100%;
  margin: 0.6rem 0 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.main-col .content-block .accordion-header .inner::after {
  content: "";
  position: absolute;
  right: 3rem;
  bottom: 3rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxOSAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCA1aDE4bTAgMGwtNC41LTRNMTggNWwtNC41IDQiIHN0cm9rZT0iI2ZmZiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 19px 10px;
  display: inline-block;
  width: 1.9rem;
  height: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  transition: transform 0.3s linear;
}
.main-col .content-block .accordion-header.purple .text-thumbnail {
  background-image: linear-gradient(248.8deg, #3D0051 0%, #661880 100%);
}
.main-col .content-block .accordion-header.red .text-thumbnail {
  background-image: linear-gradient(248.8deg, #8C0000 0%, #C92A2A 99.42%);
}
.main-col .content-block .accordion-header.green .text-thumbnail {
  background-image: linear-gradient(249.09deg, #004000 1.08%, #168216 100%);
}
.main-col .content-block .accordion-header.pink .text-thumbnail {
  background-image: linear-gradient(249.09deg, #b4154d 1.08%, #F41D68 100%);
}
.main-col .content-block .accordion-header.open .inner::after {
  transform: rotate(90deg);
}
.main-col .content-block .accordion-header.no-display + .accordion-content {
  margin-top: 6rem;
}
.main-col .content-block .accordion-header.no-display + .accordion-content::after {
  top: -6rem;
}
@media (min-width: 600px) {
  .main-col .content-block .accordion-header .text-thumbnail::before {
    padding-bottom: 20%;
  }
}
@media (min-width: 769px) {
  .main-col .content-block .accordion-header .inner p {
    margin: 1rem 0 1.8rem;
  }
}
@media (min-width: 920px) {
  .main-col .content-block .accordion-header {
    -ms-flex-preferred-size: 33.33%;
        flex-basis: 33.33%;
    width: auto;
    margin: 0;
  }
  .main-col .content-block .accordion-header .text-thumbnail::before {
    padding-bottom: 75%;
  }
  .main-col .content-block .accordion-header .inner {
    padding: 4rem 3rem;
  }
  .main-col .content-block .accordion-header .inner::after {
    position: relative;
    right: auto;
    bottom: auto;
  }
  .main-col .content-block .accordion-header.purple {
    -ms-flex-order: 1;
        order: 1;
  }
  .main-col .content-block .accordion-header.red {
    -ms-flex-order: 2;
        order: 2;
  }
  .main-col .content-block .accordion-header.green {
    -ms-flex-order: 3;
        order: 3;
  }
  .main-col .content-block .accordion-header.pink {
    -ms-flex-order: 4;
        order: 4;
  }
}
@media (min-width: 1201px) {
  .main-col .content-block .accordion-header .inner h2 {
    font-size: 3.2rem;
  }
  .main-col .content-block .accordion-header .inner p {
    margin: 1.6rem 0 2.4rem;
  }
  .main-col .content-block .accordion-header .text-thumbnail::before {
    padding-bottom: 56.36%;
  }
}
@media (min-width: 1440px) {
  .main-col .content-block .accordion-header .inner {
    padding: 4rem 6rem;
  }
}

.accordion-content {
  display: none;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 120rem;
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding: 0 1rem;
}
.accordion-content > * {
  position: relative;
  z-index: 1;
}
.accordion-content > .type-guide {
  font-size: 1.6rem !important;
  color: #213462 !important;
  text-align: center;
  margin: 2rem 0 1.5rem;
}
.accordion-content > .type-guide > a {
  display: inline-block;
  text-decoration: underline;
}
.accordion-content .course-list {
  margin: -1rem -1rem 0;
  padding-bottom: 0;
}
.accordion-content .course-list .course-card {
  padding: 1rem;
}
.accordion-content::after {
  content: "";
  position: absolute;
  top: -12.5rem;
  left: -1rem;
  width: calc(100% + 1rem);
  height: calc(100% + 12.5rem);
  z-index: 0;
}
.accordion-content.purple::after {
  background: linear-gradient(180deg, rgba(102, 24, 128, 0.1) 0%, rgba(102, 24, 128, 0) 100%);
}
.accordion-content.red::after {
  background: linear-gradient(180deg, rgba(199, 76, 77, 0.1) 0%, rgba(199, 76, 77, 0) 100%);
}
.accordion-content.green::after {
  background: linear-gradient(180deg, rgba(0, 64, 0, 0.1) 0%, rgba(0, 64, 0, 0) 100%);
}
.accordion-content.pink::after {
  background: linear-gradient(180deg, rgba(0, 64, 0, 0.1) 0%, rgba(0, 64, 0, 0) 100%);
}
@media (min-width: 769px) {
  .accordion-content > .type-guide {
    margin: 3.6rem 0;
  }
}
@media (min-width: 920px) {
  .accordion-content > .type-guide {
    font-size: 2rem !important;
    text-align: right;
  }
  .accordion-content.purple {
    -ms-flex-order: 5;
        order: 5;
    border-bottom: 2px solid #3D0051;
  }
  .accordion-content.red {
    -ms-flex-order: 6;
        order: 6;
    border-bottom: 2px solid #8C0000;
  }
  .accordion-content.green {
    -ms-flex-order: 7;
        order: 7;
    border-bottom: 2px solid #004000;
  }
  .accordion-content.pink {
    -ms-flex-order: 8;
        order: 8;
    border-bottom: 2px solid #004000;
  }
}
@media (min-width: 1201px) {
  .accordion-content {
    padding: 0;
  }
  .accordion-content .course-list {
    margin: -2rem -2rem 4rem;
  }
  .accordion-content .course-list .course-card {
    padding: 2rem;
  }
  .accordion-content::after {
    left: calc((100vw - 100%) * -0.5);
    width: 100vw;
  }
}

.staff-carousel-wrap, .gallery-carousel-wrap {
  padding: 3rem 0 0;
  margin-left: 2rem;
  margin-right: 2rem;
  border-top: 2px solid #CCCCCC;
}
.staff-carousel-wrap h1, .gallery-carousel-wrap h1 {
  margin: 0 1rem 3rem;
  color: #213462;
}
.staff-carousel-wrap .slick-slider, .gallery-carousel-wrap .slick-slider {
  margin: 0 -2rem;
}
.staff-carousel-wrap .slick-slide > div, .gallery-carousel-wrap .slick-slide > div {
  width: 100%;
}
@media (min-width: 769px) {
  .staff-carousel-wrap, .gallery-carousel-wrap {
    padding-top: 4rem;
  }
  .staff-carousel-wrap h1, .gallery-carousel-wrap h1 {
    text-align: center;
    margin: 0 0 4rem;
  }
}
@media (min-width: 1025px) {
  .staff-carousel-wrap, .gallery-carousel-wrap {
    padding-top: 6rem;
  }
  .staff-carousel-wrap h1, .gallery-carousel-wrap h1 {
    margin-bottom: 5rem;
  }
}
@media (min-width: 1201px) {
  .staff-carousel-wrap, .gallery-carousel-wrap {
    margin-left: 0;
    margin-right: 0;
  }
  .staff-carousel-wrap .slick-slider, .gallery-carousel-wrap .slick-slider {
    margin: 0;
  }
}

@media (min-width: 769px) {
  .staff-carousel-wrap .slick-slider {
    margin: 0 -1.5rem;
  }
}
@media (min-width: 1025px) {
  .staff-carousel-wrap .slick-slider {
    margin: 0 -2.5rem;
  }
}

.gallery-carousel {
  padding: 0 1rem;
  border-radius: 5px;
}
.gallery-carousel .carousel-item {
  width: 100%;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 5px;
}
.gallery-carousel .carousel-item .aspect-ratio-image::before, .gallery-carousel .carousel-item .text-thumbnail::before, .gallery-carousel .carousel-item .banner-image .banner-image-bg::before, .banner-image .gallery-carousel .carousel-item .banner-image-bg::before {
  padding-bottom: 66.33%;
}
.gallery-carousel .carousel-item .aspect-ratio-image::after, .gallery-carousel .carousel-item .text-thumbnail::after, .gallery-carousel .carousel-item .banner-image .banner-image-bg::after, .banner-image .gallery-carousel .carousel-item .banner-image-bg::after {
  content: none;
}
.gallery-carousel .carousel-item .title {
  padding: 10px;
  border-radius: 0 0 5px 0;
  background-color: rgba(0, 51, 153, 0.8);
  color: white;
  font-weight: bold;
  display: inline-block;
}
@media (min-width: 1201px) {
  .gallery-carousel {
    padding: 0;
  }
}

body.modal-open {
  overflow: hidden;
}
body.modal-open .header-site, body.modal-open .main-col .content-block .form-application .button-group > .save-later-button {
  z-index: 19;
}

.overlay {
  position: fixed;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  transition: opacity 0.75s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  z-index: -100;
  padding: 3rem 2rem;
}
.overlay.is-visible {
  left: 0;
  z-index: 320;
  opacity: 1;
}
.overlay.is-visible .modal-inner {
  transform: scale(1);
}
.overlay .modal-close {
  position: absolute;
  top: 0rem;
  right: 0rem;
  background: #FFFFFF;
  width: 4.4rem;
  height: 4.4rem;
  z-index: 3;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  cursor: pointer;
}
.overlay .modal-close .close-icon {
  height: 2.5rem;
  width: 2.5rem;
  z-index: 210;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  transform: rotate(0);
  transition: transform 0.2s ease-in-out;
}
.overlay .modal-close .close-icon::before, .overlay .modal-close .close-icon::after {
  content: "";
  height: 2rem;
  width: 0.2rem;
  background-color: #000000;
  position: absolute;
  bottom: 50%;
  transform-origin: center;
}
.overlay .modal-close .close-icon::before {
  transform: translateY(50%) rotate(45deg);
}
.overlay .modal-close .close-icon::after {
  transform: translateY(50%) rotate(-45deg);
}
.overlay .modal-close:hover .close-icon {
  transform: rotate(90deg);
}
.overlay .modal-inner {
  margin: 0 -2rem;
  transform: scale(0.5);
  transition: all 0.75s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  max-width: 60rem;
  max-height: 100%;
  background: #FFFFFF;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.overlay .modal-inner .modal-content {
  overflow-x: hidden;
  height: 100%;
}
.overlay .modal-inner .modal-content > .flex {
  -ms-flex-direction: row;
      flex-direction: row;
}
.overlay .modal-inner .modal-content > .flex h1, .overlay .modal-inner .modal-content > .flex h3, .overlay .modal-inner .modal-content > .flex p, .overlay .modal-inner .modal-content > .flex ul li {
  color: #000000;
  text-transform: none;
  margin: 0;
}
.overlay .modal-inner .modal-content > .flex p:empty {
  display: none;
}
.overlay .modal-inner .modal-content > .flex p.bold {
  font-weight: 700;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list {
  padding-top: 1.6rem;
  max-width: 54rem;
  width: 100%;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list > p {
  margin: 0;
  font-size: 1.8rem;
  color: #213462;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding-left: 0;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: -0.03em;
  padding: 2rem 0;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li > .course-date {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding-right: 2rem;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li > .course-date p {
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: -0.03em;
  font-weight: 700;
  color: #003399;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-secondary, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-2, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-3, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-4, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-5, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-white, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-transparent, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-outline-dark-blue, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-dotted-white, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-workplace, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-apply, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-print, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-course, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-twitter, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-download, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-post, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-arrow, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .nav-horizontal a.link, .nav-horizontal .overlay .modal-inner .modal-content > .flex .course-dates-list ul li a.link {
  padding: 0.5rem 2rem;
  text-decoration: none;
  color: #FFFFFF;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-secondary:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-2:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-3:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-4:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-5:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-white:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-transparent:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-outline-dark-blue:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-dotted-white:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-workplace:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-apply:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-print:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-course:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-twitter:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-download:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-post:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-arrow:hover, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .nav-horizontal a.link:hover, .nav-horizontal .overlay .modal-inner .modal-content > .flex .course-dates-list ul li a.link:hover {
  color: #003399;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li::before {
  content: none;
}
.overlay .modal-inner .modal-content > .flex .course-dates-list ul li + li {
  border-top: 2px solid #CCCCCC;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-color: #FFFFFF;
  position: relative;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image::before, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail::before, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg::before, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg::before {
  padding-bottom: 53.75%;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image::after, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail::after, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg::after, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg::after {
  content: none;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile {
  position: absolute;
  left: 1rem;
  bottom: 0;
  z-index: 3;
  background: #3D0051;
  color: #FFFFFF;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.35;
  padding: 0.5rem 1rem;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile[data-coursetype*=Full-Time], .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile[data-coursetype*=Full-Time], .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile[data-coursetype*=Full-Time], .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile[data-coursetype*=Full-Time] {
  background: #3D0051;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile[data-coursetype*=Part-Time], .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile[data-coursetype*=Part-Time], .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile[data-coursetype*=Part-Time], .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile[data-coursetype*=Part-Time], .overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile[data-coursetype*="Higher Education"], .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile[data-coursetype*="Higher Education"], .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile[data-coursetype*="Higher Education"], .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile[data-coursetype*="Higher Education"] {
  background: #8C0000;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile[data-coursetype*=Apprenticeship], .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile[data-coursetype*=Apprenticeship], .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile[data-coursetype*=Apprenticeship], .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile[data-coursetype*=Apprenticeship] {
  background: #004000;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content .inner {
  padding: 2rem 2rem 0;
  background: #FFFFFF;
}
.overlay .modal-inner .modal-content > .flex .modal-left-content h1 {
  font-size: 2.4rem;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 100%;
  padding: 2rem 2rem 3rem;
  background: rgba(204, 204, 204, 0.2);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content > * + * {
  margin-top: 1.4rem;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content h3 {
  display: none;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content h3 + * {
  margin-top: 0;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content .requirements {
  width: 100%;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content .cost > p, .overlay .modal-inner .modal-content > .flex .modal-right-content .requirements > p {
  width: 100%;
  font-size: 1.5rem;
  color: #444444;
}
.overlay .modal-inner .modal-content > .flex .modal-right-content .more-about-course {
  display: inline-block;
  padding: 0;
  text-decoration: underline;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.03em;
  color: #003399;
  text-align: left;
}
@media (min-width: 769px) {
  .overlay {
    padding: 10rem 6rem;
  }
  .overlay .modal-close {
    top: -1rem;
    right: -1rem;
    width: 6.4rem;
    height: 6.4rem;
  }
  .overlay .modal-inner {
    border: 1rem solid #FFFFFF;
  }
  .overlay .modal-inner .modal-content > .flex h1, .overlay .modal-inner .modal-content > .flex h3, .overlay .modal-inner .modal-content > .flex p, .overlay .modal-inner .modal-content > .flex ul li, .overlay .modal-inner .modal-content > .flex .modal-right-content .more-about-course {
    color: #FFFFFF;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list {
    padding-top: 3rem;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list > p {
    color: #FFFFFF;
    font-size: 2rem;
    margin-bottom: 1rem;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list ul li {
    padding: 1rem 0;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list ul li > .course-date p {
    color: #FFFFFF;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-secondary, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-2, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-3, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-4, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-highlight-5, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-white, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-transparent, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-outline-dark-blue, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-dotted-white, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-workplace, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-apply, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-print, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-course, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-twitter, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-download, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-prospectus-post, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .link.button-arrow, .overlay .modal-inner .modal-content > .flex .course-dates-list ul li .nav-horizontal a.link, .nav-horizontal .overlay .modal-inner .modal-content > .flex .course-dates-list ul li a.link {
    padding: 1rem 3rem;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list ul li + li {
    border-color: rgba(255, 255, 255, 0.2);
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content {
    background-color: #C4C4C4;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg {
    display: none;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image::before, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail::before, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg::before, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg::before {
    padding-bottom: 0;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .aspect-ratio-image .course-type-mobile, .overlay .modal-inner .modal-content > .flex .modal-left-content .text-thumbnail .course-type-mobile, .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image .banner-image-bg .course-type-mobile, .banner-image .overlay .modal-inner .modal-content > .flex .modal-left-content .banner-image-bg .course-type-mobile {
    display: none;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner {
    padding: 4rem 4rem 2rem;
    background: transparent;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner > * {
    position: relative;
    z-index: 1;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
    z-index: 0;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner h1 {
    font-size: 3.6rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content {
    padding: 4rem;
    background: linear-gradient(260.19deg, #3D0051 0%, #661880 100%);
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content > * + * {
    margin-top: 2.4rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content h3 {
    display: block;
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content h3 + * {
    margin-top: 2.4rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content .cost > p, .overlay .modal-inner .modal-content > .flex .modal-right-content .requirements > p {
    font-size: 1.6rem;
    color: #FFFFFF;
  }
}
@media (min-width: 1025px) {
  .overlay .modal-close {
    top: -2rem;
    right: -2rem;
  }
  .overlay .modal-inner {
    border: 2rem solid #FFFFFF;
    max-width: 124rem;
  }
  .overlay .modal-inner .modal-content > .flex .course-dates-list {
    padding-top: 5rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    max-width: 70%;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner {
    padding: 6rem 6rem 5rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner h1 {
    font-size: 4.2rem;
  }
  .overlay .modal-inner .modal-content > .flex .modal-right-content {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
    max-width: 30%;
    padding: 6rem;
  }
}
@media (min-width: 1440px) {
  .overlay .modal-inner .modal-content > .flex .modal-left-content .inner h1 {
    font-size: 5rem;
  }
}

.quali-block .overlay {
  padding: 6rem 3rem;
}
.quali-block .overlay .modal-close {
  top: -4.4rem;
  right: 0;
  width: 4.4rem;
  height: 4.4rem;
}
.quali-block .overlay .modal-inner {
  position: relative;
  max-width: 60rem;
  width: 100%;
  border: none;
  background: #FFFFFF;
  overflow-x: visible;
  overflow-y: visible;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.quali-block .overlay .modal-content {
  padding: 2rem;
  width: 100%;
  height: 100%;
  -ms-flex-direction: column;
      flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.quali-block .overlay .modal-content .quali-item {
  -ms-flex-direction: column;
      flex-direction: column;
}
.quali-block .overlay .modal-content .quali-item .form-field.col-1-12 {
  display: none;
}
.quali-block .overlay .modal-content .quali-item:not(:last-child) {
  display: none;
}
.quali-block .overlay .modal-content .add-qualification-button {
  margin-top: 2rem;
  width: 100%;
}
@media (min-width: 1201px) {
  .quali-block .overlay {
    position: relative;
    left: 0;
    width: auto;
    height: auto;
    padding: 0;
    opacity: 1;
    z-index: 1;
    background: transparent;
    transition: none;
    margin-top: 3rem;
  }
  .quali-block .overlay .modal-close {
    display: none;
  }
  .quali-block .overlay .modal-inner {
    transform: scale(1);
    transition: none;
    background: transparent;
    max-width: none;
  }
  .quali-block .overlay .modal-content {
    padding: 0;
    height: auto;
  }
  .quali-block .overlay .modal-content .quali-item {
    -ms-flex-direction: row;
        flex-direction: row;
    margin: 0 -1rem;
    padding: 1rem 0;
  }
  .quali-block .overlay .modal-content .quali-item .form-field {
    padding: 0 1rem;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
  }
  .quali-block .overlay .modal-content .quali-item .form-field.col-1-5 {
    -ms-flex-preferred-size: 20.8333333333%;
        flex-basis: 20.8333333333%;
  }
  .quali-block .overlay .modal-content .quali-item .form-field.col-1-12 {
    text-align: right;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .quali-block .overlay .modal-content .quali-item .form-field > label, .quali-block .overlay .modal-content .quali-item .main-col .content-block .form-query .form-field > label {
    font-size: 1.8rem;
    font-weight: 700;
    padding-bottom: 1.6rem;
  }
  .quali-block .overlay .modal-content .quali-item .form-field > label > span {
    display: none;
  }
  .quali-block .overlay .modal-content .quali-item .form-field + .form-field, .quali-block .overlay .modal-content .quali-item .main-col .content-block .form-query .form-field + .form-field {
    margin-top: 0;
  }
  .quali-block .overlay .modal-content .quali-item .remove-button {
    font-size: 1.8rem;
    font-weight: 600;
    color: #000000;
    text-decoration: underline;
  }
  .quali-block .overlay .modal-content .quali-item:not(.first-quali-item) .form-field label {
    display: none;
  }
  .quali-block .overlay .modal-content .quali-item:not(:last-child) {
    display: -ms-flexbox;
    display: flex;
  }
  .quali-block .overlay .modal-content .quali-item + .quali-item {
    border-top: 1px solid #CCCCCC;
  }
  .quali-block .overlay .modal-content .add-qualification-button {
    margin-top: 3rem;
    width: auto;
  }
}

.overlay.second-course-popup .modal-close {
  top: 0;
  right: 0;
  background: transparent;
}
.overlay.second-course-popup .modal-inner {
  border: none;
  max-width: none;
}
.overlay.second-course-popup .second-course-wrap {
  padding: 6rem 3rem 3rem;
  height: 100%;
}
.overlay.second-course-popup .second-course-wrap .course-search-section h1 {
  color: #213462;
  margin-bottom: 3rem;
}
.overlay.second-course-popup .second-course-wrap .course-search-section > p {
  font-size: 1.6rem;
  margin: 0 0 1rem;
  color: #000000 !important;
}
.overlay.second-course-popup .second-course-wrap .course-list {
  margin: 3rem -2rem;
  padding-bottom: 0;
}
.overlay.second-course-popup .second-course-wrap .course-list:empty {
  margin-top: 0;
}
.overlay.second-course-popup + .course-popup .wrap {
  height: auto;
}
@media (min-width: 1201px) {
  .overlay.second-course-popup .modal-inner {
    max-width: 124rem;
  }
  .overlay.second-course-popup .second-course-wrap {
    padding: 6rem;
  }
  .overlay.second-course-popup .second-course-wrap .course-search-section > p {
    font-size: 2.6rem;
    margin: 0 0 2rem;
  }
}

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  transition: opacity, z-index, background, width, height, top, left, padding 0.75s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  z-index: -100;
  padding: 3rem 2rem;
}
.modal-overlay.is-visible {
  opacity: 1;
  z-index: 320;
}
.modal-overlay .modal-inner {
  max-width: 60rem;
  max-height: 100%;
  background: #FFFFFF;
  -webkit-overflow-scrolling: touch;
  height: 0;
  overflow: hidden;
}
.modal-overlay .modal-inner .modal-content {
  overflow-x: hidden;
  height: 100%;
}
.modal-overlay .modal-inner .modal-content {
  padding: 3rem 3rem 4rem;
}
.modal-overlay .modal-inner .modal-content h2, .modal-overlay .modal-inner .modal-content p {
  color: #000000;
  text-transform: none;
  margin: 0;
}
.modal-overlay .modal-inner .modal-content h2 a, .modal-overlay .modal-inner .modal-content p a {
  text-decoration: underline;
  color: #003399;
}
.modal-overlay .modal-inner .modal-content h2 {
  font-weight: 900;
  margin-bottom: 1rem;
}
.modal-overlay .modal-inner .modal-content .button-group {
  width: 100%;
  padding-top: 2rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.modal-overlay .modal-inner .modal-content .button-group .button + .button, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button, .modal-overlay .modal-inner .modal-content .button-group .button + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-secondary, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-secondary, .modal-overlay .modal-inner .modal-content .button-group .button + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-highlight-2, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-highlight-2, .modal-overlay .modal-inner .modal-content .button-group .button + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-highlight-3, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-highlight-3, .modal-overlay .modal-inner .modal-content .button-group .button + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-highlight-4, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-highlight-4, .modal-overlay .modal-inner .modal-content .button-group .button + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-highlight-5, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-highlight-5, .modal-overlay .modal-inner .modal-content .button-group .button + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-white, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-white, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-white, .modal-overlay .modal-inner .modal-content .button-group .button + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-transparent, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-transparent, .modal-overlay .modal-inner .modal-content .button-group .button + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-outline-dark-blue, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-outline-dark-blue, .modal-overlay .modal-inner .modal-content .button-group .button + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-dotted-white, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-dotted-white, .modal-overlay .modal-inner .modal-content .button-group .button + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-workplace, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-workplace, .modal-overlay .modal-inner .modal-content .button-group .button + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-apply, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-apply, .modal-overlay .modal-inner .modal-content .button-group .button + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-prospectus, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-prospectus, .modal-overlay .modal-inner .modal-content .button-group .button + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-print, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-print, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-print, .modal-overlay .modal-inner .modal-content .button-group .button + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-course, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-course, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-course, .modal-overlay .modal-inner .modal-content .button-group .button + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-twitter, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-twitter, .modal-overlay .modal-inner .modal-content .button-group .button + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-prospectus-download, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-prospectus-download, .modal-overlay .modal-inner .modal-content .button-group .button + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-prospectus-post, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-prospectus-post, .modal-overlay .modal-inner .modal-content .button-group .button + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-secondary + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-white + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-transparent + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-workplace + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-apply + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-print + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-course + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-twitter + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .button-arrow + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + .button-arrow, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + .button-arrow, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-secondary + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-secondary + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-highlight-2 + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-highlight-2 + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-highlight-3 + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-highlight-3 + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-highlight-4 + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-highlight-4 + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-highlight-5 + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-highlight-5 + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-white + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-white + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-transparent + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-transparent + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-outline-dark-blue + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-outline-dark-blue + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-dotted-white + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-dotted-white + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-workplace + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-workplace + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-apply + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-apply + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-prospectus + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-prospectus + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-print + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-print + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-course + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-course + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-twitter + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-twitter + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-prospectus-download + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-download + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-prospectus-post + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-prospectus-post + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal .button-arrow + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group .button-arrow + a, .modal-overlay .modal-inner .modal-content .button-group .nav-horizontal a + a, .nav-horizontal .modal-overlay .modal-inner .modal-content .button-group a + a {
  margin-left: 2rem;
}
.modal-overlay .modal-inner.is-visible {
  height: auto;
  overflow-x: hidden;
  overflow-y: auto;
}

.dropzone2 {
  box-sizing: border-box;
  min-height: 150px;
  border: 2px solid rgba(161, 22, 22, 0.3);
  background: white;
  padding: 20px 20px;
  border: 2px dashed #003399;
  border-radius: 5px;
  background: white;
  cursor: pointer;
}
.dropzone2 * {
  box-sizing: border-box;
}
.dropzone2.dz-clickable {
  cursor: pointer;
}
.dropzone2.dz-clickable * {
  cursor: default;
}
.dropzone2.dz-clickable .dz-message {
  cursor: pointer;
}
.dropzone2.dz-clickable .dz-message * {
  cursor: pointer;
}
.dropzone2.dz-started .dz-message {
  display: none;
}
.dropzone2.dz-drag-hover {
  border-style: solid;
}
.dropzone2.dz-drag-hover .dz-message {
  opacity: 0.5;
}
.dropzone2 .dz-message {
  text-align: center;
  margin: 2em 0;
}
.dropzone2 .dz-preview {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 16px;
  min-height: 100px;
}
.dropzone2 .dz-preview:hover {
  z-index: 1000;
}
.dropzone2 .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone2 .dz-preview.dz-file-preview .dz-image {
  border-radius: 20px;
  background: #999;
  background: linear-gradient(to bottom, #eee, #ddd);
}
.dropzone2 .dz-preview.dz-file-preview .dz-details {
  opacity: 1;
}
.dropzone2 .dz-preview.dz-image-preview {
  background: white;
}
.dropzone2 .dz-preview.dz-image-preview .dz-details {
  transition: opacity 0.2s linear;
}
.dropzone2 .dz-preview .dz-remove {
  font-size: 14px;
  text-align: center;
  display: block;
  cursor: pointer;
  border: none;
}
.dropzone2 .dz-preview .dz-remove:hover {
  text-decoration: underline;
}
.dropzone2 .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone2 .dz-preview .dz-details {
  z-index: 20;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  font-size: 13px;
  min-width: 100%;
  max-width: 100%;
  padding: 2em 1em;
  text-align: center;
  color: rgba(0, 0, 0, 0.9);
  line-height: 150%;
}
.dropzone2 .dz-preview .dz-details .dz-size {
  margin-bottom: 1em;
  font-size: 16px;
}
.dropzone2 .dz-preview .dz-details .dz-filename {
  white-space: nowrap;
}
.dropzone2 .dz-preview .dz-details .dz-filename:hover span {
  border: 1px solid rgba(200, 200, 200, 0.8);
  background-color: rgba(255, 255, 255, 0.8);
}
.dropzone2 .dz-preview .dz-details .dz-filename:not(:hover) {
  overflow: hidden;
  text-overflow: ellipsis;
}
.dropzone2 .dz-preview .dz-details .dz-filename:not(:hover) span {
  border: 1px solid transparent;
}
.dropzone2 .dz-preview .dz-details .dz-filename span {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 0 0.4em;
  border-radius: 3px;
}
.dropzone2 .dz-preview .dz-details .dz-size span {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 0 0.4em;
  border-radius: 3px;
}
.dropzone2 .dz-preview:hover .dz-image img {
  transform: scale(1.05, 1.05);
  filter: blur(8px);
}
.dropzone2 .dz-preview .dz-image {
  border-radius: 20px;
  overflow: hidden;
  width: 120px;
  height: 120px;
  position: relative;
  display: block;
  z-index: 10;
}
.dropzone2 .dz-preview .dz-image img {
  display: block;
}
.dropzone2 .dz-preview.dz-success .dz-success-mark {
  animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
}
.dropzone2 .dz-preview.dz-error .dz-error-mark {
  opacity: 1;
  animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
}
.dropzone2 .dz-preview .dz-success-mark, .dropzone2 .dz-preview .dz-error-mark {
  pointer-events: none;
  opacity: 0;
  z-index: 500;
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  margin-left: -27px;
  margin-top: -27px;
}
.dropzone2 .dz-preview .dz-success-mark svg, .dropzone2 .dz-preview .dz-error-mark svg {
  display: block;
  width: 54px;
  height: 54px;
}
.dropzone2 .dz-preview.dz-processing .dz-progress {
  opacity: 1;
  transition: all 0.2s linear;
}
.dropzone2 .dz-preview.dz-complete .dz-progress {
  opacity: 0;
  transition: opacity 0.4s ease-in;
}
.dropzone2 .dz-preview:not(.dz-processing) .dz-progress {
  animation: pulse 6s ease infinite;
}
.dropzone2 .dz-preview .dz-progress {
  opacity: 1;
  z-index: 1000;
  pointer-events: none;
  position: absolute;
  height: 16px;
  left: 50%;
  top: 50%;
  margin-top: -8px;
  width: 80px;
  margin-left: -40px;
  background: rgba(255, 255, 255, 0.9);
  -webkit-transform: scale(1);
  border-radius: 8px;
  overflow: hidden;
}
.dropzone2 .dz-preview .dz-progress .dz-upload {
  background: #333;
  background: linear-gradient(to bottom, #666, #444);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  transition: width 300ms ease-in-out;
}
.dropzone2 .dz-preview.dz-error .dz-error-message {
  display: block;
}
.dropzone2 .dz-preview.dz-error:hover .dz-error-message {
  opacity: 1;
  pointer-events: auto;
}
.dropzone2 .dz-preview .dz-error-message {
  pointer-events: none;
  z-index: 1000;
  position: absolute;
  display: block;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  border-radius: 8px;
  font-size: 13px;
  top: 130px;
  left: -10px;
  width: 140px;
  background: #be2626;
  background: linear-gradient(to bottom, #be2626, #a92222);
  padding: 0.5em 1.2em;
  color: white;
}
.dropzone2 .dz-preview .dz-error-message:after {
  content: "";
  position: absolute;
  top: -6px;
  left: 64px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #be2626;
}

.dz-remove, .dz-message {
  color: black;
  font-weight: bold;
}

.tc-accordion {
  padding-left: 6rem;
  padding-right: 6rem;
}
.tc-accordion .accordion-trigger {
  position: relative;
  width: 100%;
  height: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  text-align: left;
  white-space: normal;
  padding: 0;
  border: 0;
  border-top: 2px dotted rgba(33, 52, 98, 0.2);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transition: none;
}
.tc-accordion .accordion-trigger:hover {
  opacity: 0.75;
  animation: none;
}
.tc-accordion .accordion-trigger span {
  font-family: "Poppins", sans-serif;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: #213462;
  padding: 1rem 1rem 1rem 0;
  z-index: 1;
  position: relative;
}
@media (max-width: 1024px) {
  .tc-accordion .accordion-trigger span {
    white-space: normal;
  }
}
.tc-accordion .accordion-trigger .icon-accordion-dropdown {
  width: 1.4rem;
  height: 0.9rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE0IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTEgMSA2IDYgNi02IiBzdHJva2U9IiMwMDMzOTkiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
}
.tc-accordion .accordion-trigger .icon-accordion-dropdown {
  z-index: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  transform-origin: center center;
  transition: transform 0.25s linear;
}
.tc-accordion .accordion-trigger[aria-expanded=true] .icon-accordion-dropdown {
  transform: rotate(180deg);
}
.tc-accordion .accordion-panel {
  padding: 0 0 2rem;
}
.tc-accordion .accordion-panel[hidden] {
  display: none;
}
.tc-accordion .accordion-item {
  text-align: left;
}
.tc-accordion .accordion-item:first-child .accordion-trigger {
  border-top: 0;
}
@media (max-width: 1560px) {
  .tc-accordion .accordion-trigger span {
    font-size: 18px;
  }
}
@media screen and (max-width: 1560px) and (min-width: 540px) {
  .tc-accordion .accordion-trigger span {
    font-size: 16px;
    font-size: calc(18px + strip-unit(4px) * ((100vw - 540px) / strip-unit(1020px)));
  }
}
@media screen and (max-width: 1560px) and (min-width: 1560px) {
  .tc-accordion .accordion-trigger span {
    font-size: 22px;
  }
}
@media (max-width: 840px) {
  .tc-accordion .accordion-trigger span {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .tc-accordion .accordion-panel {
    padding-bottom: 1.5rem;
  }
}

.contact-accordion .accordion-trigger {
  position: relative;
  width: 100%;
  height: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-direction: column;
      flex-direction: column;
  text-align: left;
  white-space: normal;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transition: none;
}
.contact-accordion .accordion-trigger:hover {
  opacity: 1;
  animation: none;
}
.contact-accordion .accordion-panel {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.contact-accordion .accordion-panel[hidden] {
  display: none;
}
@media (max-width: 767px) {
  .contact-accordion .accordion-item {
    margin-top: 0 !important;
  }
  .contact-accordion .accordion-item:not(.always-open) {
    padding-top: 1.5rem;
    padding-bottom: 1rem;
  }
  .contact-accordion .accordion-item:not(.always-open) .accordion-panel {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .contact-accordion .accordion-item:not(.always-open) + .accordion-item:not(.always-open) {
    padding-top: 2rem;
    border-top: 2px dashed rgba(0, 51, 153, 0.2);
  }
  .contact-accordion .accordion-trigger:not(.always-open)::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 3rem;
    width: 1.4rem;
    height: 0.9rem;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE0IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTEgMSA2IDYgNi02IiBzdHJva2U9IiMwMDM5NkUiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
    transition: transform 0.25s linear;
  }
  .contact-accordion .accordion-trigger:not(.always-open)[aria-expanded=true]::before {
    transform: rotate(180deg);
  }
}

/*
	=======
	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.
*/
body.stopScroll {
  overflow: hidden;
  position: fixed;
}

.skip-section {
  position: fixed;
  top: 0;
  left: -999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999;
}
.skip-section .screen-reader-text {
  display: inline-block;
  font-size: 1.4rem;
  color: #003399;
  text-decoration: underline;
}
.skip-section .screen-reader-text + .screen-reader-text {
  margin-left: 2rem;
}
.skip-section.show {
  top: 0;
  left: auto;
  width: 80%;
  height: auto;
  padding: 0.8rem 0.5rem;
  margin: 0 10% 1rem;
  border: 2px solid #003399;
  border-radius: 5px;
  text-align: center;
  z-index: 999;
  background-color: #FFF7F3;
  overflow: auto;
}
@media (min-width: 1025px) {
  .skip-section.show {
    width: 48rem;
    margin-left: calc((100vw - 48rem) * 0.5);
    margin-right: calc((100vw - 48rem) * 0.5);
  }
}

/*
	======
	Search
	======
*/
.search {
  margin: 0;
}
.search .form-search .form-input-field {
  position: relative;
  margin: 0;
}
.search .form-search .input-field {
  display: none;
  background-color: #FFFFFF;
  border-radius: 4px;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  overflow: hidden;
  outline: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 6rem;
  transition: width 0.75s, height 0.75s, opacity 0.3s;
}
.search .form-search .input-field [type=text] {
  border: 2px solid #213462;
  box-shadow: none;
  border-radius: 4px;
  color: #000000;
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  padding: 1rem 4rem 1rem 2rem;
  height: 100%;
  text-overflow: ellipsis;
}
.search .form-search .input-field [type=text]:focus {
  outline: none;
  border-color: #000000;
}
.search .form-search .form-search-button {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjIzMDc3IiBjeT0iOS4yMzA3NyIgcj0iNy43MzA3NyIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik0xNS4zODQ4IDE1LjM4NDdsNC42MTU0IDQuNjE1NCIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
  background-size: 13px 13px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
  width: 13px;
  height: 13px;
  border: none;
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  display: inline-block;
  font-size: 0;
  pointer-events: auto;
  text-indent: -999em;
}
.search .form-search .form-search-button:focus {
  outline: 2px solid #CC4547;
  outline-offset: 4px;
}
@media (min-width: 1025px) {
  .search .form-search .input-field {
    height: 7rem;
  }
  .search .form-search .input-field [type=text] {
    font-size: 1.8rem;
  }
  .search .form-search .form-search-button {
    background-size: 22px 22px;
    width: 22px;
    height: 22px;
  }
}

.search-bar {
  width: 2.4rem;
  height: 100%;
  background-color: transparent;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0 3rem 0 3rem;
  padding-bottom: 2.4rem;
}
.search-bar .js-search-close {
  position: relative;
  width: 1.2rem;
  height: 1.2rem;
  display: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  padding: 0;
  background-color: transparent;
  font-size: 0;
}
.search-bar .js-search-close:hover, .search-bar .js-search-close:active {
  outline: none;
}
.search-bar .js-search-close::before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMjYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTMgM2wxOS45OTk4IDE5Ljk5OThNMyAyM0wyMi45OTk4IDMuMDAwMiIgc3Ryb2tlPSIjMDAzMzk5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==");
  background-position: center center;
  background-size: 12px 12px;
  width: 1.2rem;
  height: 1.2rem;
  display: inline-block;
}
@media (min-width: 1025px) {
  .search-bar .js-search-close {
    width: 2rem;
    height: 2rem;
  }
  .search-bar .js-search-close::before {
    background-size: 20px 20px;
    width: 2rem;
    height: 2rem;
  }
}

.ajax-loading {
  display: none;
  font-size: 1.5384615385em;
  line-height: 32px;
  text-align: center;
}
.ajax-loading:after {
  background-image: url(/site/images/ajax-loader.gif);
  content: "";
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
  height: 32px;
  width: 32px;
}
.ajax-loading.show {
  display: block;
}

.search-predictions {
  background-color: #FFFFFF;
  display: none;
}
.search-predictions .group {
  display: none;
}
.search-predictions .group .group-title {
  padding-bottom: 0.6rem;
  font-size: 2rem;
  font-weight: 700;
  color: #213462;
}
.search-predictions .group.show {
  display: block;
}
.search-predictions .group.show ~ .group {
  margin-top: 1.6rem;
  padding-top: 1.2rem;
  border-top: 2px solid rgba(33, 52, 98, 0.35);
}
.search-predictions.show {
  display: block;
  padding: 2rem 3rem;
}
.search-predictions#nav-search-predictions {
  top: calc(100% - 2rem);
  left: 0;
}
.search-predictions#mobile-search-predictions {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.search-predictions .prediction a, .search-predictions .more-results a {
  display: block;
  color: #000000;
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0.25rem;
  text-decoration: none;
  background-color: #FFFFFF;
  transition: background-color 0.3s;
}
.search-predictions .prediction a:hover, .search-predictions .more-results a:hover {
  background-color: #ccddff;
}
.search-predictions .more-results a {
  font-weight: 700;
  color: #003399;
  text-decoration: underline;
}
.search-predictions .prediction.focus a {
  background-color: #ccddff;
}
@media (min-width: 769px) {
  .search-predictions {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
    position: absolute;
    z-index: 200;
  }
}

.search-bar.show-prediction {
  position: relative;
}

.nav-mobile .search-bar.show-prediction + .search-content {
  padding-top: 0;
  position: relative;
}
.nav-mobile .search-bar.show-prediction + .search-content .nosearch-text {
  display: none;
}

.search-result {
  padding: 2rem;
}
.search-result > .inner > h3 {
  margin: 0 0 1.2rem;
}
.search-result > .inner > p {
  font-size: 1.8rem;
  margin: 0;
}

/* Search */
/*
	============
	Announcement
	============
*/
.announce {
  background-color: #003399;
  overflow: hidden;
  padding: 0 3rem;
  position: relative;
  transition: height 0.3s, padding 0.3s;
  position: fixed;
  top: 6rem;
  left: 0;
  width: 100%;
  z-index: 199;
}
.announce.collapse {
  height: 0;
  padding: 0;
}
.announce, .announce h1, .announce h2, .announce h3, .announce h4, .announce h5, .announce h6, .announce p {
  color: #FFF;
}
.announce h1, .announce h2, .announce h3, .announce h4, .announce h5, .announce h6, .announce p {
  margin: 0.5rem 0;
}
.announce .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.announce .announce-action {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.announce .announce-action > .button, .announce .announce-action > .button-secondary, .announce .announce-action > .button-highlight-2, .announce .announce-action > .button-highlight-3, .announce .announce-action > .button-highlight-4, .announce .announce-action > .button-highlight-5, .announce .announce-action > .button-white, .announce .announce-action > .button-transparent, .announce .announce-action > .button-outline-dark-blue, .announce .announce-action > .button-dotted-white, .announce .announce-action > .button-workplace, .announce .announce-action > .button-apply, .announce .announce-action > .button-prospectus, .announce .announce-action > .button-print, .announce .announce-action > .button-course, .announce .announce-action > .button-twitter, .announce .announce-action > .button-prospectus-download, .announce .announce-action > .button-prospectus-post, .announce .announce-action > .button-arrow, .announce .nav-horizontal .announce-action > a, .nav-horizontal .announce .announce-action > a {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.announce .close {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAyNiAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMyAzbDE5Ljk5OTggMTkuOTk5OE0zIDIzTDIyLjk5OTggMy4wMDAyIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
  background-position: center center;
  background-size: 16px 16px;
  background-color: transparent;
  width: 1.6rem;
  height: 1.6rem;
  border: none;
  display: inline-block;
  margin-left: 3rem;
}
@media (min-width: 769px) {
  .announce .announce-action {
    -ms-flex-pack: end;
        justify-content: flex-end;
    width: auto;
  }
}
@media (min-width: 1025px) {
  .announce {
    padding-left: 1rem;
    padding-right: 1rem;
    top: 15.5rem;
  }
}
@media (min-width: 1201px) {
  .announce {
    padding-left: 0;
    padding-right: 0;
  }
}

/* Announcement */
/*
	============
	Main Section
	============
*/
.main {
  margin-top: 1rem;
  margin-bottom: 3rem;
  position: relative;
  overflow-x: hidden;
}
@media (min-width: 769px) {
  .main {
    margin-bottom: 4rem;
  }
}
@media (min-width: 1025px) {
  .main {
    margin-top: 5rem;
    margin-bottom: 8rem;
  }
}

.main.course-wrap, .main.home-content-wrap {
  overflow-x: initial;
}

/* Main Section */
/*
	========
	Carousel
	========
*/
.home-carousel {
  margin-bottom: 12px;
  position: relative;
}
.home-carousel h2,
.home-carousel time {
  margin-bottom: 12px;
}
.home-carousel h2 {
  color: #003399;
  font-size: 2.1538461538em;
  font-weight: 800;
}
.home-carousel a {
  color: #003399;
  text-decoration: none;
}
.home-carousel time {
  border-bottom: 1px dashed #003399;
  color: #999;
  display: block;
  font-size: 1.2307692308em;
  padding-bottom: 12px;
}
.home-carousel .slick-next {
  right: 10px;
}
.home-carousel .slick-prev {
  left: 10px;
}
.home-carousel .image {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .home-carousel .image {
    float: right;
    margin-bottom: 0;
    width: 60%;
  }
}
.home-carousel .text {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .home-carousel .text {
    margin-bottom: 0;
    margin-right: 61%;
    padding-left: 15px;
  }
}

.home-carousel-nav {
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  text-align: center;
}
@media (min-width: 1024px) {
  .home-carousel-nav {
    left: 15px;
    right: 630px;
  }
}
.home-carousel-nav ul,
.home-carousel-nav li,
.home-carousel-nav button {
  display: inline-block;
}
.home-carousel-nav button {
  background-color: transparent;
  background-image: none;
  border: none;
  padding: 0;
}
.home-carousel-nav ul {
  padding-left: 6px;
  padding-right: 6px;
}
.home-carousel-nav ul button {
  background-color: #AAA;
  border-radius: 50%;
  height: 10px;
  width: 10px;
  transition: background-color 0.3s;
}
.home-carousel-nav ul button.active {
  background-color: #003399;
}
.home-carousel-nav li {
  padding-left: 2px;
  padding-right: 2px;
}
.home-carousel-nav .carousel-prev,
.home-carousel-nav .carousel-next {
  height: 15px;
  position: relative;
  width: 8px;
}
.home-carousel-nav .carousel-prev:before, .home-carousel-nav .carousel-prev:after,
.home-carousel-nav .carousel-next:before,
.home-carousel-nav .carousel-next:after {
  background-image: url(/site/images/icon/carousel-small.svg);
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  transition: opacity 0.3s;
}
.no-svg .home-carousel-nav .carousel-prev:before, .no-svg .home-carousel-nav .carousel-prev:after,
.no-svg .home-carousel-nav .carousel-next:before,
.no-svg .home-carousel-nav .carousel-next:after {
  background-image: url(/site/images/icon/carousel-small.png);
}
.home-carousel-nav .carousel-prev:before,
.home-carousel-nav .carousel-next:before {
  opacity: 0;
  filter: alpha(opacity=0);
}
.home-carousel-nav .carousel-prev:after,
.home-carousel-nav .carousel-next:after {
  opacity: 1;
  filter: alpha(opacity=100);
}
.home-carousel-nav .carousel-prev:hover:before,
.home-carousel-nav .carousel-next:hover:before {
  opacity: 1;
  filter: alpha(opacity=100);
}
.home-carousel-nav .carousel-prev:hover:after,
.home-carousel-nav .carousel-next:hover:after {
  opacity: 0;
  filter: alpha(opacity=0);
}
.home-carousel-nav .carousel-prev:before {
  background-position: 0 0;
}
.home-carousel-nav .carousel-prev:after {
  background-position: 0 -15px;
}
.home-carousel-nav .carousel-next:before {
  background-position: -8px 0;
}
.home-carousel-nav .carousel-next:after {
  background-position: -8px -15px;
}

/* Carousel */
/*
	===========
	Breadcrumbs
	===========
*/
.breadcrumbs {
  display: none;
  background: transparent;
  padding-bottom: 1rem;
}
.breadcrumbs ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.breadcrumbs li, .breadcrumbs li a {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3333333333;
  text-transform: uppercase;
  color: #666666;
  cursor: pointer;
}
.breadcrumbs li {
  padding-right: 0.75rem;
  margin-bottom: 0;
}
.breadcrumbs li:not(:last-child)::after {
  content: "";
  display: inline-block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMSAxMSIgIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTUuNTM1NTEgOS4wNzEwNmwzLjUzNTUzLTMuNTM1NTQtMy41MzU1My0zLjUzNTUzIiBzdHJva2U9IiM5OTkiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
  background-size: 11px 11px;
  background-repeat: no-repeat;
  background-position: center right;
  width: 11px;
  height: 11px;
  padding-left: 1.5rem;
  margin-bottom: 0.1rem;
}
@media (min-width: 1025px) {
  .breadcrumbs {
    display: block;
  }
}

/* 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 */
/*
	=====
	Forms
	=====
*/
.main-col .content-block .form-application .list-content, .main-col .content-block .form-query .list-content {
  margin-top: 3rem;
}
.main-col .content-block .form-application .list-content p, .main-col .content-block .form-application .list-content ul li, .main-col .content-block .form-query .list-content p, .main-col .content-block .form-query .list-content ul li {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #FFFFFF;
  margin: 0;
}
.main-col .content-block .form-application .list-content ul, .main-col .content-block .form-query .list-content ul {
  list-style: none;
  margin: 0;
  padding: 1.6rem 0;
}
.main-col .content-block .form-application .list-content ul li, .main-col .content-block .form-query .list-content ul li {
  padding-left: 2.2rem;
  position: relative;
}
.main-col .content-block .form-application .list-content ul li::before, .main-col .content-block .form-query .list-content ul li::before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOSIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDkgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkgNkw0LjZlLTcgMTEuMTk2MiA5LjJlLTcuODAzODQ3IDkgNnoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
  background-size: 6px 8px;
  background-repeat: no-repeat;
  background-position: center right;
  background-color: transparent;
  position: absolute;
  top: 4px;
  left: 0;
  width: 0.6rem;
  height: 0.8rem;
  border-radius: 0;
}
.main-col .content-block .form-application .list-content ul li + li, .main-col .content-block .form-query .list-content ul li + li {
  margin-top: 1.2rem;
}
@media (min-width: 769px) {
  .main-col .content-block .form-application .list-content, .main-col .content-block .form-query .list-content {
    margin-top: 5.6rem;
  }
  .main-col .content-block .form-application .list-content ul li, .main-col .content-block .form-query .list-content ul li {
    padding-left: 4rem;
  }
  .main-col .content-block .form-application .list-content ul li::before, .main-col .content-block .form-query .list-content ul li::before {
    background-size: 9px 12px;
    top: 6px;
    width: 0.9rem;
    height: 1.2rem;
  }
  .main-col .content-block .form-application .list-content ul li + li, .main-col .content-block .form-query .list-content ul li + li {
    margin-top: 1.6rem;
  }
}

.form-newsletter input {
  border-color: #FFF;
}

.form-event h2 {
  color: #213462;
  text-transform: uppercase;
  text-align: center;
  margin: 0;
}
.form-event h2 + p {
  text-align: center;
  font-size: 1.8rem;
  margin: 1.4rem 0 2.4rem;
}
.form-event .form-field > label, .form-event .main-col .content-block .form-query .form-field > label, .main-col .content-block .form-query .form-event .form-field > label, .form-event .form-field .form-input .input-checkbox input[type=checkbox] + label {
  color: #213462;
}
.form-event .form-field + .form-field, .form-event .main-col .content-block .form-query .form-field + .form-field, .main-col .content-block .form-query .form-event .form-field + .form-field {
  margin-top: 1rem;
}
.form-event .register-button {
  width: 100%;
}
@media (min-width: 769px) {
  .form-event .form-field + .form-field, .form-event .main-col .content-block .form-query .form-field + .form-field, .main-col .content-block .form-query .form-event .form-field + .form-field {
    margin-top: 2rem;
  }
}

.main-col .content-block .form-application {
  margin-bottom: 3rem;
}
.main-col .content-block .form-application > * + *, .main-col .content-block .form-application .col-item > * + * {
  margin-top: 3rem;
}
.main-col .content-block .form-application .form-error-msg {
  font-size: 1.8rem;
  font-weight: 400;
  color: #000000;
  margin: 0 0 3rem;
}
.main-col .content-block .form-application h2 {
  font-size: 2rem;
  line-height: 1.35;
  margin: 1rem 0 2.4rem;
}
.main-col .content-block .form-application .collapse-text, .main-col .content-block .form-application .explain-detail .explain-text, .main-col .content-block .form-application .form-field p, .main-col .content-block .form-application .form-query .form-field p, .main-col .content-block .form-query .form-application .form-field p, .main-col .content-block .form-application .open-quali-button, .main-col .content-block .form-application .quali-list-mobile .quali-item-mobile p, .main-col .content-block .form-application .quali-tip-text, .main-col .content-block .form-application .eu-explain-text {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  color: #213462;
}
.main-col .content-block .form-application .quali-tip-text, .main-col .content-block .form-application .eu-explain-text {
  margin: 0;
}
.main-col .content-block .form-application .mobileTel-tip-text {
  font-size: 1.5rem;
  font-weight: 400;
  color: #444444;
  margin: 2rem 0 1rem;
}
.main-col .content-block .form-application .collapse-text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 1.6rem 0 0;
  text-decoration: underline;
  color: #003399;
}
.main-col .content-block .form-application .collapse-text.margin-bottom-0 {
  margin-bottom: 0;
}
.main-col .content-block .form-application .open-quali-button {
  display: block;
  color: #003399;
  text-decoration: underline;
  cursor: pointer;
  margin-top: 2rem;
}
.main-col .content-block .form-application .list-content {
  margin-top: 0;
}
.main-col .content-block .form-application .list-content p, .main-col .content-block .form-application .list-content ul li {
  color: #213462;
}
.main-col .content-block .form-application .list-content ul li::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOSIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDkgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkgNkw0LjZlLTcgMTEuMTk2MiA5LjJlLTcuODAzODQ3IDkgNnoiIGZpbGw9IiMyMTM0NjIiLz48L3N2Zz4=");
}
.main-col .content-block .form-application .explain-detail {
  background: #FFFFFF;
  padding: 3rem;
}
.main-col .content-block .form-application .explain-detail .explain-text {
  letter-spacing: -0.01em;
  margin-top: 0;
}
.main-col .content-block .form-application .explain-detail .explain-text:last-child {
  margin-bottom: 0;
}
.main-col .content-block .form-application .quali-list-mobile {
  max-width: 60rem;
}
.main-col .content-block .form-application .quali-list-mobile .quali-item-mobile {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 1.8rem 0 1.4rem;
  border-bottom: 1px solid #CCCCCC;
}
.main-col .content-block .form-application .quali-list-mobile .quali-item-mobile p {
  width: 100%;
  margin: 0;
  padding-right: 3rem;
  font-size: 1.4rem;
  -ms-flex-positive: 0;
      flex-grow: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.main-col .content-block .form-application .quali-list-mobile .quali-item-mobile .remove-button {
  width: 2rem;
  height: 2rem;
  font-size: 0;
  background-image: url("data:image/svg+xml;base64, PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIgMkwxMC40ODUzIDEwLjQ4NTMiIHN0cm9rZT0iIzIxMzQ2MiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPHBhdGggZD0iTTIgMTAuNDg1NEwxMC40ODUzIDIuMDAwMDciIHN0cm9rZT0iIzIxMzQ2MiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==");
  background-position: center center;
  background-size: 12px 12px;
  background-repeat: no-repeat;
}
.main-col .content-block .form-application .quali-block.hide-animation {
  height: 0;
  overflow: hidden;
}
.main-col .content-block .form-application .quali-block.hide-animation.show {
  height: auto;
  overflow: initial;
}
.main-col .content-block .form-application .form-field, .main-col .content-block .form-application .form-query .form-field, .main-col .content-block .form-query .form-application .form-field {
  max-width: 60rem;
}
.main-col .content-block .form-application .form-field > p, .main-col .content-block .form-application .form-query .form-field > p, .main-col .content-block .form-query .form-application .form-field > p {
  font-weight: 700;
  letter-spacing: -0.01em;
  margin: 0 0 2rem;
}
.main-col .content-block .form-application .form-field.radio-group-simple-wrapper, .main-col .content-block .form-application .form-query .radio-group-simple-wrapper.form-field, .main-col .content-block .form-query .form-application .radio-group-simple-wrapper.form-field {
  max-width: 92rem;
}
.main-col .content-block .form-application .form-field.radio-group-simple-wrapper > label, .main-col .content-block .form-application .form-query .radio-group-simple-wrapper.form-field > label {
  max-width: 60rem;
}
.main-col .content-block .form-application .form-field.full-width, .main-col .content-block .form-application .form-query .full-width.form-field, .main-col .content-block .form-query .form-application .full-width.form-field, .main-col .content-block .form-application .quali-block.full-width, .main-col .content-block .form-application .difficulty-detail.full-width {
  max-width: none;
}
.main-col .content-block .form-application .form-field.full-width > label, .main-col .content-block .form-application .form-query .full-width.form-field > label, .main-col .content-block .form-application .quali-block.full-width > label, .main-col .content-block .form-application .difficulty-detail.full-width > label {
  max-width: 60rem;
}
.main-col .content-block .form-application .agreement-wrapper + .agreement-wrapper {
  margin-top: 1.5rem;
}
.main-col .content-block .form-application .button-group {
  -ms-flex-direction: row;
      flex-direction: row;
}
.main-col .content-block .form-application .button-group > .save-later-button {
  position: fixed;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  width: calc(100% - 6rem);
  right: 50%;
  bottom: 0;
  z-index: 99;
  transform: translateX(50%);
}
.main-col .content-block .form-application .form-field-section > *:not(h2) {
  max-width: 60rem;
}
.main-col .content-block .form-application .form-field-section > *:not(h2):first-child.hide-animation:not(.show) + .form-field {
  margin-top: 0;
}
.main-col .content-block .form-application .form-field-section .term-text, .main-col .content-block .form-application .form-field-section .privacy {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #213462;
  margin: 0;
}
.main-col .content-block .form-application .form-field-section .term-text span, .main-col .content-block .form-application .form-field-section .privacy span {
  display: block;
}
.main-col .content-block .form-application .form-field-section .term-text a, .main-col .content-block .form-application .form-field-section .privacy a {
  display: inline-block;
  text-decoration: underline;
}
.main-col .content-block .form-application .form-field-section .term-text + .term-text, .main-col .content-block .form-application .form-field-section .term-text + .form-field, .main-col .content-block .form-application .form-field-section .form-query .term-text + .form-field, .main-col .content-block .form-application .form-field-section .privacy + .term-text, .main-col .content-block .form-application .form-field-section .privacy + .form-field, .main-col .content-block .form-application .form-field-section .form-query .privacy + .form-field {
  margin-top: 1.4rem;
}
.main-col .content-block .form-application .form-field-section .privacy {
  margin: 1.25rem -0.75rem -0.75rem;
}
.main-col .content-block .form-application .form-field-section .privacy .privacy-item {
  margin: 0.75rem 0;
  padding: 0 0.75rem;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.main-col .content-block .form-application .form-field-section .form-field.wider, .main-col .content-block .form-application .form-field-section .wider {
  max-width: 90rem;
}
.main-col .content-block .form-application .form-field-section .form-field input.error, .main-col .content-block .form-application .form-field-section .form-field select.error, .main-col .content-block .form-application .form-field-section .form-field .input-radio input[type=radio].error + label, .main-col .content-block .form-application .form-field-section .form-field .input-radio-simple input[type=radio].error + label::before {
  border-color: #CD2C27;
}
.main-col .content-block .form-application .form-field-section .form-field label.error, .main-col .content-block .form-application .form-field-section .form-field label.error-text {
  color: #CD2C27;
}
.main-col .content-block .form-application .form-field-section .input-radio-group .input-radio label {
  color: #444444;
}
.main-col .content-block .form-application .form-field-section .input-radio-group .input-radio input[type=radio]:checked + label, .main-col .content-block .form-application .form-field-section .input-radio-group .input-radio input[type=radio]:focus + label {
  color: #FFFFFF;
}
.main-col .content-block .form-application .form-field-section.grey {
  padding: 3rem 6rem;
  background-color: rgba(204, 204, 204, 0.2);
  margin-left: -6rem;
  margin-right: -6rem;
}
.main-col .content-block .form-application .form-field-section.grey .form-field p {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: -0.03em;
  color: #213462;
}
.main-col .content-block .form-application .form-field-section .form-field label, .main-col .content-block .form-application .form-field-section .form-input .input-checkbox input[type=checkbox] + label, .main-col .content-block .form-application .half-width-grey .form-field label, .main-col .content-block .form-application .half-width-grey .form-input .input-checkbox input[type=checkbox] + label {
  color: #213462;
}
.main-col .content-block .form-application .form-field-section .input-checkbox input[type=checkbox] + label > span, .main-col .content-block .form-application .half-width-grey .input-checkbox input[type=checkbox] + label > span {
  font-weight: 700;
}
.main-col .content-block .form-application .form-field-section:not(.payment-address-section) + .form-field-section:not(.grey) {
  position: relative;
  padding-top: 1.6rem;
}
.main-col .content-block .form-application .form-field-section:not(.payment-address-section) + .form-field-section:not(.grey)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  max-width: 60rem;
  width: 100%;
  height: 2px;
  background: #213462;
}
.main-col .content-block .form-application .form-field-section:not(.payment-address-section) + .form-field-section:not(.grey).grey::before {
  content: none;
}
.main-col .content-block .form-application .full-width-grey, .main-col .content-block .form-application .half-width-grey {
  padding: 2rem 0 3rem;
  position: relative;
}
.main-col .content-block .form-application .full-width-grey::before, .main-col .content-block .form-application .half-width-grey::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -3rem;
  width: 100vw;
  height: 100%;
  z-index: 0;
}
@media (min-width: 768px) {
  .main-col .content-block .form-application .full-width-grey::before, .main-col .content-block .form-application .half-width-grey::before {
    background-color: rgba(204, 204, 204, 0.2);
  }
}
.main-col .content-block .form-application .full-width-grey > *:not(.quali-section), .main-col .content-block .form-application .half-width-grey > *:not(.quali-section) {
  z-index: 1;
  position: relative;
}
.main-col .content-block .form-application .full-width-grey > *.quali-section:only-child, .main-col .content-block .form-application .half-width-grey > *.quali-section:only-child {
  z-index: 1;
  position: relative;
}
.main-col .content-block .form-application .full-width-grey > * + *, .main-col .content-block .form-application .half-width-grey > * + * {
  margin-top: 3rem;
}
.main-col .content-block .form-application .form-field-section.grey {
  background-color: transparent;
}
@media (min-width: 768px) {
  .main-col .content-block .form-application .form-field-section.grey {
    background-color: rgba(204, 204, 204, 0.2);
  }
}
.main-col .content-block .form-application .half-width-grey {
  padding: 2rem 0;
}
.main-col .content-block .form-application.short-width {
  max-width: 60rem;
  width: 100%;
}
.main-col .content-block .form-application .under19-living-section.hide-animation, .main-col .content-block .form-application .second-contact-section.hide-animation {
  margin-top: 0;
  padding-top: 0;
}
.main-col .content-block .form-application .under19-living-section.hide-animation.show, .main-col .content-block .form-application .second-contact-section.hide-animation.show {
  margin-top: 3rem;
}
.main-col .content-block .form-application .full-width-grey + .js-employ-section.hide-animation {
  margin-top: 0;
  padding-top: 0;
}
.main-col .content-block .form-application .full-width-grey + .js-employ-section.hide-animation.show {
  margin-top: 3rem;
  padding-top: 2rem;
}
.main-col .content-block .form-application .payment-cols {
  margin-top: 0;
}
.main-col .content-block .form-application .payment-cols .col-item:last-child {
  -ms-flex-order: 0;
      order: 0;
}
.main-col .content-block .form-application .payment-cols .col-item:first-child {
  -ms-flex-order: 1;
      order: 1;
}
.main-col .content-block .form-application .payment-address-section.hide-animation + .form-field-section {
  margin-top: 0;
}
.main-col .content-block .form-application .payment-address-section.hide-animation.show + .form-field-section {
  margin-top: 3rem;
}
.main-col .content-block .form-application .payment-summary {
  -ms-flex-direction: column;
      flex-direction: column;
  max-width: 60rem;
}
.main-col .content-block .form-application .payment-summary .summary-item, .main-col .content-block .form-application .payment-summary .avail-pay-methods {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.main-col .content-block .form-application .payment-summary .summary-item p, .main-col .content-block .form-application .payment-summary .avail-pay-methods p {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.01em;
  color: #000000;
  margin: 1.6rem 0;
}
.main-col .content-block .form-application .payment-summary .summary-item + .summary-item {
  border-top: 1px solid #CCCCCC;
}
.main-col .content-block .form-application .payment-summary .summary-item.total p {
  font-size: 2rem;
  font-weight: 700;
}
.main-col .content-block .form-application .payment-summary .avail-pay-methods {
  margin-top: 2rem;
  margin-bottom: 2rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.main-col .content-block .form-application .payment-summary .avail-pay-methods > * {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.main-col .content-block .form-application .payment-summary .avail-pay-methods p {
  position: relative;
  padding-left: 3.2rem;
  margin: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.main-col .content-block .form-application .payment-summary .avail-pay-methods p::before {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTMuMjY5MiA3LjU5MDkyYy0uMjIwNS0uMjEyMTQtLjQ4OC0uMzE4MTMtLjgwMjktLjMxODEzaC0uMzc3NlY1LjA5MDg1YzAtMS4zOTM5Mi0uNTE5My0yLjU5MDc4LTEuNTU4Mi0zLjU5MDc4QzkuNDkxNTkuNTAwMDIyIDguMjQ4MjkgMCA2Ljc5OTk0IDAgNS4zNTE2MyAwIDQuMTA4MDguNTAwMDIyIDMuMDY5MyAxLjUwMDAzIDIuMDMwMzUgMi41MDAwNyAxLjUxMTA0IDMuNjk2ODkgMS41MTEwNCA1LjA5MDg1djIuMTgxOTRoLS4zNzc3M2MtLjMxNDcxMiAwLS41ODIzNjguMTA1OTktLjgwMjc2Mi4zMTgxM0MuMTEwMTU1IDcuODAyOSAwIDguMDYwNTQgMCA4LjM2Mzc0djYuNTQ1MzZjMCAuMzAzLjExMDE5Ny41NjA3LjMzMDU0OC43NzI4LjIyMDM5NC4yMTIuNDg4MDUuMzE4MS44MDI3NjIuMzE4MUgxMi40NjY2Yy4zMTQ5IDAgLjU4MjQtLjEwNi44MDI5LS4zMTgxLjIyMDEtLjIxMjEuMzMwNS0uNDY5OC4zMzA1LS43NzI4VjguMzYzNjJjLjAwMDItLjMwMjk2LS4xMTA0LS41NjA1Ni0uMzMwOC0uNzcyN3ptLTMuNDQ3MDYtLjMxODEzaC02LjA0NDRWNS4wOTA4NWMwLS44MDI5OS4yOTUxOS0xLjQ4ODY0Ljg4NTQ2LTIuMDU2NzMuNTkwMzUtLjU2ODE2IDEuMzAyNTUtLjg1MjE4IDIuMTM2ODYtLjg1MjE4LjgzNDM5IDAgMS41NDY0My4yODM5OCAyLjEzNjgyLjg1MjE4LjU5MDEuNTY4MDUuODg1MjYgMS4yNTM3NC44ODUyNiAyLjA1NjczdjIuMTgxOTR6IiBmaWxsPSIjMDAwIi8+PC9zdmc+");
  background-position: center center;
  background-size: 14px 16px;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.4rem;
  height: 1.6rem;
  transform: translateY(-50%);
}
.main-col .content-block .form-application .payment-summary .avail-pay-methods .menthods-logos img {
  width: 4rem;
  margin-left: 1rem;
}
@media (min-width: 769px) {
  .main-col .content-block .form-application > *:not(.hidden) + *:not(.payment-cols):not(.under19-living-section) {
    margin-top: 6rem;
  }
  .main-col .content-block .form-application .collapse-text {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .main-col .content-block .form-application h2 {
    font-size: 4rem;
    margin-bottom: 3rem;
  }
  .main-col .content-block .form-application .form-field > p, .main-col .content-block .form-application .form-query .form-field > p, .main-col .content-block .form-query .form-application .form-field > p {
    margin: 0 0 3rem;
  }
  .main-col .content-block .form-application .button-group .save-later-button {
    width: 24rem;
    right: 3rem;
    transform: translateX(0);
  }
  .main-col .content-block .form-application .form-field-section .term-text, .main-col .content-block .form-application .form-field-section .privacy {
    font-size: 1.6rem;
  }
  .main-col .content-block .form-application .form-field-section .term-text + .term-text, .main-col .content-block .form-application .form-field-section .term-text + .form-field, .main-col .content-block .form-application .form-field-section .form-query .term-text + .form-field, .main-col .content-block .form-application .form-field-section .privacy + .term-text, .main-col .content-block .form-application .form-field-section .privacy + .form-field, .main-col .content-block .form-application .form-field-section .form-query .privacy + .form-field {
    margin-top: 2rem;
  }
  .main-col .content-block .form-application .form-field-section .privacy .privacy-item {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
  .main-col .content-block .form-application .form-field-section .form-field.select-form-field {
    width: 32%;
  }
  .main-col .content-block .form-application .form-field-section.grey {
    padding: 5rem 6rem 4rem;
  }
  .main-col .content-block .form-application .under19-living-section.hide-animation.show, .main-col .content-block .form-application .second-contact-section.hide-animation.show {
    margin-top: 6rem;
    padding-top: 3rem;
  }
  .main-col .content-block .form-application .form-field-section:not(.payment-address-section) + .form-field-section:not(.grey) {
    padding-top: 3rem;
  }
  .main-col .content-block .form-application .full-width-grey, .main-col .content-block .form-application .half-width-grey {
    padding: 4rem 0 5rem;
  }
  .main-col .content-block .form-application .full-width-grey::before, .main-col .content-block .form-application .half-width-grey::before {
    left: calc((100vw - 100%) * -0.5);
  }
  .main-col .content-block .form-application .full-width-grey > * + *, .main-col .content-block .form-application .half-width-grey > * + * {
    margin-top: 6rem;
  }
  .main-col .content-block .form-application .half-width-grey {
    padding: 4rem 0;
  }
  .main-col .content-block .form-application .half-width-grey::before {
    width: calc(100% + (100vw - 100%) * 0.5);
  }
  .main-col .content-block .form-application .form-field-section .term-text + .form-field, .main-col .content-block .form-application .form-field-section .form-query .term-text + .form-field, .main-col .content-block .form-application .privacy + .form-field, .main-col .content-block .form-application .form-query .privacy + .form-field, .main-col .content-block .form-query .form-application .privacy + .form-field {
    margin-top: 3rem;
  }
  .main-col .content-block .form-application .payment-cols .col-item:last-child {
    -ms-flex-order: 1;
        order: 1;
    padding-left: 3rem;
  }
  .main-col .content-block .form-application .payment-cols .col-item:first-child {
    -ms-flex-order: 0;
        order: 0;
  }
  .main-col .content-block .form-application .payment-summary {
    max-width: 48rem;
    margin-left: auto;
  }
  .main-col .content-block .form-application .payment-summary .summary-item p, .main-col .content-block .form-application .payment-summary .avail-pay-methods p {
    font-size: 1.8rem;
  }
  .main-col .content-block .form-application .payment-summary .summary-item.total p {
    font-size: 2.4rem;
  }
  .main-col .content-block .form-application .payment-summary .avail-pay-methods .menthods-logos img {
    width: 5.1rem;
    margin-left: 1.8rem;
  }
}
@media (min-width: 1201px) {
  .main-col .content-block .form-application .open-quali-button, .main-col .content-block .form-application .quali-list-mobile {
    display: none;
  }
  .main-col .content-block .form-application .button-group .save-later-button {
    right: calc((100vw - 120rem) * 0.5);
  }
}

.form-application_steps {
  counter-reset: step;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: center;
  text-transform: uppercase;
}
.form-application_steps li {
  color: #CCC;
  counter-increment: step;
  padding: 24px 4px 4px;
  position: relative;
}
@media (min-width: 560px) {
  .form-application_steps li {
    float: left;
    width: 33.3333%;
  }
}
.form-application_steps li:before {
  background-color: #CCC;
  border-radius: 50%;
  color: #FFF;
  content: counter(step);
  position: absolute;
  top: 0;
  left: 50%;
  width: 20px;
  height: 20px;
  transform: translateX(-50%);
  z-index: 2;
}
.form-application_steps li:after {
  background-color: currentColor;
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  height: 2px;
  width: 100%;
  z-index: 1;
}
.form-application_steps .form-application_steps__active {
  color: #003399;
}
.form-application_steps .form-application_steps__active:before {
  background-color: #003399;
}
.form-application_steps .form-application_steps__complete {
  color: #000000;
}
.form-application_steps .form-application_steps__complete:before {
  background-color: #000000;
}
@media (min-width: 560px) {
  .form-application_steps.form-application_steps-payment li {
    width: 25%;
  }
}

.form-prospectus fieldset + fieldset {
  margin-top: 30px;
}
.form-prospectus fieldset:first-child {
  border-bottom: 1px dashed #003399;
}
.form-prospectus h2 {
  border-bottom: 1px dashed #003399;
  color: #066;
  margin-bottom: 25px;
  padding-bottom: 10px;
}
.form-prospectus .form-item {
  margin-bottom: 0;
}
.form-prospectus .cols {
  margin-left: -19px;
  margin-right: -19px;
}
.form-prospectus .cols + .cols {
  margin-top: 20px;
}
.form-prospectus .col {
  padding-left: 19px;
  padding-right: 19px;
}
@media (min-width: 768px) {
  .form-prospectus .col {
    float: left;
    width: 50%;
  }
}
.form-prospectus .col + .col {
  margin-top: 20px;
}
@media (min-width: 768px) {
  .form-prospectus .col + .col {
    margin-top: 0;
  }
}
.form-prospectus .col-2 {
  padding-left: 19px;
  padding-right: 19px;
}
.form-prospectus .checkbox {
  margin-bottom: 0;
}
.form-prospectus .button-row {
  margin-top: 45px;
}
.form-prospectus .prospectus-select {
  margin: 0 -6px 16px;
}
.form-prospectus .prospectus-select img {
  display: block;
  margin: 0 auto 4px;
}
.form-prospectus .prospectus-select .prospectus {
  float: left;
  padding-left: 6px;
  padding-right: 6px;
  text-align: center;
  width: 49.99995%;
}
.form-prospectus .prospectus-select .prospectus:nth-child(3) {
  clear: left;
}
@media (min-width: 768px) {
  .form-prospectus .prospectus-select .prospectus {
    width: 24.999975%;
  }
  .form-prospectus .prospectus-select .prospectus:nth-child(3) {
    clear: none;
  }
  .form-prospectus .prospectus-select .prospectus:nth-child(5) {
    clear: left;
  }
}
@media (min-width: 1024px) {
  .form-prospectus .prospectus-select .prospectus {
    width: 14.2857%;
  }
  .form-prospectus .prospectus-select .prospectus:nth-child(5) {
    clear: none;
  }
}
.form-prospectus .prospectus-select .checkbox {
  margin: 0;
}
.form-prospectus .prospectus-select .lbl {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 1.0769230769em;
}
.form-prospectus .or {
  border-bottom: 5px solid #066;
  color: #066;
  font-size: 2.1538461538em;
  font-weight: 800;
  margin-bottom: 70px;
  padding-bottom: 75px;
  padding-top: 30px;
  position: relative;
  text-align: center;
}
.form-prospectus .or:after {
  background-color: #066;
  background-image: url(/site/images/icon/white/email-large.svg);
  background-position: center center;
  background-size: 47px 36px;
  border-radius: 50%;
  content: "";
  width: 86px;
  height: 86px;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -43px;
  margin-top: -41px;
}
.no-svg .form-prospectus .or:after {
  background-image: url(/site/images/icons/white/email-large.png);
}

.main-col .content-block .form-query {
  background-color: #213462;
  margin: 0 -3rem;
  padding: 3rem;
}
.main-col .content-block .form-query h2 {
  color: #FFFFFF;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0;
}
.main-col .content-block .form-query h2 + p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  color: #FFFFFF;
  margin: 2rem 0 3rem;
}
.main-col .content-block .form-query .submit-btn {
  margin-top: 2rem;
  width: 100%;
  height: 6rem;
}
@media (min-width: 769px) {
  .main-col .content-block .form-query {
    margin: 0 -6rem;
    padding: 6rem;
  }
  .main-col .content-block .form-query h2 {
    font-size: 3.2rem;
  }
  .main-col .content-block .form-query h2 + p {
    font-size: 2rem;
    letter-spacing: -0.03em;
    margin: 1rem 0 1.6rem;
  }
  .main-col .content-block .form-query .submit-btn {
    height: 7rem;
    max-width: 30rem;
  }
}

.formz [id$=_wrap] + * {
  margin-top: 1em;
}
.formz .checkbox {
  margin-bottom: 0;
  margin-right: 0;
}
.formz .checkbox input {
  position: static;
}
.formz .boolDiv {
  display: block;
  margin-left: 1em;
}
.formz .actions {
  margin-top: 1em;
  text-align: right;
}
.formz .error, .formz .main-col .content-block .form-application .form-field-section label.error-text, .main-col .content-block .form-application .form-field-section .formz label.error-text {
  color: #F00;
}

.form-funding {
  max-width: 60rem;
  width: 100%;
  margin: 2rem auto 0;
}
.form-funding .form-field label, .form-funding .main-col .content-block .form-query .form-field label, .main-col .content-block .form-query .form-funding .form-field label {
  color: #000000;
}
.form-funding .form-field + .form-field, .form-funding .main-col .content-block .form-query .form-field + .form-field, .main-col .content-block .form-query .form-funding .form-field + .form-field {
  margin-top: 2rem;
}
.form-funding .questions-buttons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.form-funding .questions-buttons .button ~ .button, .form-funding .questions-buttons .button-secondary ~ .button, .form-funding .questions-buttons .button-highlight-2 ~ .button, .form-funding .questions-buttons .button-highlight-3 ~ .button, .form-funding .questions-buttons .button-highlight-4 ~ .button, .form-funding .questions-buttons .button-highlight-5 ~ .button, .form-funding .questions-buttons .button-white ~ .button, .form-funding .questions-buttons .button-transparent ~ .button, .form-funding .questions-buttons .button-outline-dark-blue ~ .button, .form-funding .questions-buttons .button-dotted-white ~ .button, .form-funding .questions-buttons .button-workplace ~ .button, .form-funding .questions-buttons .button-apply ~ .button, .form-funding .questions-buttons .button-prospectus ~ .button, .form-funding .questions-buttons .button-print ~ .button, .form-funding .questions-buttons .button-course ~ .button, .form-funding .questions-buttons .button-twitter ~ .button, .form-funding .questions-buttons .button-prospectus-download ~ .button, .form-funding .questions-buttons .button-prospectus-post ~ .button, .form-funding .questions-buttons .button-arrow ~ .button, .form-funding .questions-buttons .nav-horizontal a ~ .button, .nav-horizontal .form-funding .questions-buttons a ~ .button, .form-funding .questions-buttons .button ~ .button-secondary, .form-funding .questions-buttons .button-secondary ~ .button-secondary, .form-funding .questions-buttons .button-highlight-2 ~ .button-secondary, .form-funding .questions-buttons .button-highlight-3 ~ .button-secondary, .form-funding .questions-buttons .button-highlight-4 ~ .button-secondary, .form-funding .questions-buttons .button-highlight-5 ~ .button-secondary, .form-funding .questions-buttons .button-white ~ .button-secondary, .form-funding .questions-buttons .button-transparent ~ .button-secondary, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-secondary, .form-funding .questions-buttons .button-dotted-white ~ .button-secondary, .form-funding .questions-buttons .button-workplace ~ .button-secondary, .form-funding .questions-buttons .button-apply ~ .button-secondary, .form-funding .questions-buttons .button-prospectus ~ .button-secondary, .form-funding .questions-buttons .button-print ~ .button-secondary, .form-funding .questions-buttons .button-course ~ .button-secondary, .form-funding .questions-buttons .button-twitter ~ .button-secondary, .form-funding .questions-buttons .button-prospectus-download ~ .button-secondary, .form-funding .questions-buttons .button-prospectus-post ~ .button-secondary, .form-funding .questions-buttons .button-arrow ~ .button-secondary, .form-funding .questions-buttons .nav-horizontal a ~ .button-secondary, .nav-horizontal .form-funding .questions-buttons a ~ .button-secondary, .form-funding .questions-buttons .button ~ .button-highlight-2, .form-funding .questions-buttons .button-secondary ~ .button-highlight-2, .form-funding .questions-buttons .button-highlight-2 ~ .button-highlight-2, .form-funding .questions-buttons .button-highlight-3 ~ .button-highlight-2, .form-funding .questions-buttons .button-highlight-4 ~ .button-highlight-2, .form-funding .questions-buttons .button-highlight-5 ~ .button-highlight-2, .form-funding .questions-buttons .button-white ~ .button-highlight-2, .form-funding .questions-buttons .button-transparent ~ .button-highlight-2, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-highlight-2, .form-funding .questions-buttons .button-dotted-white ~ .button-highlight-2, .form-funding .questions-buttons .button-workplace ~ .button-highlight-2, .form-funding .questions-buttons .button-apply ~ .button-highlight-2, .form-funding .questions-buttons .button-prospectus ~ .button-highlight-2, .form-funding .questions-buttons .button-print ~ .button-highlight-2, .form-funding .questions-buttons .button-course ~ .button-highlight-2, .form-funding .questions-buttons .button-twitter ~ .button-highlight-2, .form-funding .questions-buttons .button-prospectus-download ~ .button-highlight-2, .form-funding .questions-buttons .button-prospectus-post ~ .button-highlight-2, .form-funding .questions-buttons .button-arrow ~ .button-highlight-2, .form-funding .questions-buttons .nav-horizontal a ~ .button-highlight-2, .nav-horizontal .form-funding .questions-buttons a ~ .button-highlight-2, .form-funding .questions-buttons .button ~ .button-highlight-3, .form-funding .questions-buttons .button-secondary ~ .button-highlight-3, .form-funding .questions-buttons .button-highlight-2 ~ .button-highlight-3, .form-funding .questions-buttons .button-highlight-3 ~ .button-highlight-3, .form-funding .questions-buttons .button-highlight-4 ~ .button-highlight-3, .form-funding .questions-buttons .button-highlight-5 ~ .button-highlight-3, .form-funding .questions-buttons .button-white ~ .button-highlight-3, .form-funding .questions-buttons .button-transparent ~ .button-highlight-3, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-highlight-3, .form-funding .questions-buttons .button-dotted-white ~ .button-highlight-3, .form-funding .questions-buttons .button-workplace ~ .button-highlight-3, .form-funding .questions-buttons .button-apply ~ .button-highlight-3, .form-funding .questions-buttons .button-prospectus ~ .button-highlight-3, .form-funding .questions-buttons .button-print ~ .button-highlight-3, .form-funding .questions-buttons .button-course ~ .button-highlight-3, .form-funding .questions-buttons .button-twitter ~ .button-highlight-3, .form-funding .questions-buttons .button-prospectus-download ~ .button-highlight-3, .form-funding .questions-buttons .button-prospectus-post ~ .button-highlight-3, .form-funding .questions-buttons .button-arrow ~ .button-highlight-3, .form-funding .questions-buttons .nav-horizontal a ~ .button-highlight-3, .nav-horizontal .form-funding .questions-buttons a ~ .button-highlight-3, .form-funding .questions-buttons .button ~ .button-highlight-4, .form-funding .questions-buttons .button-secondary ~ .button-highlight-4, .form-funding .questions-buttons .button-highlight-2 ~ .button-highlight-4, .form-funding .questions-buttons .button-highlight-3 ~ .button-highlight-4, .form-funding .questions-buttons .button-highlight-4 ~ .button-highlight-4, .form-funding .questions-buttons .button-highlight-5 ~ .button-highlight-4, .form-funding .questions-buttons .button-white ~ .button-highlight-4, .form-funding .questions-buttons .button-transparent ~ .button-highlight-4, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-highlight-4, .form-funding .questions-buttons .button-dotted-white ~ .button-highlight-4, .form-funding .questions-buttons .button-workplace ~ .button-highlight-4, .form-funding .questions-buttons .button-apply ~ .button-highlight-4, .form-funding .questions-buttons .button-prospectus ~ .button-highlight-4, .form-funding .questions-buttons .button-print ~ .button-highlight-4, .form-funding .questions-buttons .button-course ~ .button-highlight-4, .form-funding .questions-buttons .button-twitter ~ .button-highlight-4, .form-funding .questions-buttons .button-prospectus-download ~ .button-highlight-4, .form-funding .questions-buttons .button-prospectus-post ~ .button-highlight-4, .form-funding .questions-buttons .button-arrow ~ .button-highlight-4, .form-funding .questions-buttons .nav-horizontal a ~ .button-highlight-4, .nav-horizontal .form-funding .questions-buttons a ~ .button-highlight-4, .form-funding .questions-buttons .button ~ .button-highlight-5, .form-funding .questions-buttons .button-secondary ~ .button-highlight-5, .form-funding .questions-buttons .button-highlight-2 ~ .button-highlight-5, .form-funding .questions-buttons .button-highlight-3 ~ .button-highlight-5, .form-funding .questions-buttons .button-highlight-4 ~ .button-highlight-5, .form-funding .questions-buttons .button-highlight-5 ~ .button-highlight-5, .form-funding .questions-buttons .button-white ~ .button-highlight-5, .form-funding .questions-buttons .button-transparent ~ .button-highlight-5, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-highlight-5, .form-funding .questions-buttons .button-dotted-white ~ .button-highlight-5, .form-funding .questions-buttons .button-workplace ~ .button-highlight-5, .form-funding .questions-buttons .button-apply ~ .button-highlight-5, .form-funding .questions-buttons .button-prospectus ~ .button-highlight-5, .form-funding .questions-buttons .button-print ~ .button-highlight-5, .form-funding .questions-buttons .button-course ~ .button-highlight-5, .form-funding .questions-buttons .button-twitter ~ .button-highlight-5, .form-funding .questions-buttons .button-prospectus-download ~ .button-highlight-5, .form-funding .questions-buttons .button-prospectus-post ~ .button-highlight-5, .form-funding .questions-buttons .button-arrow ~ .button-highlight-5, .form-funding .questions-buttons .nav-horizontal a ~ .button-highlight-5, .nav-horizontal .form-funding .questions-buttons a ~ .button-highlight-5, .form-funding .questions-buttons .button ~ .button-white, .form-funding .questions-buttons .button-secondary ~ .button-white, .form-funding .questions-buttons .button-highlight-2 ~ .button-white, .form-funding .questions-buttons .button-highlight-3 ~ .button-white, .form-funding .questions-buttons .button-highlight-4 ~ .button-white, .form-funding .questions-buttons .button-highlight-5 ~ .button-white, .form-funding .questions-buttons .button-white ~ .button-white, .form-funding .questions-buttons .button-transparent ~ .button-white, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-white, .form-funding .questions-buttons .button-dotted-white ~ .button-white, .form-funding .questions-buttons .button-workplace ~ .button-white, .form-funding .questions-buttons .button-apply ~ .button-white, .form-funding .questions-buttons .button-prospectus ~ .button-white, .form-funding .questions-buttons .button-print ~ .button-white, .form-funding .questions-buttons .button-course ~ .button-white, .form-funding .questions-buttons .button-twitter ~ .button-white, .form-funding .questions-buttons .button-prospectus-download ~ .button-white, .form-funding .questions-buttons .button-prospectus-post ~ .button-white, .form-funding .questions-buttons .button-arrow ~ .button-white, .form-funding .questions-buttons .nav-horizontal a ~ .button-white, .nav-horizontal .form-funding .questions-buttons a ~ .button-white, .form-funding .questions-buttons .button ~ .button-transparent, .form-funding .questions-buttons .button-secondary ~ .button-transparent, .form-funding .questions-buttons .button-highlight-2 ~ .button-transparent, .form-funding .questions-buttons .button-highlight-3 ~ .button-transparent, .form-funding .questions-buttons .button-highlight-4 ~ .button-transparent, .form-funding .questions-buttons .button-highlight-5 ~ .button-transparent, .form-funding .questions-buttons .button-white ~ .button-transparent, .form-funding .questions-buttons .button-transparent ~ .button-transparent, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-transparent, .form-funding .questions-buttons .button-dotted-white ~ .button-transparent, .form-funding .questions-buttons .button-workplace ~ .button-transparent, .form-funding .questions-buttons .button-apply ~ .button-transparent, .form-funding .questions-buttons .button-prospectus ~ .button-transparent, .form-funding .questions-buttons .button-print ~ .button-transparent, .form-funding .questions-buttons .button-course ~ .button-transparent, .form-funding .questions-buttons .button-twitter ~ .button-transparent, .form-funding .questions-buttons .button-prospectus-download ~ .button-transparent, .form-funding .questions-buttons .button-prospectus-post ~ .button-transparent, .form-funding .questions-buttons .button-arrow ~ .button-transparent, .form-funding .questions-buttons .nav-horizontal a ~ .button-transparent, .nav-horizontal .form-funding .questions-buttons a ~ .button-transparent, .form-funding .questions-buttons .button ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-secondary ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-highlight-2 ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-highlight-3 ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-highlight-4 ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-highlight-5 ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-white ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-transparent ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-dotted-white ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-workplace ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-apply ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-prospectus ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-print ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-course ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-twitter ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-prospectus-download ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-prospectus-post ~ .button-outline-dark-blue, .form-funding .questions-buttons .button-arrow ~ .button-outline-dark-blue, .form-funding .questions-buttons .nav-horizontal a ~ .button-outline-dark-blue, .nav-horizontal .form-funding .questions-buttons a ~ .button-outline-dark-blue, .form-funding .questions-buttons .button ~ .button-dotted-white, .form-funding .questions-buttons .button-secondary ~ .button-dotted-white, .form-funding .questions-buttons .button-highlight-2 ~ .button-dotted-white, .form-funding .questions-buttons .button-highlight-3 ~ .button-dotted-white, .form-funding .questions-buttons .button-highlight-4 ~ .button-dotted-white, .form-funding .questions-buttons .button-highlight-5 ~ .button-dotted-white, .form-funding .questions-buttons .button-white ~ .button-dotted-white, .form-funding .questions-buttons .button-transparent ~ .button-dotted-white, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-dotted-white, .form-funding .questions-buttons .button-dotted-white ~ .button-dotted-white, .form-funding .questions-buttons .button-workplace ~ .button-dotted-white, .form-funding .questions-buttons .button-apply ~ .button-dotted-white, .form-funding .questions-buttons .button-prospectus ~ .button-dotted-white, .form-funding .questions-buttons .button-print ~ .button-dotted-white, .form-funding .questions-buttons .button-course ~ .button-dotted-white, .form-funding .questions-buttons .button-twitter ~ .button-dotted-white, .form-funding .questions-buttons .button-prospectus-download ~ .button-dotted-white, .form-funding .questions-buttons .button-prospectus-post ~ .button-dotted-white, .form-funding .questions-buttons .button-arrow ~ .button-dotted-white, .form-funding .questions-buttons .nav-horizontal a ~ .button-dotted-white, .nav-horizontal .form-funding .questions-buttons a ~ .button-dotted-white, .form-funding .questions-buttons .button ~ .button-workplace, .form-funding .questions-buttons .button-secondary ~ .button-workplace, .form-funding .questions-buttons .button-highlight-2 ~ .button-workplace, .form-funding .questions-buttons .button-highlight-3 ~ .button-workplace, .form-funding .questions-buttons .button-highlight-4 ~ .button-workplace, .form-funding .questions-buttons .button-highlight-5 ~ .button-workplace, .form-funding .questions-buttons .button-white ~ .button-workplace, .form-funding .questions-buttons .button-transparent ~ .button-workplace, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-workplace, .form-funding .questions-buttons .button-dotted-white ~ .button-workplace, .form-funding .questions-buttons .button-workplace ~ .button-workplace, .form-funding .questions-buttons .button-apply ~ .button-workplace, .form-funding .questions-buttons .button-prospectus ~ .button-workplace, .form-funding .questions-buttons .button-print ~ .button-workplace, .form-funding .questions-buttons .button-course ~ .button-workplace, .form-funding .questions-buttons .button-twitter ~ .button-workplace, .form-funding .questions-buttons .button-prospectus-download ~ .button-workplace, .form-funding .questions-buttons .button-prospectus-post ~ .button-workplace, .form-funding .questions-buttons .button-arrow ~ .button-workplace, .form-funding .questions-buttons .nav-horizontal a ~ .button-workplace, .nav-horizontal .form-funding .questions-buttons a ~ .button-workplace, .form-funding .questions-buttons .button ~ .button-apply, .form-funding .questions-buttons .button-secondary ~ .button-apply, .form-funding .questions-buttons .button-highlight-2 ~ .button-apply, .form-funding .questions-buttons .button-highlight-3 ~ .button-apply, .form-funding .questions-buttons .button-highlight-4 ~ .button-apply, .form-funding .questions-buttons .button-highlight-5 ~ .button-apply, .form-funding .questions-buttons .button-white ~ .button-apply, .form-funding .questions-buttons .button-transparent ~ .button-apply, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-apply, .form-funding .questions-buttons .button-dotted-white ~ .button-apply, .form-funding .questions-buttons .button-workplace ~ .button-apply, .form-funding .questions-buttons .button-apply ~ .button-apply, .form-funding .questions-buttons .button-prospectus ~ .button-apply, .form-funding .questions-buttons .button-print ~ .button-apply, .form-funding .questions-buttons .button-course ~ .button-apply, .form-funding .questions-buttons .button-twitter ~ .button-apply, .form-funding .questions-buttons .button-prospectus-download ~ .button-apply, .form-funding .questions-buttons .button-prospectus-post ~ .button-apply, .form-funding .questions-buttons .button-arrow ~ .button-apply, .form-funding .questions-buttons .nav-horizontal a ~ .button-apply, .nav-horizontal .form-funding .questions-buttons a ~ .button-apply, .form-funding .questions-buttons .button ~ .button-prospectus, .form-funding .questions-buttons .button-secondary ~ .button-prospectus, .form-funding .questions-buttons .button-highlight-2 ~ .button-prospectus, .form-funding .questions-buttons .button-highlight-3 ~ .button-prospectus, .form-funding .questions-buttons .button-highlight-4 ~ .button-prospectus, .form-funding .questions-buttons .button-highlight-5 ~ .button-prospectus, .form-funding .questions-buttons .button-white ~ .button-prospectus, .form-funding .questions-buttons .button-transparent ~ .button-prospectus, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-prospectus, .form-funding .questions-buttons .button-dotted-white ~ .button-prospectus, .form-funding .questions-buttons .button-workplace ~ .button-prospectus, .form-funding .questions-buttons .button-apply ~ .button-prospectus, .form-funding .questions-buttons .button-prospectus ~ .button-prospectus, .form-funding .questions-buttons .button-print ~ .button-prospectus, .form-funding .questions-buttons .button-course ~ .button-prospectus, .form-funding .questions-buttons .button-twitter ~ .button-prospectus, .form-funding .questions-buttons .button-prospectus-download ~ .button-prospectus, .form-funding .questions-buttons .button-prospectus-post ~ .button-prospectus, .form-funding .questions-buttons .button-arrow ~ .button-prospectus, .form-funding .questions-buttons .nav-horizontal a ~ .button-prospectus, .nav-horizontal .form-funding .questions-buttons a ~ .button-prospectus, .form-funding .questions-buttons .button ~ .button-print, .form-funding .questions-buttons .button-secondary ~ .button-print, .form-funding .questions-buttons .button-highlight-2 ~ .button-print, .form-funding .questions-buttons .button-highlight-3 ~ .button-print, .form-funding .questions-buttons .button-highlight-4 ~ .button-print, .form-funding .questions-buttons .button-highlight-5 ~ .button-print, .form-funding .questions-buttons .button-white ~ .button-print, .form-funding .questions-buttons .button-transparent ~ .button-print, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-print, .form-funding .questions-buttons .button-dotted-white ~ .button-print, .form-funding .questions-buttons .button-workplace ~ .button-print, .form-funding .questions-buttons .button-apply ~ .button-print, .form-funding .questions-buttons .button-prospectus ~ .button-print, .form-funding .questions-buttons .button-print ~ .button-print, .form-funding .questions-buttons .button-course ~ .button-print, .form-funding .questions-buttons .button-twitter ~ .button-print, .form-funding .questions-buttons .button-prospectus-download ~ .button-print, .form-funding .questions-buttons .button-prospectus-post ~ .button-print, .form-funding .questions-buttons .button-arrow ~ .button-print, .form-funding .questions-buttons .nav-horizontal a ~ .button-print, .nav-horizontal .form-funding .questions-buttons a ~ .button-print, .form-funding .questions-buttons .button ~ .button-course, .form-funding .questions-buttons .button-secondary ~ .button-course, .form-funding .questions-buttons .button-highlight-2 ~ .button-course, .form-funding .questions-buttons .button-highlight-3 ~ .button-course, .form-funding .questions-buttons .button-highlight-4 ~ .button-course, .form-funding .questions-buttons .button-highlight-5 ~ .button-course, .form-funding .questions-buttons .button-white ~ .button-course, .form-funding .questions-buttons .button-transparent ~ .button-course, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-course, .form-funding .questions-buttons .button-dotted-white ~ .button-course, .form-funding .questions-buttons .button-workplace ~ .button-course, .form-funding .questions-buttons .button-apply ~ .button-course, .form-funding .questions-buttons .button-prospectus ~ .button-course, .form-funding .questions-buttons .button-print ~ .button-course, .form-funding .questions-buttons .button-course ~ .button-course, .form-funding .questions-buttons .button-twitter ~ .button-course, .form-funding .questions-buttons .button-prospectus-download ~ .button-course, .form-funding .questions-buttons .button-prospectus-post ~ .button-course, .form-funding .questions-buttons .button-arrow ~ .button-course, .form-funding .questions-buttons .nav-horizontal a ~ .button-course, .nav-horizontal .form-funding .questions-buttons a ~ .button-course, .form-funding .questions-buttons .button ~ .button-twitter, .form-funding .questions-buttons .button-secondary ~ .button-twitter, .form-funding .questions-buttons .button-highlight-2 ~ .button-twitter, .form-funding .questions-buttons .button-highlight-3 ~ .button-twitter, .form-funding .questions-buttons .button-highlight-4 ~ .button-twitter, .form-funding .questions-buttons .button-highlight-5 ~ .button-twitter, .form-funding .questions-buttons .button-white ~ .button-twitter, .form-funding .questions-buttons .button-transparent ~ .button-twitter, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-twitter, .form-funding .questions-buttons .button-dotted-white ~ .button-twitter, .form-funding .questions-buttons .button-workplace ~ .button-twitter, .form-funding .questions-buttons .button-apply ~ .button-twitter, .form-funding .questions-buttons .button-prospectus ~ .button-twitter, .form-funding .questions-buttons .button-print ~ .button-twitter, .form-funding .questions-buttons .button-course ~ .button-twitter, .form-funding .questions-buttons .button-twitter ~ .button-twitter, .form-funding .questions-buttons .button-prospectus-download ~ .button-twitter, .form-funding .questions-buttons .button-prospectus-post ~ .button-twitter, .form-funding .questions-buttons .button-arrow ~ .button-twitter, .form-funding .questions-buttons .nav-horizontal a ~ .button-twitter, .nav-horizontal .form-funding .questions-buttons a ~ .button-twitter, .form-funding .questions-buttons .button ~ .button-prospectus-download, .form-funding .questions-buttons .button-secondary ~ .button-prospectus-download, .form-funding .questions-buttons .button-highlight-2 ~ .button-prospectus-download, .form-funding .questions-buttons .button-highlight-3 ~ .button-prospectus-download, .form-funding .questions-buttons .button-highlight-4 ~ .button-prospectus-download, .form-funding .questions-buttons .button-highlight-5 ~ .button-prospectus-download, .form-funding .questions-buttons .button-white ~ .button-prospectus-download, .form-funding .questions-buttons .button-transparent ~ .button-prospectus-download, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-prospectus-download, .form-funding .questions-buttons .button-dotted-white ~ .button-prospectus-download, .form-funding .questions-buttons .button-workplace ~ .button-prospectus-download, .form-funding .questions-buttons .button-apply ~ .button-prospectus-download, .form-funding .questions-buttons .button-prospectus ~ .button-prospectus-download, .form-funding .questions-buttons .button-print ~ .button-prospectus-download, .form-funding .questions-buttons .button-course ~ .button-prospectus-download, .form-funding .questions-buttons .button-twitter ~ .button-prospectus-download, .form-funding .questions-buttons .button-prospectus-download ~ .button-prospectus-download, .form-funding .questions-buttons .button-prospectus-post ~ .button-prospectus-download, .form-funding .questions-buttons .button-arrow ~ .button-prospectus-download, .form-funding .questions-buttons .nav-horizontal a ~ .button-prospectus-download, .nav-horizontal .form-funding .questions-buttons a ~ .button-prospectus-download, .form-funding .questions-buttons .button ~ .button-prospectus-post, .form-funding .questions-buttons .button-secondary ~ .button-prospectus-post, .form-funding .questions-buttons .button-highlight-2 ~ .button-prospectus-post, .form-funding .questions-buttons .button-highlight-3 ~ .button-prospectus-post, .form-funding .questions-buttons .button-highlight-4 ~ .button-prospectus-post, .form-funding .questions-buttons .button-highlight-5 ~ .button-prospectus-post, .form-funding .questions-buttons .button-white ~ .button-prospectus-post, .form-funding .questions-buttons .button-transparent ~ .button-prospectus-post, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-prospectus-post, .form-funding .questions-buttons .button-dotted-white ~ .button-prospectus-post, .form-funding .questions-buttons .button-workplace ~ .button-prospectus-post, .form-funding .questions-buttons .button-apply ~ .button-prospectus-post, .form-funding .questions-buttons .button-prospectus ~ .button-prospectus-post, .form-funding .questions-buttons .button-print ~ .button-prospectus-post, .form-funding .questions-buttons .button-course ~ .button-prospectus-post, .form-funding .questions-buttons .button-twitter ~ .button-prospectus-post, .form-funding .questions-buttons .button-prospectus-download ~ .button-prospectus-post, .form-funding .questions-buttons .button-prospectus-post ~ .button-prospectus-post, .form-funding .questions-buttons .button-arrow ~ .button-prospectus-post, .form-funding .questions-buttons .nav-horizontal a ~ .button-prospectus-post, .nav-horizontal .form-funding .questions-buttons a ~ .button-prospectus-post, .form-funding .questions-buttons .button ~ .button-arrow, .form-funding .questions-buttons .button-secondary ~ .button-arrow, .form-funding .questions-buttons .button-highlight-2 ~ .button-arrow, .form-funding .questions-buttons .button-highlight-3 ~ .button-arrow, .form-funding .questions-buttons .button-highlight-4 ~ .button-arrow, .form-funding .questions-buttons .button-highlight-5 ~ .button-arrow, .form-funding .questions-buttons .button-white ~ .button-arrow, .form-funding .questions-buttons .button-transparent ~ .button-arrow, .form-funding .questions-buttons .button-outline-dark-blue ~ .button-arrow, .form-funding .questions-buttons .button-dotted-white ~ .button-arrow, .form-funding .questions-buttons .button-workplace ~ .button-arrow, .form-funding .questions-buttons .button-apply ~ .button-arrow, .form-funding .questions-buttons .button-prospectus ~ .button-arrow, .form-funding .questions-buttons .button-print ~ .button-arrow, .form-funding .questions-buttons .button-course ~ .button-arrow, .form-funding .questions-buttons .button-twitter ~ .button-arrow, .form-funding .questions-buttons .button-prospectus-download ~ .button-arrow, .form-funding .questions-buttons .button-prospectus-post ~ .button-arrow, .form-funding .questions-buttons .button-arrow ~ .button-arrow, .form-funding .questions-buttons .nav-horizontal a ~ .button-arrow, .nav-horizontal .form-funding .questions-buttons a ~ .button-arrow, .form-funding .questions-buttons .nav-horizontal .button ~ a, .nav-horizontal .form-funding .questions-buttons .button ~ a, .form-funding .questions-buttons .nav-horizontal .button-secondary ~ a, .nav-horizontal .form-funding .questions-buttons .button-secondary ~ a, .form-funding .questions-buttons .nav-horizontal .button-highlight-2 ~ a, .nav-horizontal .form-funding .questions-buttons .button-highlight-2 ~ a, .form-funding .questions-buttons .nav-horizontal .button-highlight-3 ~ a, .nav-horizontal .form-funding .questions-buttons .button-highlight-3 ~ a, .form-funding .questions-buttons .nav-horizontal .button-highlight-4 ~ a, .nav-horizontal .form-funding .questions-buttons .button-highlight-4 ~ a, .form-funding .questions-buttons .nav-horizontal .button-highlight-5 ~ a, .nav-horizontal .form-funding .questions-buttons .button-highlight-5 ~ a, .form-funding .questions-buttons .nav-horizontal .button-white ~ a, .nav-horizontal .form-funding .questions-buttons .button-white ~ a, .form-funding .questions-buttons .nav-horizontal .button-transparent ~ a, .nav-horizontal .form-funding .questions-buttons .button-transparent ~ a, .form-funding .questions-buttons .nav-horizontal .button-outline-dark-blue ~ a, .nav-horizontal .form-funding .questions-buttons .button-outline-dark-blue ~ a, .form-funding .questions-buttons .nav-horizontal .button-dotted-white ~ a, .nav-horizontal .form-funding .questions-buttons .button-dotted-white ~ a, .form-funding .questions-buttons .nav-horizontal .button-workplace ~ a, .nav-horizontal .form-funding .questions-buttons .button-workplace ~ a, .form-funding .questions-buttons .nav-horizontal .button-apply ~ a, .nav-horizontal .form-funding .questions-buttons .button-apply ~ a, .form-funding .questions-buttons .nav-horizontal .button-prospectus ~ a, .nav-horizontal .form-funding .questions-buttons .button-prospectus ~ a, .form-funding .questions-buttons .nav-horizontal .button-print ~ a, .nav-horizontal .form-funding .questions-buttons .button-print ~ a, .form-funding .questions-buttons .nav-horizontal .button-course ~ a, .nav-horizontal .form-funding .questions-buttons .button-course ~ a, .form-funding .questions-buttons .nav-horizontal .button-twitter ~ a, .nav-horizontal .form-funding .questions-buttons .button-twitter ~ a, .form-funding .questions-buttons .nav-horizontal .button-prospectus-download ~ a, .nav-horizontal .form-funding .questions-buttons .button-prospectus-download ~ a, .form-funding .questions-buttons .nav-horizontal .button-prospectus-post ~ a, .nav-horizontal .form-funding .questions-buttons .button-prospectus-post ~ a, .form-funding .questions-buttons .nav-horizontal .button-arrow ~ a, .nav-horizontal .form-funding .questions-buttons .button-arrow ~ a, .form-funding .questions-buttons .nav-horizontal a ~ a, .nav-horizontal .form-funding .questions-buttons a ~ a {
  margin-left: 2rem;
}
.form-funding .form-funding_fee h3 {
  color: #000000;
  margin: 0 0 0.4rem !important;
}
.form-funding .form-funding_questions ~ * {
  margin-top: 2rem;
}
.form-funding .questions-contact-inputs .colour-highlight {
  font-size: 1.8rem;
}
.form-funding .questions-contact-inputs .colour-highlight + .form-field, .form-funding .questions-contact-inputs .main-col .content-block .form-query .colour-highlight + .form-field {
  margin-top: 1.6rem;
}
.form-funding + .form-funding {
  margin-top: 2rem;
}

/* Forms */
/*
	======
	Events
	======
*/
.event-page.event-register .sharethis > p {
  max-width: 114rem;
}
.event-page.event-register .page-date {
  text-align: left;
}

.event-hangup {
  position: fixed;
  top: 30%;
  right: 0;
  width: 3rem;
  display: none;
  -ms-flex-direction: column;
      flex-direction: column;
  padding-bottom: 8rem;
  overflow: hidden;
  z-index: 200;
}
.event-hangup .time {
  width: 3rem;
  background: #000000;
  color: #FFFFFF;
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  transform: rotate(180deg);
  transform-origin: center;
  padding: 2rem 0;
}
.event-hangup .time .date {
  line-height: 1.15625;
  text-transform: none;
  margin-bottom: 5px;
}
.event-hangup .text {
  width: 3rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  background: rgba(0, 0, 0, 0.7);
  transform: rotate(180deg);
  transform-origin: center;
  padding: 2rem 0;
  -ms-flex-order: -1;
      order: -1;
}
.event-hangup .text h2 {
  font-size: 1.6rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #FFFFFF;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 769px) {
  .event-hangup {
    width: 6rem;
    padding-bottom: 0;
    top: 20%;
  }
  .event-hangup .time {
    width: 6rem;
    height: 6rem;
    font-size: 2rem;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    transform: rotate(0deg);
    padding: 0;
  }
  .event-hangup .time .date {
    font-size: 2.4rem;
    line-height: 1.1666666667;
    text-transform: none;
    margin-bottom: 0;
  }
  .event-hangup .text {
    width: 6rem;
    padding: 2rem 0;
    -ms-flex-order: 0;
        order: 0;
    max-height: 32rem;
  }
  .event-hangup .text h2 {
    font-size: 2rem;
    max-height: 28rem;
  }
}
@media (min-width: 1300px) {
  .event-hangup {
    width: 8rem;
    display: -ms-flexbox;
    display: flex;
  }
  .event-hangup .time {
    width: 8rem;
    height: 8rem;
  }
  .event-hangup .time .date {
    font-size: 3.2rem;
    line-height: 1.15625;
  }
  .event-hangup .text {
    width: 8rem;
    max-height: none;
  }
  .event-hangup .text h2 {
    font-size: 3.4rem;
    max-height: none;
  }
}

.events .filter {
  padding-left: 2rem;
  padding-right: 2rem;
}
.events .filter + .events-list {
  padding-left: 2rem;
  padding-right: 2rem;
}
.events .filter-mobile {
  overflow: hidden;
  padding: 2rem;
  margin-left: -5px;
  margin-right: -5px;
}
.events .filter-mobile .filter_field {
  float: left;
  padding-left: 5px;
  padding-right: 5px;
  width: 50%;
}
@media (max-width: 767px) {
  .events .filter-mobile + .filter {
    display: none;
  }
}
@media (max-width: 767px) {
  .events .filter-mobile ~ .listing {
    margin-top: 10px;
  }
}
@media (min-width: 1201px) {
  .events .filter {
    padding-left: 0;
    padding-right: 0;
  }
  .events .filter + .events-list {
    padding-left: 0;
    padding-right: 0;
  }
}

.upcoming-events .card-block-content .upcoming-event-card:nth-child(4n+1) .text-thumbnail, .events .events-list .upcoming-event-card:nth-child(4n+1) .text-thumbnail {
  background-image: linear-gradient(359.95deg, #D60B52 -0.77%, #D60B52 15.02%, #DA1E4B 30.43%, #E35139 61.83%, #F1981F 101.27%);
}
.upcoming-events .card-block-content .upcoming-event-card:nth-child(4n+2) .text-thumbnail, .events .events-list .upcoming-event-card:nth-child(4n+2) .text-thumbnail {
  background-image: linear-gradient(0deg, #A3C1D3 -1.45%, #A3C1D3 12.35%, #C99BC0 57.94%, #DF84B5 82.88%, #DF84B5 100.92%);
}
.upcoming-events .card-block-content .upcoming-event-card:nth-child(4n+3) .text-thumbnail, .events .events-list .upcoming-event-card:nth-child(4n+3) .text-thumbnail {
  background-image: linear-gradient(17.78deg, #95C11F 21.26%, #7BBA54 35.05%, #56B19F 56.07%, #3FABCF 71.11%, #36A9E1 78.6%);
}
.upcoming-events .card-block-content .upcoming-event-card:nth-child(4n+4) .text-thumbnail, .events .events-list .upcoming-event-card:nth-child(4n+4) .text-thumbnail {
  background-image: linear-gradient(180deg, #D56221 0%, #D76824 3.04%, #DC8436 21.13%, #E19946 39.58%, #E4A852 58.3%, #E6B059 77.43%, #E6B35C 97.62%);
}

/* Events */
/*
	====
	News
	====
*/
.news.filter {
  padding-left: 2rem;
  padding-right: 2rem;
}
.news.filter a, .news.filter span {
  min-width: 10rem;
}
.news.filter + .news-list {
  padding-left: 2rem;
  padding-right: 2rem;
}
@media (min-width: 1201px) {
  .news.filter {
    padding-left: 0;
    padding-right: 0;
  }
  .news.filter + .news-list {
    padding-left: 0;
    padding-right: 0;
  }
}

/* News */
/*
	=======
	Courses
	=======
*/
.main-col .content-block .course-search-section .sortby, .main-col .content-block .course-search-block .sortby, .course-search-tools .sortby {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.main-col .content-block .course-search-section .sortby label, .main-col .content-block .course-search-block .sortby label, .course-search-tools .sortby label {
  font-size: 1.4rem;
  font-weight: 700;
  height: auto;
  color: #213462;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.main-col .content-block .course-search-section .sortby select, .main-col .content-block .course-search-block .sortby select, .course-search-tools .sortby select {
  font-size: 1.4rem;
  color: #213462;
  height: 5rem;
  border: none;
  box-shadow: none;
  background-color: transparent;
  background-position: center right;
  padding-right: 2.5rem;
}
@media (min-width: 769px) {
  .main-col .content-block .course-search-section .sortby label, .main-col .content-block .course-search-section .sortby select, .main-col .content-block .course-search-block .sortby label, .main-col .content-block .course-search-block .sortby select, .course-search-tools .sortby label, .course-search-tools .sortby select {
    font-size: 1.8rem;
  }
}

.course-search-tools {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-bottom: 3rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.course-search-tools > p {
  margin: 1.2rem 0 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.course-search-tools .course-results-summary {
  color: #000000;
  font-size: 1.6rem;
  font-weight: 700;
  padding-right: 2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.course-search-tools .course-results-summary .total {
  color: #003399;
  text-decoration: underline;
}
.course-search-tools .course-results-summary + .pagination {
  margin-top: 0;
}
.course-search-tools .pagination {
  display: none;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
@media (min-width: 769px) {
  .course-search-tools .course-results-summary {
    font-size: 2rem;
    padding-right: 6rem;
  }
  .course-search-tools .pagination {
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 1201px) {
  .course-search-tools {
    margin-bottom: 4rem;
  }
}

.course-block {
  background-color: #777;
  margin: 0 0 20px 0;
  padding: 10px 10px 5px 20px;
}
@media (min-width: 550px) {
  .course-block {
    padding-left: 10px;
  }
}
.course-block .details {
  margin-top: 10px;
}
@media (min-width: 550px) {
  .course-block .details {
    float: left;
  }
}
.course-block .details .type {
  border-right: 1px solid #fff;
}
.course-block,
.course-block h2 {
  color: #FFF;
}
.course-block h2 {
  margin-bottom: 0;
  line-height: 1.1;
}
@media (max-width: 549px) {
  .course-block h2 {
    font-size: 1.5384615385em;
  }
}
.course-block h2 a {
  color: #FFF;
  text-decoration: none;
}
.course-block h2 a:hover, .course-block h2 a:focus {
  outline: none;
  text-decoration: underline;
}
.course-block .type {
  margin: 0 10px 5px 0;
  padding-right: 10px;
  font-size: 1.5384615385em;
  font-weight: 800;
}
@media (max-width: 549px) {
  .course-block .type {
    border: 0;
    display: block;
    margin-right: 0;
    font-size: 1.3846153846em;
  }
}
.course-block .venue,
.course-block .time {
  background-repeat: no-repeat;
  background-position: left center;
  margin: 0 0 5px 0;
  padding: 0 20px 0 30px;
  font-size: 1.3846153846em;
}
@media (max-width: 549px) {
  .course-block .venue,
.course-block .time {
    display: block;
    font-size: 1.2307692308em;
  }
}
.course-block .venue {
  background-image: url(/site/images/icon/white/home.png);
}
.course-block .time {
  background-image: url(/site/images/icon/white/clock.png);
}
.course-block .buttons {
  margin-top: 10px;
}
@media (min-width: 550px) {
  .course-block .buttons {
    float: right;
    text-align: right;
  }
}
.course-block .button-white {
  border: 1px solid #fff;
  color: #777;
  margin: 0 0 5px 5px;
}
@media (max-width: 549px) {
  .course-block .button-white {
    display: block;
    margin-left: 0;
  }
}
.course-block .button-white:hover {
  background-color: #777;
  color: #FFF;
}
.course-block .button-transparent {
  margin: 0 0 5px 5px;
}
@media (max-width: 549px) {
  .course-block .button-transparent {
    display: block;
    margin-left: 0;
  }
}
.course-block .button-apply {
  background-image: url(/site/images/icon/grey/apply.svg);
}
.no-svg .course-block .button-apply {
  background-image: url(/site/images/icon/grey/apply.png);
}
.course-block .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .course-block .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.course-block .button-course {
  background-image: url(/site/images/icon/grey/course.svg);
}
.no-svg .course-block .button-course {
  background-image: url(/site/images/icon/grey/course.png);
}
.course-block .button-course:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .course-block .button-course:hover {
  background-image: url(/site/images/icon/white/course.png);
}
.course-block .button-prospectus {
  background-image: url(/site/images/icon/grey/prospectus-builder.svg);
}
.no-svg .course-block .button-prospectus {
  background-image: url(/site/images/icon/grey/prospectus-builder.png);
}
.course-block .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
}
.no-svg .course-block .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}
.course-block[data-coursetype*=Full-Time] {
  background: #3D0051;
}
.course-block[data-coursetype*=Full-Time] .button-white {
  border: 1px solid #fff;
  color: #3D0051;
}
.course-block[data-coursetype*=Full-Time] .button-white:hover {
  background-color: #3D0051;
  color: #FFF;
}
.course-block[data-coursetype*=Full-Time] span.button-white:hover {
  background-color: #fff;
  color: #3D0051;
}
.course-block[data-coursetype*=Full-Time] span.button-transparent:hover {
  background-color: #3D0051;
  color: #fff;
}
.course-block[data-coursetype*=Full-Time] .button-apply {
  background-image: url(/site/images/icon/highlight-6/apply.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-apply {
  background-image: url(/site/images/icon/highlight-6/apply.png);
}
.course-block[data-coursetype*=Full-Time] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.course-block[data-coursetype*=Full-Time] .button-course {
  background-image: url(/site/images/icon/highlight-6/course.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-course {
  background-image: url(/site/images/icon/highlight-6/course.png);
}
.course-block[data-coursetype*=Full-Time] .button-course:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-course:hover {
  background-image: url(/site/images/icon/white/course.png);
}
.course-block[data-coursetype*=Full-Time] .button-prospectus {
  background-image: url(/site/images/icon/highlight-6/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-prospectus {
  background-image: url(/site/images/icon/highlight-6/prospectus-builder.png);
}
.course-block[data-coursetype*=Full-Time] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Full-Time] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}
.course-block[data-coursetype*=Part-Time], .course-block[data-coursetype*="Higher Education"] {
  background: #8C0000;
}
.course-block[data-coursetype*=Part-Time] .button-white, .course-block[data-coursetype*="Higher Education"] .button-white {
  border: 1px solid #fff;
  color: #8C0000;
}
.course-block[data-coursetype*=Part-Time] .button-white:hover, .course-block[data-coursetype*="Higher Education"] .button-white:hover {
  background-color: #8C0000;
  color: #FFF;
}
.course-block[data-coursetype*=Part-Time] span.button-white:hover, .course-block[data-coursetype*="Higher Education"] span.button-white:hover {
  background-color: #fff;
  color: #8C0000;
}
.course-block[data-coursetype*=Part-Time] span.button-transparent:hover, .course-block[data-coursetype*="Higher Education"] span.button-transparent:hover {
  background-color: #8C0000;
  color: #fff;
}
.course-block[data-coursetype*=Part-Time] .button-apply, .course-block[data-coursetype*="Higher Education"] .button-apply {
  background-image: url(/site/images/icon/highlight-4/apply.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-apply, .no-svg .course-block[data-coursetype*="Higher Education"] .button-apply {
  background-image: url(/site/images/icon/highlight-4/apply.png);
}
.course-block[data-coursetype*=Part-Time] .button-apply:hover, .course-block[data-coursetype*="Higher Education"] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-apply:hover, .no-svg .course-block[data-coursetype*="Higher Education"] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.course-block[data-coursetype*=Part-Time] .button-course, .course-block[data-coursetype*="Higher Education"] .button-course {
  background-image: url(/site/images/icon/highlight-4/course.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-course, .no-svg .course-block[data-coursetype*="Higher Education"] .button-course {
  background-image: url(/site/images/icon/highlight-4/course.png);
}
.course-block[data-coursetype*=Part-Time] .button-course:hover, .course-block[data-coursetype*="Higher Education"] .button-course:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-course:hover, .no-svg .course-block[data-coursetype*="Higher Education"] .button-course:hover {
  background-image: url(/site/images/icon/white/course.png);
}
.course-block[data-coursetype*=Part-Time] .button-prospectus, .course-block[data-coursetype*="Higher Education"] .button-prospectus {
  background-image: url(/site/images/icon/highlight-4/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-prospectus, .no-svg .course-block[data-coursetype*="Higher Education"] .button-prospectus {
  background-image: url(/site/images/icon/highlight-4/prospectus-builder.png);
}
.course-block[data-coursetype*=Part-Time] .button-prospectus:hover, .course-block[data-coursetype*="Higher Education"] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Part-Time] .button-prospectus:hover, .no-svg .course-block[data-coursetype*="Higher Education"] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}
.course-block[data-coursetype*=Apprenticeship] {
  background: #004000;
}
.course-block[data-coursetype*=Apprenticeship] .button-white {
  border: 1px solid #fff;
  color: #004000;
}
.course-block[data-coursetype*=Apprenticeship] .button-white:hover {
  background-color: #004000;
  color: #FFF;
}
.course-block[data-coursetype*=Apprenticeship] span.button-white:hover {
  background-color: #fff;
  color: #004000;
}
.course-block[data-coursetype*=Apprenticeship] span.button-transparent:hover {
  background-color: #004000;
  color: #fff;
}
.course-block[data-coursetype*=Apprenticeship] .button-apply {
  background-image: url(/site/images/icon/course-3/apply.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-apply {
  background-image: url(/site/images/icon/course-3/apply.png);
}
.course-block[data-coursetype*=Apprenticeship] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.course-block[data-coursetype*=Apprenticeship] .button-course {
  background-image: url(/site/images/icon/course-3/course.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-course {
  background-image: url(/site/images/icon/course-3/course.png);
}
.course-block[data-coursetype*=Apprenticeship] .button-course:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-course:hover {
  background-image: url(/site/images/icon/white/course.png);
}
.course-block[data-coursetype*=Apprenticeship] .button-prospectus {
  background-image: url(/site/images/icon/course-3/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-prospectus {
  background-image: url(/site/images/icon/course-3/prospectus-builder.png);
}
.course-block[data-coursetype*=Apprenticeship] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
}
.no-svg .course-block[data-coursetype*=Apprenticeship] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}
.course-block.is-workplace {
  background-image: url(/site/images/icon/white/workplace.svg);
  background-position: 95% center;
  background-size: 19px 16px;
  padding-right: 46px;
}
.no-svg .course-block.is-workplace {
  background-image: url(/site/images/icon/white/workplace.png);
}
.course-block.is-workplace:hover {
  background-image: url(/site/images/icon/grey/workplace.svg);
}
.no-svg .course-block.is-workplace:hover {
  background-image: url(/site/images/icon/grey/workplace.png);
}

.course-colour-leisure .courses .accordion-header {
  background-color: #A41346;
  color: #fff;
}
.course-colour-leisure .courses .accordion-header:after {
  background-color: #A41346;
}
.course-colour-leisure .courses .accordion-header h2 {
  color: #fff;
}
.course-colour-leisure .courses .accordion-header p:after {
  border-color: #A41346 transparent transparent transparent;
}
.course-colour-leisure .courses .course-block[data-coursetype*=Part-Time],
.course-colour-leisure .courses .course-block[data-coursetype*="Higher Education"] {
  background: 0;
}
.course-colour-leisure .courses .course-block[data-coursetype*=Part-Time] .type,
.course-colour-leisure .courses .course-block[data-coursetype*=Part-Time] .time,
.course-colour-leisure .courses .course-block[data-coursetype*=Part-Time] .buttons :first-child,
.course-colour-leisure .courses .course-block[data-coursetype*="Higher Education"] .type,
.course-colour-leisure .courses .course-block[data-coursetype*="Higher Education"] .time,
.course-colour-leisure .courses .course-block[data-coursetype*="Higher Education"] .buttons :first-child {
  display: none;
}
.course-colour-leisure .courses .course-block[data-coursetype*=Part-Time] .venue,
.course-colour-leisure .courses .course-block[data-coursetype*="Higher Education"] .venue {
  background-image: url(/site/images/icon/course-5/home.png);
}

.course-colour-leisure .course-block, .course-block[data-coursetype*=Leisure] {
  color: #A41346;
  border-bottom: 1px dashed #A41346;
  padding-bottom: 20px;
}
.course-colour-leisure .course-block h2 a, .course-block[data-coursetype*=Leisure] h2 a {
  color: #A41346;
}
.course-colour-leisure .course-block .button-white,
.course-colour-leisure .course-block .button-transparent, .course-block[data-coursetype*=Leisure] .button-white,
.course-block[data-coursetype*=Leisure] .button-transparent {
  border: 1px solid #A41346;
  color: #A41346;
}
.course-colour-leisure .course-block .button-white:hover,
.course-colour-leisure .course-block .button-transparent:hover, .course-block[data-coursetype*=Leisure] .button-white:hover,
.course-block[data-coursetype*=Leisure] .button-transparent:hover {
  background-color: #A41346;
  color: #FFF;
}
.course-colour-leisure .course-block span.button-white:hover, .course-block[data-coursetype*=Leisure] span.button-white:hover {
  background-color: #fff;
  color: #A41346;
}
.course-colour-leisure .course-block span.button-transparent:hover, .course-block[data-coursetype*=Leisure] span.button-transparent:hover {
  background-color: #fff;
  color: #A41346;
}
.course-colour-leisure .course-block .button-apply, .course-block[data-coursetype*=Leisure] .button-apply {
  background-image: url(/site/images/icon/course-5/apply.svg);
}
.no-svg .course-colour-leisure .course-block .button-apply, .no-svg .course-block[data-coursetype*=Leisure] .button-apply {
  background-image: url(/site/images/icon/course-5/apply.png);
}
.course-colour-leisure .course-block .button-apply:hover, .course-block[data-coursetype*=Leisure] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .course-colour-leisure .course-block .button-apply:hover, .no-svg .course-block[data-coursetype*=Leisure] .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.course-colour-leisure .course-block .button-course, .course-block[data-coursetype*=Leisure] .button-course {
  background-image: url(/site/images/icon/course-5/course.svg);
}
.no-svg .course-colour-leisure .course-block .button-course, .no-svg .course-block[data-coursetype*=Leisure] .button-course {
  background-image: url(/site/images/icon/course-5/course.png);
}
.course-colour-leisure .course-block .button-course:hover, .course-block[data-coursetype*=Leisure] .button-course:hover {
  background-image: url(/site/images/icon/white/course.svg);
}
.no-svg .course-colour-leisure .course-block .button-course:hover, .no-svg .course-block[data-coursetype*=Leisure] .button-course:hover {
  background-image: url(/site/images/icon/white/course.png);
}
.course-colour-leisure .course-block .button-prospectus, .course-block[data-coursetype*=Leisure] .button-prospectus {
  background-image: url(/site/images/icon/course-5/prospectus-builder.svg);
}
.no-svg .course-colour-leisure .course-block .button-prospectus, .no-svg .course-block[data-coursetype*=Leisure] .button-prospectus {
  background-image: url(/site/images/icon/course-5/prospectus-builder.png);
}
.course-colour-leisure .course-block .button-prospectus:hover, .course-block[data-coursetype*=Leisure] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.svg);
}
.no-svg .course-colour-leisure .course-block .button-prospectus:hover, .no-svg .course-block[data-coursetype*=Leisure] .button-prospectus:hover {
  background-image: url(/site/images/icon/white/prospectus-builder.png);
}

.course-key {
  background-color: #fff;
  border: 1px solid #777;
  box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.5);
  display: none;
  right: -206px;
  padding: 8px;
  position: fixed;
  text-transform: uppercase;
  top: 200px;
  transition: transform 0.3s;
  transform: translateX(0);
  -webkit-backface-visibility: hidden;
  width: 242px;
  z-index: 50;
}
@media (min-width: 768px) {
  .course-key {
    display: block;
  }
}
@media (min-width: 1502px) {
  .course-key {
    right: 10px;
  }
}
.course-key:hover, .course-key:focus, .course-key.show {
  transform: translateX(-210px);
  -webkit-backface-visibility: hidden;
}
@media (min-width: 1502px) {
  .course-key:hover, .course-key:focus, .course-key.show {
    transform: translateX(0);
    -webkit-backface-visibility: hidden;
  }
}
.course-key li {
  line-height: 1.5384615385;
  padding-bottom: 7px;
  padding-top: 7px;
}
.course-key li:before {
  background-color: #777;
  content: "";
  display: inline-block;
  height: 20px;
  margin-right: 12px;
  width: 20px;
  vertical-align: middle;
}
.course-key li + li {
  border-top: 1px dashed #777;
}
.course-key .full-time {
  color: #3D0051;
}
.course-key .full-time:before {
  background-color: #3D0051;
}
.course-key .part-time {
  color: #8C0000;
}
.course-key .part-time:before {
  background-color: #8C0000;
}
.course-key .apprenticeship {
  color: #004000;
}
.course-key .apprenticeship:before {
  background-color: #004000;
}
.course-key .workplace {
  color: #000;
}
.course-key .workplace:before {
  background-color: transparent;
  background-image: url(/site/images/icon/black/workplace.svg);
  background-position: center center;
}
.no-svg .course-key .workplace:before {
  background-image: url(/site/images/icon/black/workplace.png);
}

.tbl {
  width: 100%;
}
.tbl th,
.tbl td {
  border-style: solid;
  border-width: 1px;
  padding: 6px;
}

.tbl-course {
  width: 100%;
  border: none !important;
}
.tbl-course th, .tbl-course td {
  border: none !important;
  text-align: center;
}
.tbl-course th {
  background-color: #3D0051;
  color: #FFF;
  text-transform: uppercase;
}
.tbl-course td {
  background-color: rgba(61, 0, 81, 0.1);
  vertical-align: middle;
}
.tbl-course .button, .tbl-course .button-secondary, .tbl-course .button-highlight-2, .tbl-course .button-highlight-3, .tbl-course .button-highlight-4, .tbl-course .button-highlight-5, .tbl-course .button-white, .tbl-course .button-transparent, .tbl-course .button-outline-dark-blue, .tbl-course .button-dotted-white, .tbl-course .button-workplace, .tbl-course .button-apply, .tbl-course .button-prospectus, .tbl-course .button-print, .tbl-course .button-course, .tbl-course .button-twitter, .tbl-course .button-prospectus-download, .tbl-course .button-prospectus-post, .tbl-course .button-arrow, .tbl-course .nav-horizontal a, .nav-horizontal .tbl-course a {
  background-color: #000000;
  border-color: #000000;
}
.tbl-course .button:hover, .tbl-course .button-secondary:hover, .tbl-course .button-highlight-2:hover, .tbl-course .button-highlight-3:hover, .tbl-course .button-highlight-4:hover, .tbl-course .button-highlight-5:hover, .tbl-course .button-white:hover, .tbl-course .button-transparent:hover, .tbl-course .button-outline-dark-blue:hover, .tbl-course .button-dotted-white:hover, .tbl-course .button-workplace:hover, .tbl-course .button-apply:hover, .tbl-course .button-prospectus:hover, .tbl-course .button-print:hover, .tbl-course .button-course:hover, .tbl-course .button-twitter:hover, .tbl-course .button-prospectus-download:hover, .tbl-course .button-prospectus-post:hover, .tbl-course .button-arrow:hover, .tbl-course .nav-horizontal a:hover, .nav-horizontal .tbl-course a:hover {
  background-color: #FFF;
  color: #000000;
}
.tbl-course .cell-apply:before {
  display: none;
}
@media only screen and (max-width: 767px) {
  .tbl-course {
    display: none;
    height: 0;
    overflow: hidden;
  }
}

.course-opts .course-opts-title {
  display: none;
  margin-bottom: 0 !important;
  font-weight: 900;
  text-transform: uppercase;
  color: #213462;
}
.course-opts .course-opts-desc {
  display: none;
}
.course-opts .course-opts-list {
  display: none;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.course-opts .course-opt-item {
  padding: 2rem 1rem;
  margin-left: -1rem;
  margin-right: -1rem;
}
.course-opts .course-opt-item + .course-opt-item {
  border-top: 2px solid #CCCCCC;
}
@media only screen and (max-width: 767px) {
  .course-opts .course-opts-title, .course-opts .course-opts-list, .course-opts .course-opts-desc {
    display: block;
  }
  .course-opts .course-accordion-header {
    position: relative;
    display: block;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    text-decoration: none;
    cursor: pointer;
  }
  .course-opts .course-accordion-header h3 {
    font-size: 2rem;
    letter-spacing: -0.02em;
    line-height: 1.1;
    margin: 0 !important;
  }
  .course-opts .course-accordion-header h3:before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 0.4rem);
    right: 0;
    width: 1.2rem;
    height: 0.8rem;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMWw1IDUgNS01IiBzdHJva2U9IiM0NDQiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
    background-size: 12px 8px;
    transition: transform 0.2s linear;
  }
  .course-opts .course-accordion-header.open h3::before {
    transform: rotate(180deg);
  }
  .course-opts .course-accordion-content {
    position: relative;
    display: none;
  }
  .course-opts .course-accordion-content .info-list {
    margin: -0.5rem -0.75rem;
    padding-top: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .course-opts .course-accordion-content .info-list-item {
    padding: 0.5rem 0.75rem;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .course-opts .course-accordion-content .info-list-item p {
    font-size: 1.6rem;
  }
  .course-opts .course-accordion-content .info-list-item p.bold {
    font-weight: 700;
  }
  .course-opts .course-accordion-content .info-list-item p + p {
    margin-top: 0 !important;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    padding-top: 1.5rem;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth button, .course-opts .course-accordion-content .info-list-item.fullwidth .button-apply {
    display: block;
    width: 100%;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth .button-calculate {
    background-color: #000000;
    border-color: #000000;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth .button-calculate:hover {
    background-color: #FFF;
    color: #000000;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth.small-gap {
    padding-top: 0.5rem;
  }
  .course-opts .course-accordion-content .info-list-item.fullwidth:not(.small-gap) + .fullwidth {
    padding-top: 0.5rem;
  }
}

.theme-coursetype[data-coursetype=Full-Time] .course-careersblock {
  background-color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .course-careersblock .button-apply {
  color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .course-careersblock .button-apply:hover {
  color: #FFFFFF;
  background-color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .course-opts .button-apply, .theme-coursetype[data-coursetype=Full-Time] .tbl-course .button-apply {
  background-color: #3D0051;
  border-color: #3D0051;
  color: white;
  text-decoration: none;
}
.theme-coursetype[data-coursetype=Full-Time] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype=Full-Time] .tbl-course .button-apply:hover {
  background-color: #FFF;
  color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .course-opts .course-accordion-header h3 {
  color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .tbl-course th {
  background-color: #3D0051;
}
.theme-coursetype[data-coursetype=Full-Time] .tbl-course td {
  background-color: rgba(61, 0, 81, 0.1);
}
.theme-coursetype[data-coursetype*=Part-Time] .course-careersblock, .theme-coursetype[data-coursetype*="Higher Education"] .course-careersblock {
  background-color: #8C0000;
}
.theme-coursetype[data-coursetype*=Part-Time] .course-careersblock .button-apply, .theme-coursetype[data-coursetype*="Higher Education"] .course-careersblock .button-apply {
  color: #8C0000;
}
.theme-coursetype[data-coursetype*=Part-Time] .course-careersblock .button-apply:hover, .theme-coursetype[data-coursetype*="Higher Education"] .course-careersblock .button-apply:hover {
  background-color: #8C0000;
  color: #FFFFFF;
}
.theme-coursetype[data-coursetype*=Part-Time] .course-opts .button-apply, .theme-coursetype[data-coursetype*=Part-Time] .tbl-course .button-apply, .theme-coursetype[data-coursetype*="Higher Education"] .course-opts .button-apply, .theme-coursetype[data-coursetype*="Higher Education"] .tbl-course .button-apply {
  background-color: #8C0000;
  border-color: #8C0000;
  color: white;
  text-decoration: none;
}
.theme-coursetype[data-coursetype*=Part-Time] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype*=Part-Time] .tbl-course .button-apply:hover, .theme-coursetype[data-coursetype*="Higher Education"] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype*="Higher Education"] .tbl-course .button-apply:hover {
  background-color: #FFF;
  color: #8C0000;
}
.theme-coursetype[data-coursetype*=Part-Time] .course-opts .course-accordion-header h3, .theme-coursetype[data-coursetype*="Higher Education"] .course-opts .course-accordion-header h3 {
  color: #8C0000;
}
.theme-coursetype[data-coursetype*=Part-Time] .tbl-course th, .theme-coursetype[data-coursetype*="Higher Education"] .tbl-course th {
  background-color: #8C0000;
}
.theme-coursetype[data-coursetype*=Part-Time] .tbl-course td, .theme-coursetype[data-coursetype*="Higher Education"] .tbl-course td {
  background-color: rgba(140, 0, 0, 0.1);
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-careersblock {
  background-color: #004000;
  border-color: #004000;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-careersblock .button-apply {
  color: #004000;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-careersblock .button-apply:hover {
  background-color: #004000;
  color: #FFFFFF;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-opts .button-apply, .theme-coursetype[data-coursetype*=Apprenticeship] .tbl-course .button-apply {
  background-color: #004000;
  border-color: #004000;
  color: white;
  text-decoration: none;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype*=Apprenticeship] .tbl-course .button-apply:hover {
  background-color: #FFF;
  color: #004000;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .course-opts .course-accordion-header h3, .theme-coursetype[data-coursetype*=Apprenticeship] .tbl-course .course-accordion-header h3 {
  color: #004000;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .tbl-course th {
  background-color: #004000;
}
.theme-coursetype[data-coursetype*=Apprenticeship] .tbl-course td {
  background-color: rgba(0, 64, 0, 0.1);
}
.theme-coursetype[data-coursetype*=leisure] .course-careersblock, .theme-coursetype[data-coursetype*=Leisure] .course-careersblock {
  background-color: #A41346;
  border-color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .course-careersblock .button-apply, .theme-coursetype[data-coursetype*=Leisure] .course-careersblock .button-apply {
  color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .course-careersblock .button-apply:hover, .theme-coursetype[data-coursetype*=Leisure] .course-careersblock .button-apply:hover {
  background-color: #A41346;
  color: #FFFFFF;
}
.theme-coursetype[data-coursetype*=leisure] .banner-block, .theme-coursetype[data-coursetype*=Leisure] .banner-block {
  background-color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .banner-block .button-white, .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-white {
  color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .banner-block .button-white:hover, .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-white:hover {
  background-color: #A41346;
  color: #FFF;
}
.theme-coursetype[data-coursetype*=leisure] .banner-block .button-transparent:hover, .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-transparent:hover {
  color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .banner-block .button-apply, .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-apply {
  background-image: url(/site/images/icon/course-5/apply.svg);
}
.no-svg .theme-coursetype[data-coursetype*=leisure] .banner-block .button-apply, .no-svg .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-apply {
  background-image: url(/site/images/icon/course-5/apply.png);
}
.theme-coursetype[data-coursetype*=leisure] .banner-block .button-apply:hover, .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.svg);
}
.no-svg .theme-coursetype[data-coursetype*=leisure] .banner-block .button-apply:hover, .no-svg .theme-coursetype[data-coursetype*=Leisure] .banner-block .button-apply:hover {
  background-image: url(/site/images/icon/white/apply.png);
}
.theme-coursetype[data-coursetype*=leisure] .course-opts .button-apply, .theme-coursetype[data-coursetype*=leisure] .tbl-course .button-apply, .theme-coursetype[data-coursetype*=Leisure] .course-opts .button-apply, .theme-coursetype[data-coursetype*=Leisure] .tbl-course .button-apply {
  background-color: #A41346;
  border-color: #A41346;
  color: white;
  text-decoration: none;
}
.theme-coursetype[data-coursetype*=leisure] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype*=leisure] .tbl-course .button-apply:hover, .theme-coursetype[data-coursetype*=Leisure] .course-opts .button-apply:hover, .theme-coursetype[data-coursetype*=Leisure] .tbl-course .button-apply:hover {
  background-color: #FFF;
  color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .course-opts .course-accordion-header h3, .theme-coursetype[data-coursetype*=Leisure] .course-opts .course-accordion-header h3 {
  color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .tbl-course th, .theme-coursetype[data-coursetype*=Leisure] .tbl-course th {
  background-color: #A41346;
}
.theme-coursetype[data-coursetype*=leisure] .tbl-course td, .theme-coursetype[data-coursetype*=Leisure] .tbl-course td {
  background-color: rgba(164, 19, 70, 0.1);
}
.theme-coursetype[data-coursetype*=leisure] .tbl-course td:before, .theme-coursetype[data-coursetype*=Leisure] .tbl-course td:before {
  background-color: #A41346;
}

/* Courses */
/*
	=======
	Careers
	=======
*/
.facilities {
  margin-left: -6px;
  margin-right: -6px;
}
.facilities h4 {
  background-color: #FFF;
  color: #003399;
  display: inline-block;
  font-size: 1.0769230769em;
  line-height: 2.1428571429;
  margin-left: -3px;
  margin-bottom: 0;
  padding-left: 10px;
  padding-right: 10px;
  vertical-align: bottom;
}
.facilities .facility {
  margin-bottom: 12px;
  padding-left: 6px;
  padding-right: 6px;
}
@media (min-width: 768px) {
  .facilities .facility {
    float: left;
    width: 50%;
  }
}
.facilities .inner {
  background-size: cover;
  height: 115px;
}
.facilities .inner:before {
  content: "";
  display: inline-block;
  height: 100%;
  line-height: 100%;
  vertical-align: middle;
}

.tutors img {
  float: left;
}
.tutors .name,
.tutors .title {
  color: #003399;
  font-weight: 800;
}
.tutors .tutor + .tutor {
  margin-top: 40px;
}
.tutors .text {
  margin-left: 115px;
}
.tutors .name {
  font-size: 1.5384615385em;
}
.tutors .title {
  margin-bottom: 2px;
}
.tutors .lnk-email {
  display: block;
  margin-bottom: 4px;
}

/* Careers */
/*
	=======
	Courses
	=======
*/
.course-blocks {
  margin-left: -12px;
  margin-right: -12px;
  overflow: hidden;
}
.course-blocks .course {
  margin-bottom: 12px;
  padding-right: 6px;
  padding-left: 6px;
}
@media (min-width: 1024px) {
  .course-blocks .course {
    float: left;
    margin-bottom: 24px;
    padding-right: 12px;
    padding-left: 12px;
    width: 50%;
  }
}
.course-blocks .course.clear {
  clear: left;
}

/* Courses */
/*
	=============
	ContentBlocks
	=============
*/
.sharethis {
  border-bottom: 2px solid #CCCCCC;
  padding: 2rem 3rem 4rem;
}
.sharethis > p {
  width: 100%;
  margin: 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.sharethis > p > span {
  display: inline-block;
  height: 100%;
}
.sharethis > p > span > span {
  margin: 0.5rem !important;
}

.tweet {
  color: #999;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.428;
  text-align: center;
}
.tweet a {
  display: inline-block;
  font-size: 2rem;
  font-weight: 400;
  color: #003399;
  text-decoration: none;
}

.content-block.twitter {
  display: none;
  margin-top: 3rem;
}
.content-block.twitter .button-twitter {
  width: 100%;
  margin-top: 3rem;
}
@media (min-width: 768px) {
  .content-block.twitter {
    display: block;
  }
}

.main-col .twitter {
  border-bottom: 1px dashed #039;
  margin: 0;
  padding: 1.5rem 3rem;
  position: relative;
}
.main-col .twitter .tweet {
  font-size: 1em;
  text-align: left;
  margin: 0;
  padding: 0 120px 0 0;
}
.main-col .twitter .button-twitter.large {
  background-size: 17px 14px;
  background-position: 10px center;
  position: absolute;
  top: 50%;
  right: 0;
  margin: -14px 0 0 0;
  padding: 6px 10px 6px 34px;
  font-size: 1.0769230769em;
  width: auto;
}
@media (min-width: 1201px) {
  .main-col .twitter {
    padding-left: 0;
    padding-right: 0;
  }
}

.twitter-box {
  background: rgba(204, 204, 204, 0.3);
  padding: 3rem 3rem 3rem 9rem !important;
  background-image: url(/site/images/icon/highlight/twitter.svg);
  background-position: 30px center;
  background-repeat: no-repeat;
  background-size: 36px auto;
}
.no-svg .twitter-box {
  background-image: url(/site/images/icon/highlight/twitter-xlarge.png);
}

.case-study-blocks, .news-blocks {
  margin-left: -12px;
  margin-right: -12px;
}
.case-study-blocks a, .news-blocks a {
  color: #000000;
  text-decoration: none;
}
.case-study-blocks h2, .news-blocks h2 {
  font-size: 1.6923076923em;
  margin-bottom: 0;
}
.case-study-blocks img, .news-blocks img {
  display: block;
  margin-bottom: 18px;
}
.case-study-blocks time, .news-blocks time {
  border-bottom: 1px dashed #003399;
  color: #999;
  display: block;
  font-size: 1.2307692308em;
  margin-bottom: 8px;
  padding-bottom: 10px;
}
.case-study-blocks .block, .news-blocks .block {
  padding-left: 12px;
  padding-right: 12px;
}

@media (min-width: 768px) {
  .news-blocks .block {
    float: left;
    width: 33.333%;
  }
}

@media (min-width: 768px) {
  .case-study-blocks .block {
    float: left;
    width: 50%;
  }
}

.case-study {
  background-color: #D9E1F0;
  background-color: rgba(0, 51, 153, 0.1);
  color: #003399;
  padding: 14px;
}
.case-study h2,
.case-study .sub {
  margin-bottom: 8px;
}
.case-study h2 small {
  font-size: 0.5714285714em;
}
.case-study img {
  display: block;
  margin: 0 auto 10px;
}
@media (min-width: 768px) {
  .case-study img {
    float: left;
  }
}
.case-study a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .case-study .text {
    margin-left: 230px;
  }
}
.case-study .sub {
  font-size: 1.6923076923em;
}

.quote blockquote {
  background-color: #D9E1F0;
  background-color: rgba(0, 51, 153, 0.1);
  color: #003399;
  font-size: 1.6923076923em;
  margin: 0;
  padding: 24px 24px 32px;
  position: relative;
  text-align: center;
}
.quote blockquote:after {
  background-color: #003399;
  background-image: url(/site/images/icon/white/quote.svg);
  background-position: center center;
  content: "";
  height: 36px;
  left: 50%;
  margin-left: -18px;
  margin-top: -18px;
  position: absolute;
  top: 100%;
  width: 36px;
}
.no-svg .quote blockquote:after {
  background-image: url(/site/images/icon/white/quote.png);
}
.quote cite {
  font-size: 0.9090909091em;
  font-style: normal;
  font-weight: 800;
}
.quote p {
  margin-bottom: 0;
}

.button-line,
.button-line-top {
  margin-left: -9px;
  margin-right: -9px;
}

.button-line-top {
  position: relative;
  top: -55px;
}

.gallery {
  padding-left: 40px;
  padding-right: 40px;
}
.gallery img {
  display: inline-block;
  vertical-align: middle;
}
.gallery .slick-prev,
.gallery .slick-next {
  height: 40px;
  margin-top: -20px;
  width: 22px;
}
@media (min-width: 768px) {
  .gallery .slick-prev,
.gallery .slick-next {
    height: 61px;
    width: 33px;
    margin-top: -30px;
  }
}
.gallery .slick-prev:before, .gallery .slick-prev:after,
.gallery .slick-next:before,
.gallery .slick-next:after {
  background-image: url(/site/images/icon/grey/carousel.svg);
  background-size: 44px 80px;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.3s;
  height: 100%;
  width: 100%;
}
.no-svg .gallery .slick-prev:before, .no-svg .gallery .slick-prev:after,
.no-svg .gallery .slick-next:before,
.no-svg .gallery .slick-next:after {
  background-image: url(/site/images/icon/grey/carousel.png);
}
@media (min-width: 768px) {
  .gallery .slick-prev:before, .gallery .slick-prev:after,
.gallery .slick-next:before,
.gallery .slick-next:after {
    background-size: 66px 122px;
  }
}
.gallery .slick-prev:before,
.gallery .slick-next:before {
  opacity: 1;
  filter: alpha(opacity=100);
}
.gallery .slick-prev:after,
.gallery .slick-next:after {
  opacity: 0;
  filter: alpha(opacity=0);
}
.gallery .slick-prev:hover:before,
.gallery .slick-next:hover:before {
  opacity: 0;
  filter: alpha(opacity=0);
}
.gallery .slick-prev:hover:after,
.gallery .slick-next:hover:after {
  opacity: 1;
  filter: alpha(opacity=100);
}
.gallery .slick-prev {
  left: 0;
}
.gallery .slick-prev:before {
  background-position: 0 0;
}
.gallery .slick-prev:after {
  background-position: 0 -40px;
}
@media (min-width: 768px) {
  .gallery .slick-prev:after {
    background-position: 0 -61px;
  }
}
.gallery .slick-next {
  right: 0;
}
.gallery .slick-next:before {
  background-position: -22px 0;
}
@media (min-width: 768px) {
  .gallery .slick-next:before {
    background-position: -33px 0;
  }
}
.gallery .slick-next:after {
  background-position: -22px -40px;
}
@media (min-width: 768px) {
  .gallery .slick-next:after {
    background-position: -33px -61px;
  }
}
.gallery .slide {
  text-align: center;
}

.accreditations {
  border-bottom: 1px dashed #003399;
  padding-bottom: 15px;
}
.accreditations h3 {
  font-size: 1.1538461538em;
  font-weight: 800;
}
.accreditations img + img {
  margin-left: 5px;
}

/* ContentBlocks */
.niceselect-wrapper select.error-border, .error-border, .checkbox .box.error-border {
  border: 1px solid red;
}

.builder-form-list {
  margin-top: 10px;
}

.js-prospectus-remove {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px;
  color: #fff;
  text-decoration: none;
}

.builder-form .course-block {
  position: relative;
}
.builder-form .course-block h2 {
  padding-right: 20px;
}
.builder-form .builder-form_clear {
  margin-bottom: 20px;
}

.kis-widget {
  margin-top: 1em;
  text-align: center;
}

#apply + * {
  margin-top: 20px;
}

.main-col .content-block .course-search-section, .main-col .content-block .course-search-block {
  padding: 10rem 0 4rem;
}
.main-col .content-block .course-search-section > h1, .main-col .content-block .course-search-block > h1 {
  text-transform: none;
  color: #213462;
  margin-bottom: 2rem;
  max-width: 80rem;
}
.main-col .content-block .course-search-section > p, .main-col .content-block .course-search-block > p {
  font-size: 1.6rem;
  color: #000000;
  margin: 0 0 1.4rem;
}
.main-col .content-block .course-search-section .search, .main-col .content-block .course-search-block .search {
  max-width: none;
}
.main-col .content-block .course-search-section .search .form-search .form-input-field, .main-col .content-block .course-search-block .search .form-search .form-input-field {
  max-width: 60rem;
}
.main-col .content-block .course-search-section .search .form-search .form-input-field .form-search-button, .main-col .content-block .course-search-block .search .form-search .form-input-field .form-search-button {
  pointer-events: auto;
}
.main-col .content-block .course-search-section .filter-sortby, .main-col .content-block .course-search-block .filter-sortby {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 1rem;
}
.main-col .content-block .course-search-section .filter-sortby .filter, .main-col .content-block .course-search-block .filter-sortby .filter {
  width: 100%;
  margin: 0;
}
.main-col .content-block .course-search-section .filter-sortby .filter .filter-tags, .main-col .content-block .course-search-block .filter-sortby .filter .filter-tags {
  margin: -0.5rem;
  padding: 0 0.5rem;
  display: none;
}
.main-col .content-block .course-search-section .filter-sortby .filter select, .main-col .content-block .course-search-block .filter-sortby .filter select {
  max-width: 60rem;
}
@media (min-width: 769px) {
  .main-col .content-block .course-search-section > h1, .main-col .content-block .course-search-block > h1 {
    font-size: 5rem;
    margin-bottom: 3.6rem;
  }
  .main-col .content-block .course-search-section > p, .main-col .content-block .course-search-block > p {
    font-size: 2.6rem;
    margin-bottom: 2rem;
  }
  .main-col .content-block .course-search-section .filter-sortby, .main-col .content-block .course-search-block .filter-sortby {
    margin-top: 4rem;
  }
  .main-col .content-block .course-search-section .filter-sortby .filter, .main-col .content-block .course-search-block .filter-sortby .filter {
    width: auto;
    margin: 0 -0.5rem;
  }
  .main-col .content-block .course-search-section .filter-sortby .filter .filter-tags, .main-col .content-block .course-search-block .filter-sortby .filter .filter-tags {
    display: -ms-flexbox;
    display: flex;
  }
  .main-col .content-block .course-search-section .filter-sortby .filter select, .main-col .content-block .course-search-block .filter-sortby .filter select {
    display: none;
  }
}
@media (min-width: 1201px) {
  .main-col .content-block .course-search-section > h1, .main-col .content-block .course-search-block > h1 {
    font-size: 7rem;
    margin-bottom: 5.2rem;
  }
}

.main-col .content-block .course-search-block {
  padding: 0 0 2rem;
}
.main-col .content-block .course-search-block .course-type-filter {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
}
.main-col .content-block .course-search-block .course-type-filter label {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-right: 2rem;
}
.main-col .content-block .course-search-block .course-type-filter label, .main-col .content-block .course-search-block .course-type-filter select {
  font-size: 1.4rem;
}
.main-col .content-block .course-search-block .home-search-results > .course-search-wrap {
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 60rem;
}
.main-col .content-block .course-search-block .home-search-results > .course-search-wrap > * + * {
  margin-top: 2rem;
}
.main-col .content-block .course-search-block .filter {
  padding: 2rem 0 0;
}
.main-col .content-block .course-search-block .filter-options {
  margin-top: 2rem;
}
@media (min-width: 769px) {
  .main-col .content-block .course-search-block .course-type-filter {
    margin-left: 2rem;
  }
  .main-col .content-block .course-search-block .course-type-filter label {
    font-size: 1.8rem;
    font-weight: 700;
    color: #213462;
  }
  .main-col .content-block .course-search-block .course-type-filter select {
    font-size: 1.8rem;
  }
  .main-col .content-block .course-search-block .home-search-results > .course-search-wrap {
    -ms-flex-direction: row;
        flex-direction: row;
    max-width: none;
    padding-right: 8rem;
  }
  .main-col .content-block .course-search-block .home-search-results > .course-search-wrap > * + * {
    margin-top: 0;
  }
  .main-col .content-block .course-search-block .home-search-results > .course-search-wrap .form-input-field {
    -ms-flex-positive: 1;
        flex-grow: 1;
  }
}
@media (min-width: 1201px) {
  .main-col .content-block .course-search-block {
    padding-bottom: 3.6rem;
  }
  .main-col .content-block .course-search-block .home-search-results > .course-search-wrap {
    padding-right: 0;
  }
  .main-col .content-block .course-search-block .filter {
    padding: 3rem 0 0;
  }
  .main-col .content-block .course-search-block .filter-options {
    margin-top: 3rem;
  }
}

.header-filters {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 7rem;
  background: #213462;
}
.header-filters .select-filters {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: row;
      flex-direction: row;
  width: 100%;
}
.header-filters .select-filters .select-filter {
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
.header-filters .select-filters .select-filter label {
  color: #FFFFFF;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-right: 2rem;
  display: none;
}
.header-filters .select-filters .select-filter .niceselect-wrapper {
  height: 5rem;
  padding: 0;
}
.header-filters .select-filters .select-filter + .select-filter {
  margin-left: 1rem;
}
.header-filters.purple {
  background: linear-gradient(195.95deg, #3D0051 0%, #661880 100%);
}
.header-filters.red {
  background: linear-gradient(195.95deg, #8C0000 0%, #C92A2A 99.42%);
}
.header-filters.green {
  background: linear-gradient(195.95deg, #004000 1.08%, #168216 100%);
}
.header-filters.pink {
  background: linear-gradient(195.95deg, #F41D68 1.08%, #F983AC 100%);
}
@media (min-width: 640px) {
  .header-filters .select-filters {
    width: auto;
  }
  .header-filters .select-filters .select-filter {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .header-filters .select-filters .select-filter label {
    display: block;
  }
  .header-filters .select-filters .select-filter .niceselect-wrapper {
    max-width: 20rem;
    padding: 0 3.5rem 0 2rem;
  }
  .header-filters .select-filters .select-filter + .select-filter {
    margin-left: 3rem;
  }
}
@media (min-width: 769px) {
  .header-filters {
    height: 9rem;
  }
}

.course-list.js-course-search-results.no-search-results > p {
  padding: 0 3rem;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  z-index: 1;
}
@media (min-width: 769px) {
  .course-list.js-course-search-results.no-search-results > p {
    padding: 0 2rem;
  }
}

.course-list.js-course-search-results.no-results {
  margin: 2rem 0 7.5rem;
  padding: 0;
  border-top: 2px solid #CCCCCC;
}
.course-list.js-course-search-results.no-results h2 {
  font-size: 2.6rem;
  font-weight: 400;
  color: #000000;
  margin: 5.6rem 0 5rem;
}
.course-list.js-course-search-results.no-results ul {
  list-style: none;
  list-style-image: none;
  margin: 0 -1rem;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.course-list.js-course-search-results.no-results ul li, .course-list.js-course-search-results.no-results ul li a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375;
  color: #000000;
  text-align: left;
}
.course-list.js-course-search-results.no-results ul li {
  width: 25%;
  padding: 0 1rem;
  margin-bottom: 1.4rem;
}
.course-list.js-course-search-results.no-results ul li::before {
  content: none;
}
.course-list.js-course-search-results.no-results::before {
  content: none;
}

.eventbrite .ev-title {
  clear: left;
  text-align: center;
  color: #003399;
  font-weight: bold;
  font-size: 1.5384615385em;
  margin-bottom: 0;
}
.eventbrite .ev-subtitle {
  text-align: center;
  color: #80aaff;
  font-size: 1.2307692308em;
}

.cb-careers-4 .careers {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cb-careers-4 .careers .career {
  width: 50%;
  padding-right: 10px;
}
.cb-careers-4 .careers .career:nth-child(even) {
  padding-right: 0;
}
@media (min-width: 768px) {
  .cb-careers-4 .careers .career:nth-child(even) {
    padding-right: 10px;
  }
}
@media (min-width: 768px) {
  .cb-careers-4 .careers .career {
    width: 25%;
  }
}
.cb-careers-4 .careers .career h2 {
  font-size: 0.9230769231em;
}
@media (min-width: 768px) {
  .cb-careers-4 .careers .career h2 {
    font-size: 1.3846153846em;
  }
}

.nav-blocks ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (min-width: 768px) {
  .nav-blocks ul {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.nav-blocks ul li {
  padding-right: 10px;
  padding-bottom: 10px;
  width: 50%;
}
@media (min-width: 768px) {
  .nav-blocks ul li {
    width: auto;
    padding-bottom: 0;
  }
}
.nav-blocks ul li:last-child {
  padding-right: 0;
}
.nav-blocks ul li a {
  display: block;
  padding: 10px;
  background-color: #003399;
  color: white;
  font-weight: 700;
  text-align: center;
  transition: background-color 0.5s ease-out;
}
.nav-blocks ul li a:hover {
  background-color: #0055ff;
}

.sr-only, .slick-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  border: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}

.table {
  width: 100%;
  margin-bottom: 1em;
}
.table caption {
  font-weight: 900;
  margin-bottom: 1em;
}
.table td, .table th {
  vertical-align: top;
  padding: 5px;
  border: 1px solid #000000;
}
.table td p, .table th p {
  margin-bottom: 0;
}
.table th {
  background: #000000;
  color: white;
  font-weight: 900;
  text-align: center;
  vertical-align: middle;
  border-right: 1px solid white;
}
.table th:last-child {
  border: 1px solid #000000;
}
.table tbody tr:nth-child(even) td {
  background: white;
  background: rgba(0, 51, 153, 0.15);
  color: #000000;
}

.form-pagination {
  margin-top: 3rem;
}

.form-content .form-control--wrapper label {
  display: block;
}

.no-top-margin {
  margin-top: 0 !important;
}

.job-container .job-list {
  padding-left: 0;
  list-style-type: none;
}
.job-container .job-list li {
  padding-left: 0;
}
.job-container .job-list li::before {
  width: 0 !important;
  height: 0 !important;
}
.job-container .job-list .job-title {
  display: block;
}
.job-container .job-list .job-location {
  padding-right: 0.5rem;
}
.job-container .job-list .job-location:after {
  position: relative;
  content: "|";
  padding-left: 0.5rem;
}
.job-container .job-list .job-desc {
  display: block;
}

.home-content-wrap .card-block-content a {
  padding-bottom: 2rem;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9zZXR0aW5ncy5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiX2Jhc2Uuc2NzcyIsIl9vYmplY3RzLnNjc3MiLCJfbGF5b3V0LnNjc3MiLCJfY2FyZC5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQuc2NzcyIsImNvbXBvbmVudHMvYmFubmVyLnNjc3MiLCJjb21wb25lbnRzL2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9jYXJvdXNlbC5zY3NzIiwiY29tcG9uZW50cy9tb2RhbC5zY3NzIiwiY29tcG9uZW50cy9kcm9wem9uZS5zY3NzIiwiY29tcG9uZW50cy9tX2FjY29yZGlvbi5zY3NzIiwiX21vZHVsZXMuc2NzcyIsIl9pbmJveC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtBQUFBO0FBQUE7QUFJQTtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFTQTtBQUFBOztBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFvQ0E7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBc0JBO0FBQUE7O0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQWNBO0FBQUE7O0FBQUE7QUFXQTtBQUFBOztBQUFBOztBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFnQkE7QUFBQTs7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBY0E7QUFBQTs7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBZUE7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQTBCQTtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBa0NBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBcUNBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBb0NBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBMERBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBd0JBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBNEJBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBNEJBO0FBQUE7O0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBMENBO0FBQUE7O0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7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RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0Esa0JaM0NBO0VZNENBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFFQTtFQUNJLE9abkZBO0VZb0ZBO0VBQ0E7O0FBSUE7RUFDSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBLE9acEdBOztBWTBHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT1p0SVo7RVl1SVk7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJLE9abEpaOztBWXNKSTtFQUNJOztBQUdKO0VBQ0k7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSSxZWnBMVDs7QVl1TEs7RUFDSSxZWnZMVDs7QVkwTEs7RUFDSSxZWjFMVDs7QVkrTEg7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBLE9aMVBBOztBWTZQSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLE9ablFBO0VZb1FBOztBWjJIbkI7RVloWkQ7SUE0UlE7O0VB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Q0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7RUFDQTtFQUNBOztBQUdSO0VBQ0k7RUFDQTtFQUNBOztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBVWhCO0VBQ0k7RUFDQTs7O0FDclJKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VB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V2Y7RWdCaFhXO0lBSVE7Ozs7QUFPcEI7RUFDSTtFQUNBO0VBQ0E7O0FoQmtXSDtFZ0JyV0Q7SUFNUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FoQnlWUDtFZ0I1Vkc7SUFNUTtJQUNBOzs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBLGtCaEJ6Q0k7RWdCMENKO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7OztBQU1oQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQTZCO0VBQzdCOzs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR1I7RUFDSSxZaEJoR1E7RWdCaUdSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFLVjtFQUNDO0VBQ0E7RUFDQSxPaEJoSGE7OztBZ0JxSGhCO0VBQ0k7OztBQUtJO0VBQ0k7OztBQUtaO0VBQ0k7OztBQUlBO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTs7O0FBTVI7RUFDSSIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnc2FzczptYXRoJztcbi8qXG4jIFNldHRpbmdzIChfc2V0dGluZ3MpXG4qL1xuXG4vKlxuIyMgVmFyaWFibGVzXG5cbiMjIyBHZW5lcmFsXG5cbiRwaGk6IDEuNjE4MDMzOTg4NzQ5IC0gR29sZGVuIHJhdGlvXG4qL1xuJHBoaTogMS42MTgwMzM5ODg3NDk7XG5cbi8qXG4jIyMgQ29sb3Vyc1xuXG48c3BhbiBzdHlsZT1cImNvbG9yOiAjMzMzXCI+JGNvbG91ci1iYXNlIC0gIzMzMzwvc3Bhbj4gPHNwYW4gc3R5bGU9XCJiYWNrZ3JvdW5kOiAjMzMzOyBjb2xvcjogI0ZGRjtcIj4mbmJzcDskY29sb3VyLWJhc2UgLSAjMzMzJm5ic3A7PC9zcGFuPlxuXG48c3BhbiBzdHlsZT1cImNvbG9yOiAjMzM5XCI+JGNvbG91ci1oaWdobGlnaHQgLSAjMzM5PC9zcGFuPiA8c3BhbiBzdHlsZT1cImJhY2tncm91bmQ6ICMzMzk7IGNvbG9yOiAjRkZGO1wiPiZuYnNwOyRjb2xvdXItaGlnaGxpZ2h0IC0gIzMzOSZuYnNwOzwvc3Bhbj5cblxuPHNwYW4gc3R5bGU9XCJjb2xvcjogIzMzOVwiPiRjb2xvdXItbGluayAtICMzMzk8L3NwYW4+IDxzcGFuIHN0eWxlPVwiYmFja2dyb3VuZDogIzMzOTsgY29sb3I6ICNGRkY7XCI+Jm5ic3A7JGNvbG91ci1saW5rIC0gIzMzOSZuYnNwOzwvc3Bhbj5cbiovXG4kY29sb3VyLWJhc2U6IFx0XHQjMDAwMDAwO1xuJGNvbG91ci1iYXNlLTE6ICAgICAjNDQ0NDQ0O1xuJGNvbG91ci1oaWdobGlnaHQ6IFx0IzAwMzM5OTsgXHRcdC8vIEJsdWVcbiRjb2xvdXItaGlnaGxpZ2h0LTI6IzQ1QTZFQzsgXHQvLyBZZWxsb3dcbiRjb2xvdXItaGlnaGxpZ2h0LTM6IzA2NjsgXHRcdC8vIEdyZWVuXG4kY29sb3VyLWhpZ2hsaWdodC00OiM4QzAwMDA7IFx0Ly8gUmVkXG4kY29sb3VyLWhpZ2hsaWdodC01OiMyMTM0NjI7IFx0XHQvLyBEYXJrIEJsdWVcbiRjb2xvdXItaGlnaGxpZ2h0LTY6IzNEMDA1MTsgXHQvLyBQdXJwbGVcbiRjb2xvdXItaGlnaGxpZ2h0LTc6IzM2MzYzNjsgXHQvLyBQaW5rXG4kY29sb3VyLWhpZ2hsaWdodC04OiNmZmJmMmU7IFx0Ly8gUGlua1xuXG4kY29sb3VyLW5hdi1ob3ZlcjogIzQ0NDQ0NDtcblxuJGNvbG91ci1saW5rOiBcdFx0IzAwMzM5OTtcbiRjb2xvdXItb3V0bGluZTogXHQjQUFBO1xuJGNvbG91ci1zZWNvbmRhcnk6XHQjNzc3O1xuXG4kY29sb3VyLWNvdXJzZS0xOiBcdCMzRDAwNTE7IFx0Ly8gRnVsbCBUaW1lXG4kY29sb3VyLWNvdXJzZS0yOiBcdCM4QzAwMDA7IFx0Ly8gUGFydCBUaW1lXG4kY29sb3VyLWNvdXJzZS0zOiBcdCMwMDQwMDA7IFx0Ly8gQXBwcmVudGljZXNoaXBzXG4kY29sb3VyLWNvdXJzZS00OiBcdCM0NDQ7IFx0XHQvLyBXb3JrcGxhY2VcbiRjb2xvdXItY291cnNlLTU6IFx0I0E0MTM0NjsgXHRcdC8vIExlaXN1cmVcbiRjb2xvdXItY291cnNlLTY6IFx0I0Y0MUQ2ODsgXHRcdC8vIExlaXN1cmVcblxuXG4kY29sb3VyLWVycm9yOiBcdFx0I0YwMDsgXHRcdC8vIEVycm9yIENvbG91clxuXG4vKlxuIyMjIEZvbnRzXG5cbiRmb250LXNpemUgLSAxM1xuXG4kbGluZS1oZWlnaHQgLSAxLjRcblxuPHNwYW4gc3R5bGU9XCJmb250LWZhbWlseTogc2Fucy1zZXJpZjtcIj4kZm9udC1iYXNlIC0gc2Fucy1zZXJpZjwvc3Bhbj5cblxuPHNwYW4gc3R5bGU9XCJmb250LWZhbWlseTogc2Fucy1zZXJpZjtcIj4kZm9udC1oZWFkZXIgLSBzYW5zLXNlcmlmPC9zcGFuPlxuKi9cbiRmb250LXNpemU6IFx0MTM7XG4kbGluZS1oZWlnaHQ6IFx0MS40O1xuXG4vLyBOb3JtYWwgNDAwXG4vLyBTZW1pLUJvbGQgNjAwXG4vLyBCb2xkIDcwMFxuLy8gRXh0cmEtQm9sZCA4MDBcbiRmb250LWJhc2U6IFx0J1BvcHBpbnMnLCBzYW5zLXNlcmlmO1xuJGZvbnQtaGVhZGVyOiBcdCdQb3BwaW5zJywgc2Fucy1zZXJpZjtcblxuXG4vKlxuIyMjIExheW91dFxuXG4kd2lkdGggLSA5NjBcblxuJGNvbHVtbnMgLSAyNFxuXG4kZ3V0dGVyIC0gMTJcbiovXG4kd2lkdGg6IFx0OTYwO1xuJGNvbHVtbnM6IFx0MjQ7XG4kZ3V0dGVyOiBcdDEyO1xuXG5cbi8qXG4jIyMgUmVzcG9uc2l2ZVxuXG4qL1xuJGRlc2t0b3BfbDogMTkyMHB4O1xuJGRlc2t0b3A6IFx0MTQ0MHB4O1xuJGRlc2t0b3BfbTogMTMwMHB4O1xuJGRlc2t0b3BfczogMTIwMXB4O1xuJHRhYmxldF9sOiAgMTAyNXB4O1xuJHRhYmxldDogICAgNzY5cHg7XG5cbi8qXG4jIyBGdW5jdGlvbnNcblxuIyMjIGVtKCRzaXplOiAkZm9udC1zaXplLCAkY29udGV4dDogJGZzKVxuXG5XaWxsIGNvbnZlcnQgYSBwaXhlbCBiYXNlZCBzaXplIHRvIGFuIGVtIHZhbHVlLlxuRmlyc3QgdmFsdWUgaXMgdGhlIHRhcmdldCBzaXplLCB0aGUgc2Vjb25kIHZhbHVlIGlzIHRoZSBmb250LXNpemUgb2YgdGhlIGNvbnRleHQgaXQgaXMgaW4uXG5cbkV4YW1wbGVzOlxuYGVtKDI2KWAgLy8gMmVtIGlmIGJhc2UgZm9udC1zaXplIGlzIDEzcHhcbmBlbSgxOCwgMTIpYCAvLyAxLjVlbVxuKi9cbkBmdW5jdGlvbiBlbSgkc2l6ZTogJGZvbnQtc2l6ZSwgJGNvbnRleHQ6ICRmb250LXNpemUpIHtcblx0QHJldHVybiBtYXRoLmRpdigkc2l6ZSwkY29udGV4dCkgKyBlbTtcbn1cblxuLypcbiMjIyBsaCgkc2l6ZTogJGZvbnQtc2l6ZSwgJGNvbnRleHQ6ICRmcylcblxuV2lsbCBwcm92aWRlIHRoZSBzYW1lIGZ1bmN0aW9uIGFzICdlbScgYWJvdmUgYnV0aCB3aXRob3V0IGFwcGVuZGluZyAnZW0nIHRvIHRoZSByZXN1bHQuXG5UaGlzIG1ha2VzIGl0IG1vcmUgc3VpdGFibGUgdG8gdXNlIGFzIGEgbGluZS1oZWlnaHQgdmFsdWUuXG5cbkV4YW1wbGVzOlxuYGxoKDI2KWAgLy8gMiBpZiBiYXNlIGZvbnQtc2l6ZSBpcyAxM3B4XG5gbGgoMTgsIDEyKWAgLy8gMS41XG4qL1xuQGZ1bmN0aW9uIGxoKCRzaXplOiAkZm9udC1zaXplLCAkY29udGV4dDogJGZvbnQtc2l6ZSkge1xuXHRAcmV0dXJuIG1hdGguZGl2KCRzaXplLCRjb250ZXh0KTtcbn1cblxuLypcbiMjIyBmbHVpZCgkY29sdW1uczogMSwgJHRvdGFsLWNvbHVtbnM6ICRjb2x1bW5zKVxuXG5XaWxsIHByb3ZpZGUgdGhlICUgcmVzdWx0IG9mIHRoZSBmaXJzdCB2YWx1ZSBkaXZpZGVkIGJ5IHRoZSBzZWNvbmQuXG5TdWl0YWJsZSBmb3Igd29ya2luZyBvdXQgY29sdW1ucyBhbmQgZ2VuZXJhbCAlIHZhbHVlcy5cblxuRXhhbXBsZXM6XG5gZmx1aWQoMiwgNilgIC8vIDEyLjUlXG5gZmx1aWQoMTBweCwgOTYwcHgpYCAvLyAxLjA0MTY2NjY2NjY2NjY2NyVcbiovXG5AZnVuY3Rpb24gZmx1aWQoJGNvbHVtbnM6IDEsICR0b3RhbC1jb2x1bW5zOiAkY29sdW1ucylcbntcbiAgQHJldHVybiAoJGNvbHVtbnMgLyAkdG90YWwtY29sdW1ucykgKiAxMDAlO1xufVxuXG4vKlxuIyMgTWl4aW5zXG5cbk1peGlucyBtdXN0IHRvIGJlIGNhbGxlZCB1c2luZyBAaW5jbHVkZSAoc2Nzcykgb3IgKyAoc2FzcylcblxuIyMjIHZlbmRvcigkcHJvcGVydHksICR2YWx1ZSlcblxuQWRkIHZlbmRvciBwcmVmaXhlcyB0byBhIHByb3BlcnR5IGFuZCBwcm92aWRlIHRoZSB2YWx1ZSBmb3IgdGhlIHByb3BlcnR5XG5cbmBAaW5jbHVkZSB2ZW5kb3IoYm94LXNoYWRvdywgMCAwIDEwcHggMCAjMDAwKTtgXG5cbk91dHB1dHM6XG5gLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMTBweCAwICMwMDBgXG5gLW1vei1ib3gtc2hhZG93OiAwIDAgMTBweCAwICMwMDBgXG5gLW1zLWJveC1zaGFkb3c6IDAgMCAxMHB4IDAgIzAwMGBcbmAtby1ib3gtc2hhZG93OiAwIDAgMTBweCAwICMwMDBgXG5gYm94LXNoYWRvdzogMCAwIDEwcHggMCAjMDAwYFxuKi9cbkBtaXhpbiB2ZW5kb3IoJHByb3BlcnR5LCAkdmFsdWUuLi4pIHtcblx0LXdlYmtpdC0jeyRwcm9wZXJ0eX06XHQkdmFsdWU7XG5cdC1tb3otI3skcHJvcGVydHl9Olx0XHQkdmFsdWU7XG5cdC1tcy0jeyRwcm9wZXJ0eX06XHRcdCR2YWx1ZTtcblx0LW8tI3skcHJvcGVydHl9Olx0XHQkdmFsdWU7XG5cdCN7JHByb3BlcnR5fTpcdFx0XHQkdmFsdWU7XG59XG5cbi8qXG4jIyMgbGlzdC1yZXNldFxuXG5SZXNldHMgY3VycmVudCBsaXN0IG9ubHlcblxuPHByZT5cbnVsIHtcblx0QGluY2x1ZGUgbGlzdC1yZXNldDtcbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbnVsIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxudWwgPiBsaSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG59XG48L3ByZT5cbiovXG5AbWl4aW4gbGlzdC1yZXNldCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXHQ+IGxpIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG5cbi8qXG4jIyMgbGlzdC1yZXNldC1mdWxsXG5cblJlc2V0IGN1cnJlbnQgYW5kIGFsbCBjaGlsZCBsaXN0c1xuXG48cHJlPlxudWwge1xuXHRAaW5jbHVkZSBsaXN0LXJlc2V0LWZ1bGw7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG51bCwgdWwgdWwsIHVsIG9sIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxudWwgbGkge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRsaXN0LXN0eWxlLWltYWdlOiBub25lO1xufVxuXG48L3ByZT5cbiovXG5AbWl4aW4gbGlzdC1yZXNldC1mdWxsIHtcblx0JiwgdWwsIG9sIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0fVxuXG5cdGxpIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG5cbi8qXG4jIyMgY2xlYXJmaXhcblxuQ2xlYXIgYW4gZWxlbWVudHMgZmxvYXRlZCBjaGlsZHJlblxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgY2xlYXJmaXg7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXYge1xuXHQqem9vbTogMTtcbn1cbmRpdjpiZWZvcmUsIGRpdjphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xufVxuZGl2OmFmdGVyIHtcblx0Y2xlYXI6IGJvdGg7XG59XG48L3ByZT5cbiovXG5AbWl4aW4gY2xlYXJmaXgge1xuXHQmOmJlZm9yZSwgJjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0fVxuXG4gICAgJjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbiAgICAqem9vbTogMTtcbn1cblxuLypcbiMjIyBrZXlmcmFtZXMoJG5hbWUpXG5cblNldCBhbmltYXRpb24ga2V5ZnJhbWVzIG92ZXIgbXVsdGlwbGUgYnJvd3NlciBleHRlbnNpb25zXG5cbjxwcmU+XG4uYm94IHtcblx0QGluY2x1ZGUga2V5ZnJhbWVzKG15LWFuaW1hdGlvbikge1xuXHRcdDAlIHsgb3BhY2l0eTogMDsgfVxuXHRcdDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbi5ib3gge1xuXHRALXdlYmtpdC1rZXlmcmFtZXMgbXktYW5pbWF0aW9uIHtcblx0ICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuXHQgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cblx0QC1tb3ota2V5ZnJhbWVzIG15LWFuaW1hdGlvbiB7XG5cdCAgMCUgICB7IG9wYWNpdHk6IDA7IH1cblx0ICAxMDAlIHsgb3BhY2l0eTogMTsgfVxuXHR9XG5cdEAtbXMta2V5ZnJhbWVzIG15LWFuaW1hdGlvbiB7XG5cdCAgMCUgICB7IG9wYWNpdHk6IDA7IH1cblx0ICAxMDAlIHsgb3BhY2l0eTogMTsgfVxuXHR9XG5cdEAtby1rZXlmcmFtZXMgbXktYW5pbWF0aW9uIHtcblx0ICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuXHQgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG5cdH1cblx0QGtleWZyYW1lcyBteS1hbmltYXRpb24ge1xuXHQgIDAlICAgeyBvcGFjaXR5OiAwOyB9XG5cdCAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cblx0fVxufVxuPC9wcmU+XG4qL1xuQG1peGluIGtleWZyYW1lcygkbmFtZSkge1xuXHRALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50XG5cdH1cblx0QC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcblx0XHRAY29udGVudFxuXHR9XG5cdEAtbXMta2V5ZnJhbWVzICN7JG5hbWV9IHtcblx0XHRAY29udGVudFxuXHR9XG5cdEAtby1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50XG5cdH1cblx0QGtleWZyYW1lcyAjeyRuYW1lfSB7XG5cdFx0QGNvbnRlbnRcblx0fVxufVxuXG4vKlxuIyMjIGhpZGRlbi1mdWxsXG5cbkNvbXBsZXRlbHkgaGlkZSBhbiBlbGVtZW50XG5cbjxwcmU+XG5kaXYge1xuXHRAaW5jbHVkZSBoaWRkZW4tZnVsbDtcbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbmRpdiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuPC9wcmU+XG4qL1xuQG1peGluIGhpZGRlbi1mdWxsIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qXG4jIyMgbWF4KCRtYXh3aWR0aDogJHdpZHRoKVxuXG5BIHNpbXBsZSBtYXgtd2lkdGggbWVkaWEgcXVlcnlcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIG1heCg3NjhweCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHRkaXYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbjwvcHJlPlxuKi9cbkBtaXhpbiBtYXgoJG1heHdpZHRoOiAkd2lkdGgpIHtcblx0QG1lZGlhIChtYXgtd2lkdGg6ICRtYXh3aWR0aCkge1xuXHRcdEBjb250ZW50XG5cdH1cbn1cblxuLypcbiMjIyBtaW4oJG1pbndpZHRoOiAkd2lkdGgpXG5cbkEgc2ltcGxlIG1pbi13aWR0aCBtZWRpYSBxdWVyeVxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHRkaXYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG48L3ByZT5cbiovXG5AbWl4aW4gbWluKCRtaW53aWR0aDogJHdpZHRoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAkbWlud2lkdGgpIHtcblx0XHRAY29udGVudFxuXHR9XG59XG5cbi8qXG4jIyMgcGl4ZWwtcmF0aW8oJHBpeGVscmF0aW86IDIsICRiYXNlZHBpOiA5NilcblxuQSBzaW1wbGUgcGl4ZWwtcmF0aW8gbWVkaWEgcXVlcnlcblxuJGJhc2VkcGkgaXMgdXNlZCBmb3IgZmluZSBjb250cm9sIG92ZXIgdGhlIGRwaSBxdWVyeSB2YWx1ZVxuXG48cHJlPlxuZGl2IHtcblx0QGluY2x1ZGUgcGl4ZWwtcmF0aW8ge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZUAyeC5wbmcpO1xuXHR9XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5AbWVkaWFcblx0KC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG5cdCggICBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuXHQoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuXHQoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcblx0KCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcblx0KCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcblx0XHRkaXYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlQDJ4LnBuZyk7XG5cdFx0fVxuXHR9XG48L3ByZT5cbiovXG5AbWl4aW4gcGl4ZWwtcmF0aW8oJHBpeGVscmF0aW86IDIsICRiYXNlZHBpOiA5Nikge1xuXHRAbWVkaWFcblx0XHQoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpbyksXG5cdCAgXHQoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpbyksXG5cdCAgXHQoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcGl4ZWxyYXRpby8xKSxcblx0ICBcdCggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICRwaXhlbHJhdGlvKSxcblx0ICBcdCggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7JGJhc2VkcGkqJHBpeGVscmF0aW99ZHBpKSxcblx0ICBcdCggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246ICN7JHBpeGVscmF0aW99ZHBweCkge1xuXHRcdFx0QGNvbnRlbnRcblx0XHR9XG59XG5cbi8qXG4jIyMgZ2VuZXJhdGUoJHdpZHRoOiAxMHB4LCAkaGVpZ2h0OiAxMHB4LCAkcG9zaXRpb246IHN0YXRpYylcblxuQ3JlYXRlIGdlbmVyaWMgc3R5bGluZyBmb3IgOmJlZm9yZS86YWZ0ZXJcblxuJGhlaWdodCAvICR3aWR0aCAvICRwb3NpdGlvbiBhbGwgY29udHJvbCB0aGVpciBuYW1lc2FrZSBDU1MgcHJvcGVydGllc1xuXG48cHJlPlxuZGl2OmFmdGVyIHtcblx0QGluY2x1ZGUgZ2VuZXJhdGU7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXY6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMHB4O1xuXHRoZWlnaHQ6IDEwcHg7XG5cdHBvc2l0aW9uOiBzdGF0aWM7XG59XG48L3ByZT5cbiovXG5AbWl4aW4gZ2VuZXJhdGUoJHdpZHRoOiAxMHB4LCAkaGVpZ2h0OiAxMHB4LCAkcG9zaXRpb246IHN0YXRpYykge1xuXHRjb250ZW50OiBcIlwiO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcblx0cG9zaXRpb246ICRwb3NpdGlvbjtcbn1cblxuLypcbiMjIyBvcGFjaXR5KCRvOiAwLjUpXG5cbkhhbmRsZSBzdGFuZGFyZCAmIElFIG9wYWNpdHlcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIG9wYWNpdHkoLjc1KTtcbn1cbjwvcHJlPlxuXG5PdXRwdXRzOlxuPHByZT5cbmRpdiB7XG5cdG9wYWNpdHk6IC43NTtcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbn1cbjwvcHJlPlxuKi9cbkBtaXhpbiBvcGFjaXR5KCRvOiAwLjUpIHtcblx0JG1zbzogJG8gKiAxMDA7XG5cdG9wYWNpdHk6ICRvO1xuXHRmaWx0ZXI6IGFscGhhKG9wYWNpdHk9I3skbXNvfSk7XG59XG5cblxuLypcbiMjIyBib3JkZXItcmFkaXVzKCR2YWw6IDEwcHgpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IoYm9yZGVyLXJhZGl1cylcbiovXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkdmFsOiAxMHB4KSB7XG5cdEBpbmNsdWRlIHZlbmRvcihib3JkZXItcmFkaXVzLCAkdmFsKTtcbn1cblxuLypcbiMjIyBib3gtc2hhZG93KCR2YWw6IDAgMCAxMHB4ICMwMDApXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IoYm94LXNoYWRvdylcbkFsbG93cyBtdWx0aXBsZSBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLlxuKi9cbkBtaXhpbiBib3gtc2hhZG93KCR2YWwuLi4pIHtcblx0QGluY2x1ZGUgdmVuZG9yKGJveC1zaGFkb3csICR2YWwpO1xufVxuXG4vKlxuIyMjIGdyYWRpZW50KCRkaXJlY3Rpb246dmVydGljYWwsICRzdGFydC1jb2xvcjogI2ZmZiwgJHN0YXJ0LXBvc2l0aW9uOiAwJSwgJGVuZC1jb2xvcjogIzAwMCwgJGVuZC1wb3NpdGlvbjogMTAwJSlcblxuQ3JlYXRlIGhvcml6b250YWwgLyB2ZXJ0aWNhbCBncmFkaWVudHNcblxuTm90ZSA6IERvZXMgbm90IGluY2x1ZGUgSUU5IGRhdGEgdXJpIHN1cHBvcnRcblxuPHByZT5cbmRpdiB7XG5cdEBpbmNsdWRlIGdyYWRpZW50KCRzdGFydC1jb2xvcjogI0YwMCwgJGVuZC1jb2xvcjogIzBGMCk7XG59XG48L3ByZT5cblxuT3V0cHV0czpcbjxwcmU+XG5kaXYge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNGMDAgMCUsICMwRjAgMTAwJSk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICNGMDApLCBjb2xvci1zdG9wKDEwMCUsICMwRjApKTtcblx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjRjAwIDAlLCAjMEYwIDEwMCUpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjRjAwIDAlLCAjMEYwIDEwMCUpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI0YwMCAwJSwgIzBGMCAxMDAlKTtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0YwMCAwJSwgIzBGMCAxMDAlKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xufVxuPC9wcmU+XG4qL1xuQG1peGluIGdyYWRpZW50KCRkaXJlY3Rpb246dmVydGljYWwsICRzdGFydC1jb2xvcjogI2ZmZiwgJHN0YXJ0LXBvc2l0aW9uOiAwJSwgJGVuZC1jb2xvcjogIzAwMCwgJGVuZC1wb3NpdGlvbjogMTAwJSkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBob3Jpem9udGFsIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKCRzdGFydC1wb3NpdGlvbiwkc3RhcnQtY29sb3IpLCBjb2xvci1zdG9wKCRlbmQtcG9zaXRpb24sICRlbmQtY29sb3IpKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcblx0fVxuXG5cdEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdmVydGljYWwge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKCRzdGFydC1wb3NpdGlvbiwgJHN0YXJ0LWNvbG9yKSwgY29sb3Itc3RvcCgkZW5kLXBvc2l0aW9uLCAkZW5kLWNvbG9yKSk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBvc2l0aW9uLCAkZW5kLWNvbG9yICRlbmQtcG9zaXRpb24pO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcG9zaXRpb24sICRlbmQtY29sb3IgJGVuZC1wb3NpdGlvbik7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wb3NpdGlvbiwgJGVuZC1jb2xvciAkZW5kLXBvc2l0aW9uKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG5cdH1cbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0oJGFyZ3VtZW50cylcblxuRnJpZW5kbHkgaW50ZXJmYWNlIHRvIHZlbmRvcih0cmFuc2Zvcm0pIHcvYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuXG4qL1xuQG1peGluIHRyYW5zZm9ybSgkYXJndW1lbnRzKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2Zvcm0sICRhcmd1bWVudHMpO1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcbiMjIyB0cmFuc2l0aW9uKCRhcmd1bWVudHMpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNpdGlvbilcbiovXG5AbWl4aW4gdHJhbnNpdGlvbigkYXJndW1lbnRzLi4uKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2l0aW9uLCAkYXJndW1lbnRzKTtcbn1cblxuLypcbiMjIyBwZXJzcGVjdGl2ZSgkdmFsOiAwKVxuXG5GcmllbmRseSBpbnRlcmZhY2UgdG8gdmVuZG9yKHBlcnNwZWN0aXZlKVxuKi9cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkdmFsOiAwKSB7XG5cdEBpbmNsdWRlIHZlbmRvcihwZXJzcGVjdGl2ZSwgJHZhbCk7XG59XG5cbi8qXG4jIyMgcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWw6IDUwJSA1MCUpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IocGVyc3BlY3RpdmUtb3JpZ2luKVxuKi9cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHZhbDogNTAlIDUwJSkge1xuXHRAaW5jbHVkZSB2ZW5kb3IocGVyc3BlY3RpdmUtb3JpZ2luLCAkdmFsKTtcbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0tb3JpZ2luKCR2YWw6IDUwJSA1MCUpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNmb3JtLW9yaWdpbilcbiovXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkdmFsOiA1MCUgNTAlKSB7XG5cdEBpbmNsdWRlIHZlbmRvcih0cmFuc2Zvcm0tb3JpZ2luLCAkdmFsKTtcbn1cblxuLypcbiMjIyB0cmFuc2Zvcm0tc3R5bGUoJHZhbDogcHJlc2VydmUtM2QpXG5cbkZyaWVuZGx5IGludGVyZmFjZSB0byB2ZW5kb3IodHJhbnNmb3JtLXN0eWxlKVxuKi9cbkBtaXhpbiB0cmFuc2Zvcm0tc3R5bGUoJHZhbDogcHJlc2VydmUtM2QpIHtcblx0QGluY2x1ZGUgdmVuZG9yKHRyYW5zZm9ybS1zdHlsZSwgJHZhbCk7XG59XG5cbi8qXG4jIyMgUGxhY2Vob2xkZXJzXG4qL1xuQG1peGluIHBsYWNlaG9sZGVyIHtcblx0Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50XG5cdH1cblx0OjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudFxuXHR9XG5cdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnRcblx0fVxuXHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudFxuXHR9XG5cdC5wbGFjZWhvbGRlci1yZXBsYWNlbWVudCB7XG5cdFx0QGNvbnRlbnRcblx0fVxufVxuXG5cbi8qXG4jIyMgYm94ZXMoJGNvbHM6IDMsICRndXR0ZXI6IDEwcHgsICRzZWxlY3RvcjogXCIuY29sXCIpXG5cblNldCB0aGUgY29udGFpbmVyIGFuZCBpdHMgY2hpbGRyZW4gKGFzICBzZWxlY3RlZCBieSB0aGUgc2VsZWN0b3IgYXJndW1lbnQpIHRvIGJlIGEgc2V0IG9mIGNvbHVtbnMuXG4qL1xuQG1peGluIGJveGVzKCRjb2xzOiAzLCAkZ3V0dGVyOiAxMHB4LCAkc2VsZWN0b3I6IFwiLmNvbFwiKSB7XG5cdG1hcmdpbi1sZWZ0OiAtJGd1dHRlcjtcblx0bWFyZ2luLXJpZ2h0OiAtJGd1dHRlcjtcblxuXHQjeyRzZWxlY3Rvcn0ge1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdHBhZGRpbmctbGVmdDogJGd1dHRlcjtcblx0XHRwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xuXHRcdHdpZHRoOiBtYXRoLmRpdigxMDAlLCAkY29scyk7XG5cblx0XHQmOm50aC1jaGlsZChuKSB7XG5cdFx0XHRjbGVhcjogbm9uZTtcblx0XHR9XG5cblx0XHQmOm50aC1jaGlsZCgjeyRjb2xzfW4rMSkge1xuXHRcdFx0Y2xlYXI6IGxlZnQ7XG5cdFx0fVxuXHR9XG59XG5cblxuQG1peGluIHZhbGlnbigkaW5uZXI6IFwiLmlubmVyXCIpIHtcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cblx0I3skaW5uZXJ9IHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxufVxuXG5cbkBtaXhpbiBjb3ZlcmltYWdlIHtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuXG4vKlxuIyMgRXh0ZW5kXG5cblVzZSB0aGVzZSBwbGFjZWhvbGRlciBzdHlsZXMgd2l0aCBAZXh0ZW5kLlxuXG4jIyMgJWRlYnVnXG5cblVzZWQgdG8gaGlnaGxpZ2h0IGl0ZW1zIHZpYSBiYWNrZ3JvdW5kLWNvbG9yLlxuQ2FuIGJlIHVzZWZ1bCBmb3IgZGVidWdnaW5nLlxuKi9cbiVkZWJ1ZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHBpbmsgIWltcG9ydGFudDtcbn1cblxuLypcbiMjIyAlZWxsaXBzaXNcblxuSWYgdGhlIGVsZW1lbnQgaGFzIG92ZXJmbG93aW5nIHRleHQgdGhlIHRleHQgd2lsbCBiZSB0cnVuY2F0ZWQgYW5kIGFuIGVsbGlwc2lzIGFwcGVuZGVkIHRvIHRoZSBlbmQuXG4qL1xuJWVsbGlwc2lzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qXG4jIyMgJWlyXG5cblVzZSB3aGVuIHNldHRpbmcgYW4gZWxlbWVudCBzdWNoIGFzIGFuIGlucHV0IGJ1dHRvbiB0byB1c2UgYSBiYWNrZ3JvdW5kLWltYWdlLlxuXG5Ob3QgcmVjb21tZW5kZWQgdG8gdXNlIHRoaXMgbWV0aG9kIHVubGVzcyBuZWNlc3NhcnkuXG5UcnkgYW5kIHVzZSBhcHByb3ByaWF0ZSBlbGVtZW50cyB3aGVyZSBwb3NzaWJsZSAoYDxpbnB1dCB0eXBlPVwiaW1hZ2VcIiAvPmAgZm9yIGV4YW1wbGUpLlxuKi9cbiVpciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udDogMCAvIDAgYTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qXG4jIyMgJWNsZWFyZml4XG5cbkBleHRlbmQgaW50ZXJmYWNlIGZvciBAaW5jbHVkZSBjbGVhcmZpeDtcbiovXG4lY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vKlxuIyMjICVsaXN0LXJlc2V0XG5cbkBleHRlbmQgaW50ZXJmYWNlIGZvciBAaW5jbHVkZSBsaXN0LXJlc2V0O1xuKi9cbiVsaXN0LXJlc2V0IHtcblx0QGluY2x1ZGUgbGlzdC1yZXNldDtcbn1cblxuXG4vKlxuIyMjICVsaXN0LXJlc2V0LWZ1bGxcblxuQGV4dGVuZCBpbnRlcmZhY2UgZm9yIEBpbmNsdWRlIGxpc3QtcmVzZXQtZnVsbDtcbiovXG4lbGlzdC1yZXNldC1mdWxsIHtcblx0QGluY2x1ZGUgbGlzdC1yZXNldC1mdWxsO1xufVxuXG5cbkBtaXhpbiBtdWx0aWxpbmUtZWxsaXBzaXMoJGhlaWdodCwgJGxpbmVoZWlnaHQsICRlbGxpcHNpc3dpZHRoKSB7XG5cbiRlbGxpcHNpc3dpZHRoOiAzZW0gIWRlZmF1bHQ7XG5cblx0LmVsbGlwc2lzIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRsaW5lLWhlaWdodDogJGxpbmVoZWlnaHQ7IH1cblxuXHQuZWxsaXBzaXM6YmVmb3JlIHtcblx0XHRjb250ZW50OlwiXCI7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDVweDsgaGVpZ2h0OiAkaGVpZ2h0OyB9XG5cblx0LmVsbGlwc2lzID4gKjpmaXJzdC1jaGlsZCB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAtNXB4OyB9XG5cblx0LmVsbGlwc2lzOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlxcMDIwMjZcIjtcblxuXHRcdGZsb2F0OiByaWdodDsgcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRvcDogLTI1cHg7IGxlZnQ6IDEwMCU7XG5cdFx0d2lkdGg6ICRlbGxpcHNpc3dpZHRoOyBtYXJnaW4tbGVmdDogLSRlbGxpcHNpc3dpZHRoO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDVweDtcblxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHR9XG5cbn1cblxuJG1pbl9mb250OiAxNnB4O1xuXG4kbGFyZ2UtZGVza3RvcC1wb2ludDogMTU2MHB4O1xuJGRlc2t0b3AtcG9pbnQ6IDE0NDBweDtcbiRzbWFsbC1kZXNrdG9wLXBvaW50OiAxMjAwcHg7XG4kbGFyZ2UtdGFibGV0LXBvaW50OiAxMDI0cHg7XG4kc21hbGwtdGFibGV0LXBvaW50OiA4NDBweDtcbiRiZWxvdy10YWJsZXQ6IDc2N3B4O1xuJG1vYmlsZS1wb2ludDogNTQwcHg7XG4kc21hbGwtbW9iaWxlLXBvaW50OiAzNjBweDtcblxuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gICAgQGlmICRwb2ludCA9PSBkZXNrdG9wX2wge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTU2MHB4KSB7IEBjb250ZW50IDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDQwcHgpIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSBkZXNrdG9wX20ge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7IEBjb250ZW50IDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcF9zIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkgeyBAY29udGVudCA7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldF9sIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkgeyBAY29udGVudCA7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldF9wIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDg0MHB4KSB7IEBjb250ZW50IDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0X3Mge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSBtb2JpbGUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTQwcHgpICB7IEBjb250ZW50IDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gbW9iaWxlX3Mge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpICB7IEBjb250ZW50IDsgfVxuICAgIH1cbn1cblxuQG1peGluIGZsdWlkLXR5cGUoJG1pbi12dywgJG1heC12dywgJG1pbi1mb250LXNpemUsICRtYXgtZm9udC1zaXplKSB7XG4gICAgJHUxOiB1bml0KCRtaW4tdncpO1xuICAgICR1MjogdW5pdCgkbWF4LXZ3KTtcbiAgICAkdTM6IHVuaXQoJG1pbi1mb250LXNpemUpO1xuICAgICR1NDogdW5pdCgkbWF4LWZvbnQtc2l6ZSk7XG5cbiAgICBAaWYgJHUxID09ICR1MiBhbmQgJHUxID09ICR1MyBhbmQgJHUxID09ICR1NCB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkbWluLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4tdncpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRtaW4tZm9udDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoI3skbWluLWZvbnQtc2l6ZX0gKyAje3N0cmlwLXVuaXQoJG1heC1mb250LXNpemUgLSAkbWluLWZvbnQtc2l6ZSl9ICogKCgxMDB2dyAtICN7JG1pbi12d30pIC8gI3tzdHJpcC11bml0KCRtYXgtdncgLSAkbWluLXZ3KX0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtYXgtdncpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qXG4jIE5vcm1hbGl6ZSAoX25vcm1hbGl6ZSlcblxubm9ybWFsaXplLmNzcyB2MS4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemVcblxuR2xvYmFsIHJlc2V0LiBUaGlzIGZpbGUgc2hvdWxkIG5vdCBiZSBlZGl0ZWQuXG5cbiovXG5cbmh0bWwge1xuXHRAaW5jbHVkZSB2ZW5kb3IoYm94LXNpemluZywgYm9yZGVyLWJveCk7XG59XG5cbiosICo6YWZ0ZXIsICo6YmVmb3JlIHtcblx0QGluY2x1ZGUgdmVuZG9yKGJveC1zaXppbmcsIGluaGVyaXQpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG5cbi8vIENvcnJlY3RzIGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIENvcnJlY3RzIGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0KmRpc3BsYXk6IGlubGluZTtcblx0Knpvb206IDE7XG59XG5cbi8vIFByZXZlbnRzIG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGhlaWdodDogMDtcbn1cblxuLy8gQWRkcmVzc2VzIHN0eWxpbmcgZm9yIGBoaWRkZW5gIGF0dHJpYnV0ZSBub3QgcHJlc2VudCBpbiBJRSA3LzgvOSwgRmlyZWZveCAzLCBhbmQgU2FmYXJpIDQuXG4vLyBLbm93biBpc3N1ZTogbm8gSUUgNiBzdXBwb3J0LiBcbltoaWRkZW5dIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLy8gMS4gQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZyBgZW1gIHVuaXRzLlxuLy8gMi4gUHJldmVudHMgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZyAgdXNlciB6b29tLlxuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLy8gQWRkcmVzc2VzIGBmb250LWZhbWlseWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIGB0ZXh0YXJlYWAgYW5kIG90aGVyIGZvcm0gZWxlbWVudHMuXG5odG1sLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xufVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2lucyBoYW5kbGVkIGluY29ycmVjdGx5IGluIElFIDYvNy5cbmJvZHkge1xuXHRtYXJnaW46IDA7XG59XG5cblxuLy8gQWRkcmVzc2VzIGBvdXRsaW5lYCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gQ2hyb21lIGFuZCBvdGhlciBicm93c2Vycy5cbmE6Zm9jdXMge1xuXHRvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cblxuLy8gSW1wcm92ZXMgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuYTphY3RpdmUsXG5hOmhvdmVyIHtcblx0b3V0bGluZTogMDtcbn1cblxuLy8gQWRkcmVzc2VzIGZvbnQgc2l6ZXMgYW5kIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cbi8vIEFkZHJlc3NlcyBmb250IHNpemVzIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYCBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbmgxIHtcblx0Zm9udC1zaXplOiAyZW07XG5cdG1hcmdpbjogMC42N2VtIDA7XG59XG5cbmgyIHtcblx0Zm9udC1zaXplOiAxLjVlbTtcblx0bWFyZ2luOiAwLjgzZW0gMDtcbn1cblxuaDMge1xuXHRmb250LXNpemU6IDEuMTdlbTtcblx0bWFyZ2luOiAxZW0gMDtcbn1cblxuaDQge1xuXHRmb250LXNpemU6IDFlbTtcblx0bWFyZ2luOiAxLjMzZW0gMDtcbn1cblxuaDUge1xuXHRmb250LXNpemU6IDAuODNlbTtcblx0bWFyZ2luOiAxLjY3ZW0gMDtcbn1cblxuaDYge1xuXHRmb250LXNpemU6IDAuNzVlbTtcblx0bWFyZ2luOiAyLjMzZW0gMDtcbn1cblxuLy8gQWRkcmVzc2VzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgNy84LzksIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggMyssIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuZGZuIHtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA2LzcvOC85LlxubWFyayB7XG5cdGJhY2tncm91bmQ6ICNmZjA7XG5cdGNvbG9yOiAjMDAwO1xufVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxucCxcbnByZSB7XG5cdG1hcmdpbjogMWVtIDA7XG59XG5cbi8vIENvcnJlY3RzIGZvbnQgZmFtaWx5IHNldCBvZGRseSBpbiBJRSA2LCBTYWZhcmkgNC81LCBhbmQgQ2hyb21lLlxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBzZXJpZjtcblx0X2ZvbnQtZmFtaWx5OiAnY291cmllciBuZXcnLCBtb25vc3BhY2U7XG5cdGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBJbXByb3ZlcyByZWFkYWJpbGl0eSBvZiBwcmUtZm9ybWF0dGVkIHRleHQgaW4gYWxsIGJyb3dzZXJzLlxucHJlIHtcblx0d2hpdGUtc3BhY2U6IHByZTtcblx0d2hpdGUtc3BhY2U6IHByZS13cmFwO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIEFkZHJlc3NlcyBDU1MgcXVvdGVzIG5vdCBzdXBwb3J0ZWQgaW4gSUUgNi83LlxucSB7XG5cdHF1b3Rlczogbm9uZTtcbn1cblxuLy8gQWRkcmVzc2VzIGBxdW90ZXNgIHByb3BlcnR5IG5vdCBzdXBwb3J0ZWQgaW4gU2FmYXJpIDQuXG5xOmJlZm9yZSxcbnE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cblxuLy8gQWRkcmVzc2VzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8vIFByZXZlbnRzIGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDc1JTtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LiBcbmRsLFxubWVudSxcbm9sLFxudWwge1xuXHRtYXJnaW46IDFlbSAwO1xufVxuXG5kZCB7XG5cdG1hcmdpbjogMCAwIDAgNDBweDtcbn1cblxuLy8gQWRkcmVzc2VzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG5tZW51LFxub2wsXG51bCB7XG5cdHBhZGRpbmc6IDAgMCAwIDQwcHg7XG59XG5cbi8vIENvcnJlY3RzIGxpc3QgaW1hZ2VzIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNy5cbm5hdiB7XG5cdHVsLCBvbCB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG59XG5cblxuLy8gMS4gUmVtb3ZlcyBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuLy8gMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRSA3LiBcbmltZyB7XG5cdGJvcmRlcjogMDsgLyogMSAqL1xuXHQtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyAvKiAyICovXG59XG5cbi8vIENvcnJlY3RzIG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRSA5Llxuc3ZnOm5vdCg6cm9vdCkge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5cbi8vIEFkZHJlc3NlcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgNi83LzgvOSwgU2FmYXJpIDUsIGFuZCBPcGVyYSAxMS5cbmZpZ3VyZSB7XG5cdG1hcmdpbjogMDtcbn1cblxuXG4vLyBDb3JyZWN0cyBtYXJnaW4gZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cbmZvcm0ge1xuXHRtYXJnaW46IDA7XG59XG5cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbmZpZWxkc2V0IHtcblx0Ym9yZGVyOiAwO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gQ29ycmVjdHMgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA2LzcvOC85LlxuLy8gMi4gQ29ycmVjdHMgdGV4dCBub3Qgd3JhcHBpbmcgaW4gRmlyZWZveCAzLlxuLy8gMy4gQ29ycmVjdHMgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXG5sZWdlbmQge1xuXHRib3JkZXI6IDA7IC8qIDEgKi9cblx0cGFkZGluZzogMDtcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMiAqL1xuXHQqbWFyZ2luLWxlZnQ6IC03cHg7IC8qIDMgKi9cbn1cblxuLy8gMS4gQ29ycmVjdHMgZm9udCBzaXplIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNywgRmlyZWZveCAzKywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4vLyAzLiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnMuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDMgKi9cblx0KnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDMgKi9cbn1cblxuLy8gQWRkcmVzc2VzIEZpcmVmb3ggMysgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluIHRoZSBVQSBzdHlsZXNoZWV0LlxuYnV0dG9uLFxuaW5wdXQge1xuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdHMgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmVzIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZSBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vLyA0LiBSZW1vdmVzIGlubmVyIHNwYWNpbmcgaW4gSUUgNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4vLyBcdCAgS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRSA2LlxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cblx0Y3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG5cdCpvdmVyZmxvdzogdmlzaWJsZTsgIC8qIDQgKi9cbn1cblxuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbmJ1dHRvbltkaXNhYmxlZF0sXG5pbnB1dFtkaXNhYmxlZF0ge1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG59XG5cblxuLy8gMS4gQWRkcmVzc2VzIGJveCBzaXppbmcgc2V0IHRvIGNvbnRlbnQtYm94IGluIElFIDgvOS5cbi8vIDIuIFJlbW92ZXMgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LlxuLy8gMy4gUmVtb3ZlcyBleGNlc3MgcGFkZGluZyBpbiBJRSA3LlxuLy8gICAgS25vd24gaXNzdWU6IGV4Y2VzcyBwYWRkaW5nIHJlbWFpbnMgaW4gSUUgNi5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMiAqL1xuXHQqaGVpZ2h0OiAxM3B4OyAvKiAzICovXG5cdCp3aWR0aDogMTNweDsgLyogMyAqL1xufVxuXG5cbi8vIDEuIEFkZHJlc3NlcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIDUgYW5kIENocm9tZS5cbi8vIDIuIEFkZHJlc3NlcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuLy8gICAgKFJlbW92ZWQgdGhpcyBhcyB3ZSB3YW50IGl0IHRvIGJlIGJvcmRlci1ib3gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbn1cblxuLy8gUmVtb3ZlcyBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lIG9uIE9TIFguXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlcyBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCAzKy5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5cbi8vIDEuIFJlbW92ZXMgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgNi83LzgvOS5cbi8vIDIuIEltcHJvdmVzIHJlYWRhYmlsaXR5IGFuZCBhbGlnbm1lbnQgaW4gYWxsIGJyb3dzZXJzLlxudGV4dGFyZWEge1xuXHRvdmVyZmxvdzogYXV0bzsgLyogMSAqL1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvKiAyICovXG5cdHJlc2l6ZTogdmVydGljYWw7XG59XG5cblxuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cbnRkIHtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcbn1cbiIsIi8qXG4jIEJhc2Ugc3R5bGVzOiBvcGluaW9uYXRlZCBkZWZhdWx0cyAoX2Jhc2UpXG4qL1xuXG5cbmh0bWwsXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICRjb2xvdXItYmFzZTtcbn1cblxuaHRtbCB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogNjIuNSU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy8gZml4IGFuZHJvaWQgdW5leHBlY3RlZCBmb250IHNpemUgY2hhbmdpbmdcbi8vIGh0bWwgKiB7XG4vLyAgICAgbWF4LWhlaWdodDogOTk5OTk5cHg7XG4vLyB9XG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5LnNpdGUge1xuXHRmb250LWZhbWlseTogJGZvbnQtYmFzZTtcbiAgICAvLyBmb250LXNpemU6IGVtKCRmb250LXNpemUsIDE2KTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRsaW5lLWhlaWdodDogMS40O1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgZm9udC1zaXplLWFkanVzdDogbm9uZTtcbiAgICB0ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbiAgICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSB0ZXh0LXNoYWRvdyBpbiBzZWxlY3Rpb24gaGlnaGxpZ2h0OiBoNWJwLmNvbS9pXG4vLyBUaGVzZSBzZWxlY3Rpb24gZGVjbGFyYXRpb25zIGhhdmUgdG8gYmUgc2VwYXJhdGUuXG4vLyBDdXN0b21pemUgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gbWF0Y2ggeW91ciBkZXNpZ24uXG46Oi1tb3otc2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogI2IzZDRmYztcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogI2IzZDRmYztcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIEEgYmV0dGVyIGxvb2tpbmcgZGVmYXVsdCBob3Jpem9udGFsIHJ1bGVcbmhyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMXB4O1xuXHRib3JkZXI6IDA7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXHRtYXJnaW46IDFlbSAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5cbi8vIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gaW1hZ2VzIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnM6IGg1YnAuY29tL2kvNDQwXG5pbWcge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBSZW1vdmUgZGVmYXVsdCBmaWVsZHNldCBzdHlsZXMuXG5maWVsZHNldCB7XG5cdGJvcmRlcjogMDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRtaW4td2lkdGg6IDA7XG5cdC13ZWJraXQtbWluLXdpZHRoOiAwO1xufVxuXG4vKlxuICogQWxsb3cgb25seSB2ZXJ0aWNhbCByZXNpemluZyBvZiB0ZXh0YXJlYXMuXG4gKi9cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKlxuICogVGV4dCBSZXNldFxuICovXG4vLyBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsgbWFyZ2luOiAwIDAgLjVlbTsgfVxuLy8gcCB7IG1hcmdpbjogMCAwIDFlbTsgfVxuXG4vLyBoMSxcbi8vIC5oMSB7XG4vLyBcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbi8vIFx0Zm9udC1zaXplOiA4dnc7XG4vLyBcdGZvbnQtd2VpZ2h0OiA4MDA7XG5cbi8vIFx0QGluY2x1ZGUgbWluKDU2MnB4KSB7XG4vLyBcdFx0Zm9udC1zaXplOiBlbSg0NSk7XG4vLyBcdH1cbi8vIH1cblxuaDEsIC5oMSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRlcjtcbiAgICBjb2xvcjogIzIxMzQ2MjtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJi5leHRyYS1sYXJnZSwgJi5sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcblxuICAgICAgICAmLmRhcmstYmx1ZSwgc3Bhbi5kYXJrLWJsdWUge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgIH1cbiAgICAgICAgJi55ZWxsb3csIHNwYW4ueWVsbG93IHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC04O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuXG4gICAgICAgICYuZXh0cmEtbGFyZ2UsICYubGFyZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAmLmV4dHJhLWxhcmdlLCAmLmxhcmdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICAmLmV4dHJhLWxhcmdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaDIsIC5oMiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRlcjtcbiAgICBjb2xvcjogIzIxMzQ2MjtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG5cbiAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgfVxufVxuXG5oMywgLmgzIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xuICAgIGNvbG9yOiAjMjEzNDYyO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IGxoKDMwLCAyMik7XG5cbiAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgfVxufVxuXG4vKlxuICogTGlua3NcbiAqL1xuYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAjQ0M0NTQ3O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICAgIH1cbn1cblxuLypcbiAqIExpc3RzXG4gKi9cbnVsIHtcblx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXG5cdGxpIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjVlbTtcblx0fVxufVxuXG5vbCB7XG5cdHBhZGRpbmctbGVmdDogMjBweDtcblxuXHRsaSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC41ZW07XG5cdH1cbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgI0NDNDU0NztcbiAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xufVxuXG5cbm5hdiB7XG5cdGxpIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuXG4vKiBUZXh0IEFsaWdubWVudCAqL1xuLmp1c3RpZnlsZWZ0IFx0eyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4uanVzdGlmeXJpZ2h0IFx0eyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLmp1c3RpZnlmdWxsIFx0eyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4uanVzdGlmeWNlbnRyZSBcdHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDaHJvbWUgRnJhbWUgcHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hyb21lZnJhbWUge1xuXHRtYXJnaW46IDAuMmVtIDA7XG5cdGJhY2tncm91bmQ6ICNjY2M7XG5cdGNvbG9yOiAjMDAwO1xuXHRwYWRkaW5nOiAwLjJlbSAwO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWxwZXIgY2xhc3Nlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEltYWdlIHJlcGxhY2VtZW50XG4gKi9cblxuLmlyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LyogSUUgNi83IGZhbGxiYWNrICovXG5cdCp0ZXh0LWluZGVudDogLTk5OTlweDtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cbn1cblxuLypcbiAqIEhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4gKi9cblxuLmhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5cbi5oaWRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAqIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW5yZWFkZXJzOiBoNWJwLmNvbS92XG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuIHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNhYmxlXG4gKiB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOiBoNWJwLmNvbS9wXG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcblx0Y2xpcDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRwb3NpdGlvbjogc3RhdGljO1xuXHR3aWR0aDogYXV0bztcbn1cblxuLypcbiAqIEhpZGUgdmlzdWFsbHkgYW5kIGZyb20gc2NyZWVucmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICovXG5cbi5pbnZpc2libGUge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5hc3BlY3QtcmF0aW8taW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiA2Ni44NCU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg1OS42NGRlZywgcmdiYSgwLCAwLCAwLCAwLjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIH1cbn1cblxuLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLm5vLW1hcmdpbiB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59Iiwi77u/LypcbiMjICBPYmplY3Qgc3R5bGVzIChfb2JqZWN0cylcblxuIyMjIEltYWdlc1xuKi9cbmltZyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0Lm9sZGllICYgeyBtYXgtd2lkdGg6IG5vbmU7IH1cblxuXHQmLnJpZ2h0IHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0bWFyZ2luOiAwIDAgMTZweCAxNnB4O1xuXHR9XG5cdCYubGVmdCB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luOiAwIDE2cHggMTZweCAwO1xuXHR9XG5cblx0JltzdHlsZSo9XCJsZWZ0XCJdIHtcblx0XHRtYXJnaW46IDAgMTZweCAxNnB4IDA7XG5cdH1cblx0JltzdHlsZSo9XCJyaWdodFwiXSB7XG5cdFx0bWFyZ2luOiAwIDAgMTZweCAxNnB4O1xuXHR9XG59XG5cblxuLy8gLS0tLS0gRmlndXJlcy9DYXB0aW9ucyAtLS0tLSAvL1xuXG5maWd1cmUge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMzBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGZpZ2NhcHRpb24ge1xuXHRcdGJvdHRvbTogMDtcblx0XHRjb2xvcjogIzk5OTtcblx0XHRmb250LXNpemU6IGVtKDEyKTtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0bGVmdDogMDtcblx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdHBhZGRpbmc6IDZweCAwO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQuZmlnLWltZyB7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cbn1cblxuLmZpZy1sZWZ0IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHRcdG1hcmdpbi1yaWdodDogMWVtO1xuXHR9XG59XG4uZmlnLXJpZ2h0IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdG1hcmdpbi1ib3R0b206IDFlbTtcblx0XHRtYXJnaW4tbGVmdDogMWVtO1xuXHR9XG59XG5cblxuLy8gLS0tLS0gRXhwYW5kaW5nIENvbnRlbnQgLS0tLS0gLy9cbi5leHBhbmQge1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihoZWlnaHQgMC4zcyk7XG59XG5cblxuLy8gLS0tLS0gTGlzdGluZyAtLS0tLSAvL1xuJWxpc3RpbmctZmlsdGVyIHtcbiAgICBtYXJnaW46IDAgLTAuNXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cblx0YSwgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodC01O1xuXHRcdGNvbG9yOiAjRkZGRkZGO1xuXHRcdGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zNTc7XG4gICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW07XG5cdFx0cGFkZGluZzogMXJlbSAycmVtO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuM3MpO1xuXG4gICAgICAgICYuaGFzLW5vLWV2ZW50cyB7XG4gICAgICAgICAgICBjb2xvcjogI0FBQUFBQTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG91ci1iYXNlLTEsIDAuMTUpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkY29sb3VyLWJhc2UtMSwgMC4xNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgJjpob3ZlciwgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuXHRcdH1cbiAgICB9XG5cblx0LmRheXMgYSwgLmRheXMgc3BhbiB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICYuaGFzLW5vLWV2ZW50cyB7XG4gICAgICAgICAgICBjb2xvcjogI0FBQUFBQTtcbiAgICAgICAgfVxuXHR9XG59XG5cbi5saXN0aW5nIHtcblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0LnBvc3Qge1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXG5cdFx0KyAucG9zdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0fVxuXHQuc3ViIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGNvbG9yOiAjOTk5O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xuXHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0fVxufVxuXG5cbi8vIC0tLS0tIERhdGUgLS0tLS0gLy9cbi5wYWdlLWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRjb2xvcjogcmdiYSgkY29sb3VyLWhpZ2hsaWdodC01LCAwLjc1KTtcblx0Zm9udC1zaXplOiAxLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogMXJlbSAwIDRyZW07XG59XG5cblxuLy8gLS0tLS0gUGFnaW5hdGlvbiAtLS0tLSAvL1xuLnBhZ2luYXRpb24ge1xuICAgIEBleHRlbmQgJWxpc3QtcmVzZXQ7XG5cbiAgICBtYXJnaW46IDNyZW0gMCAwcmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAmID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWluLXdpZHRoOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBtYXJnaW46IDAgMC41cmVtO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cbiAgICAgICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhLCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cblx0LmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cbiAgICAgICAgYSwgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cdC5jb250cm9sLCAuZGlzYWJsZWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG4vLyAtLS0tLSBCdXR0b25zIC0tLS0tIC8vXG5cbi5idXR0b24sIC5idG4ge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRjb2xvcjogI0ZGRkZGRjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cdC8vIGxpbmUtaGVpZ2h0OiAxO1xuXHRwYWRkaW5nOiAxcmVtIDNyZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcblx0Ly8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzKTtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICAmLmJ1dHRvbi1sb2FkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JleTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgZ3JleTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZXk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cblx0Ji5ibG9jayB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQmLmxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuMDVyZW0gM3JlbTtcblx0fVxuXG5cdCYueGxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuMXJlbSAycmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcblx0fVxuXG5cdCYuc2VtaWJvbGQge1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJi5ib2xkIHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgICYubGFyZ2Uge1xuICAgICAgICAgICAgcGFkZGluZzogMS42cmVtIDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLnhsYXJnZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjZyZW0gNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1dHRvbi1zZWNvbmRhcnkge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItc2Vjb25kYXJ5O1xuXHRib3JkZXItY29sb3I6ICRjb2xvdXItc2Vjb25kYXJ5O1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0Y29sb3I6ICRjb2xvdXItc2Vjb25kYXJ5O1xuXHR9XG59XG5cbi5idXR0b24taGlnaGxpZ2h0LTIge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTI7XG5cdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtMjtcbiAgICBjb2xvcjogYmxhY2s7XG5cblx0Jjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC0yO1xuXHR9XG59XG5cbi5idXR0b24taGlnaGxpZ2h0LTMge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTM7XG5cdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtMztcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC0zO1xuXHR9XG59XG5cbi5idXR0b24taGlnaGxpZ2h0LTQge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTQ7XG5cdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNDtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC00O1xuXHR9XG59XG5cbi5idXR0b24taGlnaGxpZ2h0LTUge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG5cdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuXHR9XG59XG5cbi5idXR0b24td2hpdGUge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdGJvcmRlci1jb2xvcjogI0ZGRjtcblx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGNvbG9yOiAjRkZGO1xuXHR9XG59XG5cbi5idXR0b24tdHJhbnNwYXJlbnQge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItY29sb3I6ICNGRkY7XG5cdGNvbG9yOiAjRkZGO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHR9XG59XG5cbi5idXR0b24tb3V0bGluZS1kYXJrLWJsdWUge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQgIWltcG9ydGFudDtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi5idXR0b24tZG90dGVkLXdoaXRlIHtcblx0QGV4dGVuZCAuYnV0dG9uO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLWNvbG9yOiAjRkZGRkZGO1xuICAgIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQ7XG5cblx0Jjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLy8gLmJ1dHRvbi1zZWFyY2gge1xuLy8gXHRAZXh0ZW5kIC5idXR0b247XG4vLyBcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9zZWFyY2guc3ZnKTtcbi8vIFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbi8vIFx0YmFja2dyb3VuZC1zaXplOiAxOXB4IDE5cHg7XG4vLyBcdG92ZXJmbG93OiBoaWRkZW47XG4vLyBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIFx0dGV4dC1pbmRlbnQ6IC05OTlweDtcbi8vIFx0d2lkdGg6IDMwcHg7XG5cbi8vIFx0Lm5vLXN2ZyAmIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvc2VhcmNoLnBuZyk7XG4vLyBcdH1cblxuLy8gXHQmOmhvdmVyIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L3NlYXJjaC5zdmcpO1xuXG4vLyBcdFx0Lm5vLXN2ZyAmIHtcbi8vIFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvc2VhcmNoLnBuZyk7XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyB9XG4uYnV0dG9uLXdvcmtwbGFjZSB7XG4gIEBleHRlbmQgLmJ1dHRvbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3dvcmtwbGFjZS5zdmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NSUgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIC5uby1zdmcgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3dvcmtwbGFjZS5wbmcpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi5idXR0b24tYXBwbHkge1xuXHRAZXh0ZW5kIC5idXR0b247XG4vLyBcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9hcHBseS5zdmcpO1xuLy8gXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA4cHggY2VudGVyO1xuLy8gXHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTZweDtcbi8vIFx0cGFkZGluZy1sZWZ0OiAzMnB4O1xuXG4vLyBcdC5uby1zdmcgJiB7XG4vLyBcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnBuZyk7XG4vLyBcdH1cblxuLy8gXHQmLmxhcmdlIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNnB4IGNlbnRlcjtcbi8vIFx0XHRiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjdweDtcbi8vIFx0XHRwYWRkaW5nLWxlZnQ6IDU4cHg7XG5cbi8vIFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LWxhcmdlLnBuZyk7XG4vLyBcdFx0fVxuLy8gXHR9XG5cbi8vIFx0Ji5idXR0b24taGlnaGxpZ2h0LTMge1xuLy8gXHRcdCY6aG92ZXIge1xuLy8gXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC0zL2FwcGx5LnN2Zyk7XG5cbi8vIFx0XHRcdC5uby1zdmcgJiB7XG4vLyBcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtMy9hcHBseS5wbmcpO1xuLy8gXHRcdFx0fVxuLy8gXHRcdH1cbi8vIFx0fVxuXG4vLyBcdCYuYnV0dG9uLWhpZ2hsaWdodC00IHtcbi8vIFx0XHQmOmhvdmVyIHtcbi8vIFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9hcHBseS5zdmcpO1xuXG4vLyBcdFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTQvYXBwbHkucG5nKTtcbi8vIFx0XHRcdH1cbi8vIFx0XHR9XG5cbi8vIFx0XHQmLmxhcmdlIHtcbi8vIFx0XHRcdCY6aG92ZXIge1xuLy8gXHRcdFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9hcHBseS1sYXJnZS5wbmcpO1xuLy8gXHRcdFx0XHR9XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuLy8gXHR9XG5cbi8vIFx0Ji5idXR0b24td2hpdGUge1xuLy8gXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvYXBwbHkuc3ZnKTtcblxuLy8gXHRcdC5uby1zdmcgJiB7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L2FwcGx5LnBuZyk7XG4vLyBcdFx0fVxuXG4vLyBcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkuc3ZnKTtcblxuLy8gXHRcdFx0Lm5vLXN2ZyAmIHtcbi8vIFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnBuZyk7XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuLy8gXHR9XG5cbi8vIFx0JltkaXNhYmxlZF0sXG4vLyBcdCY6ZGlzYWJsZWQge1xuLy8gXHRcdGJhY2tncm91bmQtY29sb3I6ICM5OTkgIWltcG9ydGFudDtcbi8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkuc3ZnKSAhaW1wb3J0YW50O1xuLy8gXHRcdGJvcmRlci1jb2xvcjogIzk5OSAhaW1wb3J0YW50O1xuLy8gXHRcdGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG5cbi8vIFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3dvcmtwbGFjZS5wbmcpICFpbXBvcnRhbnQ7XG4vLyBcdFx0fVxuLy8gXHR9XG59XG5cbi5idXR0b24tcHJvc3BlY3R1cyB7XG5cdEBleHRlbmQgLmJ1dHRvbjtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5zdmcpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA4cHggY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDMzcHggMTdweDtcblx0cGFkZGluZy1sZWZ0OiA0OHB4O1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5wbmcpO1xuXHR9XG5cblx0Ji5uby10ZXh0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDMycHg7XG5cdH1cblxuXHQmLmJ1dHRvbi1oaWdobGlnaHQtMyB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvcHJvc3BlY3R1cy1idWlsZGVyLnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtMy9wcm9zcGVjdHVzLWJ1aWxkZXIucG5nKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5idXR0b24tcHJpbnQge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9wcmludC5zdmcpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA4cHggY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblx0cGFkZGluZy1sZWZ0OiAzNnB4O1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3ByaW50LnBuZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L3ByaW50LnN2Zyk7XG5cblx0XHQubm8tc3ZnICYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC9wcmludC5wbmcpO1xuXHRcdH1cblx0fVxufVxuLmJ1dHRvbi1jb3Vyc2Uge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2Uuc3ZnKTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogOXB4IGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiAxNnB4IDE1cHg7XG5cdHBhZGRpbmctbGVmdDogMzJweDtcblxuXHQubm8tc3ZnICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2UucG5nKTtcblx0fVxuXG5cdCYuYnV0dG9uLXdoaXRlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L2NvdXJzZS5zdmcpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvY291cnNlLnBuZyk7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2UucG5nKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmJ1dHRvbi10d2l0dGVyIHtcblx0QGV4dGVuZCAuYnV0dG9uO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvdHdpdHRlci5zdmcpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMHB4IGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiAyNHB4IGF1dG87XG5cdHBhZGRpbmctbGVmdDogNnJlbTtcblxuXHQubm8tc3ZnICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS90d2l0dGVyLnBuZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L3R3aXR0ZXIuc3ZnKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L3R3aXR0ZXIucG5nKTtcblx0XHR9XG5cdH1cblxuXHQvLyAmLmxhcmdlIHtcblx0Ly8gXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMnB4IGNlbnRlcjtcblx0Ly8gXHRiYWNrZ3JvdW5kLXNpemU6IDM0cHggMjhweDtcblx0Ly8gXHRwYWRkaW5nLWxlZnQ6IDU4cHg7XG5cdC8vIFx0cGFkZGluZy1yaWdodDogMjJweDtcblxuXHQvLyBcdC5uby1zdmcgJiB7XG5cdC8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvdHdpdHRlci1sYXJnZS5wbmcpO1xuXHQvLyBcdH1cblxuXHQvLyBcdCY6aG92ZXIge1xuXHQvLyBcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC90d2l0dGVyLnN2Zyk7XG5cblx0Ly8gXHRcdC5uby1zdmcgJiB7XG5cdC8vIFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvdHdpdHRlci1sYXJnZS5wbmcpO1xuXHQvLyBcdFx0fVxuXHQvLyBcdH1cblx0Ly8gfVxufVxuXG4uYnV0dG9uLXByb3NwZWN0dXMtZG93bmxvYWQge1xuXHRAZXh0ZW5kIC5idXR0b247XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9wcm9zcGVjdHVzLWRvd25sb2FkLnN2Zyk7XG5cblx0Ji54bGFyZ2Uge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDE2cHggY2VudGVyO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogNTlweCAzOHB4O1xuXHRcdHBhZGRpbmctbGVmdDogOTJweDtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvcHJvc3BlY3R1cy1kb3dubG9hZC14bGFyZ2UucG5nKTtcblx0XHR9XG5cdH1cblxuXHQmLmJ1dHRvbi1oaWdobGlnaHQtMyB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvcHJvc3BlY3R1cy1kb3dubG9hZC5zdmcpO1xuXHRcdH1cblx0XHQmLnhsYXJnZSB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvcHJvc3BlY3R1cy1kb3dubG9hZC14bGFyZ2UucG5nKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYnV0dG9uLXByb3NwZWN0dXMtcG9zdCB7XG5cdEBleHRlbmQgLmJ1dHRvbjtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtcG9zdC5zdmcpO1xuXG5cdCYueGxhcmdlIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNnB4IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDU5cHggMzRweDtcblx0XHRwYWRkaW5nLWxlZnQ6IDkycHg7XG5cblx0XHQubm8tc3ZnICYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtcG9zdC14bGFyZ2UucG5nKTtcblx0XHR9XG5cdH1cblxuXHQmLmJ1dHRvbi1oaWdobGlnaHQtMyB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvcHJvc3BlY3R1cy1wb3N0LnN2Zyk7XG5cdFx0fVxuXHRcdCYueGxhcmdlIHtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtMy9wcm9zcGVjdHVzLXBvc3QteGxhcmdlLnBuZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmJ1dHRvbi1hcnJvdyB7XG5cdEBleHRlbmQgLmJ1dHRvbjtcblx0cGFkZGluZy1yaWdodDogMjJweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY2hldnJvbi1yaWdodC5zdmcpO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR3aWR0aDogNXB4O1xuXHRcdGhlaWdodDogMTBweDtcblx0XHRtYXJnaW4tdG9wOiAtNXB4O1xuXHRcdHJpZ2h0OiA4cHg7XG5cdFx0dG9wOiA1MCU7XG5cblx0XHQubm8tc3ZnICYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NoZXZyb24tcmlnaHQucG5nKTtcblx0XHR9XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L2NoZXZyb24tcmlnaHQuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC9jaGV2cm9uLXJpZ2h0LnBuZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLy8gLS0tLS0gQ291cnNlIEJ1dHRvbiAtLS0tLSAvL1xuLmNvdXJzZS1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLXNlY29uZGFyeTtcblx0Y29sb3I6ICNGRkY7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXdlaWdodDogODAwO1xuXHRsaW5lLWhlaWdodDogMS4yO1xuXHRwYWRkaW5nOiAxNXB4O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjNzLCBjb2xvciAwLjNzKTtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdGNvbG9yOiAkY29sb3VyLXNlY29uZGFyeTtcblx0fVxuXG5cdCZbZGF0YS1jb3Vyc2V0eXBlKj1cIkZ1bGwtVGltZVwiXSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuXHRcdH1cblxuXHRcdCYuaXMtd29ya3BsYWNlIHtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvd29ya3BsYWNlLnN2Zyk7XG5cblx0XHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTMvd29ya3BsYWNlLnBuZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmW2RhdGEtY291cnNldHlwZSo9XCJQYXJ0LVRpbWVcIl0sXG5cdCZbZGF0YS1jb3Vyc2V0eXBlKj1cIkhpZ2hlciBFZHVjYXRpb25cIl0ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTI7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcblx0XHR9XG5cblx0XHQmLmlzLXdvcmtwbGFjZSB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L3dvcmtwbGFjZS5zdmcpO1xuXG5cdFx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L3dvcmtwbGFjZS5wbmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JltkYXRhLWNvdXJzZXR5cGUqPVwiQXBwcmVudGljZXNoaXBcIl0ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHR9XG5cblx0XHQmLmlzLXdvcmtwbGFjZSB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS0zL3dvcmtwbGFjZS5zdmcpO1xuXG5cdFx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS0zL3dvcmtwbGFjZS5wbmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5pcy13b3JrcGxhY2Uge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS93b3JrcGxhY2Uuc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NSUgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTlweCAxNnB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDQ2cHg7XG5cblx0XHQubm8tc3ZnICYge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3dvcmtwbGFjZS5wbmcpO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2dyZXkvd29ya3BsYWNlLnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9ncmV5L3dvcmtwbGFjZS5wbmcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8vIC0tLS0tIEZsYWdzIC0tLS0tIC8vXG4lZmxhZyB7XG5cdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0Y29sb3I6ICNGRkY7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC1mYW1pbHk6ICRmb250LWJhc2U7XG5cdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRsaW5lLWhlaWdodDogMTtcblx0cGFkZGluZzogN3B4IDlweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjNzLCBjb2xvciAwLjNzKTtcbn1cblxuLmZsYWctbG9hbiB7XG5cdEBleHRlbmQgJWZsYWc7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTY7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9sb2FuLnN2Zyk7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDVweCBjZW50ZXI7XG5cdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNjtcblx0cGFkZGluZy1sZWZ0OiAzMnB4O1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2xvYW4ucG5nKTtcblx0fVxufVxuXG4vLyAtLS0tLSBMaW5rcyAtLS0tLSAvL1xuXG4ubG5rLWVtYWlsIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC9lbWFpbC5zdmcpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiAxOXB4IDE0cHg7XG5cdHBhZGRpbmctbGVmdDogMjhweDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC9lbWFpbC5wbmcpO1xuXHR9XG59XG5cbi8vIC0tLS0tIFZpZGVvIC0tLS0tIC8vXG5cbi52aWRlby1lbWJlZC1mcmFtZSB7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cblx0aWZyYW1lIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHR6LWluZGV4OiAxMDtcblx0fVxufVxuLnZpZGVvLWVtYmVkLW92ZXJsYXkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDIwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdEBpbmNsdWRlIG9wYWNpdHkoMSk7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjNzKTtcblxuXHQmLmZhZGUge1xuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0L3ZpZGVvLXBsYXkuc3ZnKTtcblx0XHRjb250ZW50OiAnJztcblx0XHRoZWlnaHQ6IDEwMHB4O1xuXHRcdHdpZHRoOiAxMDBweDtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0bWFyZ2luLXRvcDogLTUwcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IC01MHB4O1xuXHRcdEBpbmNsdWRlIG9wYWNpdHkoMC43KTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuM3MpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvdmlkZW8tcGxheS5wbmcpO1xuXHRcdH1cblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKiA9PT09PT09XG4gICBPdmVybGF5XG4gICA9PT09PT09ICovXG4vLyAub3ZlcmxheSxcbi8vIC5vdmVybGF5X2JveCB7XG4vLyBcdG9wYWNpdHk6IDA7XG4vLyBcdHBvc2l0aW9uOiBmaXhlZDtcbi8vIFx0dHJhbnNpdGlvbjogYWxsIDAuM3M7XG4vLyB9XG5cbi8vIC5vdmVybGF5IHtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjUpO1xuLy8gXHR0b3A6IDA7XG4vLyBcdHJpZ2h0OiAwO1xuLy8gXHRib3R0b206IDA7XG4vLyBcdGxlZnQ6IDA7XG4vLyBcdHotaW5kZXg6IDEwMDtcbi8vIH1cblxuLy8gLm92ZXJsYXlfYm94IHtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4vLyBcdGNvbG9yOiAjRkZGO1xuLy8gXHRsZWZ0OiA1MCU7XG4vLyBcdHRvcDogNTAlO1xuLy8gXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbi8vIFx0bWF4LWhlaWdodDogOTAlO1xuLy8gXHRtYXgtd2lkdGg6IDkwJTtcbi8vIFx0d2lkdGg6IDUwMHB4O1xuXG4vLyBcdGgyLFxuLy8gXHRhIHtcbi8vIFx0XHRjb2xvcjogaW5oZXJpdDtcbi8vIFx0fVxuXG4vLyBcdHAge1xuLy8gXHRcdG1hcmdpbjogMDtcbi8vIFx0fVxuLy8gfVxuXG4vLyAub3ZlcmxheV9ib3hfaW5uZXIge1xuLy8gXHRoZWlnaHQ6IDEwMCU7XG4vLyBcdG1heC1oZWlnaHQ6IDEwMCU7XG4vLyBcdG92ZXJmbG93LXk6IGF1dG87XG4vLyBcdG92ZXJmbG93LXg6IGhpZGRlbjtcbi8vIFx0cGFkZGluZzogMTJweDtcbi8vIH1cblxuLy8gLm92ZXJsYXlfX3Nob3cge1xuLy8gXHRvcGFjaXR5OiAxO1xuLy8gfVxuXG4vLyAub3ZlcmxheV9faGlkZSB7XG4vLyBcdGRpc3BsYXk6IG5vbmU7XG4vLyB9XG5cbi8vIC5vdmVybGF5X2Nsb3NlIHtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4vLyBcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2ljb24vcG9wdXAtY2xvc2UucG5nKTtcbi8vIFx0YmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4vLyBcdGJvcmRlcjogbm9uZTtcbi8vIFx0Y3Vyc29yOiBwb2ludGVyO1xuLy8gXHRoZWlnaHQ6IHJlbSgyMCk7XG4vLyBcdHdpZHRoOiByZW0oMjApO1xuLy8gXHRwYWRkaW5nOiAwO1xuLy8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyBcdHRvcDogcmVtKDE0KTtcbi8vIFx0cmlnaHQ6IHJlbSgxNCk7XG4vLyB9XG5cblxuLy8gLS0tLS0gT3ZlcmxheXMgLS0tLS0gLy9cbiVmYWRldGl0bGUge1xuXHRzcGFuIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLWxlZnQ6IC0xMnB4O1xuXHRcdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjNzLCBjb2xvciAwLjNzKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdHNwYW4ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdH1cblx0fVxufVxuLmZhZGVibG9jayB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRwYWRkaW5nLWxlZnQ6IDFweDtcblx0cGFkZGluZy1yaWdodDogMXB4O1xuXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC4zcywgY29sb3IgMC4zcyk7XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdH1cbn1cblxuXG4vLyAtLS0tLSBPdmVybGF5cyAtLS0tLSAvL1xuXG4uY29va2llIHtcblx0aGVpZ2h0OiAwO1xuXHRsaW5lLWhlaWdodDogMzBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAkY29sb3VyLWJhc2U7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oaGVpZ2h0IC4zcyBsaW5lYXIpO1xuXG5cdCYsXG5cdGEge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHR9XG5cblx0YSB7XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0fVxuXG5cdC5pbm5lciB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3VyLWJhc2U7XG5cdH1cblxuXHQubG5rLWFjY2VwdC1jb29raWVzIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdH1cblxuXHQmLnNob3cge1xuXHRcdGhlaWdodDogMzJweDtcblx0fVxuXHQmLmhpZGUge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdH1cbn1cblxuXG4vLyAtLS0tLSBJbnB1dHMgLS0tLS0gLy9cbmlucHV0LCB0ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xufVxuXG50ZXh0YXJlYSxcblt0eXBlPXRleHRdLFxuW3R5cGU9cGFzc3dvcmRdLFxuW3R5cGU9ZGF0ZXRpbWVdLFxuW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuW3R5cGU9ZGF0ZV0sXG5bdHlwZT1tb250aF0sXG5bdHlwZT10aW1lXSxcblt0eXBlPXdlZWtdLFxuW3R5cGU9bnVtYmVyXSxcblt0eXBlPWVtYWlsXSxcblt0eXBlPXVybF0sXG5bdHlwZT1zZWFyY2hdLFxuW3R5cGU9dGVsXSxcblt0eXBlPWNvbG9yXSB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgaGVpZ2h0OiA1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDJyZW07XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2Utb3V0O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJhc2U7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgJjpmb2N1cywgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1iYXNlO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgjOTk5OTk5LCAwLjgpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCM5OTk5OTksIDAuOCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoIzk5OTk5OSwgMC44KTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHJnYmEoIzk5OTk5OSwgMC44KTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgIH1cbn1cblxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi5mb3JtLWZpZWxkIHtcbiAgICBtYXgtaGVpZ2h0OiA5OTk5OTlweDsgLy9maXggYW5kcm9pZCB1bmV4cGVjdGVkIGZvbnQgc2l6ZSBjaGFuZ2luZ1xuXG4gICAgJiA+IHAge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAzcmVtO1xuICAgIH1cblxuICAgICYgPiBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmICsgLmZvcm0tZmllbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLWZpZWxkIGxhYmVsLmVycm9yLCAuZm9ybS1maWVsZCBzcGFuLmVycm9yLCAub3Blbi1xdWFsaS1idXR0b24gKyAuZXJyb3Ige1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgY29sb3I6ICNDRDJDMjc7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmZvcm0taW5wdXQgLmlucHV0LWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICBoZWlnaHQ6IDA7XG5cdG9wYWNpdHk6IDA7XG5cdHdpZHRoOiAwO1xuXG4gICAgJiArIGxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuNXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLy8gdG9wOiAtM3B4O1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpTVRFaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TWlBeE1TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTVNBMkxqTXpNek16VERRdU1qRTBNamtnT1NBeE1TQXhJaUJ6ZEhKdmEyVTlJaU15TVRNME5qSWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTFweDtcbiAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLy8gdG9wOiAtM3B4O1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAjQ0M0NTQ3O1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1pbnB1dC5pbnB1dC1jaGVja2JveC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgIC5pbnB1dC1jaGVja2JveCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuaW5wdXQtY2hlY2tib3ggKyAuaW5wdXQtY2hlY2tib3gge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjZyZW07XG4gICAgfVxuXG4gICAgJi5ob3Jpem9udGFsIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtY2hlY2tib3gge1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG5cbiAgICAgICAgICAgICYgKyAuaW5wdXQtY2hlY2tib3gge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAmLmhvcml6b250YWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEuNXJlbTtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlucHV0LWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgJiArIC5pbnB1dC1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLWlucHV0LXRleHRhcmVhIHRleHRhcmVhIHtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgdGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcbn1cblxuLmZvcm0taW5wdXQuY29tcGxleC1pbnB1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgW3R5cGU9dGV4dF0ge1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vdGhlci1pbnB1dCwgLnJlZnVnZWUtZmllbGQsIC5vdGhlci1maXJzdC1sYW5nLWZpZWxkLCAucXVhbGktZXhwbGFpbi1maWVsZCwgLmpzLWVtcGxveS1zZWN0aW9uLCAudW5kZXIxOS1saXZpbmctc2VjdGlvbiwgLnNlY29uZC1jb250YWN0LXNlY3Rpb24sIC5hZGRyZXNzZXMtbGlzdC1jb250YWluZXIsIC5wYXltZW50LWFkZHJlc3Mtc2VjdGlvbiwgLmFwcHJlbnRpY2VzaGlwLWZ1bGx0aW1lLCAuRUhDUC1maWVsZCwgLnJlY2VpdmUtZnVuZC1maWVsZCwgLmFybWVkLWZvcmNlcy1maWVsZCwgLmhvdXNlaG9sZC1maWVsZCwgLmV1LXJlc2lkZW50LWZpZWxkLCAuYWdyZWVtZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5oaWRlLWFuaW1hdGlvbiB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNDJzIGVhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiArIC5mb3JtLWZpZWxkOm5vdCguRUhDUC1maWVsZCk6bm90KC5yZWNlaXZlLWZ1bmQtZmllbGQpOm5vdCguYXJtZWQtZm9yY2VzLWZpZWxkKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgJiArIC5mb3JtLWZpZWxkOm5vdCguRUhDUC1maWVsZCk6bm90KC5yZWNlaXZlLWZ1bmQtZmllbGQpOm5vdCguYXJtZWQtZm9yY2VzLWZpZWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1maWVsZC53aWRlci5hZ3JlZW1lbnQtd3JhcHBlci5oaWRlLWFuaW1hdGlvbi5qcy1yZWZ1bmQtcG9saWN5LnNob3cge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG59XG5cbi5pbnB1dC1jaGVja2JveCBsYWJlbCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmlucHV0LXR5cGUtMSB7XG5cdGxlZnQ6IC05OTk5cHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuaW5wdXQge1xuXHQmW3JlYWRvbmx5XSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0VFRTtcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNFRUU7XG5cdFx0XHRib3JkZXItY29sb3I6ICRjb2xvdXItb3V0bGluZTtcblx0XHR9XG5cdH1cbn1cblxuXG4vLyAtLS0tLSBOaWNlIFNlbGVjdCAtLS0tLSAvL1xuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5zZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpT0NJZ2RtbGxkMEp2ZUQwaU1DQXdJREV5SURnaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVEVnTVd3MUlEVWdOUzAxSWlCemRISnZhMlU5SWlNeU1UTTBOaklpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZz09Jyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgMnJlbTtcbiAgICBoZWlnaHQ6IDZyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTk5OTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYmFzZTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IHJnYmEoJGNvbG91ci1iYXNlLCAwLjgpO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlLW91dDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmc6IDAgMy41cmVtIDAgMnJlbTtcblxuICAgICY6Zm9jdXMsICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICNDQzQ1NDc7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiA0cHg7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCwgJjpkaXNhYmxlZDpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzk5OTk5OTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKCRjb2xvdXItYmFzZSwgMC4zNSk7XG4gICAgfVxufVxuXG4ubmljZXNlbGVjdC13cmFwcGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcblx0Ly8gYm9yZGVyOiAxcHggc29saWQgIzk5OTk5OTtcblx0Y29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDZyZW07XG5cdGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblx0Ly8gb3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMCA0cmVtIDAgMnJlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZS1vdXQ7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cblx0Ji5mb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgNXB4ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgIH1cblxuXHQvLyAmOmFmdGVyIHtcbiAgICAvLyAgICAgY29udGVudDogJyc7XG4gICAgLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlPQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlJRGdpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRURWdNV3cxSURVZ05TMDFJaUJ6ZEhKdmEyVTlJaU15TVRNME5qSWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAvLyAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAvLyAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDhweDtcblx0Ly8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdC8vIFx0dG9wOiBjYWxjKDUwJSAtIDAuNHJlbSk7XG5cdC8vIFx0cmlnaHQ6IDJyZW07XG5cdC8vIFx0d2lkdGg6IDEuMnJlbTtcblx0Ly8gXHRoZWlnaHQ6IDAuOHJlbTtcblx0Ly8gXHR0ZXh0LWluZGVudDogLTk5OTk5ZW07XG5cdC8vIFx0ei1pbmRleDogNTtcblx0Ly8gfVxuXG5cdCYubmljZXNlbGVjdC1kZWZhdWx0IHtcblx0XHRjb2xvcjogcmdiYSgjOTk5OTk5LCAwLjgpO1xuXHR9XG5cblx0Lm5pY2VzZWxlY3QtdGV4dCB7XG5cdFx0ZmxleC1ncm93OiAxO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDQxNHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cdH1cblxuXHRzZWxlY3Qge1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAvLyBvcGFjaXR5OiAwO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHR9XG59XG5cbi5tdWx0aXBsZS1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luOiAwIC0wLjVyZW07XG5cbiAgICAmID4gKiB7XG4gICAgICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW5wdXQtcmFkaW8tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgIC5pbnB1dC1yYWRpbyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIHRyYW5zaXRpb246IG1hcmdpbi1yaWdodCAwLjE1cyBsaW5lYXI7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDM3NTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlLTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0NDQ0NDQztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwcHggMHB4IDRweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLW91dCwgY29sb3IgMC4zcyBlYXNlLW91dCwgYm9yZGVyLWNvbG9yIDAuM3MgZWFzZS1vdXQ7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRJaUlHaGxhV2RvZEQwaU1URWlJSFpwWlhkQ2IzZzlJakFnTUNBeE1pQXhNU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1TQTJMak16TXpNelREUXVNakUwTWprZ09TQXhNU0F4SWlCemRISnZhMlU5SWlObVptWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMXB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgbGluZWFyIDAuMTI1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAwLjEyNXMgbGluZWFyIDAuMTI1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmICsgLmlucHV0LXJhZGlvIGxhYmVsIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCA0cHggNHB4IDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0LXJhZGlvLXNpbXBsZS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLXRvcDogLTEuMnJlbTtcblxuICAgIC5pbnB1dC1yYWRpby1zaW1wbGUge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC4zcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4zcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTk5OTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpTVRFaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TWlBeE1TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTVNBMkxqTXpNek16VERRdU1qRTBNamtnT1NBeE1TQXhJaUJ6ZEhKdmEyVTlJaU5tWm1ZaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqd3ZjM1puUGc9PScpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIC5pbnB1dC1yYWRpby1zaW1wbGUge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIC5pbnB1dC1yYWRpby1zaW1wbGUge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgLmlucHV0LXJhZGlvLXNpbXBsZSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAyMy44JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0LXJhZGlvLXRhZyB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzU3O1xuICAgIG1hcmdpbjogMC41cmVtO1xuICAgIHRyYW5zaXRpb246IG1hcmdpbi1yaWdodCAwLjE1cyBsaW5lYXI7XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU3O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1vdXQsIGNvbG9yIDAuM3MgZWFzZS1vdXQsIGJvcmRlci1jb2xvciAwLjNzIGVhc2Utb3V0O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRJaUlHaGxhV2RvZEQwaU1URWlJSFpwWlhkQ2IzZzlJakFnTUNBeE1pQXhNU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1TQTJMak16TXpNelREUXVNakUwTWprZ09TQXhNU0F4SWlCemRISnZhMlU5SWlObVptWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTFweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyBsaW5lYXIgMC4xMjVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMC4xMjVzIGxpbmVhciAwLjEyNXMsXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAwLjEyNXMgbGluZWFyIDAuMTI1cztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyArIGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucHVycGxlIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwsIGlucHV0W3R5cGU9cmFkaW9dOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4Mi44NmRlZywgIzNEMDA1MSAwJSwgIzY2MTg4MCAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucmVkIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItY291cnNlLTI7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTI7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwsIGlucHV0W3R5cGU9cmFkaW9dOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIGxpbmVhci1ncmFkaWVudCgxODIuODZkZWcsICM4QzAwMDAgMCUsICNDOTJBMkEgOTkuNDIlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JlZW4ge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCwgaW5wdXRbdHlwZT1yYWRpb106Zm9jdXMgKyBsYWJlbCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgyLjkxZGVnLCAjMDA0MDAwIDEuMDglLCAjMTY4MjE2IDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5waW5rIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItY291cnNlLTY7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTY7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwsIGlucHV0W3R5cGU9cmFkaW9dOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWNvdXJzZS02O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4Mi45MWRlZywgI0E0MTM0NiAxLjA4JSwgI0Y0MUQ2OCAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyAtLS0tLSBUb29sdGlwIC0tLS0tIC8vXG4udG9vbHRpcC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG5cbiAgICAudG9vbHRpcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmOjpiZWZvcmUsICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMTUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAyMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtODBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgYm90dG9tOiAxNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3Zlcjo6YmVmb3JlLCAmOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApXCI7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuXG5cblxuXG4ucmFkaW9idXR0b24ge1xuXHRsYWJlbCB7XG5cdFx0bWFyZ2luLWxlZnQ6IDNweDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cdGlucHV0IHsgdmVydGljYWwtYWxpZ246bWlkZGxlOyB9XG59XG5cbi5sYmwge1xuXHRjb2xvcjogIzk5OTtcblx0bGluZS1oZWlnaHQ6IDE1cHg7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5vdGhlci1maWVsZCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0Ji5zaG93IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4uY2hlY2tib3gge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdG1hcmdpbi1yaWdodDogMzBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGlucHV0IHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogLTk5OSU7XG5cblx0XHQmOmNoZWNrZWQge1xuXHRcdFx0KyAuYm94IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHR9XG5cdFx0XHR+IC5sYmwge1xuXHRcdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0bGFiZWwge1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG5cblx0LmJveCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3RpY2suc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMjRweCAyMnB4O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvdXItb3V0bGluZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6IDMwcHg7XG5cdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjNzKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvdGljay5wbmcpO1xuXHRcdH1cblx0fVxufVxuXG4uY2hlY2tib3gtbGlzdCB7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cblx0bGFiZWwge1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdCsgbGFiZWwge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHR9XG5cdH1cblxuXHRpbnB1dCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IC05OTklO1xuXG5cdFx0JjpjaGVja2VkIHtcblx0XHRcdCsgLmJveCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0fVxuXHRcdFx0fiAubGJsIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5sYmwge1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tbGVmdDogMjVweDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0fVxuXG5cdC5ib3gge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS90aWNrLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDEycHggMTFweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLW91dGxpbmU7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDE1cHg7XG5cdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjNzKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvdGljay5wbmcpO1xuXHRcdH1cblx0fVxuXG5cdCsgaW5wdXQge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdH1cbn1cblxuXG5AaW5jbHVkZSBwbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAjNjY2NjY2O1xuXHRvcGFjaXR5OiAxO1xuXHQvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5sYWJlbC5lcnJvciB7XG5cdGNvbG9yOiAkY29sb3VyLWVycm9yO1xufVxuXG5cblxuXG4vLyAtLS0tLSBGb3JtcyAtLS0tLSAvL1xuXG4uZm9ybS1pdGVtIHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cblx0bGFiZWwge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0LmlucHV0IHtcblxuXHR9XG59XG5cbi5pbnB1dC1ncm91cCB7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR3aWR0aDogMTAwJTtcblxuXHQ+ICoge1xuXHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdH1cbn1cblxuLmZvcm0tYnV0dG9ucyB7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZm9ybS1lcnJvcnMge1xuXHRiYWNrZ3JvdW5kOiAjRkVFO1xuXHRib3JkZXI6IDFweCBzb2xpZCAjRjAwO1xuXHRjb2xvcjogI0YwMDtcblx0cGFkZGluZzogMTBweDtcblxuXHQ6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG5cbi8vIC0tLS0tIEFsZXJ0cyAtLS0tLSAvL1xuJWFsZXJ0IHtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0Ym9yZGVyLXdpZHRoOiAxcHg7XG5cdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdHBhZGRpbmc6IDFyZW07XG5cblx0KiB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0KiArICoge1xuXHRcdG1hcmdpbi10b3A6IDFyZW07XG5cdH1cbn1cblxuLmFsZXJ0LWVycm9yIHtcblx0QGV4dGVuZCAlYWxlcnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRUU7XG5cdGJvcmRlci1jb2xvcjogI0YwMDtcblx0Y29sb3I6ICNGMDA7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcblx0QGV4dGVuZCAlYWxlcnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkU7XG5cdGJvcmRlci1jb2xvcjogI0M5MDtcblx0Ly8gY29sb3I6ICNDOTA7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcblx0QGV4dGVuZCAlYWxlcnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICNFRkU7XG5cdGJvcmRlci1jb2xvcjogIzA5MDtcblx0Y29sb3I6ICMwOTA7XG59XG5cbi8vIC0tLS0tIENhcm91c2VsIC0tLS0tIC8vXG4vLyAuY2Fyb3VzZWwtd3JhcCB7XG4vLyBcdG92ZXJmbG93OiBoaWRkZW47XG4vLyBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuLy8gXHQuY2Fyb3VzZWwge1xuLy8gXHRcdEBleHRlbmQgJWxpc3QtcmVzZXQ7XG4vLyBcdFx0cG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8vIFx0LmNhcm91c2VsLWl0ZW0geyBmbG9hdDogbGVmdDsgfVxuLy8gfVxuXG5cbi8vIC0tLS0tIEJpZyBUYXJnZXQgLS0tLS0gLy9cbi5ob3ZlciB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vLyAtLS0tLSBUZW1wbGF0ZXMgLS0tLS0gLy9cblxuXG4vLyAtLS0tLSBFZGl0b3IgU3R5bGVzIC0tLS0tIC8vXG5cbi5zbWFsbCB7IGZvbnQtc2l6ZTogZW0oOSk7IH1cbi54c21hbGwgeyBmb250LXNpemU6IGVtKDgpOyB9XG4ubGFyZ2UgeyBmb250LXNpemU6IGVtKDE0KTsgfVxuLnhsYXJnZSB7IGZvbnQtc2l6ZTogZW0oMTYpOyB9XG5cbi5pbnRyb3RleHQge1xuXHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdGZvbnQtc2l6ZTogZW0oMTgpO1xufVxuXG4uY29sb3VyLWhpZ2hsaWdodCB7XG5cdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbn1cblxuLmRhc2hlZCB7XG5cdGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGNvbG91ci1oaWdobGlnaHQ7XG59XG5cbi5kaXNwbGF5LWlubGluZSB7XG5cdGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmRpc3BsYXktaW5saW5lLWJsb2NrIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cbi8vIC0tLS0tIFRhYmxlcyAtLS0tLSAvL1xudGFibGUge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uZ3QtaWU5IC50YmwtbW9iaWxlIHtcblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCl7XG5cdFx0JiwgdGFibGUsIHRib2R5LCB0ciwgdGQgeyBkaXNwbGF5OiBibG9jazsgfVxuXHRcdHRoZWFkLCB0aCB7IGRpc3BsYXk6IG5vbmU7IH1cblx0fVxufVxuXG4udGJsLW1vYmlsZS1hdHRyIHtcblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCl7XG5cdFx0dHIge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cblx0XHR0ZCB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Y29udGVudDogYXR0cih0aXRsZSk7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLy8gLS0tLS0gUGx1Z2luIFN0eWxpbmcgLS0tLS0gLy9cblxuLyogU2hhcmVUaGlzICovXG4vLyAuc2hhcmV0aGlzIHtcbi8vIFx0c3BhbiB7XG4vLyBcdFx0QGluY2x1ZGUgdmVuZG9yKGJveC1zaXppbmcsIGNvbnRlbnQtYm94KTtcbi8vIFx0fVxuLy8gfVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuXG4uc2xpY2stbGlzdCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXG5cdC5zbGljay1sb2FkaW5nICYge1xuXHRcdGJhY2tncm91bmQ6ICNmZmYgdXJsKC9zaXRlL2ltYWdlcy9hamF4LWxvYWRlci5naWYpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHR9XG5cblx0Ji5kcmFnZ2luZyB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGN1cnNvcjogaGFuZDtcblx0fVxufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0LFxuLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlLFxuLnNsaWNrLXNsaWRlIGltZyB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuICAgIHpvb206IDE7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdH1cblxuXHQuc2xpY2stbG9hZGluZyAmIHtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdH1cbn1cblxuLnNsaWNrLXNsaWRlIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMXB4O1xuXHRpbWcge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCYuc2xpY2stbG9hZGluZyB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoL3NpdGUvaW1hZ2VzL2FqYXgtbG9hZGVyLmdpZikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0XHR9XG5cdH1cblxuXHRkaXNwbGF5OiBub25lO1xuXG5cdCYuZHJhZ2dpbmcgaW1nIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXG5cdC5zbGljay1pbml0aWFsaXplZCAmIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5zbGljay1sb2FkaW5nICYge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdC5zbGljay12ZXJ0aWNhbCAmIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLyogSWNvbnMgKi9cbiBAZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6XCJzbGlja1wiO1xuXHRzcmM6dXJsKFwiL3NpdGUvZm9udHMvc2xpY2suZW90XCIpO1xuXHRzcmM6dXJsKFwiL3NpdGUvZm9udHMvc2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3NpdGUvZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvc2l0ZS9mb250cy9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi9zaXRlL2ZvbnRzL3NsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcblx0d2lkdGg6IDQuOHJlbTtcblx0aGVpZ2h0OiA0cmVtO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC1zaXplOiAwO1xuXHRsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuXHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cdGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICNDQzQ1NDc7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiA0cHg7XG5cdH1cblxuICAgICYuc2xpY2stZGlzYWJsZWQ6OmJlZm9yZSB7XG5cdFx0b3BhY2l0eTogMC4yNTtcblx0fVxufVxuXG4uc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1Ua2lJR2hsYVdkb2REMGlNVEFpSUhacFpYZENiM2c5SWpBZ01DQXhPU0F4TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVEFnTlVneE9FMHhPQ0ExVERFekxqVWdNVTB4T0NBMVRERXpMalVnT1NJZ2MzUnliMnRsUFNKaWJHRmpheUl2UGdvOEwzTjJaejRLJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB3aWR0aDogNC44cmVtO1xuXHQgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG5cdGxlZnQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG5cdH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IDQuOHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHggNXB4IDBweCAwcHg7XG5cblx0JjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuXHR9XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHggMHB4IDBweCAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIC8vIHBhZGRpbmc6IDAgMnJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW0gIWltcG9ydGFudDtcblxuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAvLyB3aWR0aDogMnJlbTtcbiAgICAgICAgLy8gaGVpZ2h0OiAycmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC8vIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICAvLyBtYXJnaW46IDFyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgLy8gd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6ICfigKInO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6J1xcODIyNic7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgLy8gd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnc2xpY2snO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0NDQ0NDQztcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG5cbiAgICB9XG59XG5cblxuLy8gLnNsaWNrLXNsaWRlciB7XG4vLyBcdG1hcmdpbi1ib3R0b206IDMwcHg7XG4vLyB9XG5cblxuLnByb3NwZWN0dXMtc2VsZWN0b3Ige1xuXHQuZm9ybS1pdGVtIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cblx0LmNoZWNrYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59Iiwi77u/Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIExheW91dFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKlxuXHQ9PT09PT09PT1cblx0Tm8gU2NyaXB0XG5cdD09PT09PT09PVxuKi9cbi5zaXRlLWFsZXJ0IHtcblx0YmFja2dyb3VuZDogI0ZGRjtcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGMDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LWZhbWlseTogc2Fucy1zZXJpZjtcblx0Zm9udC1zaXplOiBlbSgxMik7XG5cdGxlZnQ6IDA7XG5cdHBhZGRpbmc6IDVweCAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRvcDogMDtcblx0d2lkdGg6MTAwJTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xufVxuLyogTm8gU2NyaXB0ICovXG5cbi5mdWxsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLndyYXAge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAwcHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLmNvbnRlbnQtd3JhcCB7XG4gICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgLy8gbWF4LXdpZHRoOiAxMzJyZW07XG5cbiAgICAvLyBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuICAgIC8vIH1cbn1cblxuLmZ1bGx3aWR0aC13cmFwIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9jay1jZW50ZXIge1xuICAgIG1heC13aWR0aDogNzhyZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29udGVudC1ibG9jay1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5sZWZ0LWNvbCwgLnJpZ2h0LWNvbCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICYgKyAubWFpbi1jb2wge1xuICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgLmxlZnQtY29sIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMzLjMzJTtcbiAgICAgICAgICAgIG9yZGVyOiAwO1xuXG4gICAgICAgICAgICAmICsgLm1haW4tY29sIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA2Ni42NyU7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtY29sIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMzLjMzJTtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICAgICAmICsgLm1haW4tY29sIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA2Ni42NyU7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50LWJsb2NrLWxheW91dCArIC5jb250ZW50LWJsb2NrLWxheW91dCwgLmNvbnRlbnQtYmxvY2stbGF5b3V0ICsgLmNvbnRlbnQtYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNS42cmVtO1xuICAgIH1cbn1cblxuLy8gTW9iaWxlIDQgQ29sdW1uIGxheW91dCAvL1xuLm1vYmlsZS1jb2wtMSB7XG5cdHdpZHRoOiAyNSU7XG59XG4ubW9iaWxlLWNvbC0yIHtcblx0d2lkdGg6IDUwJTtcbn1cbi5tb2JpbGUtY29sLTMge1xuXHR3aWR0aDogNzUlO1xufVxuLm1vYmlsZS1jb2wtNCB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vLyBUYWJsZXQgOCBDb2x1bW4gbGF5b3V0IC8vXG4udGFibGV0LWNvbC0xIHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDEyLjUlO1xuXHR9XG59XG4udGFibGV0LWNvbC0yIHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDI1JTtcblx0fVxufVxuLnRhYmxldC1jb2wtMyB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiAzNy41JTtcblx0fVxufVxuLnRhYmxldC1jb2wtNCB7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cbn1cbi50YWJsZXQtY29sLTUge1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHR3aWR0aDogNjIuNSU7XG5cdH1cbn1cbi50YWJsZXQtY29sLTYge1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHR3aWR0aDogNzUlO1xuXHR9XG59XG4udGFibGV0LWNvbC03IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDg3LjUlO1xuXHR9XG59XG4udGFibGV0LWNvbC04IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuLy8gRGVza3RvcCAxMiBDb2x1bW4gbGF5b3V0IC8vXG4uZGVza3RvcC1jb2wtMSB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA4LjMzMzMlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtMiB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiAxNi42NjY2JTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTMge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogMjUlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtNCB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiAzMy4zMzMzJTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTUge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogNDEuNjY2NiU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC02IHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDUwJTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTcge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogNTguMzMzMyU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC04IHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDY2LjY2NjYlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtOSB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA3NSU7XG5cdH1cbn1cbi5kZXNrdG9wLWNvbC0xMCB7XG5cdEBpbmNsdWRlIG1pbig5NjBweCkge1xuXHRcdHdpZHRoOiA4My4zMzMzJTtcblx0fVxufVxuLmRlc2t0b3AtY29sLTExIHtcblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0d2lkdGg6IDkxLjY2NjYlO1xuXHR9XG59XG4uZGVza3RvcC1jb2wtMTIge1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG5cbi8vIFBsYWNlaG9sZGVyc1xuJW1vYmlsZS1vbmx5IHtcblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4ldGFibGV0LW9ubHkge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4lZGVza3RvcC1vbmx5IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4lbm90LWRlc2t0b3Age1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbiVtb2JpbGUtdGFibGV0LWliIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbiV0YWJsZXQtb25seS1pYiB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKDk2MHB4KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4lZGVza3RvcC1vbmx5LWliIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cbn1cblxuLm1vYmlsZS1vbmx5IHtcblx0QGV4dGVuZCAlbW9iaWxlLW9ubHk7XG59XG4udGFibGV0LW9ubHkge1xuXHRAZXh0ZW5kICV0YWJsZXQtb25seTtcbn1cbi5kZXNrdG9wLW9ubHkge1xuXHRAZXh0ZW5kICVkZXNrdG9wLW9ubHk7XG59XG5cblxuLm5vdC1kZXNrdG9wIHtcblx0QGV4dGVuZCAlbm90LWRlc2t0b3A7XG59XG5cblxuLnRhYmxldC1vbmx5LWliIHtcblx0QGV4dGVuZCAldGFibGV0LW9ubHktaWI7XG59XG4uZGVza3RvcC1vbmx5LWliIHtcblx0QGV4dGVuZCAlZGVza3RvcC1vbmx5LWliO1xufVxuXG5cblxuJXRhYmxldC11cCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbiV0YWJsZXQtdXAtaWIge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cbn1cblxuJWRlc2t0b3AtdXAge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAaW5jbHVkZSBtaW4oOTYwcHgpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4udGFibGV0LXVwIHtcblx0QGV4dGVuZCAldGFibGV0LXVwO1xufVxuXG4uZGVza3RvcC11cCB7XG5cdEBleHRlbmQgJWRlc2t0b3AtdXA7XG59XG5cbi5jb250ZW50LWJsb2NrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuLmxlZnQtY29sLCAucmlnaHQtY29sLCAubGVmdC1jb2wgKyAubWFpbi1jb2wsIC5yaWdodC1jb2wgKyAubWFpbi1jb2wge1xuICAgIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgICYgKyAuY29udGVudC1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAuYWNjcmVkaXRhdGlvbnMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG5cbiAgICAgICAgICAgICYgKyAuY29udGVudC1ibG9jayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNS42cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4lc3BsaXQtMiB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuICAgIC8vIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICAvLyBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuXG5cdC8vICYgPiAuY29sIHtcbiAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIC8vIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICYgPiAuY29sIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3BsaXQtMiB7XG5cdEBleHRlbmQgJXNwbGl0LTI7XG59XG5cbiVzcGxpdC0zIHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdC8vIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICAvLyBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuXG5cdCYgPiAuY29sIHtcbiAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICYgKyAuY29sIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oOTIwcHgpIHtcbiAgICAgICAgJiA+IC5jb2wge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMzMzMzMzMzJTtcblxuICAgICAgICAgICAgJiArIC5jb2wge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zcGxpdC0zIHtcblx0QGV4dGVuZCAlc3BsaXQtMztcbn1cblxuLm1haW4tY29udGVudCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbn1cblxuLmxlZnQtY29udGVudCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY3JTtcbn1cblxuLnJpZ2h0LWNvbnRlbnQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMyU7XG59XG5cbi5jb250ZW50LWxheW91dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5yaWdodC1sZWZ0LCAmLmxlZnQtcmlnaHQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOjEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogNjYuNjclO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjclO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGVmdC1yaWdodCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxufSIsIi5vbmUtY29sID4gKiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcblxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi50d28tY29scyA+ICoge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcblxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbn1cblxuLmZpdmUtY29scyA+ICoge1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcblxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG1heC13aWR0aDogMjAlO1xuICAgIH1cbn1cblxuLnRocmVlLWNvbHMgPiAqIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDMzLjMzJSAtIDVweCk7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMzMuMzMlIC0gNXB4KTtcbiAgICB9XG59XG5cbi5mb3VyLWNvbHMgPiAqIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICB9XG59XG5cbkBpbmNsdWRlIG1heCg3NjhweCkge1xuICAgIC50d28tY29scyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIG1heCg5MjBweCkge1xuICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgbWF4KDkyMHB4KSB7XG4gICAgLmZpdmUtY29scyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIG1heCg5MjBweCkge1xuICAgIC5mb3VyLWNvbHMge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGV4dC10aHVtYm5haWwge1xuICAgIEBleHRlbmQgLmFzcGVjdC1yYXRpby1pbWFnZTtcblxuICAgIC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLypcblx0PT09PT09PT09PT09PVxuXHRDYXJkc1xuXHQ9PT09PT09PT09PT09XG4qL1xuXG4ucHJvbW8tY2FyZCwgLm5ld3MtY2FyZCwgLnVwY29taW5nLWV2ZW50LWNhcmQsIC5jb3Vyc2UtY2FyZCwgLmNhcmVlci1jYXJkLCAuY2FzZS1zdHVkeS1jYXJkLCAuc3RhZmYtY2FyZCB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubmV3cy1jYXJkLCAuY2FzZS1zdHVkeS1jYXJkIHtcbiAgICAucmVhZG1vcmUtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi5wcm9tb3Mge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXG4gICAgJiA+ICo6Zmlyc3QtY2hpbGQgLnRleHQtdGh1bWJuYWlsOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNTcuNjdkZWcsICMzRDAwNTEgMCUsICM2NjE4ODAgMTAwJSk7XG4gICAgfVxuXG4gICAgJiA+ICo6bnRoLWNoaWxkKDIpIC50ZXh0LXRodW1ibmFpbDo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjU3LjY3ZGVnLCAjOEMwMDAwIDAlLCAjQzkyQTJBIDk5LjQyJSk7XG4gICAgfVxuXG4gICAgJiA+ICo6bGFzdC1jaGlsZCAudGV4dC10aHVtYm5haWw6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI1Ny44NWRlZywgIzAwNDAwMCAxLjA4JSwgIzE2ODIxNiAxMDAlKTtcbiAgICB9XG59XG5cbi5wcm9tby1jYXJkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgLmlubmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAycmVtIDNyZW07XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgLmlubmVyLWhlYWRlciwgLmNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBoMSwgcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbm5lci1oZWFkZXIgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuXG4gICAgICAgICAgICAmLndvcmQtYnJlYWstYWxsIHtcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICBib3R0b206IDNyZW07XG4gICAgICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcblxuICAgICAgICAgICAgJiB+IHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogN3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyAucHJvbW8tY2FyZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIH1cblxuICAgICYuZGFya2JsdWUge1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICMyMjJDNEY7XG4gICAgfVxuXG4gICAgJi5icmlnaHRibHVlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjMDBhZmVhO1xuICAgIH1cblxuICAgICYuZ3JlZW4ge1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICM1NUI0NUU7XG4gICAgfVxuXG4gICAgJi5hbHRncmVlbiB7XG4gICAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzk5ZmYzMztcbiAgICB9XG5cbiAgICAmLmJsdWUge1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICMyNjQ0OEU7XG4gICAgfVxuXG4gICAgJi5kYXJrYmx1ZSB7XG4gICAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzIyMmM0ZjtcbiAgICB9XG5cbiAgICAmLmFsdGJsdWUge1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICM2Njk5ZmY7XG4gICAgfVxuXG4gICAgJi5vcmFuZ2Uge1xuICAgICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNGNjcyMzg7XG4gICAgfVxuXG4gICAgJi5waW5rIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjRjM0NDk3O1xuICAgIH1cblxuICAgICYueWVsbG93IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjRkZDQzAwO1xuICAgIH1cblxuICAgICYucHVycGxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjNmM1Y2E3O1xuICAgIH1cblxuICAgICYuZnVsbC13aWR0aCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEycmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFsZi13aWR0aCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50b29sdGlwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwJSAtIDMwcmVtKSAqIDAuNSk7XG4gICAgICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMzByZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDhweCAycHggcmdiYSgwLDAsMCwwLjM1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gM3B4KTtcbiAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRjb2xvdXItYmFzZS0xO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyOjpiZWZvcmUsICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhcmdlciAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjAwcHggYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICAgICAgICBtaW4taGVpZ2h0OiAyNi41cmVtO1xuXG4gICAgICAgIC5pbm5lci1oZWFkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzcmVtO1xuICAgICAgICAgICAgcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMS4ycmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAsIGEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQyLjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU56Y2lJR2hsYVdkb2REMGlOellpSUhacFpYZENiM2c5SWpBZ01DQTNOeUEzTmlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NU0F4YURZMExqVjJOMGc0ZGpVNUxqVm9OVFJXTXpWb04zWXpPUzQxVERFZ056VldNWG9pSUdacGJHdzlJaU5HUmtaRVJrUWlMejQ4Y0dGMGFDQmtQU0pOTXpZZ05ESXVOV3d0TVRNdU5TMHhOQzAxSURWTU16Y2dOVE5zTXprdE5EQXVOUzAxTFRVdE16VWdNelY2SWlCbWFXeHNQU0lqUmtaR1JFWkVJaTgrUEhCaGRHZ2daRDBpVFRFZ01XZzJOQzQxZGpkSU9IWTFPUzQxYURVMFZqTTFhRGQyTXprdU5Vd3hJRGMxVmpGNklpQnpkSEp2YTJVOUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk16WWdOREl1Tld3dE1UTXVOUzB4TkMwMUlEVk1NemNnTlROc016a3ROREF1TlMwMUxUVXRNelVnTXpWNklpQnpkSEp2YTJVOUlpTm1abVlpTHo0OEwzTjJaejQ9Jyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvbW8tZmVhdHVyZS1pdGVtICsgLnByb21vLWZlYXR1cmUtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDU0MHB4KSB7XG4gICAgICAgIC5pbm5lciAuY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cmVtO1xuXG4gICAgICAgICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgLmlubmVyLWhlYWRlciBoMSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDlyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZ1bGwtd2lkdGggLmlubmVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5sYXJnZXIgLmlubmVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM2LjVyZW07XG5cbiAgICAgICAgICAgIC5pbm5lci1oZWFkZXIgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oOTIwcHgpIHtcbiAgICAgICAgLmlubmVyIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAucHJvbW8tY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gM3JlbSAzcmVtO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mdWxsLXdpZHRoIC5pbm5lciB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGFyZ2VyIC5pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDYuNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA0MjVweDtcblxuICAgICAgICAgICAgLmlubmVyLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgdG9wOiA1cmVtO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgaDMsIHAsIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvbW8tZmVhdHVyZS1pdGVtICsgLnByb21vLWZlYXR1cmUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAuaW5uZXIgLmlubmVyLWhlYWRlciBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGFyZ2VyIC5pbm5lciAuaW5uZXItaGVhZGVyIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3cy1jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAudGV4dC10aHVtYm5haWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1NC4xNCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxhcmdlOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEzNSU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5ld3MtaW5mbyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMnJlbSAwIDFyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucGFnZS1kYXRlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC40cmVtO1xuICAgIH1cblxuICAgIC5uZXdzLXByZXZpZXctdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZS0xO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgJi5zbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyAubmV3cy1jYXJkIHtcbiAgICAgICAgQGluY2x1ZGUgbWF4KCR0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBlb3BsZSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LXRodW1ibmFpbC5sYXJnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMzUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU0LjE0JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LXRodW1ibmFpbC5sYXJnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3MtaW5mbyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3MtcHJldmlldy10ZXh0IHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlYWRtb3JlLWJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5uZXdzLWNhcmQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgIH1cbn1cblxuLnVwY29taW5nLWV2ZW50LWNhcmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcblxuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M0QzRDNDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU4LjYyJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgICAmLnNyLW9ubHkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTsgLyogSUU2LCBJRTcgKi9cbiAgICAgICAgICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDJyZW07XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDEuNnJlbSAwIDAuOHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ldmVudC1kYXRlLXRleHQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig2NDBweCkge1xuICAgICAgICAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIC50ZXh0LXRodW1ibmFpbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1OC42MiU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMi42cmVtIDAgMS44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmV2ZW50LWRhdGUtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY291cnNlLWNhcmQge1xuICAgIHBhZGRpbmc6IDAgMnJlbTtcblxuICAgIC5jb3Vyc2UtY2FyZC1pbm5lciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMi41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgbWluLWhlaWdodDogMjUuM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICAgICYgPiBoMyB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3Vyc2UtdHlwZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gMCAxLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWJyaWVmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZS0xO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDBweCAwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5wdXJwbGUgLmNvdXJzZS1jYXJkLWlubmVyIHtcbiAgICAgICAgLmNvdXJzZS10eXBlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODIuODZkZWcsICMzRDAwNTEgMCUsICM2NjE4ODAgMTAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQWlJR2hsYVdkb2REMGlNVEFpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F4TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5Mak16TURBM09DQTFTREU0TGpNek1ERnRNQ0F3YkMwMExqVXRORzAwTGpVZ05Hd3ROQzQxSURRaUlITjBjbTlyWlQwaWRYSnNLQ053WVdsdWREQmZiR2x1WldGeUtTSXZQanhrWldaelBqeHNhVzVsWVhKSGNtRmthV1Z1ZENCcFpEMGljR0ZwYm5Rd1gyeHBibVZoY2lJZ2VERTlJakU0TGpNek1ERWlJSGt4UFNJeElpQjRNajBpTGpZMk9ETTFJaUI1TWowaU9TNDJPRGMyT1NJZ1ozSmhaR2xsYm5SVmJtbDBjejBpZFhObGNsTndZV05sVDI1VmMyVWlQanh6ZEc5d0lITjBiM0F0WTI5c2IzSTlJaU16UkRBd05URWlMejQ4YzNSdmNDQnZabVp6WlhROUlqRWlJSE4wYjNBdFkyOXNiM0k5SWlNMk5qRTRPREFpTHo0OEwyeHBibVZoY2tkeVlXUnBaVzUwUGp3dlpHVm1jejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucmVkIC5jb3Vyc2UtY2FyZC1pbm5lciB7XG4gICAgICAgIC5jb3Vyc2UtdHlwZSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAgbGluZWFyLWdyYWRpZW50KDE4Mi44NmRlZywgIzhDMDAwMCAwJSwgI0M5MkEyQSA5OS40MiUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakFpSUdobGFXZG9kRDBpTVRBaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeE1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTGpZMk1ERTFOaUExU0RFNExqWTJNREp0TUNBd2JDMDBMalV0TkcwMExqVWdOR3d0TkM0MUlEUWlJSE4wY205clpUMGlkWEpzS0NOd1lXbHVkREJmYkdsdVpXRnlLU0l2UGp4a1pXWnpQanhzYVc1bFlYSkhjbUZrYVdWdWRDQnBaRDBpY0dGcGJuUXdYMnhwYm1WaGNpSWdlREU5SWpFNExqWTJNRElpSUhreFBTSXVPVGs1T1RrNUlpQjRNajBpTGprNU9EUXlPQ0lnZVRJOUlqa3VOamczTmpraUlHZHlZV1JwWlc1MFZXNXBkSE05SW5WelpYSlRjR0ZqWlU5dVZYTmxJajQ4YzNSdmNDQnpkRzl3TFdOdmJHOXlQU0lqT0VNd01EQXdJaTgrUEhOMGIzQWdiMlptYzJWMFBTSXVPVGswTWpJaUlITjBiM0F0WTI5c2IzSTlJaU5ET1RKQk1rRWlMejQ4TDJ4cGJtVmhja2R5WVdScFpXNTBQand2WkdWbWN6NDhMM04yWno0PScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmVlbiAuY291cnNlLWNhcmQtaW5uZXIge1xuICAgICAgICAuY291cnNlLXR5cGUge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4Mi45MWRlZywgIzAwNDAwMCAxLjA4JSwgIzE2ODIxNiAxMDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpBaUlHaGxhV2RvZEQwaU1UQWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXhNQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTkxqTXpNREEzT0NBMVNERTRMak16TURGdE1DQXdiQzAwTGpVdE5HMDBMalVnTkd3dE5DNDFJRFFpSUhOMGNtOXJaVDBpZFhKc0tDTndZV2x1ZERCZmJHbHVaV0Z5S1NJdlBqeGtaV1p6UGp4c2FXNWxZWEpIY21Ga2FXVnVkQ0JwWkQwaWNHRnBiblF3WDJ4cGJtVmhjaUlnZURFOUlqRTRMakU0TkRFaUlIa3hQU0l4TGpFNE5EazNJaUI0TWowaUxqWTFOelEwTXlJZ2VUSTlJamt1TmpjMU56VWlJR2R5WVdScFpXNTBWVzVwZEhNOUluVnpaWEpUY0dGalpVOXVWWE5sSWo0OGMzUnZjQ0J6ZEc5d0xXTnZiRzl5UFNJak1EQTBNREF3SWk4K1BITjBiM0FnYjJabWMyVjBQU0l4SWlCemRHOXdMV052Ykc5eVBTSWpNVFk0TWpFMklpOCtQQzlzYVc1bFlYSkhjbUZrYVdWdWRENDhMMlJsWm5NK1BDOXpkbWMrJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBpbmsgLmNvdXJzZS1jYXJkLWlubmVyIHtcbiAgICAgICAgLmNvdXJzZS10eXBlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWNvdXJzZS02O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODIuOTFkZWcsICNGNDFENjggMS4wOCUsICNGOTgzQUMgMTAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1Ua2lJR2hsYVdkb2REMGlNVEFpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRUQWdOV2d4T0cwd0lEQnNMVFF1TlMwMFRURTRJRFZzTFRRdU5TQTBJaUJ6ZEhKdmEyVTlJblZ5YkNnamNHRnBiblF3WDJ4cGJtVmhjaWtpTHo0OFpHVm1jejQ4YkdsdVpXRnlSM0poWkdsbGJuUWdhV1E5SW5CaGFXNTBNRjlzYVc1bFlYSWlJSGd4UFNJeE9DSWdlVEU5SWpFaUlIZ3lQU0l1TXpNNE1qY3lJaUI1TWowaU9TNDJPRGMyT1NJZ1ozSmhaR2xsYm5SVmJtbDBjejBpZFhObGNsTndZV05sVDI1VmMyVWlQanh6ZEc5d0lITjBiM0F0WTI5c2IzSTlJaU5HTkRGRU5qZ2lMejQ4YzNSdmNDQnZabVp6WlhROUlqRWlJSE4wYjNBdFkyOXNiM0k5SWlOR09UZ3pRVU1pTHo0OEwyeHBibVZoY2tkeVlXUnBaVzUwUGp3dlpHVm1jejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1leHRlcm5hbC1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgY29sb3I6ICNGRkZGRkY7XG5cbiAgICAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgKyBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnVuZGVybGluZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oOTIwcHgpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgLmZsZXgge1xuICAgICAgICAgICAgcGFkZGluZzogNHJlbTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICsgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5mbGV4IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICArIHAge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJlZXItY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDUuOTUlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1Ljg3ZGVnLCAjMDAwMDAwIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMi40cmVtIDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAuaW5uZXIgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXNlLXN0dWR5LWNhcmQge1xuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTguMzIlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXNlLWluZm8ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAubGV2ZWwtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zMzM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgbWFyZ2luOiAwLjhyZW0gMCAxLjJyZW07XG4gICAgfVxuXG4gICAgLmNhc2UtcHJldmlldy10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlLTE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmICsgLmNhc2Utc3R1ZHktY2FyZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDY0MHB4KSB7XG4gICAgICAgIC50ZXh0LXRodW1ibmFpbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzMuNjMlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhc2UtaW5mbyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxldmVsLXRleHQge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjRyZW0gMCAxLjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmICsgLmNhc2Utc3R1ZHktY2FyZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBwYWRkaW5nOiAwIDJyZW07XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjRyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY2FzZS1wcmV2aWV3LXRleHQsIC5yZWFkbW9yZS1idXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxldmVsLXRleHQge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjhyZW0gMCAxLjhyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdGFmZi1jYXJkIHtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgLy8gbWFyZ2luOiAxLjhyZW0gMCAwO1xuICAgICAgICAvLyBmb250LXNpemU6IDJyZW07XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuXG4gICAgLnN0YWZmLWluZm8ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMDtcbiAgICB9XG5cbiAgICAuc3RhZmYtaW5mbyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgLy8gY29sb3I6ICRjb2xvdXItYmFzZS0xO1xuICAgICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICYuam9iLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIuNXJlbTtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgbWFyZ2luOiAxLjhyZW0gMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YWZmLWluZm8ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdGFmZi1pbmZvIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlLTE7XG5cbiAgICAgICAgICAgICYuam9iLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qXG5cdD09PT09PT09PT09PT1cblx0Q2FyZCBCbG9ja3Ncblx0PT09PT09PT09PT09PVxuKi9cbi5jYXJkLWJsb2NrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmNhcmQtaGVhZGVyLXRleHQge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvcmRlcjogMDtcbiAgICB9XG5cbiAgICAuY2FyZC1hY3Rpb25zIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gICAgICAgICYgKyAuY2FyZC1ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYmxvY2stY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogM3JlbSAtMXJlbSAwO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG5cbiAgICAgICAgJjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgLmNhcmQtaGVhZGVyLXRleHQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNjUlO1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgJi53aWRlIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtYWN0aW9ucyB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzNSU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICAgICAmICsgLmNhcmQtYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuY2FyZC1ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIC5jYXJkLWhlYWRlci10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luOiAzcmVtIC0ycmVtIDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNHJlbSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sYXRlc3QtbmV3cyB7XG4gICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuXG4gICAgJiArIC51cGNvbWluZy1ldmVudHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIC5wcm9tb3MgKyAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuXG4gICAgICAgICAgICAmICsgLnVwY29taW5nLWV2ZW50cyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLnByb21vcyArICYge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG5cbiAgICAgICAgICAgICYgKyAudXBjb21pbmctZXZlbnRzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udXBjb21pbmctZXZlbnRzIHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI0NDQ0NDQztcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuXG4gICAgICAgIC5jYXJkLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3cy1saXN0IHtcbiAgICBtYXJnaW46IDNyZW0gLTJyZW0gMDtcblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLm5ld3MtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXZlbnRzLWxpc3Qge1xuICAgIG1hcmdpbjogMnJlbSAtMnJlbSA0cmVtO1xufVxuXG4uY291cnNlLWxpc3Qge1xuICAgIG1hcmdpbjogLTJyZW0gLTNyZW0gMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgJi5qcy1jb3Vyc2Utc2VhcmNoLXJlc3VsdHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICY6bm90KDplbXB0eSkge1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjA0LCAyMDQsIDIwNCwgMC4yKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY291cnNlLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAmLmpzLWNvdXJzZS1zZWFyY2gtcmVzdWx0cyB7XG4gICAgICAgICAgICBtYXJnaW46IC0ycmVtIC0ycmVtIDA7XG5cbiAgICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEwMCUpICogLTAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLmNvdXJzZS1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJlZXJzLWxpc3Qge1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG5cblxuICAgIC5jYXJlZXItY2FyZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig2NDBweCkge1xuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZWVyLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luOiAtMS41cmVtIDAuNXJlbSAwO1xuXG4gICAgICAgIC5jYXJlZXItY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTIuNXJlbTtcbiAgICB9XG59XG5cbi5jYXNlLXN0dWRpZXMge1xuICAgIC5jYXJkLWhlYWRlci10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgICB9XG5cbiAgICAuY2FyZC1ibG9jay1jb250ZW50Lm9uZS1jb2wgPiAuY2FzZS1zdHVkeS1jYXJkOm9ubHktY2hpbGQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDJyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW0gNHJlbTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQ0NDQ0NDO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FzZXN0dWR5LXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRjb2xvdXItaGlnaGxpZ2h0LTUsIDAuNSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzcmVtIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIC5jYXJkLWhlYWRlci10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWJsb2NrLWNvbnRlbnQub25lLWNvbCA+IC5jYXNlLXN0dWR5LWNhcmQ6b25seS1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4MC44NyU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDRyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjIpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMy42cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sZXZlbC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYXNlc3R1ZHktdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLmNhcmQtaGVhZGVyLXRleHQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWJsb2NrLWNvbnRlbnQub25lLWNvbCA+IC5jYXNlLXN0dWR5LWNhcmQ6b25seS1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuXG4gICAgICAgICAgICAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDc3LjI5JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxlZnQtY29sICsgLm1haW4tY29sIHtcbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIC5wcm9tby1jYXJkLmxhcmdlciAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMzY1cHg7XG5cbiAgICAgICAgICAgIC5pbm5lci1oZWFkZXIge1xuICAgICAgICAgICAgICAgIHRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICByaWdodDogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGgzLCBwLCBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgIC5wcm9tb3MsIC5jYXJkLWJsb2NrIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn0iLCIvKlxuXHQ9PT09PT09PT09PVxuXHRTaXRlIEhlYWRlclxuXHQ9PT09PT09PT09PVxuKi9cbi5oZWFkZXItc2l0ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNnJlbTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgbGluZWFyO1xuICAgIHotaW5kZXg6IDIwMDtcblxuICAgICYgPiAud3JhcCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIC5sb2dvLWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3NpdGUvaW1hZ2VzL2xvZ28vZWFzdGxlaWdoLnN2ZycpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3OHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogODlweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvLXNoZ2Mge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3NpdGUvaW1hZ2VzL2xvZ28vc2hjZy5zdmcnKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW4tc2VhcmNoIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwKTtcblxuICAgICAgICAubmF2LW1haW4gLm5hdndyYXAge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4ycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoLWJhciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgbGluZWFyO1xuXG4gICAgICAgICAgICAuanMtc2VhcmNoLWNsb3NlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaCB7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG5cbiAgICAgICAgICAgICAgICAuZm9ybS1zZWFyY2gge1xuICAgICAgICAgICAgICAgICAgICAuaW5wdXQtZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLXNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNaklpSUdobGFXZG9kRDBpTWpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TWlBeU1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4WTJseVkyeGxJR040UFNJNUxqSXpNRGMzSWlCamVUMGlPUzR5TXpBM055SWdjajBpTnk0M016QTNOeUlnYzNSeWIydGxQU0lqTURBek16azVJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqTWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKeWIzVnVaQ0l2UGp4d1lYUm9JR1E5SWsweE5TNHpPRFE0SURFMUxqTTRORGRzTkM0Mk1UVTBJRFF1TmpFMU5DSWdjM1J5YjJ0bFBTSWpNREF6TXprNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpNaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSXZQand2YzNablBnPT0nKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LW1vYmlsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAubmF2LW1vYmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYtbW9iaWxlX2lubmVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWFyY2gtYmFyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0NDQ0NDQztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVuLW1lbnUge1xuICAgICAgICAuc2VhcmNoLWJhciAuZm9ybS1zZWFyY2ggLmZvcm0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qSWlJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXlNaUF5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhZMmx5WTJ4bElHTjRQU0k1TGpJek1EYzNJaUJqZVQwaU9TNHlNekEzTnlJZ2NqMGlOeTQzTXpBM055SWdjM1J5YjJ0bFBTSWpNREF6TXprNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpNaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSXZQanh3WVhSb0lHUTlJazB4TlM0ek9EUTRJREUxTGpNNE5EZHNOQzQyTVRVMElEUXVOakUxTkNJZ2MzUnliMnRsUFNJak1EQXpNems1SWlCemRISnZhMlV0ZDJsa2RHZzlJak1pSUhOMGNtOXJaUzFzYVc1bFkyRndQU0p5YjNWdVpDSWdjM1J5YjJ0bExXeHBibVZxYjJsdVBTSnliM1Z1WkNJdlBqd3ZjM1puUGc9PScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zY3JvbGxpbmcsICYud2hpdGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuXG4gICAgICAgICYgPiAud3JhcDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1tYWluIHtcbiAgICAgICAgICAgIC5uYXYgPiB1bCA+IGxpID4gYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYXBwbHktYnV0dG9uIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWFyY2gtYmFyIC5mb3JtLXNlYXJjaCAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpJaUlHaGxhV2RvZEQwaU1qSWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1pQXlNaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OFkybHlZMnhsSUdONFBTSTVMakl6TURjM0lpQmplVDBpT1M0eU16QTNOeUlnY2owaU55NDNNekEzTnlJZ2MzUnliMnRsUFNJak1EQXpNems1SWlCemRISnZhMlV0ZDJsa2RHZzlJak1pSUhOMGNtOXJaUzFzYVc1bFkyRndQU0p5YjNWdVpDSWdjM1J5YjJ0bExXeHBibVZxYjJsdVBTSnliM1Z1WkNJdlBqeHdZWFJvSUdROUlrMHhOUzR6T0RRNElERTFMak00TkRkc05DNDJNVFUwSURRdU5qRTFOQ0lnYzNSeWIydGxQU0lqTURBek16azVJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqTWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKeWIzVnVaQ0l2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LW1vYmlsZSAuc2VhcmNoLWJhciAuZm9ybS1zZWFyY2ggLmZvcm0tc2VhcmNoLWJ1dHRvbiBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtbW9iaWxlLWJ1dHRvbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cbiAgICAgICAgICAgICYubmF2LW1vYmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU1UQWlJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQXhNQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1TQXhhREV5VFRFZ05XZ3hNazB4SURsb01USWlJSE4wY205clpUMGlJekF3TXpNNU9TSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpQnpkSEp2YTJVdGJHbHVaV05oY0QwaWNtOTFibVFpSUhOMGNtOXJaUzFzYVc1bGFtOXBiajBpY205MWJtUWlMejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtc3ViID4gdWwgPiBsaSA+IGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDUzOXB4KSB7XG4gICAgICAgICYubW9iaWxlLXdoaXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cbiAgICAgICAgICAgIC5zZWFyY2gtYmFyIC5mb3JtLXNlYXJjaCAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qSWlJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXlNaUF5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhZMmx5WTJ4bElHTjRQU0k1TGpJek1EYzNJaUJqZVQwaU9TNHlNekEzTnlJZ2NqMGlOeTQzTXpBM055SWdjM1J5YjJ0bFBTSWpNREF6TXprNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpNaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSXZQanh3WVhSb0lHUTlJazB4TlM0ek9EUTRJREUxTGpNNE5EZHNOQzQyTVRVMElEUXVOakUxTkNJZ2MzUnliMnRsUFNJak1EQXpNems1SWlCemRISnZhMlV0ZDJsa2RHZzlJak1pSUhOMGNtOXJaUzFzYVc1bFkyRndQU0p5YjNWdVpDSWdjM1J5YjJ0bExXeHBibVZxYjJsdVBTSnliM1Z1WkNJdlBqd3ZjM1puUGc9PScpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LW1vYmlsZSAuc2VhcmNoLWJhciAuZm9ybS1zZWFyY2ggLmZvcm0tc2VhcmNoLWJ1dHRvbiBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYtbW9iaWxlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJi5uYXYtbW9iaWxlLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU1UQWlJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQXhNQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1TQXhhREV5VFRFZ05XZ3hNazB4SURsb01USWlJSE4wY205clpUMGlJekF3TXpNNU9TSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpQnpkSEp2YTJVdGJHbHVaV05oY0QwaWNtOTFibVFpSUhOMGNtOXJaUzFzYVc1bGFtOXBiajBpY205MWJtUWlMejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICAgIC5sb2dvLWdyb3VwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvLXNoZ2Mge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIGhlaWdodDogMTUuNXJlbTtcblxuXG5cbiAgICAgICAgJiA+IC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5vcGVuLXNlYXJjaCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1LjVyZW07XG5cbiAgICAgICAgICAgICYuc2Nyb2xsaW5nLCAmLndoaXRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICYgPiAud3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMnJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBTaXRlIEhlYWRlciAqL1xuXG4uaGVhZGVyLXNpdGUgKyAuY29udGVudC13cmFwLm1haW4ge1xuICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcblxuICAgIC5jb250ZW50LXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1LjVyZW07XG4gICAgfVxufVxuXG4vKlxuXHQ9PT09PT09PT09XG5cdE5hdmlnYXRpb25cblx0PT09PT09PT09PVxuKi9cbi5uYXYtbWFpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgIC5uYXZ3cmFwIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgLm5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAmID4gdWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbGgoMjUsIDE4KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLm9wZW4sICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE2cHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubWVnYS1uYXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSA+IC5tZWdhLW5hdiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDE1LjJyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgbGluZWFyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbGgoMjQsIDIwKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsaSwgbGkgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDIyLCAxNik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkuc2VlLWFsbCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlZS1hbGwtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA3MC44MzMlO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMnJlbSAycmVtIDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM4cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmxlZnQtY29udGVudC1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpvbmx5LWNoaWxkIHVsIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAyOS4xNjclO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW0gMnJlbSA0cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG91ci1oaWdobGlnaHQsIDAuMDUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxpLCBsaSBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSA+IC5tZWdhLW5hdiAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSA+IC5tZWdhLW5hdiAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjNyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gMXJlbSA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpLCBsaSBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgyMiwgMTgpO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFwcGx5LWJ1dHRvbiB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAubmF2ID4gdWwgbGkgPiAubWVnYS1uYXYgLmxlZnQtY29udGVudCAubGVmdC1jb250ZW50LWlubmVyOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2ID4gdWwgbGkgPiAubWVnYS1uYXYgLmxlZnQtY29udGVudCB1bCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM4cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5uYXYgPiB1bCB7XG4gICAgICAgICAgICBsaSA+IC5tZWdhLW5hdiB7XG4gICAgICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgKyAxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGk6bnRoLWxhc3QtY2hpbGQoLW4gKyAyKSA+IC5tZWdhLW5hdiAucmlnaHQtY29udGVudCB1bCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYtc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cblx0c2VsZWN0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubmF2LW1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA2cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICB1bDpub3QoLnN1Yi1tZW51KSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgyNCwgMjApO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gYTpub3QoOm9ubHktY2hpbGQpOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpTVRJaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TWlBeE1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTmk0eU5ESTJOU0F4TUM0eU5ESTJUREV3TGpRNE5UTWdOaUEyTGpJME1qWTFJREV1TnpVM016WWlJSE4wY205clpUMGlJekF6T1NJZ2MzUnliMnRsTFhkcFpIUm9QU0l5SWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaUx6NDhMM04yWno0PScpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRjb2xvdXItaGlnaGxpZ2h0LCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1tb2JpbGVfaW5uZXIgPiB1bCAubmF2LWxldmVsMS1jb250YWluZXIsIC5uYXYtbW9iaWxlX2lubmVyID4gdWwgLm5hdi1sZXZlbDItY29udGFpbmVyLCAubmF2LW1vYmlsZV9pbm5lciA+IHVsIC5uYXYtbGV2ZWwzLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAzMDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG5cbiAgICAgICAgLnJldHVybi1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgICAgICAgLmJhY2stYnRuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlNVElpSUhacFpYZENiM2c5SWpBZ01DQXhNaUF4TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5OaTR5TkRJMk5DQXhMams1T1RrM1RESWdOaTR5TkRJMk1XdzBMakkwTWpZMElEUXVNalF5TmpraUlITjBjbTlyWlQwaUl6QXpPU0lnYzNSeWIydGxMWGRwWkhSb1BTSXlJaUJ6ZEhKdmEyVXRiR2x1WldOaGNEMGljbTkxYm1RaUlITjBjbTlyWlMxc2FXNWxhbTlwYmowaWNtOTFibVFpTHo0OEwzTjJaejQ9Jyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDEycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDE2LCAxMik7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LW1vYmlsZS1idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlNVElpSUhacFpYZENiM2c5SWpBZ01DQXhNaUF4TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NUzQzTlRjek9TQXhMamMxTnpNMmJEZ3VORGcxTXpFZ09DNDBPRFV5TkUweExqYzFOek01SURFd0xqSTBNalpzT0M0ME9EVXpNUzA0TGpRNE5USTBJaUJ6ZEhKdmEyVTlJaU13TXpraUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDlJbkp2ZFc1a0lpOCtQQzl6ZG1jKycpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtbW9iaWxlLWJ1dHRvbiB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRib3JkZXI6IG5vbmU7XG4gICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogbGgoMTAsIDgpO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICNDQzQ1NDc7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uYXYtbW9iaWxlLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UUWlJR2hsYVdkb2REMGlNVEFpSUhacFpYZENiM2c5SWpBZ01DQXhOQ0F4TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NU0F4YURFeVRURWdOV2d4TWsweElEbG9NVElpSUhOMGNtOXJaVDBpSTJabVppSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpQnpkSEp2YTJVdGJHbHVaV05oY0QwaWNtOTFibVFpSUhOMGNtOXJaUzFzYVc1bGFtOXBiajBpY205MWJtUWlMejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyLjRyZW0gMCAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1iYXIge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMnJlbTtcblxuICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgIC5mb3JtLXNlYXJjaCAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMi40cmVtO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDEwLCA4KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTByZW0gM3JlbSAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJGNvbG91ci1iYXNlLCAwLjUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcblxuICAgICAgICAubmF2LW1vYmlsZS1idXR0b24ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG4gICAgICAgICAgICAmLm5hdi1tb2JpbGUtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlNVElpSUhacFpYZENiM2c5SWpBZ01DQXhNaUF4TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NUzQzTlRjek9TQXhMamMxTnpNMmJEZ3VORGcxTXpFZ09DNDBPRFV5TkUweExqYzFOek01SURFd0xqSTBNalpzT0M0ME9EVXpNUzA0TGpRNE5USTBJaUJ6ZEhKdmEyVTlJaU13TXpraUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDlJbkp2ZFc1a0lpOCtQQzl6ZG1jKycpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLm5hdi1tb2JpbGVfaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4ycyBsaW5lYXI7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIC5hcHBseS1idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwIDIuNXJlbSAzcmVtO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMS4xcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcGVuICYge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA2cmVtKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwIC0gNnJlbSk7XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgfVxufVxuXG4ubmF2LXNpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBsaSwgbGkgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgfVxuXG4gICAgdWwgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAmID4gYTpub3QoOm9ubHktY2hpbGQpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UUWlJR2hsYVdkb2REMGlNVEFpSUNCMmFXVjNRbTk0UFNJd0lEQWdNVFFnTVRBaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVEFnTldneE1tMHdJREJNTnk0MUlERk5NVElnTlV3M0xqVWdPU0lnYzNSeWIydGxQU0lqTURNNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUx6NDhMM04yWno0PScpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmID4gdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zNXMgbGluZWFyO1xuXG4gICAgICAgICAgICAmID4gbGkgPiBhOm5vdCg6b25seS1jaGlsZCk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPQ0lnYUdWcFoyaDBQU0l4TUNJZ2RtbGxkMEp2ZUQwaU1DQXdJRGdnTVRBaUlDQm1hV3hzUFNKdWIyNWxJaUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lQanh3WVhSb0lHUTlJazB4SURGc05DNDFJRFJNTVNBNUlpQnpkSEp2YTJVOUlpTXdNemtpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4cHggMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLm5hdi1ob3Jpem9udGFsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwYWRkaW5nLWxlZnQ6IDRweCAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDRweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cdH1cblx0YSB7XG5cdFx0QGV4dGVuZCAuYnV0dG9uLXNlY29uZGFyeTtcblx0fVxuXG5cdC5hY3RpdmUge1xuXHRcdD4gYSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0Y29sb3I6ICRjb2xvdXItc2Vjb25kYXJ5O1xuXHRcdH1cblx0fVxufVxuXG4ubmF2LXN1YiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMXJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJiA+IHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDMuNXJlbTtcblxuICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYmFzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgxOCwgMTQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4ubW9iaWxlLXN1YiB7XG4gICAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCA1MSwgMTUzLCAwLjIpO1xuXG4gICAgJiA+IHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yODtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBOYXZpZ2F0aW9uICovIiwiLypcblx0PT09PT09PT09PT1cblx0U2l0ZSBGb290ZXJcblx0PT09PT09PT09PT1cbiovXG4uZm9vdGVyLXNpdGUge1xuICAgIHBhZGRpbmc6IDAgMCA0cmVtIDA7XG5cbiAgICAuZm9vdGVyLWFwcGx5LW5vdyB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gM3JlbSAycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvdXItaGlnaGxpZ2h0LCAwLjgpO1xuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcHBseS10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTJyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDNyZW0gMDtcblxuICAgICAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFwcGx5LXRleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS42cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICB9XG5cbiAgICAuZm9vdGVyLWJhciB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkZXI7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbGgoMjQsIDIwKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWxpbms7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgyNywgMTYpO1xuXG4gICAgICAgICAgICAgICAgJi5oZWF2aWVyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5lbWFpbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtZm9vdGVyIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgyMiwgMTYpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuM3MpO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1jb2x1bW5zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgkY29sb3VyLWhpZ2hsaWdodC01LCAwLjIpO1xuXG4gICAgICAgICAgICAuY29sLTEge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbC0yIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gLndyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcblxuICAgICAgICAuYWNjcmVkaXRhdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luOiAtMS41cmVtIC0wLjZyZW0gMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgkY29sb3VyLWhpZ2hsaWdodC01LCAwLjIpO1xuXG4gICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMC42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDVyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDI3LCAxNik7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9vdGVyLXJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LXRlcm1zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDI3LCAxNik7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDI3LCAxNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHJlbTtcblxuICAgICAgICAuZm9vdGVyLWJhciB7XG4gICAgICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4xcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LWZvb3RlciB1bCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyOXJlbTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvb3Rlci1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICAgICAgICAgICAgICAgIC5jb2wtMSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbC0yIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMC42cmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmFjY3JlZGl0YXRpb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07XG5cbiAgICAgICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEyJTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogOHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3B5cmlnaHQge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgxNiwgMTYpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9vdGVyLXJvdyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LXRlcm1zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDE2LCAxNik7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbGgoMTYsIDE2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigxMjYwcHgpIHtcbiAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qIFNpdGUgRm9vdGVyICovXG5cbi5zb2NpYWxzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDJyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB3aWR0aDogMi42cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjZyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuICAgICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvc2l0ZS9pbWFnZXMvaWNvbi9zb2NpYWxzL2ZhY2Vib29rLnN2ZycpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnlvdXR1YmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3NpdGUvaW1hZ2VzL2ljb24vc29jaWFscy95b3V0dWJlLnN2ZycpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zaXRlL2ltYWdlcy9pY29uL3NvY2lhbHMvbGlua2VkaW4uc3ZnJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvc2l0ZS9pbWFnZXMvaWNvbi9zb2NpYWxzL3R3aXR0ZXIuc3ZnJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaW5zdGFncmFtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zaXRlL2ltYWdlcy9pY29uL3NvY2lhbHMvaW5zLnN2ZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuXHQ9PT09PT09PT09PT09PT1cblx0Q29udGVudCBTZWN0aW9uXG5cdD09PT09PT09PT09PT09PVxuKi9cbi5jb250ZW50LXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG5cbiAgICAvLyBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgLy8gICAgIHBhZGRpbmctYm90dG9tOiA4cmVtO1xuICAgIC8vIH1cbn1cblxuLmNvbnRlbnQtYmxvY2stbGF5b3V0IC5tYWluLWNvbDpvbmx5LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC8vIC5jb250ZW50LWJsb2NrIHtcbiAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgLy8gICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgIC8vICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIC8vICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cbn1cblxuLm1haW4tY29sIHtcbiAgICBoMSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgLy8gaDIge1xuICAgIC8vICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAvLyB9XG5cbiAgICBoMiwgaDMsIGg0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgfVxuXG4gICAgcCwgdWwgbGksIG9sIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlLTE7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRkIGEge1xuICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMi44cmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDplbXB0eSk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMC44cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC44cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY291bnRlci1yZXNldDogbGk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjhyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIG9sIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVlbTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuOHJlbTtcblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaSwgbG93ZXItYWxwaGEpIFwiLlwiO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpIFwiLlwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoZWFkIHRkLCB0aCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBwLCB1bCBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1haW4tY29sIC5jb250ZW50LWJsb2NrIHtcbiAgICAmID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJi5jYXJvdXNlbC13cmFwLCAmLmZ1bGwtdmlkZW8tYmxvY2sge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4uaW5mb3JtYXRpb24taXRlbSB7XG4gICAgcGFkZGluZzogMCA0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogNC40cmVtO1xuICAgICAgICBoZWlnaHQ6IDQuNHJlbTtcbiAgICB9XG5cbiAgICAmID4gaDEsICYgPiBoMiwgJiA+IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBtYXJnaW46IDEuNnJlbSAwIDAuNnJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgfVxuXG4gICAgJiA+IHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMnJlbSAwO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBoMSwgJiA+IGgyLCAmID4gaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDIuNnJlbSAwIDEuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmluZm9tYXRpb24tYmxvY2sge1xuICAgIG1heC13aWR0aDogMTIwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2FyZC1oZWFkZXItdGV4dCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICB9XG5cbiAgICAuY2FyZC1ibG9jay1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICYuZnVsbC13aWR0aC1iZyB7XG4gICAgICAgIHBhZGRpbmc6IDVyZW0gMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zcGxpdC0zIC5jb2wgKyAuY29sIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mb3JtYXRpb24taXRlbSB7XG4gICAgICAgICAgICBoMSwgaDIsIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxLCBoMiwgaDMsIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgJi5mdWxsLXdpZHRoLWJnIC5pbmZvcm1hdGlvbi1pdGVtIHtcbiAgICAgICAgICAgIGgxLCBoMiwgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICAmLmZ1bGwtd2lkdGgtYmcge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xuXG4gICAgICAgICAgICAuc3BsaXQtMyAuY29sICsgLmNvbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICYuZnVsbC13aWR0aC1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTAwJSkgKiAtMC41KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm92ZXJzaXplLWJnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmID4gKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMnJlbSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5xdW90ZS1ibG9jayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDRyZW0gNXJlbSAzLjZyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuMyk7XG4gICAgfVxuXG4gICAgLnF1b3RlLW1hcmsge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTXpjaUlHaGxhV2RvZEQwaU16QWlJSFpwWlhkQ2IzZzlJakFnTUNBek55QXpNQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1UVXVOakF5TkNBeE5DNDNNak15VmpNd1NEQldNVGt1T1RJMk1tTXdMVE11T0RNM05pNDJOamcyTnpVdE55NHpNRFl6SURJdU1EQTJNREl0TVRBdU5EQTFPVEZETXk0ek5ETXpOeUEyTGpNME5qZzJJRFV1TmpBNU5EUWdNeTR4TnpNME15QTRMamd3TkRJeUlEQk1NVFF1TkRnNElEUXVOREk0TURSakxURXVOemd6TWlBeExqa3hPRGd5TFRNdU1UVTNOeUF6TGpZNU1EQTBMVFF1TVRJek5TQTFMak14TXpZMkxTNDVOalU1TVNBeExqWXlNell0TVM0MU9UYzBNeUF6TGpJNE5ERXRNUzQ0T1RRMk1pQTBMams0TVRWb055NHhNekkxTW5wdE1qRXVNemszTmlBd1ZqTXdTREl4TGpNNU56WldNVGt1T1RJMk1tTXdMVE11T0RNM05pNDJOamczTFRjdU16QTJNeUF5TGpBd05pMHhNQzQwTURVNU1VTXlOQzQzTkRFZ05pNHpORFk0TmlBeU55NHdNRGNnTXk0eE56TTBNeUF6TUM0eU1ERTRJREJzTlM0Mk9ETTNJRFF1TkRJNE1EUmpMVEV1Tnpnek1TQXhMamt4T0RneUxUTXVNVFUzTmlBekxqWTVNREEwTFRRdU1USXpOQ0ExTGpNeE16WTJMUzQ1TmpVNUlERXVOakl6TmkweExqVTVOelFnTXk0eU9EUXhMVEV1T0RrME5pQTBMams0TVRWSU16ZDZJaUJtYVd4c1BTSWpabVptSWk4K1BDOXpkbWMrJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxOHB4O1xuICAgIH1cblxuICAgICYgPiBoMyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA3MnJlbTtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMi40cmVtO1xuICAgIH1cblxuICAgIC5xdW90ZS1hdXRob3Ige1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgY29sb3I6IHJnYmEoJGNvbG91ci1oaWdobGlnaHQsIDAuNyk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAucXVvdGUtbWFyayB7XG4gICAgICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogOHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnF1b3RlLWF1dGhvciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIHBhZGRpbmc6IDZyZW0gNnJlbSA1LjZyZW07XG5cbiAgICAgICAgLnF1b3RlLW1hcmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogM3JlbSAwIDIuN3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpbWl0ZWQtaW5mby1ibG9jayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDNyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDMzLCA1MiwgOTgsIDAuMTUpO1xuICAgIH1cblxuICAgICYgPiBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICB9XG5cbiAgICAmID4gcCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgIG1heC13aWR0aDogNzJyZW07XG4gICAgICAgIG1hcmdpbjogMS42cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXG4gICAgICAgICYgPiBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcblxuICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICBtYXJnaW46IDIuNHJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLyogdGV4dC1pbWFnZSAqL1xuLnNwbGl0LTIgLmNvbCA+IC5ydGUge1xuICAgIHBhZGRpbmc6IDAgM3JlbSAzcmVtO1xuXG4gICAgJiA+ICoge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlLTE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtIDNyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDkyMHB4KSB7XG4gICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTRyZW07XG5cbiAgICAgICAgICAgICYgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4uc3BsaXQtMiAuY29sOmxhc3QtY2hpbGQgLnJ0ZSA+ICoge1xuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxufVxuXG4uc3BsaXQtMiAuY29sIC5jb250ZW50LWJsb2NrOm5vdCgucnRlKSB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5zcGxpdC0yIC5jb2wgPiAuY29udGVudC1ibG9jay5jYXJvdXNlbC13cmFwIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJiArIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNHJlbSAzcmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgICYgKyAuY29udGVudC1ibG9jayBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mdWxsLXZpZGVvLWJsb2NrIHtcbiAgICAudmlkZW8tY2xpcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgLnZpZGVvLWNsaXAsIC52aWRlby1jbGlwIGlmcmFtZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIENvbnRlbnQgU2VjdGlvbiAqLyIsIi8qXG5cdD09PT09PT09PT09PVxuXHRJbWFnZSBCYW5uZXJcblx0PT09PT09PT09PT09XG4qL1xuLmJhbm5lci1pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgIEBleHRlbmQgLmFzcGVjdC1yYXRpby1pbWFnZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ2LjM5JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZW1wdHk6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1pbWFnZS1pbm5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItaW1hZ2UtaW5uZXIubW9iaWxlICsgLmJhbm5lci1pbWFnZS1pbm5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHJlbTtcblxuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNjAwcHgpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgICAgICAuYmFubmVyLWltYWdlLWlubmVyLm1vYmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1pbWFnZS1pbm5lci5tb2JpbGUgKyAuYmFubmVyLWltYWdlLWlubmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5ob21lLWJhbm5lci1pbWFnZSAud3JhcCwgLmJhbm5lci1pbWFnZS5sYW5kaW5nLWJhbm5lci1pbWFnZSAud3JhcCwgLmNvdXJzZS1zZWFyY2gtc2VjdGlvbiwgLmNvdXJzZS1zZWFyY2gtYmxvY2sge1xuICAgIC5zZWFyY2gge1xuICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuZm9ybS1zZWFyY2gge1xuICAgICAgICAgICAgLmlucHV0LWZpZWxkIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLXNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgLy8gcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNaklpSUdobGFXZG9kRDBpTWpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TWlBeU1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4WTJseVkyeGxJR040UFNJNUxqSXpNRGMzSWlCamVUMGlPUzR5TXpBM055SWdjajBpTnk0M016QTNOeUlnYzNSeWIydGxQU0lqTURBek16azVJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqTWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKeWIzVnVaQ0l2UGp4d1lYUm9JR1E5SWsweE5TNHpPRFE0SURFMUxqTTRORGRzTkM0Mk1UVTBJRFF1TmpFMU5DSWdjM1J5YjJ0bFBTSWpNREF6TXprNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpNaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbWUtYmFubmVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVyZW07XG4gICAgfVxuXG4gICAgLmltYWdlLXJpZ2h0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogNDUlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoNTM5cHgpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTM5cHgpIHtcbiAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmICsgLmhvbWUtY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYW5uZXItaW1hZ2UuaG9tZS1iYW5uZXItaW1hZ2Uge1xuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxNy43OGRlZywgIzk1QzExRiAyMS4yNiUsICM3QkJBNTQgMzUuMDUlLCM1NkIxOUYgNTYuMDclLCMzRkFCQ0YgNzEuMTElLCAjMzZBOUUxIDc4LjYlLCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB0b3A7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICMzNkE5RTE7XG4gICAgICAgIH1cblxuICAgICAgICAvLyAuYmFubmVyLWltYWdlLWlubmVyIHtcbiAgICAgICAgLy8gICAgIGhlaWdodDogNzUlO1xuICAgICAgICAvLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWFnZXMvbGVmdC1iYW5uZXItaW1hZ2UucG5nJyksIHVybCgnLi4vLi4vaW1hZ2VzL3JpZ2h0LWJhbm5lci1pbWFnZS5wbmcnKTtcbiAgICAgICAgLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tLCByaWdodCBib3R0b207XG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJSwgYXV0byAxMDAlO1xuXG4gICAgICAgIC8vICAgICAmOjphZnRlciB7XG4gICAgICAgIC8vICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIC8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyAgICAgICAgIHRvcDogMDtcbiAgICAgICAgLy8gICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAvLyAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyAgICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICAvLyAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMzNkE5RTEgMCUsIHJnYmEoNTQsIDE2OSwgMjI1LCAwKSAxMDAlKTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NDBweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ob21lLXNsaWRlLWJnLWJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICAmLmhvbWUtc2xpZGUtYmcteWVsbG93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtODtcbiAgICB9XG5cbiAgICAmLmhvbWUtc2xpZGUtYmctYmx1ZS1ncmVlbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxNy43OGRlZywgIzk1QzExRiAyMS4yNiUsICM3QkJBNTQgMzUuMDUlLCM1NkIxOUYgNTYuMDclLCMzRkFCQ0YgNzEuMTElLCAjMzZBOUUxIDc4LjYlLCk7XG5cbiAgICAgICAgJi5ob21lLXNsaWRlLWltZy1kdWFsIHtcbiAgICAgICAgICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM2QTlFMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJhbm5lci1pbWFnZS1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMzZBOUUxIDAlLCByZ2JhKDU0LCAxNjksIDIyNSwgMCkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhvbWUtc2xpZGUtYmctcGluay1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0RGODRCNSAtMC45MiUsICNERjg0QjUgMTcuMTIlLCAjQzk5QkMwIDQyLjA2JSwgI0EzQzFEMyA4Ny42NSUsICNBM0MxRDMgMTAxLjQ1JSk7XG5cbiAgICAgICAgJi5ob21lLXNsaWRlLWltZy1kdWFsIHtcbiAgICAgICAgICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RGODRCNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJhbm5lci1pbWFnZS1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjREY4NEI1IDAlLCByZ2JhKDU0LCAxNjksIDIyNSwgMCkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhvbWUtc2xpZGUtYmctcmVkLW9yYW5nZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzNTkuOTVkZWcsICNENjBCNTIgLTAuNzclLCNENjBCNTIgMTUuMDIlLCAjREExRTRCIDMwLjQzJSwgICNFMzUxMzkgNjEuODMlLCAjRjE5ODFGIDEwMS4yNyUpO1xuXG4gICAgICAgICYuaG9tZS1zbGlkZS1pbWctZHVhbCB7XG4gICAgICAgICAgICAuYmFubmVyLWltYWdlLWJnIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNENjBCNTI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5iYW5uZXItaW1hZ2UtaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0Q2MEI1MiAwJSwgcmdiYSg1NCwgMTY5LCAyMjUsIDApIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ob21lLXNsaWRlLWltZy1kdWFsIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgICAgICAuYmFubmVyLWltYWdlLWlubmVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDc1JTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGJvdHRvbSwgcmlnaHQgYm90dG9tO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlLCBhdXRvIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDNyZW0gMTByZW07XG5cbiAgICAgICAgaDEuYmx1ZSwgcC5ibHVlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjIyYzRmO1xuICAgICAgICB9XG5cbiAgICAgICAgaDEgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMS4wNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjA1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxICsgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgzNSwgMjYpO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBtYXJnaW46IDEuMnJlbSAwIDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxICsgLmltYWdlcy1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZXMtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBtYXJnaW46IC0xcmVtO1xuXG4gICAgICAgICAgICAuaW1hZ2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzMuMzMlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTJyZW07XG5cbiAgICAgICAgICAgICAgICAuaW1hZ2UtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiArIC5ob21lLWNvbnRlbnQtd3JhcCA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG5cbiAgICAmID4gLmlubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNTQwcHgpIHtcbiAgICAgICAgLndyYXAge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcblxuICAgICAgICAgICAgaDEgKyBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDIuNHJlbSAwIDIuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZXMtY29udGFpbmVyIC5pbWFnZS13cmFwIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5ob21lLWNvbnRlbnQtd3JhcCA+ICogKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgICYgKyAuaG9tZS1jb250ZW50LXdyYXAgPiAqICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC5pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDByZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICAgICAgICAgIGgxLmxhcmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxICsgLmltYWdlcy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlcy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTEuNXJlbTtcblxuICAgICAgICAgICAgICAgIC5pbWFnZS13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbWUtYmFubmVyLWNhcm91c2VsIHtcbiAgICAuc2xpY2stbGlzdCwgLnNsaWNrLXRyYWNrLCAuc2xpZGUtaXRlbSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5zbGljay10cmFjayAuc2xpY2stc2xpZGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXYsIC5zbGljay1uZXh0LCAuc2xpY2stYXV0b3BsYXktdG9nZ2xlLWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBib3R0b206IDNyZW07XG4gICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakFpSUdobGFXZG9kRDBpTVRBaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeE1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTFRkbExUY2dOVWd4T0cwd0lEQnNMVFF1TlMwMFRURTRJRFZzTFRRdU5TQTBJaUJ6ZEhKdmEyVTlJaU5tWm1ZaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqd3ZjM1puUGc9PScpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgcmlnaHQ6IDE0cmVtO1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDlyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLnNsaWNrLWF1dG9wbGF5LXRvZ2dsZS1idXR0b24ge1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgcmlnaHQ6IDNyZW07XG4gICAgfVxuXG4gICAgLnNsaWNrLWF1dG9wbGF5LXRvZ2dsZS1idXR0b24gLnNsaWNrLXBsYXktaWNvbjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9EQXdjSGdpSUdobGFXZG9kRDBpT0RBd2NIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0TkNqeHlaV04wSUhkcFpIUm9QU0l5TkNJZ2FHVnBaMmgwUFNJeU5DSXZQZzBLUEhCaGRHZ2dabWxzYkMxeWRXeGxQU0psZG1WdWIyUmtJaUJqYkdsd0xYSjFiR1U5SW1WMlpXNXZaR1FpSUdROUlrMHpJRFV1TkRrMk9EWkRNeUF6TGpFM05qWXlJRFV1TlRJeE1UWWdNUzQzTXpRMk5TQTNMalV5TVRBMklESXVPVEV4TURaTU1UZ3VOVGMyTkNBNUxqUXhOREl6UXpJd0xqVTBPRFFnTVRBdU5UYzBNaUF5TUM0MU5EZzBJREV6TGpReU5Ua2dNVGd1TlRjMk5DQXhOQzQxT0RVNFREY3VOVEl4TURZZ01qRXVNRGc1UXpVdU5USXhNVFlnTWpJdU1qWTFOQ0F6SURJd0xqZ3lNelFnTXlBeE9DNDFNRE15VmpVdU5EazJPRFphSWlCbWFXeHNQU0ozYUdsMFpTSXZQZzBLUEM5emRtYysnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzcmVtIDNyZW07XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWF1dG9wbGF5LXRvZ2dsZS1idXR0b24gLnNsaWNrLXBhdXNlLWljb246YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPREF3Y0hnaUlHaGxhV2RvZEQwaU9EQXdjSGdpSUhacFpYZENiM2c5SWpBZ01DQXlOQ0F5TkNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNE5Danh5WldOMElIZHBaSFJvUFNJeU5DSWdhR1ZwWjJoMFBTSXlOQ0lnTHo0TkNqeHdZWFJvSUdacGJHd3RjblZzWlQwaVpYWmxibTlrWkNJZ1kyeHBjQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTWpBZ05Vd3lNQ0F4T1VNeU1DQXlNQzQyTlRZNUlERTRMalkxTmprZ01qSWdNVGNnTWpKTU1UWWdNakpETVRRdU16UXpNU0F5TWlBeE15QXlNQzQyTlRZNUlERXpJREU1VERFeklEVkRNVE1nTXk0ek5ETXhOQ0F4TkM0ek5ETXhJRElnTVRZZ01rd3hOeUF5UXpFNExqWTFOamtnTWlBeU1DQXpMak0wTXpFMUlESXdJRFZhSWlCbWFXeHNQU0ozYUdsMFpTSXZQZzBLUEhCaGRHZ2dabWxzYkMxeWRXeGxQU0psZG1WdWIyUmtJaUJqYkdsd0xYSjFiR1U5SW1WMlpXNXZaR1FpSUdROUlrMDRJREpET1M0Mk5UWTROU0F5SURFeElETXVNelF6TVRVZ01URWdOVXd4TVNBeE9VTXhNU0F5TUM0Mk5UWTVJRGt1TmpVMk9EVWdNaklnT0NBeU1rdzNJREl5UXpVdU16UXpNVFVnTWpJZ05DQXlNQzQyTlRZNUlEUWdNVGxNTkNBMVF6UWdNeTR6TkRNeE5DQTFMak0wTXpFMUlESWdOeUF5VERnZ01sb2lJR1pwYkd3OUluZG9hWFJsSWk4K0RRbzhMM04yWno0PScpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDNyZW0gM3JlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuc2xpY2stcHJldiwgLnNsaWNrLW5leHQsIC5zbGljay1hdXRvcGxheS10b2dnbGUtYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgKyAxNHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICByaWdodDogY2FsYygoMTAwdncgLSAxMjByZW0pICogMC41ICsgN3JlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stYXV0b3BsYXktdG9nZ2xlLWJ1dHRvbiB7XG4gICAgICAgICAgICByaWdodDogY2FsYygoMTAwdncgLSAxMjByZW0pICogMC41KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5jb250ZW50LWJhbm5lci1pbWFnZSwgLmJhbm5lci1pbWFnZS5sYW5kaW5nLWJhbm5lci1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAvLyBtYXJnaW4tdG9wOiAyZW07XG4gICAgei1pbmRleDogMjE7XG5cbiAgICAvLyBAaW5jbHVkZSBtaW4oNzY4cHgpIHtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAvLyB9XG5cbiAgICAuYmFubmVyLWltYWdlLWJnIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1OC42NyU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWltYWdlLWlubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgPiAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIH1cblxuICAgIC53cmFwIHtcbiAgICAgICAgLmNvbnRlbnQtbGF5b3V0IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgICAgIGgyLnN1YiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxlZnQtY29udGVudCwgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxlZnQtY29udGVudCBoMSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyAuY29udGVudC13cmFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzJyZW07XG5cbiAgICAgICAgLm1haW4tY29sIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0Ni4zOSU7XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcCAubGVmdC1jb250ZW50IGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDkyMHB4KSB7XG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzYlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNS41cmVtO1xuXG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDIuNzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC5pbm5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAvLyBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTMycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNy41JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG5cbiAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3ApIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyOS4yNCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYW5uZXItaW1hZ2UubGFuZGluZy1iYW5uZXItaW1hZ2UuY291cnNlLWRldGFpbC1iYW5uZXItaW1hZ2Uge1xuICAgIC5iYW5uZXItaW1hZ2UtYmc6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgfVxuXG4gICAgJiArIC5jb250ZW50LXdyYXAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEyMHJlbTtcblxuICAgICAgICAubWFpbi1jb2wgLmNvbnRlbnQtYmxvY2sge1xuICAgICAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjhyZW0gMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgLmNvbnRlbnQtYmxvY2sge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hhcmV0aGlzIHtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAud3JhcCAubGVmdC1jb250ZW50IGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC53cmFwIC5sZWZ0LWNvbnRlbnQgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM3LjUlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFubmVyLWltYWdlLmNvbnRlbnQtYmFubmVyLWltYWdlIHtcbiAgICAuYmFubmVyLWltYWdlLWJnIHtcbiAgICAgICAgLm1hcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcCB7XG4gICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sZWZ0LWNvbnRlbnQgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICAubGVmdC1jb250ZW50LCAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDUuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubm8tcmlnaHQge1xuICAgICAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzLjRyZW0gM3JlbSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIC5yaWdodC1jb2wsIC5sZWZ0LWNvbCwgLm1haW4tY29sIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcblxuICAgICAgICAgICAgICAgIC5jb250ZW50LWJsb2NrLWxheW91dC5kaXNwbGF5LWFsbCAubWFpbi1jb2wge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWdodC1jb2wsIC5sZWZ0LWNvbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cmVtO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTQuNDFkZWcsIHJnYmEoMCwgMCwgMCwgMC4xKSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMi4xOSUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29sOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC05NC40MWRlZywgcmdiYSgwLCAwLCAwLCAwLjEpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEyLjE5JSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLWNvbDpvbmx5LWNoaWxkIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcblxuICAgICAgICAgICAgICAgIC5mb3JtLXF1ZXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4NHJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFubmVyLWltYWdlLmNvdXJzZS1iYW5uZXItaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgei1pbmRleDogMjE7XG5cbiAgICAuYmFubmVyLWltYWdlLWJnIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3Ny4zMyU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgwLCAwLCAwLCAwLjc1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXItZXh0ZXJuYWwtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oOTIwcHgpIHtcbiAgICAgICAgLmJhbm5lci1leHRlcm5hbC1jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDZyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgICAgICAuYmFubmVyLWV4dGVybmFsLWNhcmQge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzMuMzMzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5iYW5uZXItZXh0ZXJuYWwtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKCgxMDAlIC0gMTIwcmVtKSAqIDAuNSk7XG4gICAgICAgICAgICBib3R0b206IDEwcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTIwcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMCAzcmVtIDNyZW07XG4gICAgfVxuXG4gICAgLndyYXAge1xuICAgICAgICAuY29udGVudC1sYXlvdXQsIC5tYWluLWNvbnRlbnQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubWFyZ2luLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3Vyc2UtcHJpY2VzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAmLmJvbGQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByaWNlLWl0ZW0sIC5jb3Vyc2UtbmFtZSBoMyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMnJlbSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY291cnNlLW5hbWUgaDMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyAuY291cnNlLXdyYXAge1xuICAgICAgICAuY29udGVudC1ibG9jay1sYXlvdXQgKyAuY29udGVudC1ibG9jay1sYXlvdXQsIC5jb250ZW50LWJsb2NrLWxheW91dCArIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1jb2wgPiAqICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gLm1haW4tY29sID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNjAwcHgpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2Mi43NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ2LjM5JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICAubWFpbi1jb250ZW50IGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3Vyc2UtcHJpY2VzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRkZGRkZGO1xuXG4gICAgICAgICAgICAgICAgaDM6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICYuYm9sZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvdXJzZS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByaWNlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5jb3Vyc2Utd3JhcCB7XG4gICAgICAgICAgICAuY29udGVudC1ibG9jay1sYXlvdXQgKyAuY29udGVudC1ibG9jay1sYXlvdXQsIC5jb250ZW50LWJsb2NrLWxheW91dCArIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFpbi1jb2wgPiAqICsgKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMyJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTUuNXJlbTtcblxuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQyLjc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY291cnNlLXdyYXAge1xuICAgICAgICAgICAgLmNvbnRlbnQtYmxvY2stbGF5b3V0ICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0LCAuY29udGVudC1ibG9jay1sYXlvdXQgKyAuY29udGVudC1ibG9jayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1haW4tY29sID4gKiArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLWNvbDpvbmx5LWNoaWxkIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgICAgICAgICAuZm9ybS1xdWVyeSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogODRyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzcuNSU7XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcCAubWFpbi1jb250ZW50IGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI5LjI0JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5sYW5kaW5nLWJhbm5lci1pbWFnZSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0LjY5ZGVnLCAjOTVDMTFGIDIxLjI2JSwgIzdCQkE1NCAzNS4wNSUsICM1NkIxOUYgNTYuMDclLCAjM0ZBQkNGIDcxLjExJSwgIzM2QTlFMSA3OC42JSk7XG5cbiAgICAmLmRhcmtibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIyMkM0RjtcbiAgICB9XG5cbiAgICAmLmJyaWdodGJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDBhZmVhO1xuXG4gICAgICAgICYudG9vbHRpcDo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwYWZlYTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JlZW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNTVCNDVFO1xuICAgIH1cblxuICAgICYuYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyNjQ0OEU7XG5cbiAgICAgICAgJi50b29sdGlwOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMjY0NDhFO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5vcmFuZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjY3MjM4O1xuXG4gICAgICAgICYudG9vbHRpcDo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI0Y2NzIzODtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucGluayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGMzQ0OTc7XG5cbiAgICAgICAgJi50b29sdGlwOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjRjM0NDk3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi55ZWxsb3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZDQzAwO1xuXG4gICAgICAgICYudG9vbHRpcDo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI0ZGQ0MwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgfVxuXG4gICAgJiA+IC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLndyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzLCBoMiB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDM1LCAyNik7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIG1hcmdpbjogMS4ycmVtIDAgMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQtbGF5b3V0IHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig1NDBweCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDYyLjI1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAgaDMgKyBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAyLjRyZW0gMCAyLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQyLjc1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuXG4gICAgICAgICAgICAuY29udGVudC1sYXlvdXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDY2LjY2NyU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzMuMzMzJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDIuNzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAgaDMge1xuICAgICAgICAgICAgbWFyZ2luOiAyLjRyZW0gMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5sYW5kaW5nLXdyYXAgLm1haW4tY29sOm9ubHktY2hpbGQgLmNvbnRlbnQtYmxvY2sge1xuICAgICAgICAgICAgLmZvcm0tcXVlcnkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogODRyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNy41JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHJlbTtcblxuICAgICAgICAgICAgLmNvbnRlbnQtbGF5b3V0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI5LjI0JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5hcHBseS1iYW5uZXItaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNC42OWRlZywgIzk1QzExRiAyMS4yNiUsICM3QkJBNTQgMzUuMDUlLCAjNTZCMTlGIDU2LjA3JSwgIzNGQUJDRiA3MS4xMSUsICMzNkE5RTEgNzguNiUpO1xuICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgei1pbmRleDogMjE7XG5cbiAgICAuYmFubmVyLWltYWdlLWJnIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1pbWFnZS1pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgIH1cblxuICAgIC53cmFwIC5jb250ZW50LWxheW91dCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR3by1jb2xzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcblxuICAgICAgICAgICAgICAgIGgyLCBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAuNHJlbSAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY29uZC1jaG9pY2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgICAgICAgICAgICAgLnNlY29uZC1zdW1tYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWNvbmQtY2hvaWNlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNDgwcHgpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1OC42NyU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ2LjM5JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIC5jb250ZW50LWxheW91dCBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAgLmNvbnRlbnQtbGF5b3V0IC50d28tY29scyAuc2Vjb25kLWNob2ljZS13cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcCAuY29udGVudC1sYXlvdXQgLnR3by1jb2xzIC5zZWNvbmQtY2hvaWNlLWJ1dHRvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogZG90dGVkO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDkyMHB4KSB7XG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNS41cmVtO1xuXG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDIuNzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAgLmNvbnRlbnQtbGF5b3V0IC50d28tY29scyAuc2Vjb25kLWNob2ljZS1idXR0b24ge1xuICAgICAgICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM3LjUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAgLmNvbnRlbnQtbGF5b3V0IGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI5LjI0JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5sYW5kaW5nLWJhbm5lci1pbWFnZS5hbGwtcmVzdWx0cy1iYW5uZXItaW1hZ2UsIC5iYW5uZXItaW1hZ2UuY291cnNlLWJhbm5lci1pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHJlbTtcblxuICAgIC5oZWFkZXItZmlsdGVycyAud3JhcCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig2NDBweCkge1xuICAgICAgICAuaGVhZGVyLWZpbHRlcnMgLndyYXAgaDIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcblxuICAgICAgICAmLm5vLWJvdHRvbS1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRyZW07XG5cbiAgICAgICAgJi5uby1ib3R0b20tbWFyZ2luIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAuaGVhZGVyLWZpbHRlcnMgLndyYXAge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5jb3Vyc2UtYmFubmVyLWltYWdlICsgLmNvdXJzZS13cmFwIC5jb250ZW50LXNlY3Rpb246Zmlyc3QtY2hpbGQgLmNvbnRlbnQtYmxvY2stbGF5b3V0OmZpcnN0LWNoaWxkID4gLm1haW4tY29sID4gLmNvbnRlbnQtYmxvY2suY291cnNlczpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogLTVyZW07XG59XG5cbi5iYW5uZXItaW1hZ2UubGFuZGluZy1iYW5uZXItaW1hZ2UuYWxsLXJlc3VsdHMtYmFubmVyLWltYWdlIHtcbiAgICAmICsgLmxhbmRpbmctd3JhcCB7XG4gICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgJiArIC5sYW5kaW5nLXdyYXAgLmNvdXJzZS1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogLTJyZW0gLTJyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1pbWFnZS5leHRlcm5hbC1iYW5uZXItaW1hZ2Uge1xuICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gICAgLmJhbm5lci1pbWFnZS1iZyAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci1leHRlcm5hbC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICAuYmFubmVyLWV4dGVybmFsLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG5cbiAgICAgICAgICAgIC5iYW5uZXItZXh0ZXJuYWwtY2FyZCB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMzMlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgLmJhbm5lci1leHRlcm5hbC1jb250YWluZXIge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoKDEwMCUgLSAxMjByZW0pICogMC41KTtcbiAgICAgICAgICAgIGJvdHRvbTogMTByZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb3Vyc2Utc2VhcmNoLXByZWRpY3Rpb24td3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnNlYXJjaC1wcmVkaWN0aW9ucyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA2cmVtO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgLnNlYXJjaC1wcmVkaWN0aW9ucyB7XG4gICAgICAgICAgICB0b3A6IDdyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBJbWFnZSBCYW5uZXIgKi9cbiIsIi5jb3Vyc2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC02cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02cmVtO1xuICAgIH1cbn1cblxuLm1haW4tY29sIC5jb250ZW50LWJsb2NrLmNvdXJzZXMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oMTMyMHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC02cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02cmVtO1xuICAgIH1cbn1cblxuLm1haW4tY29sIC5jb250ZW50LWJsb2NrIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzQuNjY3JTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMC42cmVtIDAgMDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDNyZW07XG4gICAgICAgICAgICBib3R0b206IDNyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1Ua2lJR2hsYVdkb2REMGlNVEFpSUhacFpYZENiM2c5SWpBZ01DQXhPU0F4TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NQ0ExYURFNGJUQWdNR3d0TkM0MUxUUk5NVGdnTld3dE5DNDFJRFFpSUhOMGNtOXJaVDBpSTJabVppSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxLjlyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucHVycGxlIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNDguOGRlZywgIzNEMDA1MSAwJSwgIzY2MTg4MCAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucmVkIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNDguOGRlZywgIzhDMDAwMCAwJSwgI0M5MkEyQSA5OS40MiUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmVlbiB7XG4gICAgICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjQ5LjA5ZGVnLCAjMDA0MDAwIDEuMDglLCAjMTY4MjE2IDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5waW5rIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNDkuMDlkZWcsICNiNDE1NGQgMS4wOCUsICNGNDFENjggMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICAuaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubm8tZGlzcGxheSArIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAtNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig2MDBweCkge1xuICAgICAgICAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmlubmVyIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgMS44cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDkyMHB4KSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDMzLjMzJTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gM3JlbTtcblxuXG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wdXJwbGUge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJlZCB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ3JlZW4ge1xuICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIH1cblxuICAgICAgICAmLnBpbmsge1xuICAgICAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEuNnJlbSAwIDIuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LXRodW1ibmFpbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4zNiU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3ApIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gNnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcblxuICAgICYgPiAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICYgPiAudHlwZS1ndWlkZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMS41cmVtO1xuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvdXJzZS1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAtMXJlbSAtMXJlbSAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAuY291cnNlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTIuNXJlbTtcbiAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxcmVtKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAxMi41cmVtKTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG5cbiAgICAmLnB1cnBsZSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTAyLCAyNCwgMTI4LCAwLjEpIDAlLCByZ2JhKDEwMiwgMjQsIDEyOCwgMCkgMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJlZCB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTk5LCA3NiwgNzcsIDAuMSkgMCUsIHJnYmEoMTk5LCA3NiwgNzcsIDApIDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmVlbiB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgNjQsIDAsIDAuMSkgMCUsIHJnYmEoMCwgNjQsIDAsIDApIDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5waW5rIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCA2NCwgMCwgMC4xKSAwJSwgcmdiYSgwLCA2NCwgMCwgMCkgMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAmID4gLnR5cGUtZ3VpZGUge1xuICAgICAgICAgICAgbWFyZ2luOiAzLjZyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbig5MjBweCkge1xuICAgICAgICAmID4gLnR5cGUtZ3VpZGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucHVycGxlIHtcbiAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvdXItY291cnNlLTE7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJlZCB7XG4gICAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3VyLWNvdXJzZS0yO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ncmVlbiB7XG4gICAgICAgICAgICBvcmRlcjogNztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3VyLWNvdXJzZS0zO1xuICAgICAgICB9XG5cblxuICAgICAgICAmLnBpbmsge1xuICAgICAgICAgICAgb3JkZXI6IDg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG91ci1jb3Vyc2UtMztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmNvdXJzZS1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogLTJyZW0gLTJyZW0gNHJlbTtcblxuICAgICAgICAgICAgLmNvdXJzZS1jYXJkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMDAlKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnN0YWZmLWNhcm91c2VsLXdyYXAsIC5nYWxsZXJ5LWNhcm91c2VsLXdyYXAge1xuICAgIHBhZGRpbmc6IDNyZW0gMCAwO1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI0NDQ0NDQztcblxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luOiAwIDFyZW0gM3JlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgfVxuXG4gICAgLnNsaWNrLXNsaWRlciB7XG4gICAgICAgIG1hcmdpbjogMCAtMnJlbTtcbiAgICB9XG5cbiAgICAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNnJlbTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0YWZmLWNhcm91c2VsLXdyYXAge1xuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgIC5zbGljay1zbGlkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIC5zbGljay1zbGlkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0yLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nYWxsZXJ5LWNhcm91c2VsIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgIC5hc3BlY3QtcmF0aW8taW1hZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjYuMzMlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFzcGVjdC1yYXRpby1pbWFnZTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA1MSwgMTUzLCAwLjgpO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn0iLCJib2R5Lm1vZGFsLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaGVhZGVyLXNpdGUsIC5tYWluLWNvbCAuY29udGVudC1ibG9jayAuZm9ybS1hcHBsaWNhdGlvbiAuYnV0dG9uLWdyb3VwID4gLnNhdmUtbGF0ZXItYnV0dG9uIHtcbiAgICAgICAgei1pbmRleDogMTk7XG4gICAgfVxufVxuXG4ub3ZlcmxheSB7IFxuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgLy8gbGVmdDogMDtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgLy8gei1pbmRleDogMzIwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLy8gdHJhbnNpdGlvbjogYWxsIDAuNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC43NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgei1pbmRleDogLTEwMDtcbiAgICBwYWRkaW5nOiAzcmVtIDJyZW07XG4gICAgXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMzIwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC5tb2RhbC1pbm5lciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDByZW07XG4gICAgICAgIHJpZ2h0OiAwcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICB3aWR0aDogNC40cmVtO1xuICAgICAgICBoZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAuY2xvc2UtaWNvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgICAgICB6LWluZGV4OiAyMTA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciAuY2xvc2UtaWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtaW5uZXIge1xuICAgICAgICBtYXJnaW46IDAgLTJyZW07XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtY29udGVudCA+IC5mbGV4IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgIGgxLCBoMywgcCwgdWwgbGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmJvbGQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvdXJzZS1kYXRlcy1saXN0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMS42cmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTRyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAlbGlzdC1yZXNldDtcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5jb3Vyc2UtZGF0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmsuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjQ0NDQ0NDO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kYWwtbGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAuYXNwZWN0LXJhdGlvLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1My43NSU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvdXJzZS10eXBlLW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzRDAwNTE7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICZbZGF0YS1jb3Vyc2V0eXBlKj0nRnVsbC1UaW1lJ10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItY291cnNlLTE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICZbZGF0YS1jb3Vyc2V0eXBlKj0nUGFydC1UaW1lJ10sICZbZGF0YS1jb3Vyc2V0eXBlKj0nSGlnaGVyIEVkdWNhdGlvbiddIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyLWNvdXJzZS0yO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmW2RhdGEtY291cnNldHlwZSo9J0FwcHJlbnRpY2VzaGlwJ10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvdXItY291cnNlLTM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDJyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1vZGFsLXJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDJyZW0gM3JlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuMik7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS40cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAmICsgKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb3N0ID4gcCwgLnJlcXVpcmVtZW50cyA+IHAge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9yZS1hYm91dC1jb3Vyc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nOiAxMHJlbSA2cmVtO1xuXG4gICAgICAgIC5tb2RhbC1jbG9zZSB7XG4gICAgICAgICAgICB0b3A6IC0xcmVtO1xuICAgICAgICAgICAgcmlnaHQ6IC0xcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDYuNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNi40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXJlbSBzb2xpZCAjRkZGRkZGO1xuXG4gICAgICAgICAgICAubW9kYWwtY29udGVudCA+IC5mbGV4IHtcbiAgICAgICAgICAgICAgICBoMSwgaDMsIHAsIHVsIGxpLCAubW9kYWwtcmlnaHQtY29udGVudCAubW9yZS1hYm91dC1jb3Vyc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY291cnNlLWRhdGVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcblxuICAgICAgICAgICAgICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiAuY291cnNlLWRhdGUgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubGluay5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2RhbC1sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzRDNEM0O1xuXG4gICAgICAgICAgICAgICAgICAgIC5hc3BlY3QtcmF0aW8taW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvdXJzZS10eXBlLW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDRyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgwLCAwLCAwLCAwLjgpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2RhbC1yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI2MC4xOWRlZywgIzNEMDA1MSAwJSwgIzY2MTg4MCAxMDAlKTtcblxuICAgICAgICAgICAgICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvc3QgPiBwLCAucmVxdWlyZW1lbnRzID4gcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICAubW9kYWwtY2xvc2Uge1xuICAgICAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAtMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1pbm5lciB7XG4gICAgICAgICAgICBib3JkZXI6IDJyZW0gc29saWQgI0ZGRkZGRjtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTI0cmVtO1xuXG4gICAgICAgICAgICAubW9kYWwtY29udGVudCA+IC5mbGV4IHtcbiAgICAgICAgICAgICAgICAuY291cnNlLWRhdGVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtbGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNzAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcwJTtcblxuICAgICAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnJlbSA2cmVtIDVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDQuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2RhbC1yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3ApIHtcbiAgICAgICAgLm1vZGFsLWlubmVyIC5tb2RhbC1jb250ZW50ID4gLmZsZXggLm1vZGFsLWxlZnQtY29udGVudCAuaW5uZXIgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucXVhbGktYmxvY2sgLm92ZXJsYXkge1xuICAgIHBhZGRpbmc6IDZyZW0gM3JlbTtcblxuICAgIC5tb2RhbC1jbG9zZSB7XG4gICAgICAgIHRvcDogLTQuNHJlbTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiA0LjRyZW07XG4gICAgICAgIGhlaWdodDogNC40cmVtO1xuICAgIH1cblxuICAgIC5tb2RhbC1pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLnF1YWxpLWl0ZW0ge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgLmZvcm0tZmllbGQuY29sLTEtMTIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGQtcXVhbGlmaWNhdGlvbi1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcblxuICAgICAgICAubW9kYWwtY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAucXVhbGktaXRlbSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgLTFyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMSAvIDYgKiAxMDAlKTtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICYuY29sLTEtNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDIuNSAvIDEyICogMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICYuY29sLTEtMTIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEgLyAxMiAqIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZm9ybS1maWVsZCA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mb3JtLWZpZWxkICsgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yZW1vdmUtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bm90KC5maXJzdC1xdWFsaS1pdGVtKSAuZm9ybS1maWVsZCBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJiArIC5xdWFsaS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDQ0NDQ0M7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWRkLXF1YWxpZmljYXRpb24tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3ZlcmxheS5zZWNvbmQtY291cnNlLXBvcHVwIHtcbiAgICAubW9kYWwtY2xvc2Uge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNlY29uZC1jb3Vyc2Utd3JhcCB7XG4gICAgICAgIHBhZGRpbmc6IDZyZW0gM3JlbSAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIFxuICAgICAgICAuY291cnNlLXNlYXJjaC1zZWN0aW9uIHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWxpc3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAzcmVtIC0ycmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmICsgLmNvdXJzZS1wb3B1cCAud3JhcCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICAubW9kYWwtaW5uZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuc2Vjb25kLWNvdXJzZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZyZW07XG5cbiAgICAgICAgICAgIC5jb3Vyc2Utc2VhcmNoLXNlY3Rpb24gPiBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9kYWwtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAvLyB6LWluZGV4OiAzMjA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5LCB6LWluZGV4LCBiYWNrZ3JvdW5kLCB3aWR0aCwgaGVpZ2h0LCB0b3AsIGxlZnQsIHBhZGRpbmcgMC43NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgei1pbmRleDogLTEwMDtcbiAgICBwYWRkaW5nOiAzcmVtIDJyZW07XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB6LWluZGV4OiAzMjA7XG4gICAgfVxuXG4gICAgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgLy8gb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDNyZW0gNHJlbTtcblxuICAgICAgICAgICAgaDIsIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmRyb3B6b25lMiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAqIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgbWluLWhlaWdodDogMTUwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxNjEsIDIyLCAyMiwgMC4zKTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHg7XG4gICAgJi5kei1jbGlja2FibGUge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICoge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgICAgIC5kei1tZXNzYWdlIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmR6LXN0YXJ0ZWQgLmR6LW1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmLmR6LWRyYWctaG92ZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAuZHotbWVzc2FnZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmR6LW1lc3NhZ2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMmVtIDA7XG4gICAgfVxuICAgIC5kei1wcmV2aWV3IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbjogMTZweDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgICAgICAgIC5kei1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZHotZmlsZS1wcmV2aWV3IHtcbiAgICAgICAgICAgIC5kei1pbWFnZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUsICNkZGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5kei1pbWFnZS1wcmV2aWV3IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kei1yZW1vdmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIC5kei1kZXRhaWxzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJlbSAxZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgICAgICAuZHotc2l6ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kei1maWxlbmFtZSB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuOCk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpub3QoOmhvdmVyKSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC40ZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZHotc2l6ZSBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjRlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciAuZHotaW1hZ2UgaW1nIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1LCAxLjA1KTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjA1LCAxLjA1KTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUsIDEuMDUpO1xuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjA1LCAxLjA1KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSwgMS4wNSk7XG4gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogYmx1cig4cHgpO1xuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDhweCk7XG4gICAgICAgIH1cbiAgICAgICAgLmR6LWltYWdlIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZHotc3VjY2VzcyAuZHotc3VjY2Vzcy1tYXJrIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBwYXNzaW5nLXRocm91Z2ggM3MgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgICAgICAgIC1tb3otYW5pbWF0aW9uOiBwYXNzaW5nLXRocm91Z2ggM3MgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgICAgICAgIC1tcy1hbmltYXRpb246IHBhc3NpbmctdGhyb3VnaCAzcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICAgICAgICAgICAgLW8tYW5pbWF0aW9uOiBwYXNzaW5nLXRocm91Z2ggM3MgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcGFzc2luZy10aHJvdWdoIDNzIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5kei1lcnJvciAuZHotZXJyb3ItbWFyayB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNsaWRlLWluIDNzIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogc2xpZGUtaW4gM3MgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgICAgICAgIC1tcy1hbmltYXRpb246IHNsaWRlLWluIDNzIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgICAgICAgICAtby1hbmltYXRpb246IHNsaWRlLWluIDNzIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgICAgICAgICBhbmltYXRpb246IHNsaWRlLWluIDNzIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgLmR6LXN1Y2Nlc3MtbWFyaywgLmR6LWVycm9yLW1hcmsge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgei1pbmRleDogNTAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjdweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yN3B4O1xuICAgICAgICB9XG4gICAgICAgIC5kei1zdWNjZXNzLW1hcmsgc3ZnLCAuZHotZXJyb3ItbWFyayBzdmcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgfVxuICAgICAgICAmLmR6LXByb2Nlc3NpbmcgLmR6LXByb2dyZXNzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgICAmLmR6LWNvbXBsZXRlIC5kei1wcm9ncmVzcyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbjtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW47XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW47XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluO1xuICAgICAgICB9XG4gICAgICAgICY6bm90KC5kei1wcm9jZXNzaW5nKSAuZHotcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHB1bHNlIDZzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogcHVsc2UgNnMgZWFzZSBpbmZpbml0ZTtcbiAgICAgICAgICAgIC1tcy1hbmltYXRpb246IHB1bHNlIDZzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgICAgICAtby1hbmltYXRpb246IHB1bHNlIDZzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgICAgICBhbmltYXRpb246IHB1bHNlIDZzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICAgICAgLmR6LXByb2dyZXNzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAuZHotdXBsb2FkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM2NjYsICM0NDQpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmR6LWVycm9yIHtcbiAgICAgICAgICAgIC5kei1lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIgLmR6LWVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmR6LWVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIHRvcDogMTMwcHg7XG4gICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNiZTI2MjY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjYmUyNjI2LCAjYTkyMjIyKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDEuMmVtO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTZweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA2NHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjYmUyNjI2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGJvcmRlcjogMnB4IGRhc2hlZCAjMDAzMzk5O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5kei1yZW1vdmUsIC5kei1tZXNzYWdlIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59IiwiLnRjLWFjY29yZGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG5cbiAgICAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAycHggZG90dGVkIHJnYmEoJGNvbG91ci1oaWdobGlnaHQtNSwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtIDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9sKSB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWFjY29yZGlvbi1kcm9wZG93biB7XG4gICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjlyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UUWlJR2hsYVdkb2REMGlPU0lnZG1sbGQwSnZlRDBpTUNBd0lERTBJRGtpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaWJURWdNU0EySURZZ05pMDJJaUJ6ZEhKdmEyVTlJaU13TURNek9Ua2lJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWFjY29yZGlvbi1kcm9wZG93biB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmljb24tYWNjb3JkaW9uLWRyb3Bkb3duIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDJyZW07XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1wYW5lbFtoaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9sKSB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoJG1vYmlsZS1wb2ludCwgJGxhcmdlLWRlc2t0b3AtcG9pbnQsIDE4cHgsIDIycHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuYWNjb3JkaW9uLXRyaWdnZXIgc3BhbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2NvcmRpb24tcGFuZWwge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhY3QtYWNjb3JkaW9uIHtcbiAgICAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tcGFuZWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1wYW5lbFtoaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9zKSB7XG4gICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW06bm90KC5hbHdheXMtb3Blbikge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLXBhbmVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC5hY2NvcmRpb24taXRlbTpub3QoLmFsd2F5cy1vcGVuKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IGRhc2hlZCByZ2JhKCRjb2xvdXItaGlnaGxpZ2h0LCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi10cmlnZ2VyOm5vdCguYWx3YXlzLW9wZW4pIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC45cmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU9TSWdkbWxsZDBKdmVEMGlNQ0F3SURFMElEa2lJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpYlRFZ01TQTJJRFlnTmkwMklpQnpkSEp2YTJVOUlpTXdNRE01TmtVaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqd3ZjM1puUGc9PScpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuXHQ9PT09PT09XG5cdE1vZHVsZXNcblx0PT09PT09PVxuXG5cdE1vZHVsZSBsZXZlbCBDU1Mgc2hvdWxkIGJlIHBsYWNlZCBpbiB0aGlzIGZpbGUuXG5cdE1vZHVsZXMgYXJlIHNlbGYtY29udGFpbmVkIHNlY3Rpb25zIG9mIG1hcmt1cC5cblx0TW9kdWxlcyBjYW4gZXhpc3Qgd2l0aCBvdGhlciBtb2R1bGVzLlxuXHRNb2R1bGVzIGNhbiBvZnRlbiBpbmNsdWRlIG9iamVjdHMuXG5cblx0RVhBTVBMRVM6OlxuXG5cdFwiU2l0ZSBIZWFkZXJcIiB3b3VsZCBiZSBhIG1vZHVsZS5cblxuXHRcIlRvcCBOYXZpZ2F0aW9uXCIgbWF5IGV4aXN0IHdpdGhpbiB0aGUgXCJTaXRlIEhlYWRlclwiIG1hcmt1cCBidXQgaXQgaXMgY2FwYWJsZSBvZiBleGlzdGluZyBhcyBpdHMgb3duIG1vZHVsZSBhbmQgc28gc2hvdWxkIGJlIGRvbmUgc2VwYXJhdGVseS5cbiovXG5cbmJvZHkuc3RvcFNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5za2lwLXNlY3Rpb24ge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogLTk5OXB4O1xuXHR3aWR0aDogMXB4O1xuXHRoZWlnaHQ6IDFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ei1pbmRleDogLTk5OTtcblxuXHQuc2NyZWVuLXJlYWRlci10ZXh0IHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWxpbms7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG5cdFx0JiArIC5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDJyZW07XG5cdFx0fVxuXHR9XG5cblx0Ji5zaG93IHtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogYXV0bztcblx0XHR3aWR0aDogODAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRwYWRkaW5nOiAwLjhyZW0gMC41cmVtO1xuXHRcdG1hcmdpbjogMCAxMCUgMXJlbTtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHotaW5kZXg6IDk5OTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGN0YzO1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuXHRcdCYuc2hvdyB7XG5cdFx0XHR3aWR0aDogNDhyZW07XG5cdFx0XHRtYXJnaW4tbGVmdDogY2FsYygoMTAwdncgLSA0OHJlbSkgKiAwLjUpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKCgxMDB2dyAtIDQ4cmVtKSAqIDAuNSk7XG5cdFx0fVxuXHR9XG59XG5cbi8qXG5cdD09PT09PVxuXHRTZWFyY2hcblx0PT09PT09XG4qL1xuLnNlYXJjaCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmZvcm0tc2VhcmNoIHtcbiAgICAgICAgLmZvcm0taW5wdXQtZmllbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWZpZWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNzVzLCBoZWlnaHQgMC43NXMsIG9wYWNpdHkgMC4zcztcblxuICAgICAgICAgICAgW3R5cGU9dGV4dF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSA0cmVtIDFyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qSWlJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXlNaUF5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhZMmx5WTJ4bElHTjRQU0k1TGpJek1EYzNJaUJqZVQwaU9TNHlNekEzTnlJZ2NqMGlOeTQzTXpBM055SWdjM1J5YjJ0bFBTSWpabVptSWlCemRISnZhMlV0ZDJsa2RHZzlJak1pSUhOMGNtOXJaUzFzYVc1bFkyRndQU0p5YjNWdVpDSWdjM1J5YjJ0bExXeHBibVZxYjJsdVBTSnliM1Z1WkNJdlBqeHdZWFJvSUdROUlrMHhOUzR6T0RRNElERTFMak00TkRkc05DNDJNVFUwSURRdU5qRTFOQ0lnYzNSeWIydGxQU0lqWm1abUlpQnpkSEp2YTJVdGQybGtkR2c5SWpNaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTNweCAxM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OWVtO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgI0NDNDU0NztcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICAgICAgLmlucHV0LWZpZWxkIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDdyZW07XG5cbiAgICAgICAgICAgICAgICBbdHlwZT10ZXh0XSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMnB4IDIycHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLWJhciB7XG4gICAgd2lkdGg6IDIuNHJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDNyZW0gMCAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjRyZW07XG5cbiAgICAuanMtc2VhcmNoLWNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qWWlJR2hsYVdkb2REMGlNallpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRUTWdNMnd4T1M0NU9UazRJREU1TGprNU9UaE5NeUF5TTB3eU1pNDVPVGs0SURNdU1EQXdNaUlnYzNSeWIydGxQU0lqTURBek16azVJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqTWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKeWIzVnVaQ0l2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDEycHg7XG4gICAgICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldF9sKSB7XG4gICAgICAgIC5qcy1zZWFyY2gtY2xvc2Uge1xuICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAubm8tcmVzdWx0cyB7XG4vLyBcdHRleHQtYWxpZ246IGNlbnRlcjtcbi8vIFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4vLyB9XG5cbi8vIC5ob21lLXNlYXJjaC1yZXN1bHRzIHtcbi8vIFx0PiBkaXYge1xuLy8gXHRcdG1hcmdpbi1ib3R0b206IDU1cHg7XG4vLyBcdH1cblxuLy8gXHRoMiB7XG4vLyBcdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuLy8gXHRcdGZvbnQtc2l6ZTogZW0oMjgpO1xuLy8gXHRcdGZvbnQtd2VpZ2h0OiA4MDA7XG4vLyBcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuLy8gXHR9XG5cbi8vIFx0LnNlYXJjaC1pbnB1dCB7XG4vLyBcdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1vdXRsaW5lO1xuLy8gXHRcdHBhZGRpbmc6IDFweDtcblxuLy8gXHRcdCsgaDIge1xuLy8gXHRcdFx0bWFyZ2luLXRvcDogNDBweDtcbi8vIFx0XHR9XG4vLyBcdH1cbi8vIFx0LmZpbHRlcnMge1xuLy8gXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItaGlnaGxpZ2h0O1xuLy8gXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG4vLyBcdFx0cGFkZGluZzogMTBweDtcbi8vIFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbi8vIFx0XHQuZmlsdGVyLXRhYnMge1xuLy8gXHRcdFx0YSB7XG4vLyBcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vIFx0XHRcdFx0bWFyZ2luOiAwIDAgMTBweCAwO1xuLy8gXHRcdFx0XHRwYWRkaW5nOiAycHggN3B4O1xuLy8gXHRcdFx0XHRjb2xvcjogI2ZmZjtcbi8vIFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG4vLyBcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyBcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuLy8gXHRcdFx0XHQmLnNlbGVjdGVkIHtcbi8vIFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuLy8gXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIFx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cbi8vIFx0XHRcdFx0XHQmOmFmdGVyIHtcbi8vIFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuLy8gXHRcdFx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vIFx0XHRcdFx0XHRcdGJvcmRlci13aWR0aDogOHB4IDhweCAwIDhweDtcbi8vIFx0XHRcdFx0XHRcdGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbi8vIFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vIFx0XHRcdFx0XHRcdGJvdHRvbTogLThweDtcbi8vIFx0XHRcdFx0XHRcdGxlZnQ6IDUwJTtcbi8vIFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtOHB4O1xuLy8gXHRcdFx0XHRcdFx0aGVpZ2h0OiAwO1xuLy8gXHRcdFx0XHRcdFx0d2lkdGg6IDA7XG4vLyBcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHR9XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuXG4vLyBcdFx0ZmllbGRzZXQge1xuLy8gXHRcdFx0bWFyZ2luOiAxMHB4IDAgMCAwO1xuLy8gXHRcdH1cblxuLy8gXHRcdD4gc2VsZWN0LFxuLy8gXHRcdD4gLm5pY2VzZWxlY3Qtd3JhcHBlciB7XG4vLyBcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyBcdFx0XHR3aWR0aDogMTAwJTtcbi8vIFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbi8vIFx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuLy8gXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwIDZweDtcbi8vIFx0XHRcdFx0d2lkdGg6IDIwJTtcbi8vIFx0XHRcdH1cblxuLy8gXHRcdFx0QGluY2x1ZGUgbWluKDExMDBweCkge1xuLy8gXHRcdFx0XHR3aWR0aDogMTkycHg7XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuLy8gXHR9XG5cbi8vIFx0LnJlc3VsdHMge1xuLy8gXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuLy8gXHR9XG5cbi8vIFx0LnJlc3VsdCB7XG4vLyBcdFx0bWFyZ2luLWJvdHRvbTogMThweDtcbi8vIFx0XHRwYWRkaW5nLWxlZnQ6IDlweDtcbi8vIFx0XHRwYWRkaW5nLXJpZ2h0OiA5cHg7XG5cbi8vIFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcbi8vIFx0XHRcdGZsb2F0OiBsZWZ0O1xuLy8gXHRcdFx0d2lkdGg6IDUwJTtcbi8vIFx0XHR9XG5cbi8vIFx0XHRAaW5jbHVkZSBtaW4oMTEwMHB4KSB7XG4vLyBcdFx0XHR3aWR0aDogMjUlO1xuLy8gXHRcdH1cblxuLy8gXHRcdGEge1xuLy8gXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1vdXRsaW5lO1xuLy8gXHRcdFx0Y29sb3I6ICNGRkY7XG4vLyBcdFx0XHRkaXNwbGF5OiBibG9jaztcbi8vIFx0XHRcdHBhZGRpbmc6IDE1cHggMTVweCA1NXB4O1xuLy8gXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuLy8gXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuLy8gXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGNvbG9yIDAuM3MpO1xuXG4vLyBcdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcbi8vIFx0XHRcdFx0aGVpZ2h0OiAyMzBweDtcbi8vIFx0XHRcdH1cblxuLy8gXHRcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4vLyBcdFx0XHRcdGNvbG9yOiAkY29sb3VyLW91dGxpbmU7XG5cbi8vIFx0XHRcdFx0aDMge1xuLy8gXHRcdFx0XHRcdGNvbG9yOiAkY29sb3VyLW91dGxpbmU7XG4vLyBcdFx0XHRcdH1cbi8vIFx0XHRcdH1cbi8vIFx0XHR9XG5cbi8vIFx0XHRoMyB7XG4vLyBcdFx0XHRjb2xvcjogI0ZGRjtcbi8vIFx0XHRcdGZvbnQtc2l6ZTogZW0oMjApO1xuLy8gXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG4vLyBcdFx0XHRtYXJnaW4tYm90dG9tOiA4cHg7XG4vLyBcdFx0fVxuXG4vLyBcdFx0cCB7XG4vLyBcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuLy8gXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG4vLyBcdFx0XHQmOmFmdGVyIHtcbi8vIFx0XHRcdFx0Y29udGVudDogXCJcXDAyMDI2XCI7XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuXG4vLyBcdFx0LmNvdW50IHtcbi8vIFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuLy8gXHRcdFx0Zm9udC1zaXplOiBlbSg3MCwgMjgpO1xuLy8gXHRcdFx0bGluZS1oZWlnaHQ6IDAuNzU7XG4vLyBcdFx0XHRwYWRkaW5nOiAzNXB4IDAgMjVweDtcbi8vIFx0XHR9XG5cbi8vIFx0XHQuYnV0dG9uLXBvc2l0aW9uIHtcbi8vIFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vIFx0XHRcdGJvdHRvbTogMTVweDtcbi8vIFx0XHRcdGxlZnQ6IDA7XG4vLyBcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyBcdFx0XHR3aWR0aDogMTAwJTtcbi8vIFx0XHR9XG5cbi8vIFx0XHQudGV4dC13cmFwIHtcbi8vIFx0XHRcdG1heC1oZWlnaHQ6IDE2MHB4O1xuLy8gXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcbi8vIFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIFx0XHR9XG5cbi8vIFx0XHQmLm1vcmUge1xuLy8gXHRcdFx0Zm9udC1zaXplOiBlbSgyOCk7XG4vLyBcdFx0XHRmb250LXdlaWdodDogODAwO1xuLy8gXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG4vLyBcdFx0XHRhIHtcbi8vIFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1vdXRsaW5lO1xuLy8gXHRcdFx0XHRjb2xvcjogI0ZGRjtcbi8vIFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cbi8vIFx0XHRcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbi8vIFx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1vdXRsaW5lO1xuLy8gXHRcdFx0XHR9XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuXG4vLyBcdFx0Ly8gVGhlbWUgYmFzZWQgb24gY291cnNlIHR5cGUgLy9cbi8vIFx0XHQmW2RhdGEtY291cnNldHlwZSo9XCJGdWxsLVRpbWVcIl0ge1xuLy8gXHRcdFx0YSB7XG4vLyBcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG5cbi8vIFx0XHRcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbi8vIFx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblxuLy8gXHRcdFx0XHRcdGgzIHtcbi8vIFx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuLy8gXHRcdFx0XHRcdH1cbi8vIFx0XHRcdFx0fVxuXG4vLyBcdFx0XHRcdC5idXR0b24tY291cnNlIHtcbi8vIFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTYvY291cnNlLnN2Zyk7XG4vLyBcdFx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTE7XG5cbi8vIFx0XHRcdFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC02L2NvdXJzZS5wbmcpO1xuLy8gXHRcdFx0XHRcdH1cblxuLy8gXHRcdFx0XHRcdCY6aG92ZXIge1xuLy8gXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcbi8vIFx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2Uuc3ZnKTtcbi8vIFx0XHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXG4vLyBcdFx0XHRcdFx0XHQubm8tc3ZnICYge1xuLy8gXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnBuZyk7XG4vLyBcdFx0XHRcdFx0XHR9XG4vLyBcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHR9XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuLy8gXHRcdCZbZGF0YS1jb3Vyc2V0eXBlKj1cIlBhcnQtVGltZVwiXSxcbi8vIFx0XHQmW2RhdGEtY291cnNldHlwZSo9XCJIaWdoZXIgRWR1Y2F0aW9uXCJdIHtcbi8vIFx0XHRcdGEge1xuLy8gXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXG4vLyBcdFx0XHRcdCY6aG92ZXIge1xuLy8gXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4vLyBcdFx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTI7XG5cbi8vIFx0XHRcdFx0XHRoMyB7XG4vLyBcdFx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcbi8vIFx0XHRcdFx0XHR9XG4vLyBcdFx0XHRcdH1cblxuLy8gXHRcdFx0XHQuYnV0dG9uLWNvdXJzZSB7XG4vLyBcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L2NvdXJzZS5zdmcpO1xuLy8gXHRcdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXG4vLyBcdFx0XHRcdFx0Lm5vLXN2ZyAmIHtcbi8vIFx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9jb3Vyc2UucG5nKTtcbi8vIFx0XHRcdFx0XHR9XG5cbi8vIFx0XHRcdFx0XHQmOmhvdmVyIHtcbi8vIFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTI7XG4vLyBcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnN2Zyk7XG4vLyBcdFx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblxuLy8gXHRcdFx0XHRcdFx0Lm5vLXN2ZyAmIHtcbi8vIFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5wbmcpO1xuLy8gXHRcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHRcdH1cbi8vIFx0XHRcdFx0fVxuLy8gXHRcdFx0fVxuLy8gXHRcdH1cbi8vIFx0XHQmW2RhdGEtY291cnNldHlwZSo9XCJBcHByZW50aWNlc2hpcFwiXSB7XG4vLyBcdFx0XHRhIHtcbi8vIFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblxuLy8gXHRcdFx0XHQmOmhvdmVyIHtcbi8vIFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuLy8gXHRcdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuXG4vLyBcdFx0XHRcdFx0aDMge1xuLy8gXHRcdFx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTM7XG4vLyBcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHR9XG5cbi8vIFx0XHRcdFx0LmJ1dHRvbi1jb3Vyc2Uge1xuLy8gXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtMy9jb3Vyc2Uuc3ZnKTtcbi8vIFx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblxuLy8gXHRcdFx0XHRcdC5uby1zdmcgJiB7XG4vLyBcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTMvY291cnNlLnBuZyk7XG4vLyBcdFx0XHRcdFx0fVxuXG4vLyBcdFx0XHRcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuLy8gXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5zdmcpO1xuLy8gXHRcdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cbi8vIFx0XHRcdFx0XHRcdC5uby1zdmcgJiB7XG4vLyBcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2UucG5nKTtcbi8vIFx0XHRcdFx0XHRcdH1cbi8vIFx0XHRcdFx0XHR9XG4vLyBcdFx0XHRcdH1cbi8vIFx0XHRcdH1cbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cblxuLmFqYXgtbG9hZGluZyB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGZvbnQtc2l6ZTogZW0oMjApO1xuXHRsaW5lLWhlaWdodDogMzJweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdCY6YWZ0ZXIge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvYWpheC1sb2FkZXIuZ2lmKTtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRoZWlnaHQ6IDMycHg7XG5cdFx0d2lkdGg6IDMycHg7XG5cdH1cblxuXHQmLnNob3cge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi5zZWFyY2gtcHJlZGljdGlvbnMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAuZ3JvdXAge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgLmdyb3VwLXRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjZyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgIH1cblxuXHRcdCYuc2hvdyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0fiAuZ3JvdXAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMS4ycmVtO1xuXHRcdFx0XHRib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgkY29sb3VyLWhpZ2hsaWdodC01LCAwLjM1KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMnJlbSAzcmVtO1xuXHR9XG5cbiAgICAmI25hdi1zZWFyY2gtcHJlZGljdGlvbnMge1xuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgICYjbW9iaWxlLXNlYXJjaC1wcmVkaWN0aW9ucyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cblxuICAgIC5wcmVkaWN0aW9uIGEsIC5tb3JlLXJlc3VsdHMgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC4zcyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvdXItaGlnaGxpZ2h0LCA2MCUpO1xuXHRcdH1cbiAgICB9XG5cbiAgICAubW9yZS1yZXN1bHRzIGEge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuXHQucHJlZGljdGlvbi5mb2N1cyBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3VyLWhpZ2hsaWdodCwgNjAlKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuXHRcdGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDIwMDtcblx0fVxufVxuXG4uc2VhcmNoLWJhci5zaG93LXByZWRpY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm5hdi1tb2JpbGUgLnNlYXJjaC1iYXIuc2hvdy1wcmVkaWN0aW9uICsgLnNlYXJjaC1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAubm9zZWFyY2gtdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4vLyAucGFnZS1jb3Vyc2Utc2VhcmNoIHtcbi8vIFx0LmhvbWUtc2VhcmNoLXJlc3VsdHMge1xuLy8gXHRcdCYuZXhwYW5kLW9wZW4ge1xuLy8gXHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cblxuLnNlYXJjaC1yZXN1bHQge1xuICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICAmID4gLmlubmVyIHtcbiAgICAgICAgJiA+IGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLyogU2VhcmNoICovXG5cblxuLypcblx0PT09PT09PT09PT09XG5cdEFubm91bmNlbWVudFxuXHQ9PT09PT09PT09PT1cbiovXG4uYW5ub3VuY2Uge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMCAzcmVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihoZWlnaHQgMC4zcywgcGFkZGluZyAwLjNzKTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA2cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTk5O1xuXG5cdCYuY29sbGFwc2Uge1xuXHRcdGhlaWdodDogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cblx0JiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuXHR9XG5cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwIHtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICB9XG5cbiAgICAud3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLmFubm91bmNlLWFjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgJiA+IC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG5cdC5jbG9zZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpZaUlHaGxhV2RvZEQwaU1qWWlJSFpwWlhkQ2IzZzlJakFnTUNBeU5pQXlOaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk15QXpiREU1TGprNU9UZ2dNVGt1T1RrNU9FMHpJREl6VERJeUxqazVPVGdnTXk0d01EQXlJaUJ6ZEhKdmEyVTlJaU5tWm1ZaUlITjBjbTlyWlMxM2FXUjBhRDBpTXlJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDlJbkp2ZFc1a0lpOCtQQzl6ZG1jKycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTZweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgIGhlaWdodDogMS42cmVtO1xuXHRcdGJvcmRlcjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAuYW5ub3VuY2UtYWN0aW9uIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICB0b3A6IDE1LjVyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn1cbi8qIEFubm91bmNlbWVudCAqL1xuXG4vKlxuXHQ9PT09PT09PT09PT1cblx0TWFpbiBTZWN0aW9uXG5cdD09PT09PT09PT09PVxuKi9cbi5tYWluIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgLy8gei1pbmRleDogMjA7XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHJlbTtcbiAgICB9XG59XG5cbi5tYWluLmNvdXJzZS13cmFwLCAubWFpbi5ob21lLWNvbnRlbnQtd3JhcCB7XG4gICAgb3ZlcmZsb3cteDogaW5pdGlhbDtcbn1cbi8qIE1haW4gU2VjdGlvbiAqL1xuXG4vKlxuXHQ9PT09PT09PVxuXHRDYXJvdXNlbFxuXHQ9PT09PT09PVxuKi9cbi5ob21lLWNhcm91c2VsIHtcblx0bWFyZ2luLWJvdHRvbTogMTJweDtcblx0Ly8gbWFyZ2luLWxlZnQ6IC0yMHB4O1xuXHQvLyBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0aDIsXG5cdHRpbWUge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdH1cblxuXHRoMiB7XG5cdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGZvbnQtc2l6ZTogZW0oMjgpO1xuXHRcdGZvbnQtd2VpZ2h0OiA4MDA7XG5cdH1cblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0dGltZSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRjb2xvcjogIzk5OTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTJweDtcblx0fVxuXG5cdC5zbGljay1uZXh0IHtcblx0XHRyaWdodDogMTBweDtcblx0fVxuXG5cdC5zbGljay1wcmV2IHtcblx0XHRsZWZ0OiAxMHB4O1xuXHR9XG5cblx0LnNsaWRlIHtcblx0XHQvLyBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0Ly8gcGFkZGluZy1yaWdodDogMjBweDtcblx0fVxuXG5cdC5pbWFnZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdHdpZHRoOiA2MCU7XG5cdFx0fVxuXHR9XG5cblx0LnRleHQge1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDYxJTtcblx0XHRcdHBhZGRpbmctbGVmdDogMTVweDtcblx0XHR9XG5cdH1cbn1cblxuLmhvbWUtY2Fyb3VzZWwtbmF2IHtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdGxlZnQ6IDE1cHg7XG5cdFx0cmlnaHQ6IDYzMHB4O1xuXHR9XG5cblx0dWwsXG5cdGxpLFxuXHRidXR0b24ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXHRidXR0b24ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHR1bCB7XG5cdFx0QGV4dGVuZCAlbGlzdC1yZXNldDtcblx0XHRwYWRkaW5nLWxlZnQ6IDZweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cblx0XHRidXR0b24ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1vdXRsaW5lO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0aGVpZ2h0OiAxMHB4O1xuXHRcdFx0d2lkdGg6IDEwcHg7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC4zcyk7XG5cblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0bGkge1xuXHRcdHBhZGRpbmctbGVmdDogMnB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDJweDtcblx0fVxuXG5cdC5jYXJvdXNlbC1wcmV2LFxuXHQuY2Fyb3VzZWwtbmV4dCB7XG5cdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogOHB4O1xuXG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY2Fyb3VzZWwtc21hbGwuc3ZnKTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuM3MpO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY2Fyb3VzZWwtc21hbGwucG5nKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBvcGFjaXR5KDApO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKTtcblx0XHRcdH1cblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmNhcm91c2VsLXByZXYge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcblx0XHR9XG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNXB4O1xuXHRcdH1cblx0fVxuXG5cdC5jYXJvdXNlbC1uZXh0IHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOHB4IDA7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLThweCAtMTVweDtcblx0XHR9XG5cdH1cbn1cbi8qIENhcm91c2VsICovXG5cblxuLypcblx0PT09PT09PT09PT1cblx0QnJlYWRjcnVtYnNcblx0PT09PT09PT09PT1cbiovXG4uYnJlYWRjcnVtYnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG5cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBsaSwgbGkgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgxNiwgMTIpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVEVpSUdobGFXZG9kRDBpTVRFaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TVNBeE1TSWdJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpVFRVdU5UTTFOVEVnT1M0d056RXdObXd6TGpVek5UVXpMVE11TlRNMU5UUXRNeTQxTXpVMU15MHpMalV6TlRVeklpQnpkSEp2YTJVOUlpTTVPVGtpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUlnYzNSeWIydGxMV3hwYm1WallYQTlJbkp2ZFc1a0lpQnpkSEp2YTJVdGJHbHVaV3B2YVc0OUluSnZkVzVrSWk4K1BDOXpkbWMrJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDExcHggMTFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4xcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXRfbCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4vKiBCcmVhZGNydW1icyAqL1xuXG5cbi8qXG5cdD09PT09PT09PT1cblx0SG9tZSBCb3hlc1xuXHQ9PT09PT09PT09XG4qL1xuLmhvbWUtYm94ZXMge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRAaW5jbHVkZSBib3hlcygzKTtcblx0fVxuXG5cdC5jb2wge1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblxuXHQuaW5uZXIge1xuXHRcdGJhY2tncm91bmQ6ICNFRUY7XG5cdH1cbn1cbi8qIEhvbWUgQm94ZXMgKi9cblxuXG4vKlxuXHQ9PT09PVxuXHRGb3Jtc1xuXHQ9PT09PVxuKi9cblxuLm1haW4tY29sIC5jb250ZW50LWJsb2NrIC5mb3JtLWFwcGxpY2F0aW9uLCAubWFpbi1jb2wgLmNvbnRlbnQtYmxvY2sgLmZvcm0tcXVlcnkge1xuICAgIC5saXN0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gICAgICAgIHAsIHVsIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjJyZW07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT1NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURrZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpVFRrZ05rdzBMalpsTFRjZ01URXVNVGsyTWlBNUxqSmxMVGN1T0RBek9EUTNJRGtnTm5vaUlHWnBiR3c5SWlObVptWWlMejQ4TDNOMlp6ND0nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2cHggOHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMC42cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmxpc3QtY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1LjZyZW07XG5cbiAgICAgICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDAuOXJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tbmV3c2xldHRlciB7XG5cdGlucHV0IHtcblx0XHRib3JkZXItY29sb3I6ICNGRkY7XG5cdH1cbn1cblxuLmZvcm0tZXZlbnQge1xuXHRoMiB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMS40cmVtIDAgMi40cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQge1xuICAgICAgICAmID4gbGFiZWwsIC5mb3JtLWlucHV0IC5pbnB1dC1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVnaXN0ZXItYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmZvcm0tZmllbGQgKyAuZm9ybS1maWVsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbi1jb2wgLmNvbnRlbnQtYmxvY2sgLmZvcm0tYXBwbGljYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAmID4gKiArICosIC5jb2wtaXRlbSA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG5cbiAgICAuZm9ybS1lcnJvci1tc2cge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgM3JlbTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwIDIuNHJlbTtcbiAgICB9XG5cbiAgICAuY29sbGFwc2UtdGV4dCwgLmV4cGxhaW4tZGV0YWlsIC5leHBsYWluLXRleHQsIC5mb3JtLWZpZWxkIHAsIC5vcGVuLXF1YWxpLWJ1dHRvbiwgLnF1YWxpLWxpc3QtbW9iaWxlIC5xdWFsaS1pdGVtLW1vYmlsZSBwLCAucXVhbGktdGlwLXRleHQsIC5ldS1leHBsYWluLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgfVxuXG4gICAgLnF1YWxpLXRpcC10ZXh0LCAuZXUtZXhwbGFpbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5tb2JpbGVUZWwtdGlwLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZS0xO1xuICAgICAgICBtYXJnaW46IDJyZW0gMCAxcmVtO1xuICAgIH1cblxuICAgIC5jb2xsYXBzZS10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAxLjZyZW0gMCAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXG4gICAgICAgICYubWFyZ2luLWJvdHRvbS0wIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3Blbi1xdWFsaS1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cblxuICAgIC5saXN0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIHAsIHVsIGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9TSWdhR1ZwWjJoMFBTSXhNaUlnZG1sbGQwSnZlRDBpTUNBd0lEa2dNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRUa2dOa3cwTGpabExUY2dNVEV1TVRrMk1pQTVMakpsTFRjdU9EQXpPRFEzSURrZ05ub2lJR1pwYkd3OUlpTXlNVE0wTmpJaUx6NDhMM04yWno0PScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmV4cGxhaW4tZGV0YWlsIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgcGFkZGluZzogM3JlbTtcblxuICAgICAgICAuZXhwbGFpbi10ZXh0IHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnF1YWxpLWxpc3QtbW9iaWxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcblxuICAgICAgICAucXVhbGktaXRlbS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogMS44cmVtIDAgMS40cmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0NDQ0M7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yZW1vdmUtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCwgUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlNVElpSUhacFpYZENiM2c5SWpBZ01DQXhNaUF4TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVElnTWt3eE1DNDBPRFV6SURFd0xqUTROVE1pSUhOMGNtOXJaVDBpSXpJeE16UTJNaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaUJ6ZEhKdmEyVXRiR2x1WldOaGNEMGljbTkxYm1RaUlITjBjbTlyWlMxc2FXNWxhbTlwYmowaWNtOTFibVFpTHo0S1BIQmhkR2dnWkQwaVRUSWdNVEF1TkRnMU5Fd3hNQzQwT0RVeklESXVNREF3TURjaUlITjBjbTlyWlQwaUl6SXhNelEyTWlJZ2MzUnliMnRsTFhkcFpIUm9QU0l5SWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaUx6NEtQQzl6ZG1jK0NnPT0nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucXVhbGktYmxvY2suaGlkZS1hbmltYXRpb24ge1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQge1xuICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuXG4gICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmFkaW8tZ3JvdXAtc2ltcGxlLXdyYXBwZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MnJlbTtcblxuICAgICAgICAgICAgJiA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQuZnVsbC13aWR0aCwgLnF1YWxpLWJsb2NrLmZ1bGwtd2lkdGgsIC5kaWZmaWN1bHR5LWRldGFpbC5mdWxsLXdpZHRoIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFncmVlbWVudC13cmFwcGVyICsgLmFncmVlbWVudC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICYgPiAuc2F2ZS1sYXRlci1idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDZyZW0pO1xuICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1maWVsZC1zZWN0aW9uIHtcbiAgICAgICAgJiA+ICo6bm90KGgyKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLmhpZGUtYW5pbWF0aW9uOm5vdCguc2hvdykgKyAuZm9ybS1maWVsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXJtLXRleHQsIC5wcml2YWN5IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgLnRlcm0tdGV4dCwgJiArIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJpdmFjeSB7XG4gICAgICAgICAgICBtYXJnaW46IDEuMjVyZW0gLTAuNzVyZW0gLTAuNzVyZW07XG5cbiAgICAgICAgICAgIC5wcml2YWN5LWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMC43NXJlbSAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQud2lkZXIsIC53aWRlciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQgaW5wdXQuZXJyb3IsIC5mb3JtLWZpZWxkIHNlbGVjdC5lcnJvciwgLmZvcm0tZmllbGQgLmlucHV0LXJhZGlvIGlucHV0W3R5cGU9cmFkaW9dLmVycm9yICsgbGFiZWwsIC5mb3JtLWZpZWxkIC5pbnB1dC1yYWRpby1zaW1wbGUgaW5wdXRbdHlwZT1yYWRpb10uZXJyb3IgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0NEMkMyNztcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWZpZWxkIGxhYmVsLmVycm9yIHtcbiAgICAgICAgICAgIGNvbG9yOiAjQ0QyQzI3O1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwuZXJyb3ItdGV4dCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dC1yYWRpby1ncm91cCAuaW5wdXQtcmFkaW8ge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2UtMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsLCBpbnB1dFt0eXBlPXJhZGlvXTpmb2N1cyArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZ3JleSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuMik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTZyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC02cmVtO1xuXG4gICAgICAgICAgICAuZm9ybS1maWVsZCBwIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1maWVsZC1zZWN0aW9uLCAuaGFsZi13aWR0aC1ncmV5IHtcbiAgICAgICAgLmZvcm0tZmllbGQgbGFiZWwsIC5mb3JtLWlucHV0IC5pbnB1dC1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwgPiBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1maWVsZC1zZWN0aW9uOm5vdCgucGF5bWVudC1hZGRyZXNzLXNlY3Rpb24pICsgLmZvcm0tZmllbGQtc2VjdGlvbjpub3QoLmdyZXkpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS42cmVtO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjByZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ3JleTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZnVsbC13aWR0aC1ncmV5LCAuaGFsZi13aWR0aC1ncmV5IHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwIDNyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+ICo6bm90KC5xdWFsaS1zZWN0aW9uKSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+ICoucXVhbGktc2VjdGlvbjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWZpZWxkLXNlY3Rpb24uZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIEBpbmNsdWRlIG1pbig3NjhweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhbGYtd2lkdGgtZ3JleSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB9XG5cbiAgICAmLnNob3J0LXdpZHRoIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnVuZGVyMTktbGl2aW5nLXNlY3Rpb24sIC5zZWNvbmQtY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgJi5oaWRlLWFuaW1hdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mdWxsLXdpZHRoLWdyZXkgKyAuanMtZW1wbG95LXNlY3Rpb24ge1xuICAgICAgICAmLmhpZGUtYW5pbWF0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBheW1lbnQtY29scyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgLmNvbC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29sLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGF5bWVudC1hZGRyZXNzLXNlY3Rpb24uaGlkZS1hbmltYXRpb24ge1xuICAgICAgICAmICsgLmZvcm0tZmllbGQtc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaG93ICsgLmZvcm0tZmllbGQtc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBheW1lbnQtc3VtbWFyeSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1heC13aWR0aDogNjByZW07XG5cbiAgICAgICAgLnN1bW1hcnktaXRlbSwgLmF2YWlsLXBheS1tZXRob2RzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjZyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdW1tYXJ5LWl0ZW0ge1xuICAgICAgICAgICAgJiArIC5zdW1tYXJ5LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0NDQ0NDO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRvdGFsIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmF2YWlsLXBheS1tZXRob2RzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjJyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU1UWWlJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQXhOaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1UTXVNalk1TWlBM0xqVTVNRGt5WXkwdU1qSXdOUzB1TWpFeU1UUXRMalE0T0MwdU16RTRNVE10TGpnd01qa3RMak14T0RFemFDMHVNemMzTmxZMUxqQTVNRGcxWXpBdE1TNHpPVE01TWkwdU5URTVNeTB5TGpVNU1EYzRMVEV1TlRVNE1pMHpMalU1TURjNFF6a3VORGt4TlRrdU5UQXdNREl5SURndU1qUTRNamtnTUNBMkxqYzVPVGswSURBZ05TNHpOVEUyTXlBd0lEUXVNVEE0TURndU5UQXdNREl5SURNdU1EWTVNeUF4TGpVd01EQXpJREl1TURNd016VWdNaTQxTURBd055QXhMalV4TVRBMElETXVOamsyT0RrZ01TNDFNVEV3TkNBMUxqQTVNRGcxZGpJdU1UZ3hPVFJvTFM0ek56YzNNMk10TGpNeE5EY3hNaUF3TFM0MU9ESXpOamd1TVRBMU9Ua3RMamd3TWpjMk1pNHpNVGd4TTBNdU1URXdNVFUxSURjdU9EQXlPU0F3SURndU1EWXdOVFFnTUNBNExqTTJNemMwZGpZdU5UUTFNelpqTUNBdU16QXpMakV4TURFNU55NDFOakEzTGpNek1EVTBPQzQzTnpJNExqSXlNRE01TkM0eU1USXVORGc0TURVdU16RTRNUzQ0TURJM05qSXVNekU0TVVneE1pNDBOalkyWXk0ek1UUTVJREFnTGpVNE1qUXRMakV3Tmk0NE1ESTVMUzR6TVRneExqSXlNREV0TGpJeE1qRXVNek13TlMwdU5EWTVPQzR6TXpBMUxTNDNOekk0VmpndU16WXpOakpqTGpBd01ESXRMak13TWprMkxTNHhNVEEwTFM0MU5qQTFOaTB1TXpNd09DMHVOemN5TjNwdExUTXVORFEzTURZdExqTXhPREV6YUMwMkxqQTBORFJXTlM0d09UQTROV013TFM0NE1ESTVPUzR5T1RVeE9TMHhMalE0T0RZMExqZzROVFEyTFRJdU1EVTJOek11TlRrd016VXRMalUyT0RFMklERXVNekF5TlRVdExqZzFNakU0SURJdU1UTTJPRFl0TGpnMU1qRTRMamd6TkRNNUlEQWdNUzQxTkRZME15NHlPRE01T0NBeUxqRXpOamd5TGpnMU1qRTRMalU1TURFdU5UWTRNRFV1T0RnMU1qWWdNUzR5TlRNM05DNDRPRFV5TmlBeUxqQTFOamN6ZGpJdU1UZ3hPVFI2SWlCbWFXeHNQU0lqTURBd0lpOCtQQzl6ZG1jKycpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTZweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW50aG9kcy1sb2dvcyBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgJiA+ICo6bm90KC5oaWRkZW4pICsgKjpub3QoLnBheW1lbnQtY29scyk6bm90KC51bmRlcjE5LWxpdmluZy1zZWN0aW9uKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbGxhcHNlLXRleHQge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWZpZWxkICA+IHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24tZ3JvdXAgLnNhdmUtbGF0ZXItYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNHJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQtc2VjdGlvbiB7XG4gICAgICAgICAgICAudGVybS10ZXh0LCAucHJpdmFjeSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgICAgICAgICAmICsgLnRlcm0tdGV4dCwgJiArIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcml2YWN5IC5wcml2YWN5LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tZmllbGQuc2VsZWN0LWZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZ3JleSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXJlbSA2cmVtIDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyAuZm9ybS1maWVsZC5yYWRpby1ncm91cC1zaW1wbGUtd3JhcHBlciAuaW5wdXQtcmFkaW8tc2ltcGxlLWdyb3VwIC5pbnB1dC1yYWRpby1zaW1wbGUge1xuICAgICAgICAvLyAgICAgZmxleC1iYXNpczogMzMuMzMlO1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgLnVuZGVyMTktbGl2aW5nLXNlY3Rpb24sIC5zZWNvbmQtY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgICAgICYuaGlkZS1hbmltYXRpb24uc2hvdyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWZpZWxkLXNlY3Rpb246bm90KC5wYXltZW50LWFkZHJlc3Mtc2VjdGlvbikgKyAuZm9ybS1maWVsZC1zZWN0aW9uOm5vdCguZ3JleSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZnVsbC13aWR0aC1ncmV5LCAuaGFsZi13aWR0aC1ncmV5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gMCA1cmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTAwJSkgKiAtMC41KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhhbGYtd2lkdGgtZ3JleSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxMDB2dyAtIDEwMCUpICogMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWZpZWxkLXNlY3Rpb24gLnRlcm0tdGV4dCwgLnByaXZhY3kge1xuICAgICAgICAgICAgJiArIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBheW1lbnQtY29scyB7XG4gICAgICAgICAgICAuY29sLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBheW1lbnQtc3VtbWFyeSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ4cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgIC5zdW1tYXJ5LWl0ZW0gcCwgLmF2YWlsLXBheS1tZXRob2RzIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3VtbWFyeS1pdGVtLnRvdGFsIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYXZhaWwtcGF5LW1ldGhvZHMgLm1lbnRob2RzLWxvZ29zIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUuMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMS44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgLm9wZW4tcXVhbGktYnV0dG9uLCAucXVhbGktbGlzdC1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24tZ3JvdXAgLnNhdmUtbGF0ZXItYnV0dG9uIHtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1hcHBsaWNhdGlvbl9zdGVwcyB7XG5cdEBleHRlbmQgJWxpc3QtcmVzZXQ7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXHRjb3VudGVyLXJlc2V0OiBzdGVwO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0bGkge1xuXHRcdGNvbG9yOiAjQ0NDO1xuXHRcdGNvdW50ZXItaW5jcmVtZW50OiBzdGVwO1xuXHRcdHBhZGRpbmc6IDI0cHggNHB4IDRweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRAaW5jbHVkZSBtaW4oNTYwcHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDMzLjMzMzMlO1xuXHRcdH1cblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNDQ0M7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdGNvbnRlbnQ6IGNvdW50ZXIoc3RlcCk7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdGhlaWdodDogMjBweDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRcdHotaW5kZXg6IDI7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogOXB4O1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblx0fVxuXG5cdC5mb3JtLWFwcGxpY2F0aW9uX3N0ZXBzX19hY3RpdmUge1xuXHRcdGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdH1cblx0fVxuXG5cdC5mb3JtLWFwcGxpY2F0aW9uX3N0ZXBzX19jb21wbGV0ZSB7XG5cdFx0Y29sb3I6ICRjb2xvdXItYmFzZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItYmFzZTtcblx0XHR9XG5cdH1cblxuXHQmLmZvcm0tYXBwbGljYXRpb25fc3RlcHMtcGF5bWVudCB7XG5cdFx0bGkge1xuXHRcdFx0QGluY2x1ZGUgbWluKDU2MHB4KSB7XG5cdFx0XHRcdHdpZHRoOiAyNSU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5mb3JtLXByb3NwZWN0dXMge1xuXHRmaWVsZHNldCB7XG5cdFx0KyBmaWVsZHNldCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblxuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHR9XG5cdH1cblxuXHRoMiB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtMztcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHR9XG5cblx0LmZvcm0taXRlbSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdC5jb2xzIHtcblx0XHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0XHRtYXJnaW4tbGVmdDogLTE5cHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtMTlweDtcblxuXHRcdCsgLmNvbHMge1xuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHR9XG5cdH1cblx0LmNvbCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxOXB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDE5cHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHQrIC5jb2wge1xuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblxuXHRcdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5jb2wtMiB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxOXB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDE5cHg7XG5cdH1cblx0LmNoZWNrYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0LmJ1dHRvbi1yb3cge1xuXHRcdG1hcmdpbi10b3A6IDQ1cHg7XG5cdH1cblxuXHQucHJvc3BlY3R1cy1zZWxlY3Qge1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdG1hcmdpbjogMCAtNnB4IDE2cHg7XG5cblx0XHRpbWcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDAgYXV0byA0cHg7XG5cdFx0fVxuXHRcdC5wcm9zcGVjdHVzIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA2cHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogNDkuOTk5OTUlO1xuXG5cdFx0XHQmOm50aC1jaGlsZCgzKSB7XG5cdFx0XHRcdGNsZWFyOiBsZWZ0O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdFx0d2lkdGg6IDI0Ljk5OTk3NSU7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQoMykge1xuXHRcdFx0XHRcdGNsZWFyOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDUpIHtcblx0XHRcdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oMTAyNHB4KSB7XG5cdFx0XHRcdHdpZHRoOiAxNC4yODU3JTtcblxuXHRcdFx0XHQmOm50aC1jaGlsZCg1KSB7XG5cdFx0XHRcdFx0Y2xlYXI6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmNoZWNrYm94IHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdFx0LmxibCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XG5cdFx0fVxuXHR9XG5cblx0Lm9yIHtcblx0XHRib3JkZXItYm90dG9tOiA1cHggc29saWQgJGNvbG91ci1oaWdobGlnaHQtMztcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtMztcblx0XHRmb250LXNpemU6IGVtKDI4KTtcblx0XHRmb250LXdlaWdodDogODAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDcwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDc1cHg7XG5cdFx0cGFkZGluZy10b3A6IDMwcHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtMztcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9lbWFpbC1sYXJnZS5zdmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogNDdweCAzNnB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHR3aWR0aDogODZweDtcblx0XHRcdGhlaWdodDogODZweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMTAwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtNDNweDtcblx0XHRcdG1hcmdpbi10b3A6IC00MXB4O1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb25zL3doaXRlL2VtYWlsLWxhcmdlLnBuZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5tYWluLWNvbCAuY29udGVudC1ibG9jayAuZm9ybS1xdWVyeSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgbWFyZ2luOiAwIC0zcmVtO1xuICAgIHBhZGRpbmc6IDNyZW07XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBtYXJnaW46IDJyZW0gMCAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQge1xuICAgICAgICBAZXh0ZW5kIC5mb3JtLWZpZWxkO1xuICAgIH1cblxuICAgIC5zdWJtaXQtYnRuIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBtYXJnaW46IDAgLTZyZW07XG4gICAgICAgIHBhZGRpbmc6IDZyZW07XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG5cbiAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgMS42cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN1Ym1pdC1idG4ge1xuICAgICAgICAgICAgaGVpZ2h0OiA3cmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm16IHtcblx0W2lkJD1fd3JhcF0ge1xuXHRcdCsgKiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxZW07XG5cdFx0fVxuXHR9XG5cblx0LmNoZWNrYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblxuXHRcdGlucHV0IHtcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0fVxuXHR9XG5cblx0LmJvb2xEaXYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1sZWZ0OiAxZW07XG5cdH1cblxuXHQuYWN0aW9ucyB7XG5cdFx0bWFyZ2luLXRvcDogMWVtO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR9XG5cblx0LmVycm9yIHtcblx0XHRjb2xvcjogI0YwMDtcblx0fVxufVxuXG4uZm9ybS1mdW5kaW5nIHtcbiAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMnJlbSBhdXRvIDA7XG5cbiAgICAuZm9ybS1maWVsZCBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgfVxuXG4gICAgLmZvcm0tZmllbGQgKyAuZm9ybS1maWVsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgLnF1ZXN0aW9ucy1idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuYnV0dG9uIH4gLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWZ1bmRpbmdfZmVlIGgzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC40cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG5cdC5mb3JtLWZ1bmRpbmdfcXVlc3Rpb25zIH4gKiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG5cdH1cblxuICAgIC5xdWVzdGlvbnMtY29udGFjdC1pbnB1dHMgLmNvbG91ci1oaWdobGlnaHQge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcblxuICAgICAgICAmICsgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG5cdC8vIC5yZXNwb25zZSB7XG5cdC8vIFx0KyAqIHtcblx0Ly8gXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdC8vIFx0fVxuXHQvLyB9XG5cblx0Ly8gdGV4dGFyZWEgKyAuYnV0dG9uIHtcblx0Ly8gXHRtYXJnaW4tdG9wOiAyMHB4O1xuICAgIC8vIH1cblxuICAgICYgKyAuZm9ybS1mdW5kaW5nIHtcblx0XHRtYXJnaW4tdG9wOiAycmVtO1xuXHR9XG59XG4vKiBGb3JtcyAqL1xuXG5cbi8qXG5cdD09PT09PVxuXHRFdmVudHNcblx0PT09PT09XG4qL1xuLmV2ZW50LXBhZ2UuZXZlbnQtcmVnaXN0ZXIge1xuICAgIC5zaGFyZXRoaXMgPiBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTRyZW07XG4gICAgfVxuXG4gICAgLnBhZ2UtZGF0ZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuXG4uZXZlbnQtaGFuZ3VwIHtcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gdG9wOiA1MCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMzAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZy1ib3R0b206IDhyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAyMDA7XG5cbiAgICAudGltZSB7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyLWJhc2U7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGxoKDI0LCAyMCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xuICAgICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgzNywgMzIpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dCB7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3VyLWJhc2UsIDAuNyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgICAgICBvcmRlcjogLTE7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAvLyBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgd2lkdGg6IDZyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB0b3A6IDIwJTtcblxuICAgICAgICAudGltZSB7XG4gICAgICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB3cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7XG4gICAgICAgICAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgyOCwgMjQpO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMzJyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3BfbSkge1xuICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAudGltZSB7XG4gICAgICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogOHJlbTtcblxuICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBsaCgzNywgMzIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjRyZW07XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV2ZW50cyB7XG5cdC5maWx0ZXIge1xuICAgICAgICBAZXh0ZW5kICVsaXN0aW5nLWZpbHRlcjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuXG4gICAgICAgICYgKyAuZXZlbnRzLWxpc3Qge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgfVxuXHR9XG5cblx0LmZpbHRlci1tb2JpbGUge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG5cdFx0bWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcblxuXHRcdC5maWx0ZXJfZmllbGQge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDVweDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDVweDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0KyAuZmlsdGVyIHtcblx0XHRcdEBpbmNsdWRlIG1heCg3NjdweCkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdH4gLmxpc3Rpbmcge1xuXHRcdFx0QGluY2x1ZGUgbWF4KDc2N3B4KSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgIC5maWx0ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgJiArIC5ldmVudHMtbGlzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi51cGNvbWluZy1ldmVudHMgLmNhcmQtYmxvY2stY29udGVudCAudXBjb21pbmctZXZlbnQtY2FyZCwgLmV2ZW50cyAuZXZlbnRzLWxpc3QgLnVwY29taW5nLWV2ZW50LWNhcmQge1xuICAgICY6bnRoLWNoaWxkKDRuKzEpIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzNTkuOTVkZWcsICNENjBCNTIgLTAuNzclLCNENjBCNTIgMTUuMDIlLCAjREExRTRCIDMwLjQzJSwgICNFMzUxMzkgNjEuODMlLCAjRjE5ODFGIDEwMS4yNyUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDRuKzIpIHtcbiAgICAgICAgLnRleHQtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjQTNDMUQzIC0xLjQ1JSwgI0EzQzFEMyAxMi4zNSUsICNDOTlCQzAgNTcuOTQlLCAjREY4NEI1IDgyLjg4JSwgI0RGODRCNSAxMDAuOTIlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0biszKSB7XG4gICAgICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTcuNzhkZWcsICM5NUMxMUYgMjEuMjYlLCAjN0JCQTU0IDM1LjA1JSwgIzU2QjE5RiA1Ni4wNyUsICMzRkFCQ0YgNzEuMTElLCAjMzZBOUUxIDc4LjYlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0bis0KSB7XG4gICAgICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRDU2MjIxIDAlLCAjRDc2ODI0IDMuMDQlLCAjREM4NDM2IDIxLjEzJSwgI0UxOTk0NiAzOS41OCUsICNFNEE4NTIgNTguMyUsICNFNkIwNTkgNzcuNDMlLCAjRTZCMzVDIDk3LjYyJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBFdmVudHMgKi9cblxuLypcblx0PT09PVxuXHROZXdzXG5cdD09PT1cbiovXG4ubmV3cy5maWx0ZXIge1xuICAgIEBleHRlbmQgJWxpc3RpbmctZmlsdGVyO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuXG4gICAgYSwgc3BhbiB7XG4gICAgICAgIG1pbi13aWR0aDogMTByZW07XG4gICAgfVxuXG4gICAgJiArIC5uZXdzLWxpc3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCRkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICYgKyAubmV3cy1saXN0IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBOZXdzICovXG5cblxuLypcblx0PT09PT09PVxuXHRDb3Vyc2VzXG5cdD09PT09PT1cbiovXG4ubWFpbi1jb2wgLmNvbnRlbnQtYmxvY2sgLmNvdXJzZS1zZWFyY2gtc2VjdGlvbiwgLm1haW4tY29sIC5jb250ZW50LWJsb2NrIC5jb3Vyc2Utc2VhcmNoLWJsb2NrLCAuY291cnNlLXNlYXJjaC10b29scyB7XG4gICAgLnNvcnRieSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLnNvcnRieSBsYWJlbCwgLnNvcnRieSBzZWxlY3Qge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb3Vyc2Utc2VhcmNoLXRvb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAmID4gcCB7XG4gICAgICAgIG1hcmdpbjogMS4ycmVtIDAgMDtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICB9XG5cblx0LmNvdXJzZS1yZXN1bHRzLXN1bW1hcnkge1xuICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgLnRvdGFsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblx0fVxuXG4gICAgLnBhZ2luYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmNvdXJzZS1yZXN1bHRzLXN1bW1hcnkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgIH1cbn1cblxuLmNvdXJzZS1ibG9jayB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLXNlY29uZGFyeTtcblx0bWFyZ2luOiAwIDAgMjBweCAwO1xuXHRwYWRkaW5nOiAxMHB4IDEwcHggNXB4IDIwcHg7XG5cblx0QGluY2x1ZGUgbWluKDU1MHB4KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHR9XG5cblx0LmRldGFpbHMge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cblx0XHRAaW5jbHVkZSBtaW4oNTUwcHgpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdH1cblxuXHRcdC50eXBlIHtcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG5cdFx0fVxuXHR9XG5cblx0Jixcblx0aDIge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHR9XG5cblx0aDIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMTtcblxuXHRcdEBpbmNsdWRlIG1heCg1NDlweCkge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgyMCk7XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQudHlwZSB7XG5cdFx0bWFyZ2luOiAwIDEwcHggNXB4IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRmb250LXNpemU6IGVtKDIwKTtcblx0XHRmb250LXdlaWdodDogODAwO1xuXG5cdFx0QGluY2x1ZGUgbWF4KDU0OXB4KSB7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xuXHRcdH1cblx0fVxuXG5cdC52ZW51ZSxcblx0LnRpbWUge1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwIDAgNXB4IDA7XG5cdFx0cGFkZGluZzogMCAyMHB4IDAgMzBweDtcblx0XHRmb250LXNpemU6IGVtKDE4KTtcblxuXHRcdEBpbmNsdWRlIG1heCg1NDlweCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHR9XG5cdH1cblxuXHQudmVudWUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9ob21lLnBuZyk7XG5cdH1cblxuXHQudGltZSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2Nsb2NrLnBuZyk7XG5cdH1cblxuXHQuYnV0dG9ucyB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblxuXHRcdEBpbmNsdWRlIG1pbig1NTBweCkge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi13aGl0ZSB7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgI2ZmZjtcblx0XHRjb2xvcjogJGNvbG91ci1zZWNvbmRhcnk7XG5cdFx0bWFyZ2luOiAwIDAgNXB4IDVweDtcblxuXHRcdEBpbmNsdWRlIG1heCg1NDlweCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItc2Vjb25kYXJ5O1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi10cmFuc3BhcmVudCB7XG5cdFx0bWFyZ2luOiAwIDAgNXB4IDVweDtcblxuXHRcdEBpbmNsdWRlIG1heCg1NDlweCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLWFwcGx5IHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vZ3JleS9hcHBseS5zdmcpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9ncmV5L2FwcGx5LnBuZyk7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnBuZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1jb3Vyc2Uge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9ncmV5L2NvdXJzZS5zdmcpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9ncmV5L2NvdXJzZS5wbmcpO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5zdmcpO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnBuZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1wcm9zcGVjdHVzIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vZ3JleS9wcm9zcGVjdHVzLWJ1aWxkZXIuc3ZnKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vZ3JleS9wcm9zcGVjdHVzLWJ1aWxkZXIucG5nKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9wcm9zcGVjdHVzLWJ1aWxkZXIuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5wbmcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZbZGF0YS1jb3Vyc2V0eXBlKj1cIkZ1bGwtVGltZVwiXSB7XG5cdFx0YmFja2dyb3VuZDogJGNvbG91ci1jb3Vyc2UtMTtcblxuXHRcdC5idXR0b24td2hpdGUge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2ZmZjtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0c3Bhbi5idXR0b24td2hpdGU6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuXHRcdH1cblxuXHRcdHNwYW4uYnV0dG9uLXRyYW5zcGFyZW50OmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHR9XG5cblx0XHQuYnV0dG9uLWFwcGx5IHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNi9hcHBseS5zdmcpO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTYvYXBwbHkucG5nKTtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9hcHBseS5zdmcpO1xuXG5cdFx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnBuZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYnV0dG9uLWNvdXJzZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTYvY291cnNlLnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNi9jb3Vyc2UucG5nKTtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2Uuc3ZnKTtcblxuXHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2UucG5nKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24tcHJvc3BlY3R1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTYvcHJvc3BlY3R1cy1idWlsZGVyLnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNi9wcm9zcGVjdHVzLWJ1aWxkZXIucG5nKTtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9wcm9zcGVjdHVzLWJ1aWxkZXIuc3ZnKTtcblxuXHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9wcm9zcGVjdHVzLWJ1aWxkZXIucG5nKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIC5idXR0b24td29ya3BsYWNlIHtcblx0XHQvLyBcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNi93b3JrcGxhY2Uuc3ZnKTtcblx0XHQvL1xuXHRcdC8vIFx0Lm5vLXN2ZyAmIHtcblx0XHQvLyBcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC02L3dvcmtwbGFjZS5wbmcpO1xuXHRcdC8vIFx0fVxuXHRcdC8vIH1cblx0fVxuXG5cdCZbZGF0YS1jb3Vyc2V0eXBlKj1cIlBhcnQtVGltZVwiXSwmW2RhdGEtY291cnNldHlwZSo9XCJIaWdoZXIgRWR1Y2F0aW9uXCJdIHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3VyLWNvdXJzZS0yO1xuXG5cdFx0LmJ1dHRvbi13aGl0ZSB7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuXHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTI7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzcGFuLmJ1dHRvbi13aGl0ZTpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTI7XG5cdFx0fVxuXG5cdFx0c3Bhbi5idXR0b24tdHJhbnNwYXJlbnQ6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblxuXHRcdC5idXR0b24tYXBwbHkge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L2FwcGx5LnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9hcHBseS5wbmcpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnN2Zyk7XG5cblx0XHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkucG5nKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24tY291cnNlIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9jb3Vyc2Uuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L2NvdXJzZS5wbmcpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5zdmcpO1xuXG5cdFx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5wbmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1wcm9zcGVjdHVzIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQtNC9wcm9zcGVjdHVzLWJ1aWxkZXIuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L3Byb3NwZWN0dXMtYnVpbGRlci5wbmcpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5zdmcpO1xuXG5cdFx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5wbmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gLmJ1dHRvbi13b3JrcGxhY2Uge1xuXHRcdC8vIFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC00L3dvcmtwbGFjZS5zdmcpO1xuXHRcdC8vXG5cdFx0Ly8gXHQubm8tc3ZnICYge1xuXHRcdC8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vaGlnaGxpZ2h0LTQvd29ya3BsYWNlLnBuZyk7XG5cdFx0Ly8gXHR9XG5cdFx0Ly8gfVxuXHR9XG5cblx0JltkYXRhLWNvdXJzZXR5cGUqPVwiQXBwcmVudGljZXNoaXBcIl0ge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvdXItY291cnNlLTM7XG5cblx0XHQuYnV0dG9uLXdoaXRlIHtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNwYW4uYnV0dG9uLXdoaXRlOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHR9XG5cblx0XHRzcGFuLmJ1dHRvbi10cmFuc3BhcmVudDpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1hcHBseSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTMvYXBwbHkuc3ZnKTtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS0zL2FwcGx5LnBuZyk7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkuc3ZnKTtcblxuXHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9hcHBseS5wbmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1jb3Vyc2Uge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS0zL2NvdXJzZS5zdmcpO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTMvY291cnNlLnBuZyk7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnN2Zyk7XG5cblx0XHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvY291cnNlLnBuZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYnV0dG9uLXByb3NwZWN0dXMge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS0zL3Byb3NwZWN0dXMtYnVpbGRlci5zdmcpO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTMvcHJvc3BlY3R1cy1idWlsZGVyLnBuZyk7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvcHJvc3BlY3R1cy1idWlsZGVyLnN2Zyk7XG5cblx0XHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvcHJvc3BlY3R1cy1idWlsZGVyLnBuZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyAuYnV0dG9uLXdvcmtwbGFjZSB7XG5cdFx0Ly8gXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTMvd29ya3BsYWNlLnN2Zyk7XG5cdFx0Ly9cblx0XHQvLyBcdC5uby1zdmcgJiB7XG5cdFx0Ly8gXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtMy93b3JrcGxhY2UucG5nKTtcblx0XHQvLyBcdH1cblx0XHQvLyB9XG5cdH1cblxuXHQmLmlzLXdvcmtwbGFjZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS93b3JrcGxhY2Uuc3ZnKTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogOTUlIGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiAxOXB4IDE2cHg7XG5cdHBhZGRpbmctcmlnaHQ6IDQ2cHg7XG5cblx0Lm5vLXN2ZyAmIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvd29ya3BsYWNlLnBuZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vZ3JleS93b3JrcGxhY2Uuc3ZnKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2dyZXkvd29ya3BsYWNlLnBuZyk7XG5cdFx0fVxuXHR9XG5cdH1cbn1cblxuLy8gLmxlaXN1cmUtY291cnNlLWJsb2NrW2RhdGEtY291cnNldHlwZSo9XCJQYXJ0LVRpbWVcIl0ge1xuLy8gXHRiYWNrZ3JvdW5kOiAkY29sb3VyLWNvdXJzZS01O1xuXG4vLyBcdC5idXR0b24td2hpdGUge1xuLy8gXHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuXG4vLyBcdFx0Jjpob3ZlciB7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuLy8gXHRcdH1cbi8vIFx0fVxuXG4vLyBcdC5idXR0b24tY291cnNlIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTUvY291cnNlLnN2Zyk7XG4vLyBcdH1cblxuLy8gXHRzcGFuLmJ1dHRvbi10cmFuc3BhcmVudDpob3ZlciB7XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcbi8vIFx0fVxuLy8gfVxuXG4uY291cnNlLWNvbG91ci1sZWlzdXJlIHtcblx0LmNvdXJzZXMge1xuXHRcdC5hY2NvcmRpb24taGVhZGVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHR9XG5cblx0XHRcdGgyIHtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHR9XG5cblx0XHRcdHA6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvdXJzZS1ibG9ja1tkYXRhLWNvdXJzZXR5cGUqPVwiUGFydC1UaW1lXCJdLFxuXHRcdC5jb3Vyc2UtYmxvY2tbZGF0YS1jb3Vyc2V0eXBlKj1cIkhpZ2hlciBFZHVjYXRpb25cIl0ge1xuXHRcdFx0YmFja2dyb3VuZDogMDtcblxuXHRcdFx0LnR5cGUsXG5cdFx0XHQudGltZSxcblx0XHRcdC5idXR0b25zIDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC52ZW51ZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9ob21lLnBuZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jb3Vyc2UtY29sb3VyLWxlaXN1cmUgIC5jb3Vyc2UtYmxvY2ssIC5jb3Vyc2UtYmxvY2tbZGF0YS1jb3Vyc2V0eXBlKj1cIkxlaXN1cmVcIl0ge1xuXHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3VyLWNvdXJzZS01O1xuXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuXHRoMiB7XG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLXdoaXRlLFxuXHQuYnV0dG9uLXRyYW5zcGFyZW50IHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWNvdXJzZS01O1xuXHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0fVxuXHR9XG5cblx0c3Bhbi5idXR0b24td2hpdGU6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdH1cblxuXHRzcGFuLmJ1dHRvbi10cmFuc3BhcmVudDpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblx0fVxuXG5cdC5idXR0b24tYXBwbHkge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9hcHBseS5zdmcpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9hcHBseS5wbmcpO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnN2Zyk7XG5cblx0XHRcdC5uby1zdmcgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvYXBwbHkucG5nKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLWNvdXJzZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9jb3Vyc2Uuc3ZnKTtcblxuXHQubm8tc3ZnICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9jb3Vyc2UucG5nKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi93aGl0ZS9jb3Vyc2Uuc3ZnKTtcblxuXHRcdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2NvdXJzZS5wbmcpO1xuXHRcdH1cblx0fVxuXHR9XG5cblx0LmJ1dHRvbi1wcm9zcGVjdHVzIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS01L3Byb3NwZWN0dXMtYnVpbGRlci5zdmcpO1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2NvdXJzZS01L3Byb3NwZWN0dXMtYnVpbGRlci5wbmcpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3Byb3NwZWN0dXMtYnVpbGRlci5zdmcpO1xuXG5cdFx0Lm5vLXN2ZyAmIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvcHJvc3BlY3R1cy1idWlsZGVyLnBuZyk7XG5cdFx0fVxuXHR9XG5cdH1cbn1cbi5jb3Vyc2Uta2V5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG91ci1zZWNvbmRhcnk7XG5cdGJveC1zaGFkb3c6IDJweCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcblx0ZGlzcGxheTogbm9uZTtcblx0cmlnaHQ6IC0yMDZweDtcblx0cGFkZGluZzogOHB4O1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHRvcDogMjAwcHg7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDAuM3MpO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgwKSk7XG5cdHdpZHRoOiAyNDJweDtcblx0ei1pbmRleDogNTA7XG5cblx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4oMTUwMnB4KSB7XG5cdFx0cmlnaHQ6IDEwcHg7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmLnNob3cge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKC0yMTBweCkpO1xuXG5cdFx0QGluY2x1ZGUgbWluKDE1MDJweCkge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoMCkpO1xuXHRcdH1cblx0fVxuXG5cdHVsIHtcblx0XHRAZXh0ZW5kICVsaXN0LXJlc2V0O1xuXHR9XG5cblx0bGkge1xuXHRcdGxpbmUtaGVpZ2h0OiBsaCgyMCk7XG5cdFx0cGFkZGluZy1ib3R0b206IDdweDtcblx0XHRwYWRkaW5nLXRvcDogN3B4O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1zZWNvbmRhcnk7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGhlaWdodDogMjBweDtcblx0XHRcdG1hcmdpbi1yaWdodDogMTJweDtcblx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cblx0XHQrIGxpIHtcblx0XHRcdGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGNvbG91ci1zZWNvbmRhcnk7XG5cdFx0fVxuXHR9XG5cblx0LmZ1bGwtdGltZSB7XG5cdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTE7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuXHRcdH1cblx0fVxuXG5cdC5wYXJ0LXRpbWUge1xuXHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcblx0XHR9XG5cdH1cblxuXHQuYXBwcmVudGljZXNoaXAge1xuXHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHR9XG5cdH1cblxuXHQud29ya3BsYWNlIHtcblx0XHRjb2xvcjogIzAwMDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2JsYWNrL3dvcmtwbGFjZS5zdmcpO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuXHRcdFx0Lm5vLXN2ZyAmIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2JsYWNrL3dvcmtwbGFjZS5wbmcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4udGJsIHtcblx0d2lkdGg6IDEwMCU7XG5cblx0dGgsXG5cdHRkIHtcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdGJvcmRlci13aWR0aDogMXB4O1xuXHRcdHBhZGRpbmc6IDZweDtcblx0fVxufVxuXG4udGJsLWNvdXJzZSB7XG5cdEBleHRlbmQgLnRibC1tb2JpbGU7XG5cdEBleHRlbmQgLnRibC1tb2JpbGUtYXR0cjtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG5cdHRoLCB0ZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHR0aCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNjtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR9XG5cblx0dGQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRjb2xvdXItaGlnaGxpZ2h0LTYsIDAuOSk7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyLWJhc2U7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuXHQuY2VsbC1hcHBseSB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG4uY291cnNlLW9wdHMge1xuICAgIC5jb3Vyc2Utb3B0cy10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0LTU7XG4gICAgfVxuXG4gICAgLmNvdXJzZS1vcHRzLWRlc2Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jb3Vyc2Utb3B0cy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5jb3Vyc2Utb3B0LWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcblxuICAgICAgICAmICsgLmNvdXJzZS1vcHQtaXRlbSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0NDQ0NDQztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvdXJzZS1vcHRzLXRpdGxlLCAuY291cnNlLW9wdHMtbGlzdCwgLmNvdXJzZS1vcHRzLWRlc2Mge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDAuNHJlbSk7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpT0NJZ2RtbGxkMEp2ZUQwaU1DQXdJREV5SURnaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVEVnTVd3MUlEVWdOUzAxSWlCemRISnZhMlU5SWlNME5EUWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDhweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vcGVuIGgzOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIC5pbmZvLWxpc3Qge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTAuNXJlbSAtMC43NXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmJvbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmZ1bGx3aWR0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLCAuYnV0dG9uLWFwcGx5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ1dHRvbi1jYWxjdWxhdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItYmFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvdXItYmFzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1iYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zbWFsbC1nYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5zbWFsbC1nYXApICsgLmZ1bGx3aWR0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRoZW1lLWNvdXJzZXR5cGUge1xuXHQmW2RhdGEtY291cnNldHlwZT1cIkZ1bGwtVGltZVwiXSB7XG5cdFx0LmNvdXJzZS1jYXJlZXJzYmxvY2sge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblxuXHRcdFx0LmJ1dHRvbi1hcHBseSB7XG5cdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cbiAgICAgICAgLmNvdXJzZS1vcHRzLCAudGJsLWNvdXJzZSB7XG4gICAgICAgICAgICAuYnV0dG9uLWFwcGx5IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0xO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvdXJzZS1vcHRzIHtcbiAgICAgICAgICAgIC5jb3Vyc2UtYWNjb3JkaW9uLWhlYWRlciBoMyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXItY291cnNlLTE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHRcdC50YmwtY291cnNlIHtcblx0XHRcdHRoIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMTtcblx0XHRcdH1cblxuXHRcdFx0dGQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkY29sb3VyLWNvdXJzZS0xLCAwLjkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG4gICAgJltkYXRhLWNvdXJzZXR5cGUqPVwiUGFydC1UaW1lXCJdLCAmW2RhdGEtY291cnNldHlwZSo9XCJIaWdoZXIgRWR1Y2F0aW9uXCJdIHtcblx0XHQuY291cnNlLWNhcmVlcnNibG9jayB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXG5cdFx0XHQuYnV0dG9uLWFwcGx5IHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTI7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRkZGRjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuICAgICAgICAuY291cnNlLW9wdHMsIC50YmwtY291cnNlIHtcbiAgICAgICAgICAgIC5idXR0b24tYXBwbHkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTI7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLW9wdHMge1xuICAgICAgICAgICAgLmNvdXJzZS1hY2NvcmRpb24taGVhZGVyIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG91ci1jb3Vyc2UtMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdFx0LnRibC1jb3Vyc2Uge1xuXHRcdFx0dGgge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0yO1xuXHRcdFx0fVxuXG5cdFx0XHR0ZCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRjb2xvdXItY291cnNlLTIsIDAuOSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbiAgICAmW2RhdGEtY291cnNldHlwZSo9XCJBcHByZW50aWNlc2hpcFwiXSB7XG5cdFx0LmNvdXJzZS1jYXJlZXJzYmxvY2sge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblxuXHRcdFx0LmJ1dHRvbi1hcHBseSB7XG5cdFx0XHRcdGNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkZGRkY7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cbiAgICAgICAgLmNvdXJzZS1vcHRzLCAudGJsLWNvdXJzZSB7XG4gICAgICAgICAgICAuYnV0dG9uLWFwcGx5IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtMztcblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvdXJzZS1vcHRzLCAudGJsLWNvdXJzZSB7XG4gICAgICAgICAgICAuY291cnNlLWFjY29yZGlvbi1oZWFkZXIgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWNvdXJzZS0zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQudGJsLWNvdXJzZSB7XG5cdFx0XHR0aCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTM7XG5cdFx0XHR9XG5cblx0XHRcdHRkIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGNvbG91ci1jb3Vyc2UtMywgMC45KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuICAgICZbZGF0YS1jb3Vyc2V0eXBlKj1cImxlaXN1cmVcIl0sICZbZGF0YS1jb3Vyc2V0eXBlKj1cIkxlaXN1cmVcIl0ge1xuXHRcdC5jb3Vyc2UtY2FyZWVyc2Jsb2NrIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHRib3JkZXItY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cblx0XHRcdC5idXR0b24tYXBwbHkge1xuXHRcdFx0XHRjb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGRkZGO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJhbm5lci1ibG9jayB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuXG5cdFx0XHQuYnV0dG9uLXdoaXRlIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuYnV0dG9uLXRyYW5zcGFyZW50OmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHR9XG5cblx0XHRcdC5idXR0b24tYXBwbHkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vY291cnNlLTUvYXBwbHkuc3ZnKTtcblxuXHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9jb3Vyc2UtNS9hcHBseS5wbmcpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnN2Zyk7XG5cblx0XHRcdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL2FwcGx5LnBuZyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgIC5jb3Vyc2Utb3B0cywgLnRibC1jb3Vyc2Uge1xuICAgICAgICAgICAgLmJ1dHRvbi1hcHBseSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHRcdH1cblx0XHRcdH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3Vyc2Utb3B0cyB7XG4gICAgICAgICAgICAuY291cnNlLWFjY29yZGlvbi1oZWFkZXIgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWNvdXJzZS01O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQudGJsLWNvdXJzZSB7XG5cdFx0XHR0aCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItY291cnNlLTU7XG5cdFx0XHR9XG5cblx0XHRcdHRkIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGNvbG91ci1jb3Vyc2UtNSwgMC45KTtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG91ci1jb3Vyc2UtNTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuLyogQ291cnNlcyAqL1xuXG5cbi8qXG5cdD09PT09PT1cblx0Q2FyZWVyc1xuXHQ9PT09PT09XG4qL1xuLy8gLmNhcmVlcnMge1xuLy8gXHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRjb2xvdXItaGlnaGxpZ2h0O1xuLy8gXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuLy8gXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcbi8vIFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cbi8vIFx0QGluY2x1ZGUgbWluKDQwMHB4KSB7XG4vLyBcdFx0bWFyZ2luLWxlZnQ6IC0xMHB4O1xuLy8gXHRcdG1hcmdpbi1yaWdodDogLTEwcHg7XG4vLyBcdH1cblxuLy8gXHQuY2FyZWVyIHtcbi8vIFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblxuLy8gXHRcdEBpbmNsdWRlIG1pbig0MDBweCkge1xuLy8gXHRcdFx0ZmxvYXQ6IGxlZnQ7XG4vLyBcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG4vLyBcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuLy8gXHRcdFx0d2lkdGg6IDUwJTtcbi8vIFx0XHR9XG5cbi8vIFx0XHRAaW5jbHVkZSBtaW4oNTYwcHgpIHtcbi8vIFx0XHRcdHdpZHRoOiAzMy4zMzMzJTtcbi8vIFx0XHR9XG5cbi8vIFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcbi8vIFx0XHRcdHdpZHRoOiAzMy4zMzMzJTtcbi8vIFx0XHR9XG4vLyBcdH1cblxuLy8gXHRhIHtcbi8vIFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbi8vIFx0XHQmOmhvdmVyIHtcbi8vIFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuLy8gXHRcdH1cbi8vIFx0fVxuXG4vLyBcdGgyIHtcbi8vIFx0XHRtYXJnaW46IDEwcHggMDtcbi8vIFx0XHRmb250LXNpemU6IGVtKDE4KTtcbi8vIFx0fVxuXG4vLyBcdC5jb3Vyc2UtaGlkZGVuIHtcbi8vIFx0XHRkaXNwbGF5OiBub25lO1xuLy8gXHR9XG4vLyB9XG5cbi5mYWNpbGl0aWVzIHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdG1hcmdpbi1sZWZ0OiAtNnB4O1xuXHRtYXJnaW4tcmlnaHQ6IC02cHg7XG5cblx0aDQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0Y29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHRsaW5lLWhlaWdodDogbGgoMzAsIDE0KTtcblx0XHRtYXJnaW4tbGVmdDogLTNweDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBib3R0b207XG5cdH1cblxuXHQuZmFjaWxpdHkge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdFx0cGFkZGluZy1sZWZ0OiA2cHg7XG5cdFx0cGFkZGluZy1yaWdodDogNnB4O1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXHR9XG5cblx0LmlubmVyIHtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGhlaWdodDogMTE1cHg7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxMDAlO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cdH1cbn1cblxuLnR1dG9ycyB7XG5cdGltZyB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdH1cblxuXHQubmFtZSxcblx0LnRpdGxlIHtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0fVxuXG5cdC50dXRvciB7XG5cdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cblx0XHQrIC50dXRvciB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdC50ZXh0IHtcblx0XHRtYXJnaW4tbGVmdDogMTE1cHg7XG5cdH1cblxuXHQubmFtZSB7XG5cdFx0Zm9udC1zaXplOiBlbSgyMCk7XG5cdH1cblxuXHQudGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDJweDtcblx0fVxuXG5cdC5sbmstZW1haWwge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1ib3R0b206IDRweDtcblx0fVxufVxuLyogQ2FyZWVycyAqL1xuXG5cbi8qXG5cdD09PT09PT1cblx0Q291cnNlc1xuXHQ9PT09PT09XG4qL1xuLmNvdXJzZS1ibG9ja3Mge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0bWFyZ2luLWxlZnQ6IC0xMnB4O1xuXHRtYXJnaW4tcmlnaHQ6IC0xMnB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdC5jb3Vyc2Uge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdFx0cGFkZGluZy1yaWdodDogNnB4O1xuXHRcdHBhZGRpbmctbGVmdDogNnB4O1xuXG5cdFx0QGluY2x1ZGUgbWluKDEwMjRweCkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyNHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTJweDtcblx0XHRcdHBhZGRpbmctbGVmdDogMTJweDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0Ji5jbGVhciB7XG5cdFx0XHRjbGVhcjogbGVmdDtcblx0XHR9XG5cdH1cbn1cbi8qIENvdXJzZXMgKi9cblxuXG4vKlxuXHQ9PT09PT09PT09PT09XG5cdENvbnRlbnRCbG9ja3Ncblx0PT09PT09PT09PT09PVxuKi9cbi5zaGFyZXRoaXMge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQ0NDQ0NDO1xuICAgIHBhZGRpbmc6IDJyZW0gM3JlbSA0cmVtO1xuXG4gICAgJiA+IHAge1xuICAgICAgICAvLyBtYXgtd2lkdGg6IDc4cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gc3BhbiA+IHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnR3ZWV0IHtcblx0Y29sb3I6ICM5OTk7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjQyODtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG59XG5cbi5jb250ZW50LWJsb2NrLnR3aXR0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcblxuICAgIC5idXR0b24tdHdpdHRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cblxuXHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4ubWFpbi1jb2wgLnR3aXR0ZXIge1xuXHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICMwMzk7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMS41cmVtIDNyZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQudHdlZXQge1xuXHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDAgMTIwcHggMCAwO1xuXHR9XG5cblx0LmJ1dHRvbi10d2l0dGVyLmxhcmdlIHtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDE3cHggMTRweDtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IGNlbnRlcjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bWFyZ2luOiAtMTRweCAwIDAgMDtcblx0XHRwYWRkaW5nOiA2cHggMTBweCA2cHggMzRweDtcblx0XHRmb250LXNpemU6IGVtKDE0KTtcblx0XHR3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4udHdpdHRlci1ib3gge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjA0LCAyMDQsIDIwNCwgMC4zKTtcbiAgICBwYWRkaW5nOiAzcmVtIDNyZW0gM3JlbSA5cmVtICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9oaWdobGlnaHQvdHdpdHRlci5zdmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDMwcHggY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMzZweCBhdXRvO1xuXG5cdC5uby1zdmcgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL2hpZ2hsaWdodC90d2l0dGVyLXhsYXJnZS5wbmcpO1xuXHR9XG59XG5cbiVibG9ja3Mge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0bWFyZ2luLWxlZnQ6IC0xMnB4O1xuXHRtYXJnaW4tcmlnaHQ6IC0xMnB4O1xuXG5cdGEge1xuXHRcdGNvbG9yOiAkY29sb3VyLWJhc2U7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0aDIge1xuXHRcdEBleHRlbmQgJWZhZGV0aXRsZTtcblx0XHRmb250LXNpemU6IGVtKDIyKTtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0aW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAxOHB4O1xuXHR9XG5cblx0dGltZSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3VyLWhpZ2hsaWdodDtcblx0XHRjb2xvcjogIzk5OTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdH1cblxuXHQuYmxvY2sge1xuXHRcdHBhZGRpbmctbGVmdDogMTJweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuXHR9XG59XG5cbi5uZXdzLWJsb2NrcyB7XG5cdEBleHRlbmQgJWJsb2NrcztcblxuXHQuYmxvY2sge1xuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogMzMuMzMzJTtcblx0XHR9XG5cdH1cbn1cblxuLmNhc2Utc3R1ZHktYmxvY2tzIHtcblx0QGV4dGVuZCAlYmxvY2tzO1xuXG5cdC5ibG9jayB7XG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXHR9XG59XG5cbi5jYXNlLXN0dWR5IHtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdGJhY2tncm91bmQtY29sb3I6ICNEOUUxRjA7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRjb2xvdXItaGlnaGxpZ2h0LCAwLjkpO1xuXHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdHBhZGRpbmc6IDE0cHg7XG5cblx0aDIsXG5cdC5zdWIge1xuXHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0fVxuXG5cdGgyIHtcblx0XHRzbWFsbCB7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2LCAyOCk7XG5cdFx0fVxuXHR9XG5cblx0aW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW46IDAgYXV0byAxMHB4O1xuXG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cblxuXHQudGV4dCB7XG5cdFx0QGluY2x1ZGUgbWluKDc2OHB4KSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjMwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnN1YiB7XG5cdFx0Zm9udC1zaXplOiBlbSgyMik7XG5cdH1cbn1cblxuLnF1b3RlIHtcblx0YmxvY2txdW90ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0Q5RTFGMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkY29sb3VyLWhpZ2hsaWdodCwgMC45KTtcblx0XHRjb2xvcjogJGNvbG91ci1oaWdobGlnaHQ7XG5cdFx0Zm9udC1zaXplOiBlbSgyMik7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDI0cHggMjRweCAzMnB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC9zaXRlL2ltYWdlcy9pY29uL3doaXRlL3F1b3RlLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRoZWlnaHQ6IDM2cHg7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTE4cHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtMThweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMTAwJTtcblx0XHRcdHdpZHRoOiAzNnB4O1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vd2hpdGUvcXVvdGUucG5nKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Y2l0ZSB7XG5cdFx0Zm9udC1zaXplOiBlbSgyMCwyMik7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdGZvbnQtd2VpZ2h0OiA4MDA7XG5cdH1cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG4uYnV0dG9uLWxpbmUsXG4uYnV0dG9uLWxpbmUtdG9wIHtcblx0bWFyZ2luLWxlZnQ6IC05cHg7XG5cdG1hcmdpbi1yaWdodDogLTlweDtcbn1cbi5idXR0b24tbGluZS10b3Age1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogLTU1cHg7XG59XG5cbi5nYWxsZXJ5IHtcblx0cGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG5cdGltZyB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdH1cblxuXHQuc2xpY2stcHJldixcblx0LnNsaWNrLW5leHQge1xuXHRcdGhlaWdodDogNDBweDtcblx0XHRtYXJnaW4tdG9wOiAtMjBweDtcblx0XHR3aWR0aDogMjJweDtcblxuXHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0aGVpZ2h0OiA2MXB4O1xuXHRcdFx0d2lkdGg6IDMzcHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtMzBweDtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS9pbWFnZXMvaWNvbi9ncmV5L2Nhcm91c2VsLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDQ0cHggODBweDtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjNzKTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHQubm8tc3ZnICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3NpdGUvaW1hZ2VzL2ljb24vZ3JleS9jYXJvdXNlbC5wbmcpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtaW4oNzY4cHgpIHtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiA2NnB4IDEyMnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIG9wYWNpdHkoMSk7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRAaW5jbHVkZSBvcGFjaXR5KDApO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBvcGFjaXR5KDApO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgb3BhY2l0eSgxKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldiB7XG5cdFx0bGVmdDogMDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zbGljay1uZXh0IHtcblx0XHRyaWdodDogMDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IC0yMnB4IDA7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzNweCAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTIycHggLTQwcHg7XG5cblx0XHRcdEBpbmNsdWRlIG1pbig3NjhweCkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzNweCAtNjFweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpZGUge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuXG4uYWNjcmVkaXRhdGlvbnMge1xuXHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRjb2xvdXItaGlnaGxpZ2h0O1xuXHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuXHRoMyB7XG5cdFx0Zm9udC1zaXplOiBlbSgxNSk7XG5cdFx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0fVxuXG5cdGltZyB7XG5cdFx0KyBpbWcge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcblx0XHR9XG5cdH1cbn1cbi8qIENvbnRlbnRCbG9ja3MgKi9cblxuLm5pY2VzZWxlY3Qtd3JhcHBlciBzZWxlY3QuZXJyb3ItYm9yZGVyLCAuZXJyb3ItYm9yZGVyLCAuY2hlY2tib3ggLmJveC5lcnJvci1ib3JkZXIge1xuXHRib3JkZXI6IDFweCBzb2xpZCByZWQ7XG59XG5cbi5idWlsZGVyLWZvcm0tbGlzdCB7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5qcy1wcm9zcGVjdHVzLXJlbW92ZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0cGFkZGluZzogMTBweDtcblx0Y29sb3I6ICNmZmY7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ1aWxkZXItZm9ybSB7XG5cdC5jb3Vyc2UtYmxvY2sge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdGgyIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmJ1aWxkZXItZm9ybV9jbGVhciB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxufVxuXG4ua2lzLXdpZGdldCB7XG5cdG1hcmdpbi10b3A6IDFlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jYXBwbHkgKyAqIHtcblx0bWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1haW4tY29sIC5jb250ZW50LWJsb2NrIC5jb3Vyc2Utc2VhcmNoLXNlY3Rpb24sIC5tYWluLWNvbCAuY29udGVudC1ibG9jayAuY291cnNlLXNlYXJjaC1ibG9jayB7XG4gICAgcGFkZGluZzogMTByZW0gMCA0cmVtO1xuXG4gICAgJiA+IGgxIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDgwcmVtO1xuICAgIH1cblxuICAgICYgPiBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyLWJhc2U7XG4gICAgICAgIG1hcmdpbjogMCAwIDEuNHJlbTtcbiAgICB9XG5cbiAgICAuc2VhcmNoIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgIC5mb3JtLXNlYXJjaCAuZm9ybS1pbnB1dC1maWVsZCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuXG4gICAgICAgICAgICAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5maWx0ZXItc29ydGJ5IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAuZmlsdGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWxpc3RpbmctZmlsdGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIC5maWx0ZXItdGFncyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMC41cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIC5zb3J0Ynkge1xuICAgICAgICAvLyAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgLy8gICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLy8gICAgIGxhYmVsIHtcbiAgICAgICAgLy8gICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgLy8gICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAvLyAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgLy8gICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyAgICAgc2VsZWN0IHtcbiAgICAgICAgLy8gICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgLy8gICAgICAgICBjb2xvcjogJGNvbG91ci1oaWdobGlnaHQtNTtcbiAgICAgICAgLy8gICAgICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICAgIC8vICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAvLyAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIC8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAvLyAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkdGFibGV0KSB7XG4gICAgICAgICYgPiBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZmlsdGVyLXNvcnRieSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuXG4gICAgICAgICAgICAuZmlsdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgLTAuNXJlbTtcblxuICAgICAgICAgICAgICAgIC5maWx0ZXItdGFncyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIC5zb3J0YnkgbGFiZWwsIC5zb3J0Ynkgc2VsZWN0IHtcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1pbigkZGVza3RvcF9zKSB7XG4gICAgICAgICYgPiBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDdyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1LjJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYWluLWNvbCAuY29udGVudC1ibG9jayAuY291cnNlLXNlYXJjaC1ibG9jayB7XG4gICAgcGFkZGluZzogMCAwIDJyZW07XG5cbiAgICAuY291cnNlLXR5cGUtZmlsdGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCwgc2VsZWN0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvbWUtc2VhcmNoLXJlc3VsdHMgPiAuY291cnNlLXNlYXJjaC13cmFwIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1heC13aWR0aDogNjByZW07XG5cbiAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmlsdGVyIHtcbiAgICAgICAgQGV4dGVuZCAlbGlzdGluZy1maWx0ZXI7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMCAwO1xuICAgIH1cblxuICAgIC5maWx0ZXItb3B0aW9ucyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKCR0YWJsZXQpIHtcbiAgICAgICAgLmNvdXJzZS10eXBlLWZpbHRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAvLyAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgLy8gICAgIGNvbG9yOiAkY29sb3VyLWhpZ2hsaWdodC01O1xuICAgICAgICAgICAgLy8gICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIC8vICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAvLyAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIC8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICAvLyAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhvbWUtc2VhcmNoLXJlc3VsdHMgPiAuY291cnNlLXNlYXJjaC13cmFwIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cmVtO1xuXG4gICAgICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWlucHV0LWZpZWxkIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy42cmVtO1xuXG4gICAgICAgIC5ob21lLXNlYXJjaC1yZXN1bHRzID4gLmNvdXJzZS1zZWFyY2gtd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5maWx0ZXItb3B0aW9ucyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVhZGVyLWZpbHRlcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDdyZW07XG4gICAgYmFja2dyb3VuZDogJGNvbG91ci1oaWdobGlnaHQtNTtcblxuICAgIC5zZWxlY3QtZmlsdGVycyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5zZWxlY3QtZmlsdGVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmljZXNlbGVjdC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC5zZWxlY3QtZmlsdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucHVycGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE5NS45NWRlZywgIzNEMDA1MSAwJSwgIzY2MTg4MCAxMDAlKTtcbiAgICB9XG5cbiAgICAmLnJlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICBsaW5lYXItZ3JhZGllbnQoMTk1Ljk1ZGVnLCAjOEMwMDAwIDAlLCAjQzkyQTJBIDk5LjQyJSk7XG4gICAgfVxuXG4gICAgJi5ncmVlbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxOTUuOTVkZWcsICMwMDQwMDAgMS4wOCUsICMxNjgyMTYgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5waW5rIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE5NS45NWRlZywgI0Y0MUQ2OCAxLjA4JSwgI0Y5ODNBQyAxMDAlKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oNjQwcHgpIHtcbiAgICAgICAgLnNlbGVjdC1maWx0ZXJzIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAuc2VsZWN0LWZpbHRlciB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogYXV0bztcblxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5pY2VzZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjByZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMy41cmVtIDAgMnJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmICsgLnNlbGVjdC1maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICBoZWlnaHQ6IDlyZW07XG4gICAgfVxufVxuXG4uY291cnNlLWxpc3QuanMtY291cnNlLXNlYXJjaC1yZXN1bHRzLm5vLXNlYXJjaC1yZXN1bHRzIHtcbiAgICAmID4gcCB7XG4gICAgICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtaW4oJHRhYmxldCkge1xuICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb3Vyc2UtbGlzdC5qcy1jb3Vyc2Utc2VhcmNoLXJlc3VsdHMubm8tcmVzdWx0cyB7XG4gICAgbWFyZ2luOiAycmVtIDAgNy41cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNDQ0NDQ0M7XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgbWFyZ2luOiA1LjZyZW0gMCA1cmVtO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgICAgbGksIGxpIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG59IiwiLmV2ZW50YnJpdGUge1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgLmV2LXRpdGxlIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICRjb2xvdXItaGlnaGxpZ2h0O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiBlbSgyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmV2LXN1YnRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkY29sb3VyLWhpZ2hsaWdodCwgNDUlKTtcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XG4gICAgfVxufVxuXG4uY2ItY2FyZWVycy00IHtcbiAgICAuY2FyZWVycyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAuY2FyZWVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1pbig3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTIpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdi1ibG9ja3MgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDc2OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXItbGluaztcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG91ci1saW5rLCAyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zci1vbmx5LCAuc2xpY2stc3Itb25seSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOjAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTsgLyogSUU2LCBJRTcgKi9cbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG59XG5cbi50YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gICAgY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICB9XG4gICAgdGQsIHRoIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3VyLWJhc2U7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG91ci1iYXNlO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgd2hpdGU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvdXItYmFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuXHR0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuXHRcdHRkIHtcblx0XHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG91ci1oaWdobGlnaHQsIDc4JSk7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkY29sb3VyLWhpZ2hsaWdodCwgMC44NSk7XG5cdFx0XHRjb2xvcjogJGNvbG91ci1iYXNlO1xuXHRcdH1cblx0fVxufVxuXG4uZm9ybS1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4uZm9ybS1jb250ZW50IHtcbiAgICAuZm9ybS1jb250cm9sLS13cmFwcGVyIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uby10b3AtbWFyZ2luIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5qb2ItY29udGFpbmVyIHtcbiAgICAuam9iLWxpc3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5qb2ItdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuam9iLWxvY2F0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5qb2ItZGVzYyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbWUtY29udGVudC13cmFwIHtcbiAgICAuY2FyZC1ibG9jay1jb250ZW50IGEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9XG59Il19 */
