@charset "UTF-8";
/*!
Theme Name: Twinfix
Theme URI: https://www.twinfix.co.uk
Author: Pauley Creative
Author URI: https://www.pauleycreative.co.uk
Tags: light, responsive-layout
Description: A bespoke theme designed and developed for Twinfix
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twinfix
Domain Path: /languages/

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

underdog Boilerplate is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
and Blueprint http://www.blueprintcss.org/

Do not remove the below styles. Needed to pass the 'theme check'.*/
.sticky,
.gallery-caption,
.bypostauthor {
  text-align: left;
}

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS
----------------------------------------------------------------
1.0 - Global
2.0 - Modules
3.0 - Theme
4.0 - Packages
--------------------------------------------------------------*/
/*--------------------------------------------------------------
1.0 Global
--------------------------------------------------------------*/
/* Mixins */
/* Global Styles */
:root {
  --bgcol: "";
  --bgimg: "";
}

/* Reset */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}

html {
  overflow-y: scroll;
  box-sizing: border-box;
  height: 100%;
  font-size: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

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

.js-loading *,
.js-loading *:before,
.js-loading *:after {
  animation-play-state: paused !important;
}

body {
  height: 100%;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #444344;
  background: #ffffff;
}
@media only screen and (min-width: 768px) {
  body {
    font-size: 0.875rem;
    line-height: 1.7;
  }
}

img {
  display: block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  border: 0;
  -ms-interpolation-mode: bicubic;
}

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

ol,
ul {
  list-style: none;
}

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

caption,
th,
td {
  font-weight: normal;
  text-align: left;
}

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

blockquote,
q {
  quotes: "" "";
}

/* Clearings */
.wrapper:before, .wrapper:after,
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.wrapper:before, .wrapper:after,
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.clearfix:before,
.clearfix:after {
  clear: both;
}

/* Content */
.byline,
.updated {
  display: none;
}

.single .byline,
.group-blog .byline {
  display: inline;
}

.entry-content ul:not(.slick-dots) {
  font-weight: 500;
}
.entry-content ul:not(.slick-dots) li {
  list-style: disc;
  margin-bottom: 6.5px;
}
.entry-content ul:last-child {
  margin-bottom: 0;
}
.entry-content ol {
  list-style: none;
  counter-reset: rhfc-counter;
  margin: 0;
  padding-bottom: 13px;
}
.entry-content ol li {
  list-style: none;
  counter-increment: rhfc-counter;
  padding-left: 39px;
  margin-bottom: 13px;
}
.entry-content ol li::before {
  content: counter(rhfc-counter);
  border-radius: 100%;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  background-color: #244381;
  color: #fff;
  margin-right: 6.5px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  min-width: 26px;
  height: 26px;
  position: absolute;
  left: 0;
}

/* Asides */
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
  display: none;
}

/* Comments */
.comment-content a {
  word-wrap: break-word;
}

/* Media */
.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
  max-width: 100%;
}

/* Screen Reader Text */
.srt,
.screen-reader-text {
  position: absolute !important;
  left: -999em;
}

/* Alignment */
.alignleft {
  float: left;
}

.alignright {
  float: right;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

blockquote.alignleft,
figure.wp-caption.alignleft,
img.alignleft {
  margin: 7px 24px 7px 0;
}

.wp-caption.alignleft {
  margin: 7px 14px 7px 0;
}

blockquote.alignright,
figure.wp-caption.alignright,
img.alignright {
  margin: 7px 0 7px 24px;
}

.wp-caption.alignright {
  margin: 7px 0 7px 14px;
}

blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {
  margin-top: 7px;
  margin-bottom: 7px;
}

.site-content blockquote.alignleft,
.site-content blockquote.alignright {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-top: 17px;
  width: 50%;
}

.site-content blockquote.alignleft p,
.site-content blockquote.alignright p {
  margin-bottom: 17px;
}

.wp-caption {
  margin-bottom: 24px;
}

.wp-caption img[class*=wp-image-] {
  display: block;
  margin: 0;
}

.wp-caption {
  color: #767676;
}

.wp-caption-text {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 12px;
  font-style: italic;
  line-height: 1.5;
  margin: 9px 0;
}

div.wp-caption .wp-caption-text {
  padding-right: 10px;
}

div.wp-caption.alignright img[class*=wp-image-],
div.wp-caption.alignright .wp-caption-text {
  padding-left: 10px;
  padding-right: 0;
}

.wp-smiley {
  border: 0;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/*  Captions */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*=wp-image-] {
  display: block;
  margin: 0 auto;
}

.wp-caption-text {
  text-align: center;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

/* Forms */
input::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
  color: currentColor;
}

/* Firefox 19+ */
input:-moz-placeholder,
textarea:-moz-placeholder,
select:-moz-placeholder {
  color: currentColor;
}

/* Firefox 18- */
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
  color: currentColor;
}

/* IE */
input::-webkit-input-placeholder,
select::-webkit-input-placeholder {
  color: currentColor;
}

textarea::-webkit-input-placeholder {
  color: currentColor;
}

/* Forms */
button,
input,
select,
textarea {
  font-size: 14px;
  margin: 0;
  vertical-align: baseline;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  line-height: inherit;
}

select {
  border: 0;
  height: 52px;
  border-radius: 2px;
  padding: 0 13px;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 0;
  cursor: pointer;
  -webkit-appearance: button;
  padding: 5px 26px;
  outline: none;
}

input[type=checkbox],
input[type=radio] {
  padding: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
  /*-webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;*/
}

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

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

input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=password],
input[type=search],
textarea {
  color: #444344;
  border: 0;
  background: #ffffff;
  border-radius: 2px;
  width: 100%;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
textarea:focus {
  color: #444344;
  outline: 0;
}

input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=password],
input[type=search] {
  padding: 0 13px;
  height: 40px;
}

textarea {
  overflow: auto;
  padding: 13px;
  vertical-align: top;
  width: 100%;
}

input[type=file] {
  max-width: 100%;
}

/* Widget */
.widget {
  margin: 0 0 1.5em;
}

.widget select {
  max-width: 100%;
}

.widget_search .search-submit {
  display: none;
}

a {
  color: #00aeef;
  text-decoration: none;
  background: transparent;
  cursor: pointer;
  font-weight: 600;
}
a:hover, a:focus, a:active {
  outline: 0;
  text-decoration: underline;
}

p {
  margin-bottom: 1.625rem;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.7;
}
@media screen and (min-width: 1024px) {
  p {
    font-size: 14px;
    line-height: 1.9;
  }
}

.p-small {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 13px;
}

.preheading {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.7;
  text-transform: uppercase;
  color: #00aeef;
  font-weight: 800;
}
@media screen and (min-width: 1024px) {
  .preheading {
    font-size: 14px;
    line-height: 1.9;
  }
}

h1:not(.fz-hero),
.h1 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 26px;
  line-height: 1.2;
  font-weight: 700;
  margin-bottom: 1.625rem;
  position: relative;
}
@media screen and (min-width: 480px) {
  h1:not(.fz-hero),
.h1 {
    font-size: 36px;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1024px) {
  h1:not(.fz-hero),
.h1 {
    font-size: 46px;
    line-height: 1.2;
  }
}

h1,
.h1 {
  color: #244381;
}

.fz-hero {
  font-size: 44px;
  line-height: 1.2;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 1.625rem;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .fz-hero {
    font-size: 52px;
    line-height: 1.2;
  }
}

h2,
.h2 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 1.21875rem;
  font-weight: 700;
  color: #244381;
}
@media screen and (min-width: 1024px) {
  h2,
.h2 {
    font-size: 24px;
    line-height: 1.4;
  }
}

h3,
.h3 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 0.8125rem;
}
@media screen and (min-width: 768px) {
  h3,
.h3 {
    font-size: 18px;
    line-height: 1.3;
  }
}

h4,
.h4 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 0.8125rem;
}

h5,
.h5 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 10px;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 500;
  margin-bottom: 0.8125rem;
}
@media screen and (min-width: 768px) {
  h5,
.h5 {
    font-size: 12px;
    line-height: 1.4;
  }
}

ul,
ol {
  margin-bottom: 1.625rem;
  margin-left: 26px;
}
ul ul,
ul ol,
ol ul,
ol ol {
  margin: 0 1.625rem;
}

b,
strong {
  font-weight: bold;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

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

sup {
  bottom: 1ex;
}

sub {
  top: 0.5ex;
}

small {
  font-size: 75%;
}

big {
  font-size: 125%;
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT
Copyright (c) 2014 Daniel Eden
*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInDelay {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRightVSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(3%, 0, 0);
    transform: translate3d(3%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightVSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(3%, 0, 0);
    transform: translate3d(3%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeInRightSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeInUpSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes welcomeIntro {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0) rotate(90deg);
    transform: translate3d(0, 10%, 0) rotate(90deg);
  }
  100% {
    opacity: 0.6;
    -webkit-transform: translate3d(0, 0, 0) rotate(90deg);
    transform: translate3d(0, 0, 0) rotate(90deg);
  }
}
@-webkit-keyframes fadeInUpVSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 5%, 0);
    transform: translate3d(0, 5%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpVSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 5%, 0);
    transform: translate3d(0, 5%, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpSmall {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
}
@keyframes fadeOutUpSmall {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
}
@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

/* Overlay animation (slower + vertical movement) */
@keyframes auraOverlay {
  0% {
    opacity: 0;
    background-position: 50% 0%;
  }
  50% {
    opacity: 1;
    background-position: 50% 100%;
  }
  100% {
    opacity: 0;
    background-position: 50% 0%;
  }
}
@keyframes maskMove {
  0% {
    opacity: 0;
    transform: scale(1.5) translate(-50%, 35%);
  }
  50% {
    opacity: 1;
    transform: scale(0.8) translate(150%, 35%);
  }
  54% {
    opacity: 0;
    transform: scale(0.8) translate(150%, 35%);
  }
  55% {
    opacity: 0;
    transform: scale(1.5) translate(15%, -30%);
  }
  85% {
    opacity: 1;
    transform: scale(1) translate(10%, 100%);
  }
  99% {
    opacity: 0;
    transform: scale(1) translate(10%, 100%);
  }
  100% {
    opacity: 0;
    transform: scale(0.8) translate(-50%, 50%);
  }
}
@keyframes aura {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
/*--------------------------------------------------------------
2.0 Theme
--------------------------------------------------------------*/
@view-transition {
  navigation: auto;
}
::view-transition-old(root),
::view-transition-new(root) {
  animation: fade 0.3s ease both;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.wrap {
  max-width: 1256px;
  margin: 0 auto;
  padding: 0 26px;
  width: 100%;
}
.wrap--narrow {
  max-width: 720px;
  padding: 0 26px;
}
@media only screen and (min-width: 1024px) {
  .wrap {
    padding-left: 104px;
  }
}
@media only screen and (min-width: 1400px) {
  .wrap {
    padding-left: 52px;
  }
}
@media only screen and (min-width: 1600px) {
  .wrap {
    max-width: 1440px;
    padding-left: 26px;
  }
  .wrap--narrow {
    max-width: 850px;
  }
}

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

.page-template-page-contact {
  background: #dbf5ff;
}

section {
  padding: 26px 0;
  position: relative;
}
section.bg--none {
  padding-bottom: 0;
}
section.has-grad-bg {
  color: #fff;
}
@media only screen and (min-width: 1024px) {
  section {
    padding: 52px 0;
  }
  section.bg--none {
    padding-bottom: 0;
  }
}

.section {
  padding: 26px 0;
  position: relative;
}
.section__inner {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .section {
    padding: 52px 0;
  }
}
.section__background {
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

/* Helper styles */
.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.align-justify {
  text-align: justify;
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.clearfix {
  *zoom: 1;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.valign--top {
  align-items: flex-start;
}
.valign--middle {
  align-items: center;
}
.valign--bottom {
  align-items: flex-end;
}

.c--none {
  color: "none" !important;
}

.c--white {
  color: #ffffff !important;
}

.c--black {
  color: #061533 !important;
}

.c--arctic {
  color: #dbf5ff !important;
}

.c--blue {
  color: #00aeef !important;
}

.c--mblue {
  color: #244381 !important;
}

.c--dblue {
  color: #172a50 !important;
}

.c--grey {
  color: #444344 !important;
}

.c--red {
  color: #ec4848 !important;
}

.has-grad-bg h1,
.has-grad-bg .h1,
.has-grad-bg h2,
.has-grad-bg .h2 {
  color: #fff;
}

.bg--none {
  background-color: "none";
}
.bg--white {
  background-color: #ffffff;
  color: #444344;
}
.bg--white h1,
.bg--white .h1,
.bg--white h2,
.bg--white .h2,
.bg--white h3,
.bg--white .h3 {
  color: #244381;
}
.bg--black {
  background-color: #061533;
  color: #fff;
}
.bg--black a:not([class*=button]) {
  color: #00aeef;
}
.bg--black h1,
.bg--black .h1,
.bg--black h2,
.bg--black .h2 {
  color: #fff;
}
.bg--arctic {
  background-color: #dbf5ff;
  color: #444344;
}
.bg--arctic h1,
.bg--arctic .h1,
.bg--arctic h2,
.bg--arctic .h2,
.bg--arctic h3,
.bg--arctic .h3 {
  color: #244381;
}
.bg--blue {
  background-color: #00aeef;
  color: #fff;
}
.bg--blue a:not([class*=button]) {
  color: #00aeef;
}
.bg--blue a:not([class*=button]) {
  color: #fff;
}
.bg--blue h1,
.bg--blue .h1,
.bg--blue h2,
.bg--blue .h2 {
  color: #fff;
}
.bg--mblue {
  background-color: #244381;
  color: #fff;
}
.bg--mblue a:not([class*=button]) {
  color: #00aeef;
}
.bg--mblue h1,
.bg--mblue .h1,
.bg--mblue h2,
.bg--mblue .h2 {
  color: #fff;
}
.bg--dblue {
  background-color: #172a50;
  color: #fff;
}
.bg--dblue a:not([class*=button]) {
  color: #00aeef;
}
.bg--dblue h1,
.bg--dblue .h1,
.bg--dblue h2,
.bg--dblue .h2 {
  color: #fff;
}
.bg--grey {
  background-color: #444344;
  color: #fff;
}
.bg--grey a:not([class*=button]) {
  color: #00aeef;
}
.bg--grey h1,
.bg--grey .h1,
.bg--grey h2,
.bg--grey .h2 {
  color: #fff;
}
.bg--red {
  background-color: #ec4848;
  color: #fff;
}
.bg--red a:not([class*=button]) {
  color: #00aeef;
}
.bg--red h1,
.bg--red .h1,
.bg--red h2,
.bg--red .h2 {
  color: #fff;
}
.bg--gradient-blue-mblue-radial-bottom-right {
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #244381 50%, #244381 100%);
  color: #fff;
}
.bg--gradient-blue-mblue-radial-bottom-right h1,
.bg--gradient-blue-mblue-radial-bottom-right .h1,
.bg--gradient-blue-mblue-radial-bottom-right h2,
.bg--gradient-blue-mblue-radial-bottom-right .h2, .bg--gradient-blue-mblue-radial-bottom-right.h2 {
  color: #ffffff;
}
.bg--gradient-blue-mblue-radial-bottom-right .preheading {
  color: #f2f2f2;
}
.bg--gradient-blue-mblue-radial-bottom-right a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-blue-mblue-radial-bottom-right .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-black-blue {
  background-image: linear-gradient(0, #061533 0%, #00aeef 100%);
  color: #fff;
}
.bg--gradient-black-blue h1,
.bg--gradient-black-blue .h1,
.bg--gradient-black-blue h2,
.bg--gradient-black-blue .h2, .bg--gradient-black-blue.h2 {
  color: #ffffff;
}
.bg--gradient-black-blue .preheading {
  color: #f2f2f2;
}
.bg--gradient-black-blue a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-black-blue .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-black-mblue {
  background-image: linear-gradient(0, #061533 0%, #244381 100%);
  color: #fff;
}
.bg--gradient-black-mblue h1,
.bg--gradient-black-mblue .h1,
.bg--gradient-black-mblue h2,
.bg--gradient-black-mblue .h2, .bg--gradient-black-mblue.h2 {
  color: #ffffff;
}
.bg--gradient-black-mblue .preheading {
  color: #f2f2f2;
}
.bg--gradient-black-mblue a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-black-mblue .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-dblue-black {
  background-image: linear-gradient(0, #0f181c 0%, #223670 100%);
  color: #fff;
}
.bg--gradient-dblue-black h1,
.bg--gradient-dblue-black .h1,
.bg--gradient-dblue-black h2,
.bg--gradient-dblue-black .h2, .bg--gradient-dblue-black.h2 {
  color: #ffffff;
}
.bg--gradient-dblue-black .preheading {
  color: #f2f2f2;
}
.bg--gradient-dblue-black a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-dblue-black .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-blue-dblue {
  background-image: linear-gradient(0, #00aeef 0%, #172a50 100%);
  color: #fff;
}
.bg--gradient-blue-dblue h1,
.bg--gradient-blue-dblue .h1,
.bg--gradient-blue-dblue h2,
.bg--gradient-blue-dblue .h2, .bg--gradient-blue-dblue.h2 {
  color: #ffffff;
}
.bg--gradient-blue-dblue .preheading {
  color: #f2f2f2;
}
.bg--gradient-blue-dblue a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-blue-dblue .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-mblue {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #244381 100%);
  color: #fff;
}
.bg--gradient-mblue h1,
.bg--gradient-mblue .h1,
.bg--gradient-mblue h2,
.bg--gradient-mblue .h2, .bg--gradient-mblue.h2 {
  color: #ffffff;
}
.bg--gradient-mblue .preheading {
  color: #f2f2f2;
}
.bg--gradient-mblue a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-mblue .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-black {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
  color: #fff;
}
.bg--gradient-black h1,
.bg--gradient-black .h1,
.bg--gradient-black h2,
.bg--gradient-black .h2, .bg--gradient-black.h2 {
  color: #ffffff;
}
.bg--gradient-black .preheading {
  color: #f2f2f2;
}
.bg--gradient-black a:not([class*=button]) {
  color: #00aeef;
}
.bg--gradient-black .tick-list li:before {
  background-image: url("./dist/img/svg/oval-tick.svg");
}
.bg--gradient-arctic {
  background-image: linear-gradient(0, #ecf0f2 0%, #ffffff 100%);
  color: #444344;
}
.bg--gradient-arctic h1,
.bg--gradient-arctic .h1,
.bg--gradient-arctic h2,
.bg--gradient-arctic .h2 {
  color: #244381;
}
.bg--gradient-arctic .preheading {
  color: #00aeef;
}
.bg--gradient-arctic-reverse {
  background-image: linear-gradient(0, #ffffff 0%, #ecf0f2 100%);
  color: #444344;
}
.bg--gradient-arctic-reverse h1,
.bg--gradient-arctic-reverse .h1,
.bg--gradient-arctic-reverse h2,
.bg--gradient-arctic-reverse .h2 {
  color: #244381;
}
.bg--gradient-arctic-reverse .preheading {
  color: #00aeef;
}

.has-bg-img {
  color: #fff;
}

.f--none {
  fill: "none";
}

.f--white {
  fill: #ffffff;
}

.f--black {
  fill: #061533;
}

.f--arctic {
  fill: #dbf5ff;
}

.f--blue {
  fill: #00aeef;
}

.f--mblue {
  fill: #244381;
}

.f--dblue {
  fill: #172a50;
}

.f--grey {
  fill: #444344;
}

.f--red {
  fill: #ec4848;
}

.gradient-blue-mblue-radial-bottom-right {
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #244381 50%, #244381 100%);
}

.gradient-black-blue {
  background-image: linear-gradient(0, #061533 0%, #00aeef 100%);
}

.gradient-black-mblue {
  background-image: linear-gradient(0, #061533 0%, #244381 100%);
}

.gradient-dblue-black {
  background-image: linear-gradient(0, #0f181c 0%, #223670 100%);
}

.gradient-blue-dblue {
  background-image: linear-gradient(0, #00aeef 0%, #172a50 100%);
}

.gradient-mblue {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #244381 100%);
}

.gradient-black {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
}

.gradient-arctic {
  background-image: linear-gradient(0, #ecf0f2 0%, #ffffff 100%);
}

.gradient-arctic-reverse {
  background-image: linear-gradient(0, #ffffff 0%, #ecf0f2 100%);
}

.ff2 {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.m-none {
  margin: 0 !important;
}

.mb-none {
  margin-bottom: 0 !important;
}

.mb-half {
  margin-bottom: 13px !important;
}

.mb-qtr {
  margin-bottom: 6.5px !important;
}

.mb {
  margin-bottom: 26px !important;
}

.mb-2x {
  margin-bottom: 52px !important;
}

.mt-half {
  margin-top: 13px !important;
}

.mt {
  margin-top: 26px !important;
}

.mt-2x {
  margin-top: 52px !important;
}

.p-none {
  padding: 0 !important;
}

.p-all {
  padding: 26px !important;
}

.p-half {
  padding: 13px !important;
}

.pt-none {
  padding-top: 0 !important;
}

.pt-half {
  padding-top: 13px !important;
}

.pt {
  padding-top: 26px !important;
}

.pt-2x {
  padding-top: 52px !important;
}

.pt-4x {
  padding-top: 104px !important;
}

.pb-none {
  padding-bottom: 0 !important;
}

.pb-half {
  padding-bottom: 13px !important;
}

.pb-half {
  padding-bottom: 13px !important;
}

.pb {
  padding-bottom: 26px !important;
}

.pb-2x {
  padding-bottom: 52px !important;
}

.pb-4x {
  padding-bottom: 104px !important;
}

.pl {
  padding-left: 26px !important;
}

.pl-2x {
  padding-left: 52px !important;
}

.pl-4x {
  padding-left: 104px !important;
}

.mob-only {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .mob-only {
    display: block;
  }
}

@media only screen and (max-width: 1023px) {
  .dt-only {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) {
  .to-tab {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .from-tab {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .from-tab {
    display: block !important;
  }
}

.db {
  display: block;
}

.dib {
  display: inline-block;
}

.df {
  display: flex;
}
.df--col {
  flex-direction: column;
}

.has-icon {
  display: flex;
  gap: 8.6666666667px;
  align-items: center;
}
.has-icon svg {
  fill: currentColor;
}
.has-icon--top {
  align-items: flex-start;
}

.lh--normal {
  line-height: normal;
}

.tt-upper {
  text-transform: uppercase;
}

.overflow-h {
  overflow: hidden;
}

@media only screen and (max-width: 598px) {
  .order-1 {
    order: 1;
  }
}
@media only screen and (min-width: 599px) {
  .order-1-sm {
    order: 1;
  }
}

@media only screen and (max-width: 598px) {
  .order-2 {
    order: 2;
  }
}
@media only screen and (min-width: 599px) {
  .order-2-sm {
    order: 2;
  }
}

.posr {
  position: relative;
}

.image-as-bg {
  object-fit: cover;
  object-position: right;
  width: 100%;
  height: 100%;
}
.image-as-bg--half {
  width: 50%;
}

.image-contain {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.has-divider {
  position: relative;
}
.has-divider:before {
  width: 80%;
  max-width: 700px;
  height: 3px;
  content: "";
  display: block;
  border-radius: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.has-divider.bg--white::before {
  background-color: #172a50;
}
.has-divider.bg--black::before {
  background-color: #fff;
}
.has-divider.bg--arctic::before {
  background-color: #172a50;
}
.has-divider.bg--blue::before {
  background-color: #fff;
}
.has-divider.bg--mblue::before {
  background-color: #fff;
}
.has-divider.bg--dblue::before {
  background-color: #fff;
}
.has-divider.bg--grey::before {
  background-color: #fff;
}
.has-divider.bg--red::before {
  background-color: #fff;
}
.has-divider.bg--none:before {
  background-color: #172a50;
}

.button-set {
  display: flex;
  gap: 13px;
  flex-direction: column;
}
@media only screen and (min-width: 599px) {
  .button-set {
    flex-direction: row;
  }
}

.tick-list {
  margin: 0;
}
.tick-list li {
  list-style: none !important;
  position: relative;
  padding-left: 26px;
  margin-bottom: 13px;
}
.tick-list li:before {
  content: "";
  width: 22px;
  height: 22px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 4px;
  left: 0;
}

.address-text span {
  display: block;
}
.address-text--inline span {
  display: inline;
}

/*--------------------------------------------------------------
3.0 Modules
--------------------------------------------------------------*/
.main-navigation {
  display: flex;
  transition: 0.3s background-color;
  align-items: center;
  gap: 26px;
}
@media only screen and (max-width: 1023px) {
  .main-navigation {
    display: none;
  }
}
.main-navigation > div {
  display: flex;
  flex: 1;
}
@media only screen and (min-width: 1024px) {
  .main-navigation > div > ul > li {
    flex: 1;
    position: relative;
  }
  .main-navigation > div > ul > li.has-columns {
    position: static;
  }
  .main-navigation > div > ul > li.menu-item-has-children > .main-navigation__submenu-toggle {
    display: inline-block;
    transition: transform 0.2s;
  }
  .is-fixed .main-navigation > div > ul > li.menu-item-has-children > .main-navigation__submenu-toggle {
    transform: translateY(12px);
  }
  .main-navigation > div > ul > li > a:not([class^=button]) {
    font-weight: 500;
    font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
    display: block;
    color: #444344;
    white-space: nowrap;
    transition: color 0.2s cubic-bezier(0.46, 0.96, 0.43, 0.94) 0.2s;
    position: relative;
    text-align: center;
    font-size: 12px;
  }
}
@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .main-navigation > div > ul > li > a:not([class^=button]) {
    font-size: 14px;
  }
}
@media only screen and (min-width: 1024px) {
  .main-navigation > div > ul > li > a:not([class^=button]):before {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 50%;
    transform: translate(-50%) scaleX(0);
    transform-origin: left;
    opacity: 0;
    transition: transform 0.3s 0.1s, opacity 0.3s;
    background-color: #00aeef;
    width: 100%;
    height: 2px;
    line-height: 1;
  }
}
@media only screen and (min-width: 1024px) {
  .main-navigation > div > ul > li:hover .mega-menu-panel {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transition-delay: 0s;
  }
  .main-navigation > div > ul > li:hover .mega-menu-panel__inner {
    transform: none;
    transition-delay: 0s;
  }
  .main-navigation > div > ul > li:hover .mega-menu-panel:before {
    transform: scaleY(1);
    opacity: 0.9;
    transition-delay: 0s;
  }
  .main-navigation > div > ul > li:hover > a {
    transition-delay: 0s;
    color: #00aeef;
  }
  .main-navigation > div > ul > li:hover > a:before {
    opacity: 1;
    transform: translate(-50%) scaleX(1);
    transition: transform 0.3s 0s, opacity 0.3s;
  }
  .main-navigation > div > ul > li:hover .main-navigation__submenu-toggle svg {
    transition-delay: 0s;
    fill: #00aeef;
  }
}
@media only screen and (min-width: 1024px) {
  .main-navigation > div > ul > li.menu-item-has-children > a {
    position: relative;
    float: left;
  }
}
.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
@media only screen and (min-width: 1024px) {
  .main-navigation ul {
    display: flex;
    flex: 1;
    gap: 26px;
  }
  .no-flexbox .main-navigation ul {
    display: inline-block;
  }
}
.main-navigation ul a {
  display: block;
  text-decoration: none;
}
.main-navigation ul li:nth-child(n+6) .sub-menu.level-0 {
  right: 0;
  left: auto;
}
.main-navigation ul li:hover > .sub-menu.level-0 {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transition-delay: 0s;
}
.main-navigation ul li .sub-menu.level-0 {
  background: #fff;
  padding: 0;
  position: absolute;
  z-index: 99999;
  transition: visibility 0s linear 0.4s, opacity 0.4s cubic-bezier(0.46, 0.96, 0.43, 0.94) 0.2s;
  opacity: 0;
  visibility: hidden;
  left: 0;
  top: 100%;
  margin-top: 13px;
  box-shadow: 0 9px 9px rgba(0, 0, 0, 0.14);
  display: block;
  width: 380px;
}
.main-navigation ul li .sub-menu.level-0.sub-menu--list-style {
  display: block;
  width: auto;
  min-width: 250px;
}
.main-navigation ul li .sub-menu.level-0.sub-menu--list-style li {
  margin-bottom: 6.5px;
}
.main-navigation ul li .sub-menu.level-0.sub-menu--list-style li a {
  font-size: 12px;
}
.main-navigation ul li .sub-menu.level-0 a {
  color: #061533;
  transition: color 0.2s, background-color 0.2s;
  padding: 13px 13px 13px 26px;
}
.main-navigation ul li .sub-menu.level-0 a:after {
  content: ">";
  margin-left: 13px;
  transition: transform 0.2s;
  display: inline-block;
  transform: scaleX(0.6);
}
.main-navigation ul li .sub-menu.level-0 a:hover {
  color: #172a50;
  background-color: #00aeef;
}
.main-navigation ul li .sub-menu.level-0 a:hover:after {
  transform: translateX(6.5px);
}
.main-navigation ul li .sub-menu.level-0 > li.menu-item-has-children {
  position: relative;
}
.main-navigation ul li .sub-menu.level-0 > li.menu-item-has-children > a > .menu-item__title {
  margin-bottom: 13px;
  display: inline-block;
}
.main-navigation ul li .sub-menu.level-0 .sub-menu.level-1 {
  display: block;
  background-color: #fff;
  top: -13px;
  padding: 0;
}
.main-navigation ul li .sub-menu.level-0 .sub-menu.level-1 li {
  margin-bottom: 0;
}
.main-navigation ul li .sub-menu.level-0 .sub-menu.level-1 li a {
  padding-left: 52px;
  position: relative;
}
.main-navigation ul li .sub-menu.level-0 .sub-menu.level-1 li a:before {
  content: "";
  position: absolute;
  left: 26px;
  top: 50%;
  transform: translateY(-50%);
  height: 1px;
  width: 13px;
  transition: background-color 0.2s;
  background-color: #00aeef;
}
.main-navigation ul li .sub-menu.level-0 .sub-menu.level-1 li:hover a:before {
  background-color: #fff;
}
@media only screen and (max-width: 1023px) {
  .main-navigation__submenu-toggle {
    display: none;
    position: absolute;
    right: 13px;
    top: 12px;
    width: 39px;
    height: 26px;
    cursor: pointer;
    align-items: center;
    justify-content: flex-end;
    line-height: 1;
    transition: transform 0.3s;
    text-align: center;
    z-index: 10;
  }
  .main-navigation__submenu-toggle__icon {
    fill: #244381;
    position: absolute;
    width: 19.5px;
    height: 19.5px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    transition: fill 0.2s;
  }
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current-page-ancestor > a {
  color: #00aeef;
}
.is-fixed .main-navigation .current_page_item > a,
.is-fixed .main-navigation .current-menu-item > a,
.is-fixed .main-navigation .current-page-ancestor > a {
  color: #00aeef;
}
.main-navigation .current_page_item svg,
.main-navigation .current-menu-item svg,
.main-navigation .current-page-ancestor svg {
  fill: #00aeef;
}
.is-fixed .main-navigation .current_page_item svg,
.is-fixed .main-navigation .current-menu-item svg,
.is-fixed .main-navigation .current-page-ancestor svg {
  fill: #00aeef;
}

.menu-main-navigation-container > ul li {
  flex: 1;
}
.menu-main-navigation-container > ul li.menu-item-has-children > a {
  position: relative;
}
.menu-main-navigation-container > ul li.menu-item-has-children > a .main-navigation__submenu-toggle {
  display: block;
}
.menu-main-navigation-container > ul li > a {
  display: block;
}
@media only screen and (min-width: 1024px) {
  .menu-main-navigation-container > ul li.level-1 a {
    padding-right: 52px;
  }
}

/* Cookies Table */
.acf-table {
  border-collapse: collapse;
  border-top: 0;
  border-left: 0;
  text-align: left;
  width: 100%;
}

.acf-table th {
  border-left: 1px solid rgba(36, 67, 129, 0.4);
  padding: 5px;
  text-align: center;
  font-weight: bold;
}

.acf-table td {
  border-left: 1px solid rgba(36, 67, 129, 0.2);
  padding: 5px;
  text-align: center;
}

.acf-table thead th {
  vertical-align: middle;
  background: #00aeef;
}

.acf-table tbody td {
  vertical-align: top;
  color: #444344;
}

.acf-table tr:nth-child(even) td {
  background-color: #dbf5ff;
}

.acf-table tr:nth-child(odd) td {
  background-color: #fff;
}

.button {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #00aeef;
  border: 1px solid #00aeef;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button:hover {
  background: #0089bc;
  border-color: #0089bc;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--none {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: "none";
  border: 1px solid "none";
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--none {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid "none";
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: "none";
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--none:hover {
  background: "none";
  color: #fff;
  border-color: "none";
  text-decoration: none;
}
.button--white {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #ffffff;
  border: 1px solid #ffffff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #444344;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--white:hover {
  background: #e6e6e6;
  border-color: #e6e6e6;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--white {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #ffffff;
  border: 1px solid #ffffff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--white:hover {
  background: #e6e6e6;
  border-color: #e6e6e6;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--white {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #ffffff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #ffffff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--white:hover {
  background: #ffffff;
  color: #fff;
  border-color: #ffffff;
  text-decoration: none;
}
.button--black {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #061533;
  border: 1px solid #061533;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--black:hover {
  background: #010205;
  border-color: #010205;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--black {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #061533;
  border: 1px solid #061533;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--black:hover {
  background: #010205;
  border-color: #010205;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--black {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #061533;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #061533;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--black:hover {
  background: #061533;
  color: #fff;
  border-color: #061533;
  text-decoration: none;
}
.button--arctic {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #dbf5ff;
  border: 1px solid #dbf5ff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #444344;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--arctic:hover {
  background: #a8e7ff;
  border-color: #a8e7ff;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--arctic {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #dbf5ff;
  border: 1px solid #dbf5ff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--arctic:hover {
  background: #a8e7ff;
  border-color: #a8e7ff;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--arctic {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #dbf5ff;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #dbf5ff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--arctic:hover {
  background: #dbf5ff;
  color: #fff;
  border-color: #dbf5ff;
  text-decoration: none;
}
.button--blue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #00aeef;
  border: 1px solid #00aeef;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--blue:hover {
  background: #0089bc;
  border-color: #0089bc;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--blue:hover:not(.button--no-hover) {
  background-color: #172a50;
  color: #ffffff;
  border-color: #172a50;
}
.button--blue:hover:not(.button--no-hover) svg {
  fill: #fff;
}
.button--solid--blue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #00aeef;
  border: 1px solid #00aeef;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--blue:hover {
  background: #0089bc;
  border-color: #0089bc;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--blue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #00aeef;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #00aeef;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--blue:hover {
  background: #00aeef;
  color: #fff;
  border-color: #00aeef;
  text-decoration: none;
}
.button--mblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #244381;
  border: 1px solid #244381;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--mblue:hover {
  background: #192e59;
  border-color: #192e59;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--mblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #244381;
  border: 1px solid #244381;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--mblue:hover {
  background: #192e59;
  border-color: #192e59;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--mblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #244381;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #244381;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--mblue:hover {
  background: #244381;
  color: #fff;
  border-color: #244381;
  text-decoration: none;
}
.button--dblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #172a50;
  border: 1px solid #172a50;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--dblue:hover {
  background: #0c1528;
  border-color: #0c1528;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--dblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #172a50;
  border: 1px solid #172a50;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--dblue:hover {
  background: #0c1528;
  border-color: #0c1528;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--dblue {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #172a50;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #172a50;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--dblue:hover {
  background: #172a50;
  color: #fff;
  border-color: #172a50;
  text-decoration: none;
}
.button--grey {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #444344;
  border: 1px solid #444344;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--grey:hover {
  background: #2a2a2a;
  border-color: #2a2a2a;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--grey {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #444344;
  border: 1px solid #444344;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--grey:hover {
  background: #2a2a2a;
  border-color: #2a2a2a;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--grey {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #444344;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #444344;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--grey:hover {
  background: #444344;
  color: #fff;
  border-color: #444344;
  text-decoration: none;
}
.button--red {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #ec4848;
  border: 1px solid #ec4848;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--red:hover {
  background: #e71a1a;
  border-color: #e71a1a;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--solid--red {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #ec4848;
  border: 1px solid #ec4848;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #fff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--solid--red:hover {
  background: #e71a1a;
  border-color: #e71a1a;
  text-decoration: none;
  transform: translateY(-5px);
}
.button--ghost--red {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: none;
  border: 1px solid #ec4848;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #ec4848;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
}
.button--ghost--red:hover {
  background: #ec4848;
  color: #fff;
  border-color: #ec4848;
  text-decoration: none;
}
.button--has-icon {
  display: inline-flex;
}
.button--has-icon .button__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6.5px;
}
.button--has-icon svg {
  fill: currentColor;
}
.button--has-icon--before {
  padding-left: 13px;
}
.button--small {
  padding: 6.5px 13px;
  font-size: 0.75rem;
}
.button--arrow-button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  transform: none;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transition-delay: 0;
  -moz-transition-delay: 0;
  -transition-delay: 0;
  width: 39px;
  height: 39px;
  border-radius: 100%;
}
.button--arrow-button--none {
  background-color: "none";
}
.button--arrow-button--none:hover {
  background-color: #ec4848;
}
.button--arrow-button--white {
  background-color: #ffffff;
}
.button--arrow-button--white .svgicon {
  fill: #444344;
}
.button--arrow-button--white:hover {
  background-color: #061533;
}
.button--arrow-button--black {
  background-color: #061533;
}
.button--arrow-button--black .svgicon {
  fill: #fff;
}
.button--arrow-button--black:hover {
  background-color: #ec4848;
}
.button--arrow-button--arctic {
  background-color: #dbf5ff;
}
.button--arrow-button--arctic .svgicon {
  fill: #444344;
}
.button--arrow-button--arctic:hover {
  background-color: #ec4848;
}
.button--arrow-button--blue {
  background-color: #00aeef;
}
.button--arrow-button--blue .svgicon {
  fill: #fff;
}
.button--arrow-button--blue:hover {
  background-color: #ec4848;
}
.button--arrow-button--mblue {
  background-color: #244381;
}
.button--arrow-button--mblue .svgicon {
  fill: #fff;
}
.button--arrow-button--mblue:hover {
  background-color: #ec4848;
}
.button--arrow-button--dblue {
  background-color: #172a50;
}
.button--arrow-button--dblue .svgicon {
  fill: #fff;
}
.button--arrow-button--dblue:hover {
  background-color: #ec4848;
}
.button--arrow-button--grey {
  background-color: #444344;
}
.button--arrow-button--grey .svgicon {
  fill: #fff;
}
.button--arrow-button--grey:hover {
  background-color: #ec4848;
}
.button--arrow-button--red {
  background-color: #ec4848;
}
.button--arrow-button--red .svgicon {
  fill: #fff;
}
.button--arrow-button--red:hover {
  background-color: #ec4848;
}
.button--arrow-button svg {
  transition: transform 0.3s, opacity 0.2s;
  width: 27px;
  height: 20px;
}
.button--arrow-button:hover {
  transform: scale(1.1);
}
.button__icon {
  transition: fill 0.2s, transform 0.2s;
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.button__icon--before {
  margin-right: 6.5px;
}
.button--big {
  padding: 13px 26px;
  width: 100%;
  font-size: 1.125rem;
}
.button--wide {
  padding: 13px 52px;
  font-size: 1.125rem;
}
.button__icon {
  transition: fill 0.2s;
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.button__icon--before {
  margin-right: 6.5px;
}
.button--square {
  display: flex;
  align-items: center;
  justify-content: center;
}
.button--square--large {
  width: 78px;
  height: 78px;
  padding: 6.5px;
  border-radius: 8px;
}
.button--square--large svg {
  width: 52px;
  height: 52px;
}
.button--square--small {
  width: 39px;
  height: 39px;
  padding: 9px;
  border-radius: 2px;
}
.button--square--small svg {
  width: 26px;
  height: 26px;
}

.site-header {
  width: 100%;
  filter: drop-shadow(0px 6px 13px rgba(0, 0, 0, 0.2));
  position: absolute;
  z-index: 3;
  top: 0;
}
.site-header__bg {
  position: absolute;
  top: 24px;
  left: 0;
  width: 100%;
  height: 90px;
}
@media only screen and (min-width: 768px) {
  .site-header__bg {
    height: 120px;
  }
}
.error404 .site-header {
  background-color: #172a50;
  position: static;
  padding-bottom: 0;
}
.site-header__topbar {
  background-color: #00aeef;
  color: #fff;
  padding: 2px 0;
}
.site-header__topbar .wrap {
  display: flex;
  justify-content: center;
  gap: 6.5px;
  align-items: center;
}
@media only screen and (min-width: 599px) {
  .site-header__topbar .wrap {
    justify-content: flex-end;
  }
}
.site-header__topbar a {
  color: #fff;
  font-size: 12px;
}
.site-header.is-fixed:not(.site-header--no-nav) {
  position: fixed;
  top: 0;
  transform: translateY(-26px);
  box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1);
}
.site-header.is-visible:not(.site-header--no-nav):before {
  opacity: 1;
  transition-delay: 0s;
}
.site-header.is-hidden:not(.site-header--no-nav) {
  border-color: transparent;
  box-shadow: none;
}
.site-header.is-hidden:not(.site-header--no-nav):before {
  opacity: 0;
}
.site-header__main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  row-gap: 13px;
  padding: 13px 0 26px 0;
}
@media only screen and (min-width: 1024px) {
  .site-header__main {
    padding: 0;
    background: none;
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-top: 26px;
    align-items: center;
    padding-bottom: 65px;
    gap: 26px;
  }
}
.site-header__contact {
  color: #fff;
  text-transform: uppercase;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  text-align: center;
  grid-column: 1/-1;
}
@media only screen and (min-width: 599px) {
  .site-header__contact {
    text-align: right;
  }
}
.site-header__tel {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 500;
}
@media screen and (min-width: 1024px) {
  .site-header__tel {
    font-size: 24px;
    line-height: 1.4;
  }
}

.site-footer {
  position: relative;
  z-index: 2;
  background-color: #172a50;
  padding-top: 52px;
  color: #fff;
}
.site-footer__links {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 26px;
  padding-bottom: 26px;
}
@media only screen and (min-width: 768px) {
  .site-footer__links {
    padding-bottom: 0;
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .site-footer__links {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media only screen and (min-width: 1200px) {
  .site-footer__links {
    grid-gap: 52px;
  }
}
@media only screen and (min-width: 1024px) {
  .site-footer__foot-links {
    text-align: right;
  }
}
.site-footer__top .wrap {
  display: flex;
  gap: 26px;
  align-items: center;
  flex-direction: column;
}
@media only screen and (min-width: 768px) {
  .site-footer__top .wrap {
    gap: 52px;
    flex-direction: row;
  }
}
@media only screen and (min-width: 1024px) {
  .site-footer__top .wrap {
    gap: 78px;
  }
}
@media only screen and (min-width: 1600px) {
  .site-footer__top .wrap {
    gap: 104px;
  }
}
.site-footer__main {
  padding: 52px 0;
  position: relative;
  display: none;
}
@media only screen and (min-width: 768px) {
  .site-footer__main {
    display: block;
  }
}
.site-footer__accreditations {
  padding: 52px 0;
}
.site-footer__accreditations__list {
  margin: 0;
  display: flex;
  gap: 52px;
  justify-content: center;
  flex-wrap: wrap;
}
.site-footer__accreditations__item {
  max-width: 120px;
}
@media only screen and (min-width: 1024px) {
  .site-footer__accreditations {
    padding: 104px 0 52px 0;
  }
}
.site-footer__column {
  margin-bottom: 13px;
}
@media only screen and (min-width: 768px) {
  .site-footer__column {
    margin-bottom: 26px;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer__column--contact {
    order: 1;
  }
}
.site-footer__column__heading {
  cursor: pointer;
  position: relative;
  margin-bottom: 13px;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .site-footer__column__heading {
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer__column--is-accordian .site-footer__column__heading:after {
    position: absolute;
    font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
    content: "+";
    font-size: 30px;
    right: 0;
    top: -9px;
    width: 26px;
    transition: transform 0.2s;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer__column--is-accordian.open .site-footer__column__heading:after {
    transform: rotate(45deg);
  }
}
@media only screen and (min-width: 1024px) {
  .site-footer__column__aligner {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.site-footer__column__content {
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .site-footer__column__content {
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer__column--is-accordian .site-footer__column__content {
    max-height: 0;
    transition: max-height 0.3s;
    overflow: hidden;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer__column--is-accordian.open .site-footer__column__content {
    max-height: 500px !important;
  }
}
.site-footer .contact-link {
  margin-bottom: 13px;
}
.site-footer .contact-link__link {
  color: #ffffff;
  transition: color 0.2s;
}
.site-footer .contact-link__link:hover {
  text-decoration: none;
  color: #00aeef;
}
@media only screen and (max-width: 767px) {
  .site-footer .contact-link__text {
    justify-content: center;
    display: flex;
  }
}
.site-footer .menu {
  margin: 0;
  padding-top: 26px;
}
@media only screen and (min-width: 599px) {
  .site-footer .menu {
    padding-top: 0;
  }
}
.site-footer .menu li {
  margin-bottom: 6.5px;
}
.site-footer .menu a {
  color: #ffffff;
  transition: color 0.2s;
  font-weight: 500;
}
.site-footer .menu a:hover {
  text-decoration: none;
  color: #00aeef;
}
.site-footer__info {
  padding-top: 26px;
}
@media only screen and (min-width: 599px) {
  .site-footer__info {
    padding-top: 78px;
  }
}
.site-footer__info .wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  justify-items: center;
}
.site-footer__logo {
  margin-bottom: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.site-footer__credit {
  background: #061533;
  padding: 13px 0;
  color: #fff;
  font-weight: 600;
  text-align: center;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .site-footer__credit {
    text-align: left;
  }
}
.site-footer__credit .wrap {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .site-footer__credit .wrap {
    display: grid;
    gap: 52px;
    grid-template-columns: 1fr 500px;
  }
}
@media only screen and (min-width: 1200px) {
  .site-footer__credit .wrap {
    grid-template-columns: 1fr 600px;
  }
}
.site-footer__credit p {
  margin-bottom: 13px;
  font-size: 10px;
}
@media only screen and (min-width: 768px) {
  .site-footer__credit p {
    font-size: 12px;
    margin-bottom: 0;
  }
}
.site-footer__credit .credit-link {
  color: #ffffff;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .site-footer__address-text {
    flex-direction: column;
    text-align: center;
  }
}
.site-footer__address-text span {
  flex: 1;
}

.logo--header {
  text-align: center;
  display: flex;
  align-items: center;
  position: relative;
}
.logo--header .logo__image {
  width: 160px;
  transition: transform 0.2s;
}
.logo--header .logo__image:hover {
  transform: scale(1.05);
}
@media only screen and (min-width: 1200px) {
  .logo--header .logo__image {
    width: 200px;
  }
}
.logo--footer {
  margin-bottom: 26px;
}
@media only screen and (max-width: 767px) {
  .logo--footer {
    text-align: center;
  }
}
.logo--footer img {
  display: inline-block;
  width: 240px;
}
.logo__link {
  display: inline-block;
  line-height: 0;
}

.menu-panel {
  background-color: #ffffff;
  display: block;
  transition: transform 0.4s, width 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  flex-direction: column;
  height: 100vh;
  transform: translateX(-100%);
  position: absolute;
  z-index: 6;
  top: 0;
  overflow: hidden;
  display: flex;
  width: 100%;
  min-width: 370px;
  max-width: 700px;
}
@media only screen and (min-width: 480px) {
  .menu-panel {
    min-width: 440px;
  }
}
@media only screen and (min-width: 599px) {
  .menu-panel {
    min-width: 520px;
  }
}
@media only screen and (min-width: 768px) {
  .menu-panel {
    min-width: 700px;
  }
}
@media only screen and (min-width: 1024px) {
  .menu-panel {
    width: 300px;
    min-width: unset;
    max-width: none;
  }
  .menu-panel .menu {
    width: 300px;
    height: 100vh;
    position: relative;
    padding-right: 26px;
  }
}
@media only screen and (min-width: 1200px) {
  .menu-panel {
    width: 400px;
  }
  .menu-panel .menu {
    width: 400px;
  }
}
.menu-panel__main {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.menu-panel__heading {
  float: left;
  color: #fff;
}
.menu-panel__header {
  display: flex;
  width: 100%;
  color: #ffffff;
  overflow: hidden;
  filter: drop-shadow(0px 6px 13px rgba(0, 0, 0, 0.2));
  position: relative;
  z-index: 13;
}
.menu-panel__header__inner {
  background-color: #244381;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
  padding: 13px 13px 39px 26px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.menu-panel__buttons {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .menu-panel__buttons {
    display: flex;
    width: 100%;
    max-width: 300px;
    justify-content: center;
    gap: 26px;
    margin: 0 auto;
  }
}
.menu-panel__button {
  display: flex;
  align-items: center;
  justify-content: center;
}
.menu-panel__title {
  margin-bottom: 0;
  text-transform: none;
}
.menu-panel__title img {
  width: 150px;
}
.menu-panel__actions {
  display: flex;
  position: relative;
  z-index: 13;
  gap: 6.5px;
}
.submenu-open .menu-panel__actions {
  -webkit-animation-duration: 0.6s;
  -moz-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInDelay;
  -moz-animation-name: fadeInDelay;
  animation-name: fadeInDelay;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: linear;
  -moz-animation-timing-function: linear;
  animation-timing-function: linear;
}
.menu-panel__contact {
  padding: 0 26px;
}
.menu-panel__contact__actions {
  display: flex;
  gap: 6.5px;
}
.menu-panel__contact .menu-panel__contact__button {
  flex: 1;
}
.menu-panel__contact .menu-panel__contact__button .contact-link__link {
  flex: 1;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #244381;
  border-radius: 3px;
  padding: 0;
}
.menu-panel__close {
  background: #ffffff;
  border-radius: 3px;
  padding: 0;
  width: 39px;
  height: 39px;
  position: relative;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s;
}
.menu-panel__close svg {
  width: 19.5px;
  height: 19.5px;
}
.menu-panel__close--submenu {
  display: none;
}
.submenu-open .menu-panel__close--submenu {
  display: flex;
}
.menu-panel__close:hover {
  background-color: #244381;
}
.menu-panel__close:hover svg {
  fill: #ffffff;
}
.menu-panel__close svg {
  fill: #172a50;
  transition: fill 0.2s;
}
.menu-panel__bottom {
  flex: 1;
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
  display: flex;
  margin-bottom: 78px;
  margin-top: 13px;
}
.menu-panel__bottom .search-form {
  align-self: flex-end;
}
.menu-panel.menu-open {
  transform: none;
  box-shadow: 10px 0 14px rgba(0, 0, 0, 0.2);
}
.menu-panel.menu-submenu-open--level0 {
  width: calc(100vw * 0.666);
}
@media only screen and (min-width: 1024px) {
  .menu-panel.menu-submenu-open--level0 {
    width: 600px;
  }
}
@media only screen and (min-width: 1200px) {
  .menu-panel.menu-submenu-open--level0 {
    width: 800px;
  }
}
.menu-panel.menu-submenu-open--level1 {
  width: 100vw;
}
@media only screen and (min-width: 1024px) {
  .menu-panel.menu-submenu-open--level1 {
    width: 900px;
  }
}
@media only screen and (min-width: 1200px) {
  .menu-panel.menu-submenu-open--level1 {
    width: 1200px;
  }
}
.menu-panel.menu-submenu-open:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 0;
  content: "";
  background-color: #061533;
  opacity: 0.4;
  content: "";
  display: block;
  z-index: -1;
  width: calc(100vw / 3);
}
@media only screen and (min-width: 1024px) {
  .menu-panel.menu-submenu-open:before {
    width: 300px;
  }
}
@media only screen and (min-width: 1200px) {
  .menu-panel.menu-submenu-open:before {
    width: 400px;
  }
}
.menu-panel .menu {
  margin: 0;
}
.menu-panel .sub-menu {
  position: relative;
  margin-left: 0;
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  transition: 0.3s transform, opacity 0.2s;
  opacity: 0;
  height: 100vh;
  width: 100%;
  z-index: 11;
  pointer-events: none;
  margin: 0;
  background-color: #17304e;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
  padding-left: 13px;
  padding-right: 26px;
  padding-top: 65px;
}
.menu-panel .sub-menu > .menu-item:first-child {
  padding-top: 26px;
}
.menu-panel .sub-menu--active {
  opacity: 1;
  z-index: 12;
  pointer-events: auto;
}
@media only screen and (max-width: 1023px) {
  .menu-panel .sub-menu--active {
    transform: none;
  }
}
.menu-panel .sub-menu:before {
  content: attr(data-submenu-title);
  font-size: 18px;
  color: #00aeef;
  margin: 43px 0 0 0;
  display: block;
}
@media only screen and (min-width: 1024px) {
  .menu-panel .sub-menu:before {
    display: none;
  }
}
.menu-panel .sub-menu > .menu-item:first-child .submenu-toggle {
  top: 26px;
}
.menu-panel .submenu-toggle {
  margin-top: 0;
  right: 5px;
}
.menu-panel .submenu-toggle svg {
  fill: #fff;
  width: 15px;
  height: 12px;
  transform: translateY(-3px);
}

/**
 * Owl Carousel v2.2.0
 * Copyright 2013-2016 David Deutsch
 * Licensed under MIT (https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE)
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
}

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-loaded {
  display: block;
}

.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

/* No Js */
.no-js .owl-carousel {
  display: block;
}

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
  animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out;
}

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: -webkit-transform 100ms ease;
  transition: transform 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
  -webkit-transform: scale(1.3, 1.3);
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none;
}

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

.owl-dots {
  text-align: center;
  padding: 26px 0 0 0;
}

.owl-dot {
  background: #061533;
  width: 17.3333333333px;
  height: 17.3333333333px;
  display: inline-block;
  margin: 0 5px;
  border-radius: 100%;
}
.owl-dot.active {
  background: #00aeef;
}

.owl-prev {
  position: absolute;
  height: 48px;
  width: 48px;
  left: 6.5px;
  top: 35%;
  transform: translate(-50%, -50%);
  background-color: #ec4848;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.owl-prev svg {
  fill: #061533;
  margin-right: 5px;
}

.owl-next {
  position: absolute;
  height: 48px;
  width: 48px;
  right: 6.5px;
  top: 35%;
  transform: translate(50%, -50%);
  background-color: #ec4848;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.owl-next svg {
  fill: #061533;
  margin-left: 5px;
}

.owl-cs-slider .owl-nav {
  position: absolute;
  top: 13px;
  left: 13px;
  display: flex;
  gap: 13px;
}
.owl-cs-slider .owl-prev,
.owl-cs-slider .owl-next {
  position: static;
  left: auto;
  top: auto;
  transform: none;
  transition: transform 0.2s;
}
.owl-cs-slider .owl-prev:hover {
  transform: translate(-5px);
}
.owl-cs-slider .owl-next:hover {
  transform: translate(5px);
}

.toggle-nav {
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transition-delay: 0;
  -moz-transition-delay: 0;
  -transition-delay: 0;
  display: none;
  padding: 8px;
  justify-self: end;
  background: none;
  position: relative;
}
.toggle-nav__icon {
  width: 36px;
  height: 36px;
  fill: #172a50;
}
.toggle-nav--mobile {
  float: right;
  padding: 0 5px 0 8px;
  background: none;
}
.toggle-nav--mobile .toggle-nav__icon {
  fill: #fff;
  width: 26px;
  height: 26px;
}
.toggle-nav--close {
  color: #fff;
  height: auto;
  font-size: 14px;
  border-radius: 0;
}
.toggle-nav--close .toggle-nav__icon {
  fill: #fff;
  width: 13px;
  height: 13px;
  transform: translateY(2px);
}
@media only screen and (min-width: 768px) {
  .toggle-nav--close {
    height: auto;
  }
}

.submenu-toggle {
  float: right;
  margin-left: 6.5px;
  display: none;
}
.submenu-toggle svg {
  fill: #061533;
  width: 10px;
  height: 8px;
  transition: fill 0.2s cubic-bezier(0.46, 0.96, 0.43, 0.94) 0.2s;
}

@media only screen and (max-width: 1023px) {
  .menu-item-has-children > .submenu-toggle {
    display: inline-block;
  }

  .toggle-nav {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .submenu-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 8px;
    width: 25px;
    height: 25px;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    line-height: 1;
    font-family: arial, sans-serif;
    color: #fff;
    transition: transform 0.3s;
    text-align: center;
  }

  .menu-item-has-children {
    overflow: hidden;
  }
  .menu-item-has-children > .submenu-toggle {
    display: block;
    z-index: 1;
  }
}
.social-links__list {
  margin: 0;
  display: flex;
}
.social-links__item {
  display: inline-block;
  margin-right: 13px;
  line-height: 1;
}
.social-links__item:last-child {
  margin-right: 0;
}
.social-links__link {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s;
}
.social-links__link--round {
  border-radius: 100%;
  padding: 26px;
}
.social-links__link:hover {
  transform: scale(1.2);
}
.social-links__icon {
  width: 19.5px;
  height: 19.5px;
  fill: #172a50;
  transition: fill 0.3s;
}
.social-links__icon--large {
  width: 31.2px;
  height: 31.2px;
}
.sidebar .social-links__icon {
  transform: rotate(-90deg);
}
.social-links--blog .social-links__link {
  background-color: #172a50;
}
.social-links--blog .social-links__link:hover {
  background: #244381;
}
.social-links--blog .social-links__icon {
  fill: #fff;
}
.social-links--contact-page .social-links__item {
  margin: 0 13px;
}
.social-links--contact-page .social-links__list {
  text-align: center;
}
.social-links--footer {
  margin-top: 13px;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .social-links--footer {
    text-align: left;
  }
}

.contact-link__text {
  display: flex;
  align-items: center;
  width: max-content;
}
.contact-link--icon svg {
  margin-right: 13px;
  width: 20px;
  height: 20px;
}
.contact-link--light .contact-link__link {
  color: #fff;
}
.contact-link--light svg {
  fill: #fff;
}
.contact-link--header {
  position: relative;
}
.contact-link--dark svg {
  fill: #444344;
}

.error-404 {
  max-width: 650px;
  position: relative;
}
@media only screen and (min-width: 599px) {
  .error-404 {
    padding: 78px 0;
  }
}
.error-404:before {
  content: "404";
  font-size: 50vw;
  font-weight: bold;
  color: #eaeaea;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-60%, -50%) rotate(-15deg);
}
@media only screen and (min-width: 599px) {
  .error-404:before {
    left: 65%;
  }
}
.error-404 .search-field {
  width: calc(100% - 120px);
  float: left;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  background-color: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.07);
  height: 44px;
}
.error-404 .search-submit {
  background-color: #00aeef;
  color: #fff;
  text-transform: uppercase;
  height: 44px;
}

.gradient-shadow--top:before {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -moz-linear-gradient(top, rgba(6, 21, 51, 0.6) 0%, rgba(6, 21, 51, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(6, 21, 51, 0.6) 0%, rgba(6, 21, 51, 0) 100%);
  background: linear-gradient(to bottom, rgba(6, 21, 51, 0.6) 0%, rgba(6, 21, 51, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.gradient-shadow--bottom:before {
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -webkit-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, rgba(6, 21, 51, 0.9) 100%);
  background: -o-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, rgba(6, 21, 51, 0.9) 100%);
  background: linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, rgba(6, 21, 51, 0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#a6000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  z-index: 2;
}
@media only screen and (max-width: 1023px) {
  .gradient-shadow--bottom:before {
    height: 90%;
  }
}
.gradient-shadow--both:before {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.45) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.45) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.45) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#a6000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  z-index: 2;
  transition: opacity 0.3s;
}

.overlay:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 0;
  pointer-events: none;
  transition: opacity 0.3s;
  display: block;
}
.overlay--none:after {
  opacity: 0;
}
.overlay--light:after {
  opacity: 0.15;
}
.overlay--medium:after {
  opacity: 0.65;
}
.overlay--strong:after {
  opacity: 0.9;
}
.overlay--none:after {
  background-color: "none";
}
.overlay--white {
  color: #444344;
}
.overlay--white:after {
  background-color: #ffffff;
}
.overlay--white svg {
  fill: #444344;
}
.overlay--white .section-header__heading {
  color: #00aeef;
}
.overlay--black {
  color: #fff;
}
.overlay--black:after {
  background-color: #061533;
}
.overlay--black h1,
.overlay--black .h1,
.overlay--black h2,
.overlay--black .h2 {
  color: #fff;
}
.overlay--black a:not([class^=button]) {
  color: #00aeef;
}
.overlay--black svg {
  fill: #fff;
}
.overlay--black .section-header__heading {
  color: #00aeef;
}
.overlay--black .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--black .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--arctic {
  color: #444344;
}
.overlay--arctic:after {
  background-color: #dbf5ff;
}
.overlay--arctic svg {
  fill: #444344;
}
.overlay--arctic .section-header__heading {
  color: #00aeef;
}
.overlay--blue {
  color: #fff;
}
.overlay--blue:after {
  background-color: #00aeef;
}
.overlay--blue h1,
.overlay--blue .h1,
.overlay--blue h2,
.overlay--blue .h2 {
  color: #fff;
}
.overlay--blue a:not([class^=button]) {
  color: #00aeef;
}
.overlay--blue svg {
  fill: #fff;
}
.overlay--blue .section-header__heading {
  color: #00aeef;
}
.overlay--blue .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--blue .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--mblue {
  color: #fff;
}
.overlay--mblue:after {
  background-color: #244381;
}
.overlay--mblue h1,
.overlay--mblue .h1,
.overlay--mblue h2,
.overlay--mblue .h2 {
  color: #fff;
}
.overlay--mblue a:not([class^=button]) {
  color: #00aeef;
}
.overlay--mblue svg {
  fill: #fff;
}
.overlay--mblue .section-header__heading {
  color: #00aeef;
}
.overlay--mblue .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--mblue .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--dblue {
  color: #fff;
}
.overlay--dblue:after {
  background-color: #172a50;
}
.overlay--dblue h1,
.overlay--dblue .h1,
.overlay--dblue h2,
.overlay--dblue .h2 {
  color: #fff;
}
.overlay--dblue a:not([class^=button]) {
  color: #00aeef;
}
.overlay--dblue svg {
  fill: #fff;
}
.overlay--dblue .section-header__heading {
  color: #00aeef;
}
.overlay--dblue .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--dblue .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--grey {
  color: #fff;
}
.overlay--grey:after {
  background-color: #444344;
}
.overlay--grey h1,
.overlay--grey .h1,
.overlay--grey h2,
.overlay--grey .h2 {
  color: #fff;
}
.overlay--grey a:not([class^=button]) {
  color: #00aeef;
}
.overlay--grey svg {
  fill: #fff;
}
.overlay--grey .section-header__heading {
  color: #00aeef;
}
.overlay--grey .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--grey .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--red {
  color: #fff;
}
.overlay--red:after {
  background-color: #ec4848;
}
.overlay--red h1,
.overlay--red .h1,
.overlay--red h2,
.overlay--red .h2 {
  color: #fff;
}
.overlay--red a:not([class^=button]) {
  color: #00aeef;
}
.overlay--red svg {
  fill: #fff;
}
.overlay--red .section-header__heading {
  color: #00aeef;
}
.overlay--red .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #00aeef;
  color: #061533;
}
.overlay--red .gform_wrapper.gravity-theme input[type=submit]:hover {
  background-color: #fff;
  color: #061533;
}
.overlay--gradient-blue-mblue-radial-bottom-right {
  color: #fff;
}
.overlay--gradient-blue-mblue-radial-bottom-right h1,
.overlay--gradient-blue-mblue-radial-bottom-right .h1,
.overlay--gradient-blue-mblue-radial-bottom-right h2,
.overlay--gradient-blue-mblue-radial-bottom-right .h2 {
  color: #fff;
}
.overlay--gradient-blue-mblue-radial-bottom-right:after {
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #244381 50%, #244381 100%);
}
.overlay--gradient-black-blue {
  color: #fff;
}
.overlay--gradient-black-blue h1,
.overlay--gradient-black-blue .h1,
.overlay--gradient-black-blue h2,
.overlay--gradient-black-blue .h2 {
  color: #fff;
}
.overlay--gradient-black-blue:after {
  background-image: linear-gradient(0, #061533 0%, #00aeef 100%);
}
.overlay--gradient-black-mblue {
  color: #fff;
}
.overlay--gradient-black-mblue h1,
.overlay--gradient-black-mblue .h1,
.overlay--gradient-black-mblue h2,
.overlay--gradient-black-mblue .h2 {
  color: #fff;
}
.overlay--gradient-black-mblue:after {
  background-image: linear-gradient(0, #061533 0%, #244381 100%);
}
.overlay--gradient-dblue-black {
  color: #fff;
}
.overlay--gradient-dblue-black h1,
.overlay--gradient-dblue-black .h1,
.overlay--gradient-dblue-black h2,
.overlay--gradient-dblue-black .h2 {
  color: #fff;
}
.overlay--gradient-dblue-black:after {
  background-image: linear-gradient(0, #0f181c 0%, #223670 100%);
}
.overlay--gradient-blue-dblue {
  color: #fff;
}
.overlay--gradient-blue-dblue h1,
.overlay--gradient-blue-dblue .h1,
.overlay--gradient-blue-dblue h2,
.overlay--gradient-blue-dblue .h2 {
  color: #fff;
}
.overlay--gradient-blue-dblue:after {
  background-image: linear-gradient(0, #00aeef 0%, #172a50 100%);
}
.overlay--gradient-mblue {
  color: #fff;
}
.overlay--gradient-mblue h1,
.overlay--gradient-mblue .h1,
.overlay--gradient-mblue h2,
.overlay--gradient-mblue .h2 {
  color: #fff;
}
.overlay--gradient-mblue:after {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #244381 100%);
}
.overlay--gradient-mblue:after {
  top: 50%;
}
.overlay--gradient-black {
  color: #fff;
}
.overlay--gradient-black h1,
.overlay--gradient-black .h1,
.overlay--gradient-black h2,
.overlay--gradient-black .h2 {
  color: #fff;
}
.overlay--gradient-black:after {
  background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
}
.overlay--gradient-arctic {
  color: #444344;
}
.overlay--gradient-arctic:after {
  background-image: linear-gradient(0, #ecf0f2 0%, #ffffff 100%);
}
.overlay--gradient-arctic-reverse {
  color: #444344;
}
.overlay--gradient-arctic-reverse:after {
  background-image: linear-gradient(0, #ffffff 0%, #ecf0f2 100%);
}

.svgicon {
  width: 24px;
  height: 24px;
}

.avatar {
  border-radius: 100%;
  border: 3px solid #fff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  width: 78px !important;
  height: 78px;
}

body .gform_wrapper.gravity-theme input[type=submit] {
  background-color: #172a50;
  padding: 13px 26px;
  border-radius: 2px;
  transition: color 0.2s, background-color 0.2s, transform 0.3s;
  color: #fff;
  font-weight: bold;
  width: 100%;
}
body .gform_wrapper.gravity-theme input[type=submit]:hover {
  text-decoration: none;
  background-color: #244381;
  color: #fff;
}
body .gform_wrapper.gravity-theme .gfield-choice-input + label {
  vertical-align: top;
}
body .gform_wrapper .gfield_required:not(.gfield_required_text) {
  letter-spacing: 1px;
  padding: 0 6.5px;
  border-radius: 100px;
  color: #ff6363;
  font-style: normal;
  margin-left: 6.5px;
  display: inline-flex;
  align-items: center;
}
body .gform_wrapper .gfield_required .gfield_required_custom,
body .gform_wrapper .gfield_required .gfield_required_text {
  color: #ec4848;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
}
body .gform_wrapper.gravity-theme .gfield_label {
  font-size: 14px;
  line-height: 1.5;
}
body .gform_heading {
  margin-bottom: 26px;
}
body #gform_wrapper_1 .gform_description {
  color: #fff;
}
body .gform_wrapper .gfield_error .gfield_repeater_cell label,
body .gform_wrapper .gfield_error label,
body .gform_wrapper .gfield_error legend,
body .gform_wrapper .gfield_validation_message,
body .gform_wrapper .validation_message,
body .gform_wrapper [aria-invalid=true] + label,
body .gform_wrapper label + [aria-invalid=true] {
  color: #ff4646;
}
body .gform_wrapper.gravity-theme .description,
body .gform_wrapper.gravity-theme .gfield_description,
body .gform_wrapper.gravity-theme .gsection_description,
body .gform_wrapper.gravity-theme .instruction {
  font-size: 13px;
}
body .gform_wrapper .gfield_validation_message,
body .gform_wrapper .validation_message {
  border-radius: 5px;
}
body .gform_wrapper.gravity-theme .field_description_above .gfield_description {
  padding-bottom: 0;
  padding-left: 10px;
  background: #260000;
  width: max-content;
}

/*! Lity - v2.4.1 - 2020-04-26
* http://sorgalla.com/lity/
* Copyright (c) 2015-2020 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity.lity-opened {
  opacity: 1;
}

.lity.lity-closed {
  opacity: 0;
}

.lity * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}

.lity-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}

.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity-loading .lity-loader {
  opacity: 1;
}

.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}

.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: -o-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease;
}

.lity-loading .lity-content,
.lity-closed .lity-content {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.lity-content:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close:active {
  top: 1px;
}

/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0;
}

/* iFrame */
.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px;
}

.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}

.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

.lity-hide {
  display: none;
}

.post__intro {
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 26px;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .post__intro {
    font-size: 24px;
    line-height: 1.4;
  }
}
.post__intro h2,
.post__intro .h2 {
  line-height: 1.5;
  text-transform: initial;
}
@media only screen and (min-width: 768px) {
  .post__intro h2,
.post__intro .h2 {
    line-height: 1.5;
  }
}
@media only screen and (min-width: 1024px) {
  .post__intro h2,
.post__intro .h2 {
    line-height: 1.3;
  }
}
.post__thumbnail {
  margin-bottom: 26px;
  text-align: center;
}
.post__thumbnail img {
  border-radius: 6.5px;
  overflow: hidden;
  display: inline-block;
}
@media only screen and (min-width: 1024px) {
  .post__thumbnail {
    margin: 0 -104px 26px -104px;
  }
  .post__thumbnail img {
    border-radius: 13px;
  }
}
@media only screen and (min-width: 1024px) {
  .post__title {
    font-size: 60px;
  }
}
.post__one-column h2,
.post__one-column .h2 {
  margin-top: 52px;
}
.post__one-column--result {
  margin-top: 26px;
  padding: 26px;
  background-color: #172a50;
  border-top: 5px solid #00aeef;
  color: #fff;
  border-radius: 40px;
}
.post__one-column--result h2,
.post__one-column--result .h2 {
  margin-top: 0;
}
.post__two-column {
  column-count: 1;
}
@media only screen and (min-width: 768px) {
  .post__two-column {
    column-count: 2;
    column-gap: 26px;
  }
}

.single {
  background-color: #fff;
}
.single .entry-title:before {
  color: #172a50;
  left: 50%;
  transform: translateX(-50%);
}
.single .entry-meta {
  text-align: Left;
  position: relative;
  background-color: #fff;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.2);
  z-index: 2;
  padding: 6.5px 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  margin-bottom: 26px;
  border-radius: 13px;
}
@media only screen and (min-width: 599px) {
  .single .entry-meta {
    padding: 13px 26px;
    margin-bottom: -44px;
  }
}
@media only screen and (min-width: 768px) {
  .single .entry-meta {
    flex-direction: row;
  }
}
.single .entry-header {
  text-align: center;
  padding-top: 0;
}
.single .entry-author {
  display: flex;
  align-items: center;
}
.single .entry-author .author__bio {
  margin-bottom: 0;
  margin-left: 13px;
}
@media only screen and (min-width: 599px) {
  .single .entry-author .author__bio {
    margin-left: 26px;
  }
}
.single .entry-author .authorname {
  margin-bottom: 0;
  font-size: 14px;
}
@media only screen and (min-width: 599px) {
  .single .entry-author .authorname {
    font-size: 16px;
    line-height: 1.4;
  }
}
@media only screen and (min-width: 599px) and (min-width: 768px) {
  .single .entry-author .authorname {
    font-size: 18px;
    line-height: 1.3;
  }
}
.single .entry-author .author__image .avatar {
  width: 36px !important;
  height: 36px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}
@media only screen and (min-width: 599px) {
  .single .entry-author .author__image .avatar {
    width: auto !important;
    height: auto;
  }
}

.mobile-main-navigation {
  padding: 13px 26px;
}
.mobile-main-navigation ul li {
  margin-bottom: 6.5px;
}
.mobile-main-navigation ul li a {
  display: block;
  padding: 13px;
  background-color: #dbf5ff;
  color: #172a50;
  border-radius: 3px;
  font-size: 16px;
}

.portrait-block-link {
  position: relative;
}
.portrait-block-link:hover {
  text-decoration: none;
}
@media only screen and (min-width: 1024px) {
  .portrait-block-link {
    margin-bottom: 0;
  }
}
.portrait-block-link.slick-slide {
  margin: 0 13px;
}
.portrait-block-link__heading {
  bottom: 39px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 0.3s 0.3s, transform 0.3s 0.1s;
  z-index: 2;
  width: max-content;
  margin: 0;
}
@media only screen and (max-width: 1023px) {
  .portrait-block-link__heading {
    margin-bottom: 52px;
  }
}
.portrait-block-link__image {
  transition: transform 0.2s 0.3s;
}
.portrait-block-link__textbox {
  transition: opacity 0.3s 0.1s, transform 0.3s 0.1s;
  position: absolute;
  padding: 13px 26px;
  width: 100%;
  text-align: center;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  transform: translateY(-13px);
}
.portrait-block-link__button {
  position: absolute;
  bottom: 20px;
  right: 26px;
  opacity: 0;
  transition: opacity 0.3s 0.3s, transform 0.3s 0.1s;
  display: flex;
  gap: 6.5px;
  align-items: center;
}
.portrait-block-link__button:before {
  content: "Find out more";
  font-weight: bold;
  font-size: 14px;
  text-align: center;
  color: #fff;
}
.portrait-block-link__button svg {
  fill: #fff;
}
.portrait-block-link img {
  object-fit: cover;
  height: 100%;
}
.portrait-block-link__link {
  color: #fff;
  display: block;
  background-color: #fff;
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}
.portrait-block-link__link:before {
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -webkit-linear-gradient(rgba(36, 67, 129, 0) 0%, rgba(36, 67, 129, 0) 1%, #244381 100%);
  background: -o-linear-gradient(rgba(36, 67, 129, 0) 0%, rgba(36, 67, 129, 0) 1%, #244381 100%);
  background: linear-gradient(rgba(36, 67, 129, 0) 0%, rgba(36, 67, 129, 0) 1%, #244381 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#a6000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 60%;
  z-index: 2;
  transition: opacity 0.2s 0.3s;
}
.portrait-block-link__link::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background-color: #061533;
  background-image: linear-gradient(0, #061533 0%, #244381 100%);
  -webkit-mask-image: url(./dist/img/page-link-mask.svg);
  mask-image: url(./dist/img/page-link-mask.svg);
  mask-repeat: no-repeat;
  mask-size: cover;
  opacity: 0;
  transform-origin: left;
  transition: opacity 0.5s, transform 0.5s;
  transform: scale(3);
  pointer-events: none;
}
.portrait-block-link__link:hover:before {
  opacity: 0;
  transition-delay: 0s;
}
.portrait-block-link__link:hover:after {
  opacity: 0.9;
  transform: scale(1);
  pointer-events: none;
}
.portrait-block-link__link:hover + .portrait-block-link__button {
  opacity: 1;
}
.portrait-block-link__link:hover .portrait-block-link__heading {
  transform: translate(-50%, -26px);
  opacity: 0;
  transition-delay: 0s;
}

h3.portrait-block-link__heading {
  color: #fff;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  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;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.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;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-dots {
  position: absolute;
  display: flex;
  gap: 6.5px;
  bottom: -39px;
  left: 50%;
  transform: translate(-50%);
  margin: 0;
}
.slick-dots button {
  width: 26px;
  border-radius: 50px;
  text-indent: -9999px;
  background-color: #fff;
  transition: background-color 0.2s;
  height: 7px;
  padding: 0;
}
.slick-dots button:hover {
  background-color: #00aeef;
}
.slick-dots li.slick-active button {
  background-color: #172a50;
}
.slick-dots li.slick-active button:hover {
  background-color: #172a50;
}

.slick-prev,
.slick-next {
  width: 52px;
  height: 52px;
  background: none;
  padding: 0;
  fill: #fff;
}

.slick-slider--services .slick-prev {
  position: absolute;
  left: 26px;
}
.slick-slider--services .slick-next {
  position: absolute;
}
.slick-slider--page-link-carousel .slick-prev,
.slick-slider--page-link-carousel .slick-next {
  position: absolute;
  background-color: #172a50;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.slick-slider--page-link-carousel .slick-prev {
  left: 26px;
}
.slick-slider--page-link-carousel .slick-next {
  right: 26px;
}

.icon-bullet-list {
  margin: 0;
}
.icon-bullet-list__item {
  display: flex;
  align-items: center;
  margin-bottom: 13px;
}
.icon-bullet-list__item a:not(.button) {
  color: #fff;
  transition: color 0.2s;
}
.icon-bullet-list__item a:not(.button):hover {
  text-decoration: none;
  color: #00aeef;
}
.icon-bullet-list__icon {
  margin-right: 6.5px;
}

.post-share {
  float: left;
}
.post-share > * {
  display: inline-block;
}
@media only screen and (min-width: 599px) {
  .post-share {
    float: none;
    display: flex;
    align-items: center;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 768px) {
  .post-share {
    padding: 13px;
  }
}
.post-share__key {
  position: relative;
  padding-right: 6.5px;
  font-size: 14px;
}
.post-share__key p {
  font-weight: 500;
}
@media only screen and (min-width: 599px) {
  .post-share__key {
    padding-right: 13px;
    margin-right: 13px;
    font-size: 14px;
  }
  .post-share__key:after {
    content: "";
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-left: 5px solid currentColor;
    border-bottom: 6px solid transparent;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 10px;
  }
}
.post-share__social {
  display: inline-flex;
  margin: 0 3px;
  width: 29px;
  height: 29px;
  border-radius: 100%;
  text-align: center;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s;
}
.post-share__social:hover {
  transform: scale(1.1);
}
.post-share__social svg {
  display: inline-block;
  fill: #fff;
}
.post-share__social--facebook {
  background-color: #43619c;
}
.post-share__social--twitter {
  background-color: #24a9e6;
}
.post-share__social--linkedin {
  background-color: #187fb8;
}

.post-list--gallery {
  background-image: linear-gradient(0, #ffffff 0%, #ecf0f2 100%);
}
.post-list__item {
  display: flex;
}
.post-list__item--featured-cs {
  margin-top: 26px;
}
.post-list__item--featured-cs .post-list__link {
  transition: background-color 0.2s;
}
@media only screen and (max-width: 767px) {
  .post-list__item--featured-cs .post-list__link {
    background-color: #061533;
  }
}
@media only screen and (min-width: 768px) {
  .post-list__item--featured-cs .post-list__link {
    display: flex;
  }
  .post-list__item--featured-cs .post-list__link:hover {
    background-color: #172a50;
    text-decoration: none;
  }
  .post-list__item--featured-cs .post-list__link:hover .post-list__thumbnail:after {
    opacity: 0;
  }
  .post-list__item--featured-cs .post-list__link:hover .post-list__content__inner {
    clip-path: polygon(50px -1px, 100% 0, 100% 100%, 0px 100%);
  }
  .post-list__item--featured-cs .post-list__link:hover .post-list__content__inner:before {
    opacity: 1;
  }
  .post-list__item--featured-cs .post-list__link:hover .case-study-intro__key-features {
    transform: translateX(-26px);
  }
}
@media only screen and (min-width: 768px) {
  .post-list__item--featured-cs .post-list__content {
    padding: 0;
    transform: translateX(-120px);
    margin-right: -120px;
    position: relative;
    flex: 1;
  }
  .post-list__item--featured-cs .post-list__content__inner {
    height: 100%;
    padding: 26px;
    clip-path: polygon(100px -1px, 100% 0, 100% 100%, 30px 100%);
    padding-left: 156px;
    transition: clip-path 0.3s cubic-bezier(0.23, 0.85, 0.42, 0.9);
  }
  .post-list__item--featured-cs .post-list__content__inner:before {
    position: absolute;
    inset: 0;
    display: block;
    content: "";
    background-image: radial-gradient(circle at right bottom, #00aeef 0%, #244381 50%, #244381 100%);
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 0.3s;
  }
}
.post-list__item--featured-cs .post-list__thumbnail {
  flex: 1;
  position: relative;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .post-list__item--featured-cs .post-list__thumbnail:after {
    all: unset;
  }
}
.post-list__item--featured-cs .case-study-intro__key-features {
  border-right: 0;
}
.post-list__item--featured-cs .case-study-intro__list {
  margin-bottom: 26px;
}
.post-list__item--padded {
  padding: 6.5px;
}
@media only screen and (min-width: 768px) {
  .post-list__item--padded {
    padding: 13px;
  }
}
.post-list__item--inline {
  margin-bottom: 26px;
  background-color: #fff;
  padding: 26px;
  display: block;
}
.post-list__item--inline .post-list__content {
  padding-top: 0;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media only screen and (min-width: 599px) {
  .post-list__item--inline .post-list__content {
    align-items: initial;
    text-align: left;
  }
}
.post-list__item--inline .post-list__thumbnail {
  margin-bottom: 13px;
}
@media only screen and (min-width: 599px) {
  .post-list__item--inline .post-list__thumbnail {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 599px) {
  .post-list__item--inline {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 26px;
  }
}
@media only screen and (min-width: 768px) {
  .post-list__item--inline {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 52px;
  }
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__textbox {
  transform: translateX(13px);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__link {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
  text-decoration: none;
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__link:before {
  transform: scaleY(2);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__date {
  opacity: 0;
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__icon {
  opacity: 1;
  transform: scale(1) translate(-50%, -50%);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__thumbnail {
  transform: scale(1.2);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__thumbnail:before {
  opacity: 1;
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__thumbnail:after {
  opacity: 0.9;
  transform: scale(1);
  pointer-events: none;
  filter: blur(0px);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__thumbnail img {
  filter: blur(5px);
}
.post-list__item:hover:not(.post-list__item--featured-cs) .post-list__c2a {
  opacity: 1;
}
.post-list__icon {
  transition: opacity 0.5s, transform 0.5s;
  width: 52px;
  height: 52px;
  fill: #fff;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: scale(0.9) translate(-50%, -50%);
  z-index: 3;
}
.post-list__link {
  padding: 26px;
  border-radius: 2px;
  background-color: #dbf5ff;
  transition: background-color 0.2s, box-shadow 0.2s;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  /* start with none */
  color: #172a50;
  overflow: hidden;
}
.post-list__textbox {
  transition: transform 0.3s;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .post-list__textbox {
    min-height: 100px;
  }
}
@media only screen and (min-width: 768px) {
  .post-list__textbox {
    justify-content: initial;
    height: initial;
  }
}
.post-list__c2a {
  padding: 6.5px 13px;
  width: fit-content;
  transition: background-color 0.2s, border-color 0.2s, opacity 0.3s;
  margin-bottom: 13px;
}
@media only screen and (min-width: 768px) {
  .post-list__c2a {
    opacity: 0;
  }
}
.post-list__posts {
  display: grid;
  grid-template-columns: 1fr;
  gap: 26px;
}
@media only screen and (min-width: 768px) {
  .post-list__posts {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1200px) {
  .post-list__posts {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.post-list__posts--carousel, .post-list__posts--row {
  display: block;
}
.post-list__posts--1col {
  grid-template-columns: 1fr;
  max-width: 750px;
  margin: 0 auto;
}
.post-list__posts--full, .post-list__posts--fail {
  grid-template-columns: 1fr;
}
.post-list__posts--2col {
  gap: 13px;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 599px) {
  .post-list__posts--2col {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 768px) {
  .post-list__posts--2col {
    gap: 26px;
    grid-template-columns: 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .post-list__posts--2col {
    grid-template-columns: 1fr 1fr;
  }
}
.post-list__date {
  position: absolute;
  top: 39px;
  left: 39px;
  text-align: center;
  background-color: #172a50;
  color: #fff;
  padding: 13px 13px 13px 13px;
  z-index: 1;
  transition: opacity 0.2s;
}
.post-list__date > * {
  display: block;
}
.post-list__date__day {
  font-size: 21px;
  line-height: 0.75;
  line-height: 0.7;
  font-weight: 800;
  position: relative;
}
.post-list__date__month {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  position: relative;
}
.post-list__date svg {
  width: 13px;
  height: 13px;
  margin-right: 6.5px;
  fill: #fff;
}
.post-list__thumbnail {
  position: relative;
  overflow: hidden;
  margin-bottom: 13px;
  transition: transform 0.5s;
  transform-origin: bottom;
}
.post-list__thumbnail::before {
  position: absolute;
  inset: 0;
  content: "";
  background-color: #ffffff;
  opacity: 0;
  transition: opacity 0.3s;
  mix-blend-mode: overlay;
  z-index: 1;
}
.post-list__thumbnail::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background-color: #061533;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #244381 50%, #244381 100%);
  -webkit-mask-image: url(./dist/img/page-link-mask.svg);
  mask-image: url(./dist/img/page-link-mask.svg);
  mask-repeat: no-repeat;
  mask-size: cover;
  opacity: 0;
  transform-origin: left;
  transition: opacity 0.5s, transform 0.5s, filter 0.5s;
  filter: blur(5px);
  transform: scale(3);
  pointer-events: none;
  z-index: 2;
}
.post-list__thumbnail svg {
  fill: #fff;
  width: 52px;
  height: 52px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.2s;
  z-index: 4;
}
.post-list__thumbnail img {
  filter: blur(0px);
  transition: filter 0.6s ease;
  /* 👈 makes blur animate */
}
.post-list__thumbnail:hover svg {
  transform: scale(1.05), translate(-50%, -50%);
}
.post-list__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: 0;
  padding-top: 26px;
  transition: background-color 0.2s;
}
.post-list__heading {
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 0;
}

.features-list {
  background-color: #172a50;
  color: #fff;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.2);
  padding: 13px 26px;
  border-radius: 100px;
  margin: -26px auto 0 auto;
  display: block;
  width: fit-content;
  position: relative;
}
.features-list__list {
  margin: 0;
  display: flex;
  gap: 13px;
  flex-wrap: wrap;
  justify-content: center;
}
@media only screen and (min-width: 599px) {
  .features-list__list {
    gap: 52px;
  }
}
.features-list__item {
  display: flex;
  gap: 13px;
  align-items: center;
}
.features-list svg {
  fill: #fff;
}
.features-list__value {
  margin: 0;
  font-weight: 900;
}

.breadcrumbs {
  position: relative;
  z-index: 1;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  text-transform: uppercase;
  opacity: 0;
}
.loaded .breadcrumbs {
  animation-delay: 0.2s;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInRightVSmall;
  -moz-animation-name: fadeInRightVSmall;
  animation-name: fadeInRightVSmall;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
.breadcrumbs .breadcrumb_last {
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: bottom;
}
.breadcrumbs__separator {
  width: 13px;
  height: 13px;
  background-image: url("./dist/img/svg/angle-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
}
.breadcrumbs__text {
  margin-bottom: 0;
  font-size: 10px;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .breadcrumbs__text {
    transform: translateY(13px);
  }
}
.breadcrumbs--dark .breadcrumbs__separator {
  background-image: url("./dist/img/svg/angle-right--dark.svg");
}

.widget {
  border-radius: 6px;
  background-color: #dbf5ff;
  padding: 13px 0;
}
.widget > * {
  padding: 26px;
  padding-bottom: 13px;
}
.widget ul {
  margin: 0;
}
.widget li {
  display: flex;
  justify-content: space-between;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: bold;
}
.widget li:before, .widget li:after {
  display: none !important;
}
.widget li:hover a {
  color: #00aeef;
  text-decoration: none;
}
.widget a {
  color: #444344;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: normal;
  transition: color 0.2s;
  font-size: 14px;
  line-height: 1.5;
}
.widget-title {
  border-bottom: 1px solid #fff;
  padding: 0 19.5px;
  padding-bottom: 13px;
  margin-bottom: 0;
}
.widget .wp-block-search__label {
  position: absolute;
  text-indent: -9999px;
  width: auto;
}
.widget .wp-block-search__button {
  display: none;
}
.widget .wp-block-search input[type=search] {
  background-color: #fff;
}

.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item {
  padding: 0 19.5px;
}

body.woocommerce .widget_price_filter .price_slider_amount {
  display: flex;
  flex-direction: column;
  text-align: left;
}
body.woocommerce .widget_price_filter .price_slider_amount .button {
  float: none;
  order: 1;
}

/* Pagination */
.pagination {
  clear: both;
  position: relative;
  width: 100%;
  padding: 26px 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination__items {
  display: flex;
}
.pagination__count {
  padding-right: 26px;
  margin-bottom: 0;
  font-weight: bold;
}
.pagination a.pagination__next {
  float: right;
}
.pagination a.pagination__next svg {
  width: 13px;
  height: 13px;
  fill: #172a50;
}
.pagination a.pagination__prev {
  float: left;
}
.pagination a.pagination__prev svg {
  width: 13px;
  height: 13px;
  fill: #172a50;
}
@media only screen and (min-width: 768px) {
  .pagination {
    padding: 52px 0;
  }
}

.pagination span,
.pagination a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  text-decoration: none;
  color: #172a50;
  /* Pagination text color */
  -webkit-transition: background 0.15s ease-in-out;
  -moz-transition: background 0.15s ease-in-out;
  -ms-transition: background 0.15s ease-in-out;
  -o-transition: background 0.15s ease-in-out;
  transition: background 0.15s ease-in-out;
  border-radius: 100%;
  border: 2px solid #00aeef;
  margin: 0 3.25px;
}
.pagination span.pagination__helip,
.pagination a.pagination__helip {
  border: 0;
}
@media only screen and (min-width: 599px) {
  .pagination span,
.pagination a {
    margin: 0 4.3333333333px;
  }
}

.pagination a:hover {
  background: #00aeef;
  /* Pagination background on hover */
}

.pagination .current {
  background: #172a50;
  /* Current page background */
  border-color: #172a50;
  color: #fff;
}

.sidebar {
  background-image: linear-gradient(0, #00aeef 0%, #172a50 100%);
  width: 78px;
  padding: 26px 0;
  position: fixed;
  left: 0;
  height: 100vh;
  z-index: 4;
}
.home .sidebar {
  -webkit-animation-duration: 0.2s;
  -moz-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: slideInLeft;
  -moz-animation-name: slideInLeft;
  animation-name: slideInLeft;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: cubic-bezier(0.06, 0.74, 0.69, 1.11);
  -moz-animation-timing-function: cubic-bezier(0.06, 0.74, 0.69, 1.11);
  animation-timing-function: cubic-bezier(0.06, 0.74, 0.69, 1.11);
  animation-delay: 0.1s;
}
@media only screen and (max-width: 1023px) {
  .sidebar {
    left: -78px;
    background: none;
    border: none;
    padding-left: 78px;
  }
}
@media only screen and (min-width: 1024px) {
  .sidebar {
    box-shadow: 10px 0 14px rgba(0, 0, 0, 0.2);
  }
}
.sidebar__menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  width: calc(100vh - 24px);
  top: 0;
  left: 50%;
  transform: rotate(90deg) translate(-16px, 50%);
  transform-origin: bottom left;
  gap: 26px;
}
@media only screen and (max-width: 1023px) {
  .sidebar__menu {
    display: none;
  }
}
.sidebar__menu__group {
  display: flex;
  gap: 52px;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.sidebar__menu svg {
  fill: #fff;
}
.sidebar__button {
  background: none;
  padding: 0;
  text-align: center;
  display: flex;
  align-items: center;
  color: #fff;
  gap: 13px;
  text-transform: uppercase;
  position: relative;
  transition: color 0.2s;
}
.sidebar__button:before {
  width: 92px;
  height: 1px;
  border-top: 1px solid rgba(0, 174, 239, 0.5);
  display: block;
  content: "";
  position: absolute;
  bottom: 16px;
  left: 90%;
  transform: rotate(-120deg);
}
.sidebar__button:hover {
  text-decoration: none;
  color: #00aeef;
}
.sidebar__button:hover .sidebar__button__icon {
  fill: #00aeef;
  background-color: #ffffff;
}
.sidebar__button__icon {
  background-color: #00aeef;
  padding: 6.5px;
  border-radius: 2px;
  fill: #fff;
  width: 32px;
  height: 32px;
  z-index: 2;
  transition: fill 0.2s, background-color 0.2s;
  transform: rotate(-90deg);
  position: relative;
}

.slant {
  --slantH: 25px;
}
@media only screen and (min-width: 768px) {
  .slant {
    --slantH: 50px;
  }
}
.slant--top {
  clip-path: polygon(0 0, 100% var(--slantH), 100% 100%, 0 100%);
}
.slant--top--reverse {
  clip-path: polygon(0 var(--slantH), 100% 0, 100% 100%, 0 100%);
}
.slant--bottom {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--slantH)));
}
.slant--bottom--reverse {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--slantH)), 0 100%);
}

.download__item {
  margin-bottom: 13px;
}
.download__link {
  color: #ffffff;
  position: relative;
  padding: 6.5px;
  border: 1px solid #244381;
  display: block;
  transition: background-color 0.2s, color;
}
.download__link img {
  margin-bottom: 26px;
}
.download__link:hover {
  text-decoration: none;
  background-color: #244381;
  color: #00aeef;
}
.download__title {
  display: flex;
  align-items: center;
  gap: 13px;
  justify-content: space-between;
  margin-bottom: 0;
}
.download__title .button {
  flex: none;
}
.download__title .button:hover {
  background-color: #244381;
  transform: scale(0.95);
}
.download__filename {
  display: block;
  font-size: 12px;
  font-weight: 400;
  font-style: italic;
}
.download__label {
  position: absolute;
  top: -15px;
  left: 52px;
}
.download__c2a {
  display: block;
}
.download__c2a.button--blue {
  float: right;
}
.download__c2a.button--has-icon {
  display: inline-flex;
}
.download__c2a--has-icon {
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 13px;
  padding-top: 13px;
}

.tabbed-panels__tabs--primary-tabs {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 599px) {
  .tabbed-panels__tabs--primary-tabs {
    flex-direction: row;
  }
}
.tabbed-panels__tabs--primary-tabs .tabbed-panels__tab {
  background-color: #1d3464;
  padding: 13px 26px;
  color: #fff;
}
@media only screen and (min-width: 599px) {
  .tabbed-panels__tabs--primary-tabs .tabbed-panels__tab {
    background-color: #172a50;
  }
}
@media only screen and (min-width: 1024px) {
  .tabbed-panels__tabs--primary-tabs .tabbed-panels__tab {
    min-width: 160px;
  }
}
.tabbed-panels__tabs--primary-tabs .tabbed-panels__tab--active, .tabbed-panels__tabs--primary-tabs .tabbed-panels__tab:not(.tabbed-panels__tab--active):hover {
  background-color: #244381;
}
.tabbed-panels__tabs--primary-tabs .tabbed-panels__label {
  font-weight: 600;
}
.tabbed-panels__tabs--secondary-tabs {
  gap: 13px;
  padding: 26px;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 599px) {
  .tabbed-panels__tabs--secondary-tabs {
    flex-direction: row;
  }
}
.tabbed-panels__tabs--secondary-tabs .tabbed-panels__tab {
  border: 1px solid #5c78b1;
  background: none;
  border-radius: 2px;
  padding: 6.5px 26px;
  color: #fff;
}
.tabbed-panels__tabs--secondary-tabs .tabbed-panels__tab--active, .tabbed-panels__tabs--secondary-tabs .tabbed-panels__tab:not(.tabbed-panels__tab--active):hover {
  background-color: #00aeef;
  border-color: #00aeef;
}
.tabbed-panels__tabs--secondary-tabs .tabbed-panels__label {
  font-weight: 600;
}
.tabbed-panels__tab {
  transition: background-color 0.2s, border-color 0.2s;
}
.tabbed-panels__panel-container {
  position: relative;
  z-index: 1;
}
.tabbed-panels__panel-content {
  -webkit-animation-duration: 0.5s;
  -moz-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  animation-delay: 0.3s;
}
.tabbed-panels__panel-content p:last-child {
  margin-bottom: 0;
}
.tabbed-panels__item {
  display: none;
  position: absolute;
}
.tabbed-panels__item--active {
  position: static;
  display: block;
}

.carousel-nav__nav {
  display: flex;
  gap: 13px;
}
@media only screen and (max-width: 1023px) {
  .carousel-nav__nav {
    justify-content: center;
    margin-bottom: 26px;
    margin-top: 26px;
  }
}
.carousel-nav__nav--vertical {
  flex-direction: column;
}
.carousel-nav__nav--vertical .carousel-nav__prev:hover {
  transform: translateY(-5px);
}
.carousel-nav__nav--vertical .carousel-nav__next:hover {
  transform: translateY(5px);
}
@media only screen and (max-width: 1023px) {
  .carousel-nav__nav--vertical {
    margin-top: 0;
  }
}
.carousel-nav__nav--centered .carousel-nav__prev {
  position: absolute;
  top: 50%;
  left: 75px;
  transform: translateY(-50%);
  z-index: 1;
}
.carousel-nav__nav--centered .carousel-nav__prev:hover {
  transform: translate(-5px, -50%);
}
.carousel-nav__nav--centered .carousel-nav__next {
  position: absolute;
  top: 50%;
  right: 75px;
  transform: translateY(-50%);
  z-index: 1;
}
.carousel-nav__nav--centered .carousel-nav__next:hover {
  transform: translate(5px, -50%);
}
.carousel-nav__prev:hover {
  transform: translateX(-5px);
  border: 1px solid #fff;
}
.carousel-nav__next:hover {
  transform: translateX(5px);
  border: 1px solid #fff;
}
.carousel-nav__prev, .carousel-nav__next {
  width: 39px;
  height: 39px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: #172a50;
  transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
}
.carousel-nav__prev svg, .carousel-nav__next svg {
  transition: fill 0.2s;
  fill: #fff;
  width: 26px;
  height: 26px;
  pointer-events: none;
}
@media only screen and (min-width: 768px) {
  .carousel-nav__prev, .carousel-nav__next {
    width: 52px;
    height: 52px;
  }
}

body .wp-gr.wpac a.wp-google-name {
  color: #00aeef !important;
}
body .wp-gr .wp-google-time {
  color: #fff !important;
}
body .wp-gr .grw-review-inner > svg {
  width: 26px !important;
  height: 26px !important;
  padding: 5px;
  border-radius: 100%;
  background-color: #fff;
}

.tf-filters {
  display: flex;
  justify-content: flex-end;
  flex: 1;
}
.tf-filters--stacked .tf-filters__wrapper {
  background-color: rgba(0, 174, 239, 0.3);
  backdrop-filter: blur(5px);
  flex-direction: column;
  border-radius: 3px;
  max-width: 580px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
  width: 100%;
}
.tf-filters--stacked .tf-filters__main {
  flex-direction: column;
}
@media only screen and (min-width: 1024px) {
  .tf-filters--stacked .tf-filters__main {
    justify-content: center;
    gap: 13px;
  }
}
.tf-filters--inline {
  background-color: #172a50;
}
.tf-filters--inline .tf-filters__wrapper {
  backdrop-filter: none;
  flex-direction: column;
  max-width: none;
  box-shadow: none;
  padding: 0;
  padding-top: 13px;
  padding-bottom: 13px;
  gap: 26px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .tf-filters--inline .tf-filters__wrapper {
    flex-direction: row;
  }
}
.tf-filters--inline .tf-filters__main {
  flex: 1;
  flex-direction: column;
  gap: 13px;
}
@media only screen and (min-width: 768px) {
  .tf-filters--inline .tf-filters__main {
    flex-direction: row;
  }
}
.tf-filters--inline .tf-filters__c2a.h3 {
  width: max-content;
  margin-bottom: 0;
}
.tf-filters__wrapper {
  order: 2;
  padding: 26px;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  color: #fff;
}
.tf-filters__c2a {
  flex: 1;
}
.tf-filters__filter-wrap {
  display: flex;
  flex-direction: column;
  gap: 13px;
  flex: 1;
}
.tf-filters__filter-wrap .tf-filters__filter {
  margin-bottom: 0;
}
.tf-filters__main {
  display: flex;
  align-items: center;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .tf-filters__main--has-search {
    display: block;
    width: 100%;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (min-width: 1200px) {
  .tf-filters__main--has-search {
    display: flex;
  }
  .tf-filters__main .tf-filters__c2a {
    flex: 1;
    margin-bottom: 0;
  }
}
.tf-filters__select {
  font-size: 10px;
  line-height: 1.2;
  border: 0;
  color: #ffffff;
  font-weight: 800;
  background-color: #172a50;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  overflow: hidden;
  padding: 6.5px 39px 6.5px 13px;
  border: 0;
  border-radius: 2px;
  height: 54px;
  transition: background-color 0.3s, color 0.3s;
  min-width: 200px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .tf-filters__select {
    font-size: 12px;
    line-height: 1.4;
  }
}
.tf-filters__select:hover, .tf-filters__select.selected {
  background-color: #172a50;
  color: #00aeef;
}
.tf-filters__select:hover + svg, .tf-filters__select.selected + svg {
  fill: #00aeef;
}
.tf-filters__select--disabled {
  opacity: 0.6;
}
.tf-filters__filter {
  display: inline-block;
  margin-bottom: 13px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .tf-filters__filter {
    margin-bottom: 0;
  }
}
.tf-filters__filter__wrapper {
  position: relative;
}
.tf-filters__filter__wrapper svg {
  position: absolute;
  right: 8.6666666667px;
  top: 50%;
  width: 18px;
  fill: #fff;
  transform: translateY(-50%);
  transition: fill 0.3s;
  pointer-events: none;
}
.tf-filters__filter__wrapper:hover svg {
  fill: #00aeef;
}
.tf-filters__clear-button {
  display: flex;
  align-items: center;
  height: 40px;
  padding: 5px 30px;
  color: #fff;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .tf-filters__clear-button {
    height: 54px;
  }
}
.tf-filters__icon {
  margin-left: 6.5px;
  fill: #ffffff;
  width: 12px;
  height: 12px;
}
.tf-filters__search-form {
  position: relative;
}
.tf-filters__search {
  margin-bottom: 26px;
  order: 1;
}
@media only screen and (min-width: 1024px) {
  .tf-filters__search {
    margin-bottom: 0;
    margin-left: 39px;
    order: 2;
    margin-right: 26px;
  }
}
.tf-filters .post-search input[type=search] {
  min-width: 315px;
  transition: width 0.2s, border-color 0.2s, transform 0.2s;
  width: 100%;
}
.tf-filters .post-search input[type=search]:focus {
  transform: scale(1.1);
  border-color: #ffffff;
}
@media only screen and (min-width: 1024px) {
  .tf-filters .post-search input[type=search] {
    transform-origin: right;
    min-width: 195px;
  }
  .tf-filters .post-search input[type=search]:focus {
    width: 115%;
    transform: translateX(-15%);
    border-color: #ffffff;
  }
}
@media only screen and (min-width: 1200px) {
  .tf-filters .post-search input[type=search] {
    min-width: 315px;
  }
}
@media only screen and (min-width: 599px) {
  .tf-filters__select {
    margin-bottom: 0;
  }
}

.tf-filter-grid {
  padding-bottom: 39px;
}
@media only screen and (min-width: 768px) {
  .tf-filter-grid {
    padding-bottom: 78px;
    padding-top: 52px;
  }
}
.tf-filter-grid__wrapper, .tf-filter-grid__tag-filters {
  transition: opacity 0.3s;
  position: relative;
}
.tf-filter-grid__wrapper.remove, .tf-filter-grid__tag-filters.remove {
  opacity: 0;
}
.tf-filter-grid__wrapper {
  min-height: 400px;
}
.tf-filter-grid__wrapper--fail {
  display: block !important;
}
.tf-filter-grid__related-link-list .wrap {
  padding-top: 26px;
  padding-bottom: 26px;
}
@media only screen and (min-width: 599px) {
  .tf-filter-grid__related-link-list .wrap {
    padding-top: 52px;
    padding-bottom: 52px;
  }
}
@media only screen and (min-width: 1024px) {
  .tf-filter-grid__related-link-list .wrap {
    padding-top: 104px;
    padding-bottom: 104px;
  }
}
.tf-filter-grid__related-link-list .related-link-list__main {
  justify-content: center;
}
.tf-filter-grid__intro {
  padding: 13px;
  border: 2px dashed #00aeef;
  border-radius: 26px;
  text-align: center;
  max-width: 700px;
  margin: 104px auto;
}
.tf-filter-grid__intro .h2 {
  color: #00aeef;
}
@media only screen and (min-width: 768px) {
  .tf-filter-grid__intro {
    padding: 26px;
  }
}
.tf-filter-grid__item {
  position: relative;
  text-align: left;
  height: 100%;
}
.tf-filter-grid__item:before {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.14);
}
.tf-filter-grid__item.animate-in {
  -webkit-animation-duration: 0.6s;
  -moz-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
@media only screen and (min-width: 599px) {
  .tf-filter-grid__item--projects .post-list__thumbnail {
    height: 250px;
  }
}
@media only screen and (min-width: 1024px) {
  .tf-filter-grid__item--projects .post-list__thumbnail {
    height: 300px;
  }
}
@media only screen and (min-width: 1200px) {
  .tf-filter-grid__item--projects .post-list__thumbnail {
    height: 350px;
  }
}
.tf-filter-grid__item--projects .post-list__content {
  background-color: #dbf5ff;
  transition: background-color 0.3s, transform 0.3s;
  backface-visibility: hidden;
  padding-bottom: 13px;
}
.tf-filter-grid__item--projects .post-list__excerpt {
  transition: opacity 0.3s;
}
@media only screen and (min-width: 1024px) {
  .tf-filter-grid__item--projects .post-list__excerpt {
    opacity: 0;
  }
}
.tf-filter-grid__item--projects .post-list__summary {
  transition: transform 0.3s;
}
.tf-filter-grid__item--projects:hover .post-list__content {
  transform: translateY(-100px);
  background-color: #fff;
  opacity: 1;
}
.tf-filter-grid__item--projects:hover .post-list__excerpt {
  opacity: 1;
  font-size: 14px;
}
.tf-filter-grid__item--projects:hover .post-list__summary {
  transform: scale(0.9);
}
@media only screen and (min-width: 599px) {
  .tf-filter-grid__item--projects:hover .post-list__summary {
    transform: scale(0.95);
  }
}
.tf-filter-grid__item--projects:hover:before {
  transform: scaleY(1.1) scaleX(1.05);
}
.tf-filter-grid__fail {
  margin: 52px 0;
}
.tf-filter-grid__header {
  transition: opacity 0.35s;
  margin-bottom: 13px;
}
.tf-filter-grid__header.loading {
  opacity: 0.2;
}

.m-container {
  max-width: 1440px;
  margin: 0 auto;
}

.m-sizer {
  width: 100%;
}
@media only screen and (min-width: 599px) {
  .m-sizer {
    width: calc(50% - 26px);
  }
}

.m-gutter {
  width: 26px;
}

.profile-card {
  text-align: left;
  box-shadow: 0px 0 14px rgba(0, 0, 0, 0.2);
  position: relative;
}
.profile-card__header {
  height: 90px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.profile-card__main {
  background-repeat: no-repeat;
  background-size: contain;
  padding-top: 39px;
  padding-left: 39px;
  padding-right: 39px;
  padding-bottom: 26px;
  background-position: top;
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
}
.profile-card__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
  padding-bottom: 52px;
}
.profile-card__grid .profile-card {
  transition: transform 0.4s cubic-bezier(0, 0.62, 0, 1.75), box-shadow 0.3s;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0);
}
.profile-card__grid .profile-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.2);
}
.profile-card__image {
  width: 100%;
  overflow: hidden;
  margin-bottom: 13px;
  position: relative;
  z-index: 1;
}
.profile-card__image img {
  width: 100%;
  transition: transform 0.3s;
}
.profile-card__textbox {
  position: relative;
  padding-left: 10px;
}
.profile-card__name {
  margin-bottom: 6.5px;
  color: #244381;
}
.profile-card__summary {
  line-height: 1.5;
  margin-bottom: 26px;
  font-weight: 400;
}
.profile-card__link {
  overflow: hidden;
  position: relative;
  display: block;
  transition: color 0.2s, transform 0.3s ease-in-out;
  color: #444344;
  height: 100%;
}
.profile-card__link:before {
  display: flex;
  width: 100%;
  overflow: hidden;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
  height: 110%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 50px), 0 100%);
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  transform: translateY(-75%);
  transition: transform 0.2s ease-in-out;
}
.profile-card__link:hover {
  text-decoration: none;
  color: #fff;
  transform: translateY(-10px);
}
.profile-card__link:hover .profile-card__name {
  color: #fff;
}
.profile-card__link:hover:before {
  transform: none;
}
.profile-card__link:hover .profile-card__image img {
  transform: scale(1.1);
}
.profile-card__role {
  font-weight: 600;
}
.profile-card__c2a {
  flex: 1;
  display: flex;
  align-items: flex-end;
  max-width: fit-content;
  padding-left: 10px;
}
.profile-card__post-cats {
  position: relative;
  padding-top: 13px;
  margin-top: 26px;
  border-top: 1px solid #444344;
  margin-left: 10px;
}
.profile-card__post-cats p {
  margin-bottom: 0;
}
.profile-card__post-cats li {
  list-style: none !important;
}
.profile-card__post-cats a {
  -webkit-appearance: none;
  display: inline-block;
  text-align: center;
  padding: 11px 26px;
  text-decoration: none;
  background: #244381;
  border: 1px solid #244381;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  line-height: 1;
  font-size: 14px;
  border-radius: 2px;
  color: #ffffff;
  transition: background-color 0.2s, border-color 0.2s, transform 0.3s ease-in-out;
  position: relative;
  max-width: 100%;
  cursor: pointer;
  z-index: 1;
  padding: 6.5px 13px;
}
.profile-card__post-cats a:hover {
  background: #192e59;
  border-color: #192e59;
  text-decoration: none;
  transform: translateY(-5px);
}
.profile-card__post-cats a:hover {
  background-color: #00aeef;
  border-color: #00aeef;
}
@media only screen and (min-width: 599px) {
  .profile-card__post-cats a {
    padding: 6.5px 13px;
  }
}
.profile-card__post-cats .post-categories {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6.5px;
}

.text-overlay {
  position: relative;
}
.text-overlay__link {
  color: #fff;
}
.text-overlay__link:hover {
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .text-overlay__link img {
    object-fit: cover;
    height: 100%;
    position: absolute;
  }
}
.text-overlay__inner {
  position: relative;
  width: fit-content;
  display: flex;
  justify-content: center;
  justify-self: center;
}
.text-overlay--shadow-top .text-overlay__inner:before {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -moz-linear-gradient(top, #061533 0%, rgba(6, 21, 51, 0) 100%);
  background: -webkit-linear-gradient(top, #061533 0%, rgba(6, 21, 51, 0) 100%);
  background: linear-gradient(to bottom, #061533 0%, rgba(6, 21, 51, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  z-index: 2;
  transition: transform 0.2s 0.3s;
  transform-origin: top;
}
@media only screen and (min-width: 768px) {
  .text-overlay--shadow-top .text-overlay__inner:before {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    background: -moz-linear-gradient(top, #061533 0%, rgba(6, 21, 51, 0) 100%);
    background: -webkit-linear-gradient(top, #061533 0%, rgba(6, 21, 51, 0) 100%);
    background: linear-gradient(to bottom, #061533 0%, rgba(6, 21, 51, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#00000000",GradientType=0 );
    content: "";
    pointer-events: none;
    width: 100%;
    height: 60%;
    z-index: 2;
  }
}
@media only screen and (min-width: 768px) {
  .text-overlay--shadow-top .text-overlay__textbox {
    position: absolute;
    width: 70%;
    top: 26px;
    bottom: auto;
    left: 26px;
    padding: 0;
  }
}
.text-overlay--shadow-bottom .text-overlay__inner:before {
  bottom: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: -webkit-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
  background: -o-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
  background: linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#a6000000",GradientType=0 );
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  z-index: 2;
  transition: transform 0.2s 0.3s;
  transform-origin: bottom;
}
@media only screen and (min-width: 768px) {
  .text-overlay--shadow-bottom .text-overlay__inner:before {
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    background: -webkit-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
    background: -o-linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
    background: linear-gradient(rgba(6, 21, 51, 0) 0%, rgba(6, 21, 51, 0) 1%, #061533 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#a6000000",GradientType=0 );
    content: "";
    pointer-events: none;
    width: 100%;
    height: 60%;
    z-index: 2;
  }
}
@media only screen and (min-width: 768px) {
  .text-overlay--shadow-bottom .text-overlay__textbox {
    position: absolute;
    width: 70%;
    top: auto;
    bottom: 0;
    left: 26px;
    padding: 0;
  }
}
.text-overlay__textbox {
  position: relative;
  z-index: 2;
  padding: 26px;
}
.text-overlay__textbox > *:not(.button--green) {
  color: #fff !important;
}
@media only screen and (min-width: 768px) {
  .text-overlay__textbox {
    position: absolute;
    width: 70%;
    top: 26px;
    left: 26px;
    padding: 0;
  }
}
.text-overlay__readmore {
  margin-left: 26px;
  margin-bottom: 26px;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .text-overlay__readmore {
    margin-left: 0;
    position: absolute;
    bottom: 26px;
    right: 26px;
    margin-bottom: 0;
  }
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/*
	  Background is added as a separate element.
	  As animating opacity is much faster than animating rgba() background-color.
  */
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #061533;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

/*
	  stretched thumbnail or div placeholder element (see below)
	  style is added to avoid flickering in webkit/blink when layers overlap
  */
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

/*
	  div element that matches size of large image
	  large image loads on top of it
  */
.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*
	  Error message appears when image is not loaded
	  (JS option errorMsg controls markup)
  */
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #ccc;
}

.pswp__error-msg a {
  color: #ccc;
  text-decoration: underline;
}

.scrollbox {
  height: 380px;
}
@media only screen and (min-width: 1024px) {
  .scrollbox {
    height: 580px;
  }
}
.scrollbox .simplebar-scrollbar {
  background-color: #00aeef;
  left: 8px;
  right: 5px;
  min-height: 0;
}
.system-downloads-list .scrollbox .simplebar-scrollbar {
  margin-top: 8.6666666667px;
}
.scrollbox .simplebar-scrollbar:before {
  background: none;
}
.scrollbox__content {
  margin-left: 39px;
}
.scrollbox .simplebar-track.simplebar-vertical {
  right: auto;
  width: 20px;
}
.scrollbox.system-downloads-list .simplebar-track.simplebar-vertical {
  border: 0;
  background-color: rgba(255, 255, 255, 0.1);
}
.scrollbox.downloads-list--int-scrollbar .simplebar-track.simplebar-vertical {
  left: 11px;
  top: 18px;
  margin-bottom: 26px;
}
.scrollbox .simplebar-track.simplebar-horizontal {
  display: none;
}

.mega-menu-panel {
  text-align: left;
  clip-path: polygon(0 50px, 100% 0, 100% 100%, 0 100%);
}
.mega-menu-panel .mega-menu-panel__sub-menu > li.mega-menu-column-heading {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel .mega-menu-panel__sub-menu > li.mega-menu-column-heading {
    text-transform: uppercase;
    font-size: 12px;
    color: #244381;
    margin-bottom: 26px;
    margin-left: 1.5px;
    padding-left: 0;
    display: block;
    height: 16px;
    border: 0;
    overflow: visible;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel {
    width: 100vw;
    padding: 39px 26px;
    padding-top: 91px;
    padding-left: 104px;
    position: absolute;
    transition: visibility 0s linear 0.4s, opacity 0.4s cubic-bezier(0.46, 0.96, 0.43, 0.94) 0.2s;
    opacity: 0;
    visibility: hidden;
    z-index: 2;
    left: 0;
    top: 94px;
  }
  .mega-menu-panel:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "";
    height: 100%;
    transform: scaleY(0);
    transform-origin: 50% 0;
    z-index: -1;
    background-color: #dbf5ff;
    opacity: 0;
    transition: transform 0.1s linear 0.4s, opacity 0.2s cubic-bezier(0.46, 0.96, 0.43, 0.94) 0.4s;
    clip-path: polygon(0 50px, 100% 0, 100% 100%, 0 100%);
  }
  .mega-menu-panel__inner {
    max-width: 1750px;
    margin: 0 auto;
    transition: transform 0.2s;
    transition-delay: 0.2s;
  }
  .mega-menu-panel__columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
  }
  .mega-menu-panel__sub-menu {
    flex-wrap: wrap;
    display: block;
    padding: 0;
    flex: 1;
    border-left: 2px solid #00aeef;
  }
  .mega-menu-panel__sub-menu--column li a {
    position: relative;
    transition: color 0.3s, transform 0.3s ease;
    display: flex;
    align-items: center;
    color: #244381;
  }
  .mega-menu-panel__sub-menu--column li:hover > a {
    color: #00aeef;
  }
  .mega-menu-panel__sub-menu--column li:hover > a:before {
    opacity: 1;
  }
  .mega-menu-panel__sub-menu--column .sub-menu {
    display: block;
  }
  .mega-menu-panel__sub-menu--column.level-1, .mega-menu-panel__sub-menu--column.level-0 {
    display: block;
  }
}
@media only screen and (min-width: 1024px) and (min-width: 1600px) {
  .mega-menu-panel__sub-menu--column.level-1, .mega-menu-panel__sub-menu--column.level-0 {
    min-width: 300px;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu--column.level-1 > li, .mega-menu-panel__sub-menu--column.level-0 > li {
    width: 100%;
    margin-bottom: 0;
    line-height: 1.4;
    padding-bottom: 7px;
    padding-top: 7px;
  }
  .mega-menu-panel__sub-menu--column.level-1 > li > a, .mega-menu-panel__sub-menu--column.level-0 > li > a {
    color: #444344;
    font-weight: bold;
  }
  .mega-menu-panel__sub-menu--column.level-1 > li > a .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 > li > a .menu-item__title {
    display: block;
    color: #444344;
    margin-bottom: 0;
  }
  .mega-menu-panel__sub-menu--column.level-1 > li > a.underline:hover .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 > li > a.underline:hover .menu-item__title {
    color: #00aeef;
  }
  .mega-menu-panel__sub-menu--column.level-1 > li > a.underline:hover:after, .mega-menu-panel__sub-menu--column.level-0 > li > a.underline:hover:after {
    width: 93px;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu--column.level-1 > .menu-item-has-children > a .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 > .menu-item-has-children > a .menu-item__title {
    display: block;
    color: #444344;
    font-weight: 800;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children > a, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children > a {
    color: #00aeef;
    margin-bottom: 13px;
    font-size: 18px;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .menu-item__title {
    text-transform: uppercase;
    font-weight: 600;
    color: #00aeef;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 li, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 li {
    margin-bottom: 6.5px;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 .menu-item-has-children, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 .menu-item-has-children {
    margin-bottom: 0;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 .menu-item-has-children > a > .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 .menu-item-has-children > a > .menu-item__title {
    margin-bottom: 13px;
    font-weight: bold;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 .menu-item__title {
    text-transform: none;
    font-weight: 400;
    color: #444344;
    font-size: 12px;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 .menu-item__title:hover, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 .menu-item__title:hover {
    color: #00aeef;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-1 li:hover .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-1 li:hover .menu-item__title {
    color: #00aeef;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-2, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-2 {
    margin-left: 6.5px;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-2 li, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-2 li {
    margin-bottom: 6.5px;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-2 .menu-item__title, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-2 .menu-item__title {
    font-weight: normal;
    margin-bottom: 0;
  }
  .mega-menu-panel__sub-menu--column.level-1 .menu-item-has-children .sub-menu.level-2 .menu-item__title:hover, .mega-menu-panel__sub-menu--column.level-0 .menu-item-has-children .sub-menu.level-2 .menu-item__title:hover {
    color: #00aeef;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu--column.level-1 .submenu-toggle, .mega-menu-panel__sub-menu--column.level-0 .submenu-toggle {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu > li {
    padding: 0 13px;
    margin-bottom: 39px;
  }
}
@media only screen and (min-width: 1024px) {
  .mega-menu-panel__sub-menu .menu-item__title {
    transition: color 0.25s;
    font-weight: normal;
    margin-bottom: 6.5px;
    display: inline-block;
    transition: color 0.2s;
    color: #444344;
  }
  .mega-menu-panel__sub-menu .menu-item__title:hover {
    color: #00aeef;
  }
}
@media only screen and (min-width: 1200px) {
  .mega-menu-panel {
    padding: 91px 52px 65px 117px;
  }
}

.post-search {
  width: 100%;
  flex: 1;
}
@media only screen and (min-width: 599px) {
  .post-search {
    margin-top: 0;
    display: flex;
    justify-content: center;
  }
}
@media only screen and (min-width: 1024px) {
  .post-search {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 599px) {
  .post-search__search-form {
    width: 100%;
    max-width: 370px;
  }
}
@media only screen and (min-width: 1024px) {
  .post-search__search-form {
    width: auto;
    max-width: none;
  }
}
.post-search input[type=search],
.post-search input[type=text] {
  background: none;
  background-repeat: no-repeat;
  background-position: right center;
  font-size: 14px;
  width: 100%;
  height: 54px;
}
@media only screen and (min-width: 768px) {
  .post-search input[type=search],
.post-search input[type=text] {
    max-width: 370px;
  }
}
@media only screen and (min-width: 1024px) {
  .post-search input[type=search],
.post-search input[type=text] {
    min-width: 250px;
  }
}
.post-search--white input[type=search],
.post-search--white input[type=text] {
  border-bottom: 7px solid #fff;
  background-image: url("./dist/img/svg/search--white.svg");
  color: #fff;
  width: 100%;
}
.post-search--white input[type=search]::-webkit-search-cancel-button {
  opacity: 1;
  margin-right: 39px;
  filter: invert(1) grayscale(1) brightness(10);
}
.post-search--dblue input[type=search],
.post-search--dblue input[type=text] {
  background-image: url("./dist/img/svg/search.svg");
  background-position: calc(100% - 20px), 50%;
  background-size: 20px 20px;
  transition: background-color 0.2s;
  border: 1px solid #00aeef;
  background-color: #172a50;
  color: #fff;
}
@media only screen and (max-width: 1023px) {
  .post-search--dblue input[type=search],
.post-search--dblue input[type=text] {
    margin-bottom: 13px;
  }
  .moy-filters__filter-wrap .post-search--dblue input[type=search],
.moy-filters__filter-wrap .post-search--dblue input[type=text] {
    margin-bottom: 0;
  }
}
.post-search--dblue input[type=search]::-webkit-input-placeholder,
.post-search--dblue input[type=text]::-webkit-input-placeholder {
  color: #dbf5ff;
}
@media only screen and (min-width: 599px) {
  .post-search--dblue input[type=search]:focus,
.post-search--dblue input[type=text]:focus {
    background-color: #172a50;
  }
}
.post-search--dblue input[type=search]::-webkit-search-cancel-button {
  opacity: 1;
  filter: invert(1) grayscale(1) brightness(10);
}

.directions-form {
  margin-bottom: 52px;
}
.directions-form fieldset {
  display: grid;
  gap: 6.5px;
  grid-template-columns: 1fr 80px;
}
.directions-form__submit {
  position: relative;
}
.directions-form__submit:hover input[type=submit] {
  background-color: #00aeef;
}
.directions-form__submit:hover svg {
  fill: #fff;
}
.directions-form__submit input[type=submit] {
  background-color: #244381;
  border-radius: 2px;
  width: 100%;
  height: 100%;
  transition: background-color 0.3s;
  text-indent: -9999px;
}
.directions-form__submit svg {
  pointer-events: none;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 26px;
  transition: fill 0.3s;
  fill: #fff;
}

.downloads-list__list {
  padding: 26px 26px;
  background-color: rgba(255, 255, 255, 0.1);
  margin: 0;
  margin-left: 39px;
}
.downloads-list__list--dark {
  background-color: #172a50;
}
.downloads-list--int-scrollbar .downloads-list__list {
  margin-left: 0;
  padding-left: 52px;
  position: relative;
}
.downloads-list--int-scrollbar[data-simplebar=init] .downloads-list__list:before {
  position: absolute;
  top: 13px;
  bottom: 13px;
  left: 13px;
  width: 19.5px;
  content: "";
  background-color: #061533;
}
.downloads-list__preheading {
  font-weight: 800;
  opacity: 0.5;
}
.downloads-list__item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  padding-top: 13px;
}
.downloads-list__item:last-child {
  border-bottom: 0;
}
.downloads-list__item .button--blue {
  flex-basis: 39px;
  min-width: 39px;
}
.downloads-list__item .button--blue:hover {
  transform: none;
}
.downloads-list__item .button--blue:hover svg {
  fill: #172a50;
}
.downloads-list__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  padding: 6.5px;
  transition: background-color 0.2s;
  margin-bottom: 6.5px;
}
.downloads-list__link:hover {
  background-color: rgba(0, 174, 239, 0.2);
  text-decoration: none;
}
.downloads-list__link:hover .button--blue {
  background-color: #fff;
  border-color: #fff;
}

.hero-slider {
  position: relative;
  background-color: #172a50;
  background-image: linear-gradient(0, #061533 0%, #00aeef 100%);
  padding: 0;
  padding-top: 104px;
}
.hero-slider__wrap {
  margin-bottom: 26px;
}
@media only screen and (min-width: 1024px) {
  .hero-slider__wrap {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 500px;
    gap: 52px;
  }
}
.home .hero-slider {
  background-color: #172a50;
}
.hero-slider__slider {
  min-width: 50%;
  opacity: 0;
  transition: opacity 0.3s 0.2s;
  max-width: 300px;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .hero-slider__slider {
    max-width: none;
    margin: 0;
  }
}
.hero-slider__slider.slick-initialized {
  opacity: 1;
}
.hero-slider__slider img {
  overflow: hidden;
  width: 100%;
}
.hero-slider__reviews {
  margin-top: -78px;
  position: relative;
  z-index: 3;
  opacity: 0;
}
.hero-slider__reviews.is-visible {
  animation-delay: 1s;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUpSmall;
  -moz-animation-name: fadeInUpSmall;
  animation-name: fadeInUpSmall;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
@media only screen and (min-width: 1024px) {
  .hero-slider__reviews {
    margin-top: -130px;
  }
}
.hero-slider__text {
  z-index: 2;
  color: #fff;
  text-align: center;
  margin-bottom: 26px;
  transition: transform 0.7s, opacity 0.3s 0.2s;
  transform: translateX(-15px);
  opacity: 0;
}
.loaded .hero-slider__text {
  opacity: 1;
  transform: none;
}
.hero-slider__text a {
  margin: 6.5px;
}
@media only screen and (min-width: 1024px) {
  .hero-slider__text {
    text-align: left;
    margin-bottom: 0;
    padding-top: 52px;
  }
}
.hero-slider__text-wrapper {
  transition: opacity 0.2s ease-in-out;
}
.hero-slider__button {
  transition: transform 1.5s cubic-bezier(0.29, 0.74, 0.41, 0.91), opacity 1.5s cubic-bezier(0.29, 0.74, 0.41, 0.91);
  transition-delay: 1.1s;
  display: block;
  line-height: 1;
}
.hero-slider__heading {
  margin-bottom: 6.5px;
  max-width: none;
  transition: transform 1.2s cubic-bezier(0.29, 0.74, 0.41, 0.91), opacity 1.2s cubic-bezier(0.29, 0.74, 0.41, 0.91);
  transition-delay: 1s;
  margin-bottom: 13px;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .hero-slider__heading {
    margin-bottom: 13px;
    text-align: left;
  }
}

.hero-image {
  position: relative;
  min-height: 500px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .hero-image {
    min-height: 700px;
  }
}
.home .hero-image {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 26px;
}
.home .hero-image .hero-image__content__text {
  max-width: 100%;
}
.hero-image.bg--image {
  background-color: #244381;
}
.hero-image--default {
  background-color: #172a50;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
  background-size: cover;
  animation: aura 10s infinite ease-in-out;
  display: flex;
  align-items: center;
}
.hero-image--default:before {
  content: "";
  position: absolute;
  inset: 0;
  /* Same gradient but with some transparency */
  background-image: radial-gradient(circle at left top, #00aeef 0%, #172a50 80%, #172a50 100%);
  background-size: 250% 250%;
  /* Different animation speed + direction */
  animation: auraOverlay 14s infinite ease-in-out;
  mix-blend-mode: normal;
  /* optional: makes colors pop more */
  pointer-events: none;
}
.hero-image--default:after {
  content: "";
  background-image: url("./dist/img/tf-logo.svg") !important;
  animation: maskMove 120s infinite ease-in-out;
  background-size: 100%;
  background-repeat: no-repeat;
  mix-blend-mode: soft-light;
  position: absolute;
  width: 1200px;
  height: 200px;
}
.hero-image--default .hero-image__background {
  display: none;
}
.hero-image--default .hero-image__heading {
  color: #fff;
}
.hero-image--default .hero-image__content-wrapper .wrap {
  display: flex;
  flex-direction: column;
  gap: 26px;
}
.hero-image--default .hero-image__content-wrapper .wrap .hero-image__content__text {
  flex: 1;
}
.hero-image--default .hero-image__content-wrapper .wrap .tf-filters {
  flex: 1;
}
@media only screen and (min-width: 768px) {
  .hero-image--default .hero-image__content-wrapper .wrap {
    flex-direction: row;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1200px) {
  .hero-image--default .hero-image__content-wrapper .wrap .hero-image__content__text {
    flex: 1.5;
  }
}
.hero-image:not(.hero--home):not(.hero--case-studies) {
  display: flex;
  align-items: center;
}
.hero-image:not(.hero--home):not(.hero--case-studies):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(90deg, rgba(45, 77, 140, 0.95) 0%, rgba(45, 77, 140, 0.9) 25%, rgba(45, 77, 140, 0) 100%);
  z-index: 1;
  display: block;
}
.hero-image:not(.hero--home):not(.hero--case-studies) .hero__heading {
  color: #fff;
}
.hero-image--search .hero-image__subheading {
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  background-color: #00aeef;
  border-radius: 2px;
  padding: 2px 13px 2px 6.5px;
  display: inline-flex;
  align-items: center;
  gap: 6.5px;
  font-size: 18px;
}
.hero-image--search .hero-image__subheading svg {
  width: 18px;
  height: 18px;
}
.hero-image--no-image {
  padding: 52px 0;
  margin: 0 0 104px 0;
  position: relative;
}
.hero-image--no-image .hero-image__subheading {
  margin-bottom: 52px;
}
.hero-image--no-image .hero-image__subheading--mb-none {
  margin-bottom: 0;
}
.hero-image__background {
  -webkit-animation-duration: 0.3s;
  -moz-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: linear;
  -moz-animation-timing-function: linear;
  animation-timing-function: linear;
  display: flex;
  justify-content: flex-end;
}
.blog .hero-image__background {
  filter: blur(5px);
  transform: scale(1.1);
}
.hero-image__preheading {
  display: flex;
  align-items: center;
}
.hero-image__preheading img {
  margin-right: 13px;
  margin-bottom: 6.5px;
}
.hero-image__latest-post__title a {
  color: #fff;
  font-weight: bold;
  transition: color 0.2s;
}
.hero-image__latest-post__title a:hover {
  text-decoration: none;
  color: #00aeef;
}
.hero-image__latest-post__badge {
  background-color: #00aeef;
  border-radius: 3px;
  padding: 0 6.5px;
  display: inline-block;
}
.hero-image__latest-post__badge p {
  font-weight: bold;
}
.hero-image.align-center {
  display: flex;
  align-items: center;
}
.hero-image.align-center .hero-image__subheading {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 1s 0.5s, opacity 1s 0.5s;
}
.loaded .hero-image.align-center .hero-image__subheading {
  transform: none;
  opacity: 1;
}
.hero-image.align-center .hero-image__content__text {
  max-width: 750px;
  margin: 0 auto;
}
.hero-image.align-center .hero-image__heading {
  max-width: max-content;
  margin: 0 auto 52px auto;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 1s 0.3s, opacity 1s 0.3s;
}
@media only screen and (min-width: 1200px) {
  .hero-image.align-center .hero-image__heading {
    max-width: 900px;
  }
}
.hero-image.align-center .hero-image__heading--mb-half {
  margin-bottom: 13px;
}
.loaded .hero-image.align-center .hero-image__heading {
  transform: none;
  opacity: 1;
}
.hero-image.align-left .hero-image__preheading {
  -webkit-animation-duration: 0.3s;
  -moz-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: linear;
  -moz-animation-timing-function: linear;
  animation-timing-function: linear;
  animation-delay: 0.2s;
}
.hero-image.align-left .hero-image__subheading {
  transform: translateX(10px);
  opacity: 0;
  transition: transform 1s 0.5s, opacity 1s 0.5s;
  margin-bottom: 0;
}
.loaded .hero-image.align-left .hero-image__subheading {
  transform: none;
  opacity: 1;
}
.hero-image.align-left .hero-image__heading {
  transform: translateX(10px);
  opacity: 0;
  transition: transform 1s 0.3s, opacity 1s 0.3s;
}
.loaded .hero-image.align-left .hero-image__heading {
  transform: none;
  opacity: 1;
}
.hero-image.align-left .hero-image__main__text {
  max-width: 560px;
}
.hero-image.align-left .button {
  max-width: fit-content;
}
.hero-image.align-left.hero--contact .hero-image__subheading {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 26px;
}
.hero-image.align-left.hero--home .hero-image__main__text {
  max-width: none;
}
.hero-image__thumbnail {
  flex: 0.75;
  border: 10px solid #fff;
}
.hero-image__main {
  color: #fff;
  width: 100%;
  position: relative;
  z-index: 3;
  padding-top: 52px;
}
.single-profiles .hero-image__main, .page-contact-us .hero-image__main {
  display: flex;
  flex-direction: column;
  gap: 26px;
  align-items: center;
  padding-top: 52px;
}
@media only screen and (min-width: 480px) {
  .single-profiles .hero-image__main, .page-contact-us .hero-image__main {
    flex-direction: row;
  }
}
.blog .hero-image__main, .page-case-studies .hero-image__main {
  padding-top: 104px;
}
.hero-image__main iframe {
  border: 10px solid #fff;
  width: 100%;
  height: 100%;
}
.hero-image__main #googlemap {
  flex: 1;
  aspect-ratio: 4/3;
}
.hero-image__main img {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}
.hero-image__main__text {
  flex: 1;
}
@media only screen and (min-width: 1024px) {
  .hero-image__main__text {
    padding-top: 13px;
  }
}
.hero-image__content-wrapper--has-thumbnail, .page-case-studies .hero-image__content-wrapper, .blog .hero-image__content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 26px;
}
@media only screen and (min-width: 768px) {
  .hero-image__content-wrapper--has-thumbnail, .page-case-studies .hero-image__content-wrapper, .blog .hero-image__content-wrapper {
    flex-direction: row;
  }
}
.single-profiles .hero-image__content-wrapper, .page-contact-us .hero-image__content-wrapper {
  flex: 1;
}
@media only screen and (max-width: 480px) {
  .single-profiles .hero-image__content-wrapper, .page-contact-us .hero-image__content-wrapper {
    display: flex;
    align-items: center;
    flex-direction: column;
  }
}
.hero-image__button {
  transition: transform 1.5s cubic-bezier(0.29, 0.74, 0.41, 0.91), opacity 1.5s cubic-bezier(0.29, 0.74, 0.41, 0.91);
  transition-delay: 1.1s;
  display: block;
  line-height: 1;
}
.hero-image__subheading {
  font-weight: 600;
  backface-visibility: hidden;
}
.hero-image__subheading p:last-child {
  margin-bottom: 0;
}
.hero-image__heading {
  max-width: none;
  backface-visibility: hidden;
  color: #fff;
}
.hero-image__heading--mb-half {
  margin-bottom: 13px !important;
}
.hero-image__text-wrapper--fading {
  animation: fadeInOut 16s var(--d) infinite;
  opacity: 0;
  transition: opacity 0.3s;
  transform: translateY(-10px);
  position: absolute;
  width: 100%;
  padding: 0 26px;
}
@media only screen and (min-width: 768px) {
  .hero-image__text-wrapper--fading {
    transform: none;
  }
}
.hero-image__fading-text {
  font-size: 32px;
  line-height: 1.2;
  margin-bottom: 52px;
}
@media only screen and (min-width: 1024px) {
  .hero-image__fading-text {
    margin-bottom: 104px;
  }
}

.spacer {
  --multiplier: 1;
  --lh: 26px;
  --linecol: #e0e0e0;
  margin-top: -1px;
  margin-bottom: -1px;
  padding: 0;
}
.spacer.slant:before {
  width: 100%;
  height: 1px;
  border-top: 1px solid var(--linecol);
  display: block;
  content: "";
  position: absolute;
  top: 50%;
}
.spacer.slant.slant--top {
  clip-path: initial;
}
.spacer.slant.slant--top:before {
  transform: rotate(-2deg) translateY(-50%);
}
.spacer.slant.slant--bottom {
  clip-path: initial;
}
.spacer.slant.slant--bottom:before {
  transform: rotate(2deg) translateY(-50%);
}
.spacer.section-slant {
  --slantH: 25px;
}
@media only screen and (min-width: 768px) {
  .spacer.section-slant {
    --slantH: 100%;
  }
}
.spacer.section-slant--top {
  clip-path: polygon(0 0, 100% var(--slantH), 100% 100%, 0 100%);
}
.spacer.section-slant--top--reverse {
  clip-path: polygon(0 var(--slantH), 100% 0, 100% 100%, 0 100%);
}
.spacer.section-slant--bottom {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--slantH)));
}
.spacer.section-slant--bottom--reverse {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--slantH)), 0 100%);
}
.spacer__div {
  height: calc(var(--lh) * var(--multiplier) * 0.75);
}
@media only screen and (min-width: 768px) {
  .spacer__div {
    height: calc(var(--lh) * var(--multiplier));
  }
}

.section-header {
  margin-bottom: 26px;
}
.section-header:not(.no-divider) {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .section-header {
    padding: 0;
    margin-bottom: 52px;
  }
  .section-header.no-divider {
    margin-bottom: 26px;
  }
}
.section-header .section-header__headings {
  opacity: 0;
  transition: opacity 0.5s, transform 1s ease-in-out;
  flex: 1;
}
.section-header a[class*=button] {
  opacity: 0;
  transition: opacity 0.5s, transform 1s ease-in-out;
  transform: translateX(20px);
}
.section-header.is-visible:after {
  transform: none;
}
.section-header.is-visible.align-center .section-header__headings, .section-header.is-visible.align-left .section-header__headings {
  transform: none;
  opacity: 1;
}
.section-header.is-visible a[class*=button] {
  transform: none;
  opacity: 1;
}
.section-header.align-left {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 52px;
}
@media only screen and (max-width: 1023px) {
  .section-header.align-left {
    text-align: center;
    justify-content: center;
  }
}
.section-header.align-center .section-header__subheading img {
  margin: 0 auto;
}
.section-header.align-center .section-header__headings {
  transform: translateY(-20px);
}
.section-header__heading {
  margin-bottom: 13px;
  position: relative;
  display: inline-block;
}
.section-header__heading.h1 {
  margin-bottom: 13px;
}
.section-header__subheading {
  position: relative;
  line-height: 1.5;
  font-weight: 500;
}
.section-header__subheading > :last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .section-header__subheading {
    line-height: 1.5;
    max-width: 670px;
  }
  .align-center .section-header__subheading {
    margin: 0 auto;
  }
}
.section-header__button {
  padding-top: 26px;
}

.service-blocks-links {
  --sbBG: linear-gradient(0, #061533 0%, #00aeef 100%);
  background-image: var(--sbBG);
  color: #fff;
  padding-bottom: 39px;
  position: relative;
  padding-top: 52px;
  width: 100%;
  overflow: hidden;
  align-items: center;
}
@media only screen and (min-width: 599px) {
  .service-blocks-links {
    --sbBG: linear-gradient(0, #0f181c 0%, #223670 100%);
  }
}
@media only screen and (min-width: 1024px) {
  .service-blocks-links {
    padding-bottom: 52px;
    padding-top: 104px;
  }
}
.service-blocks-links__list {
  position: relative;
  opacity: 0;
}
.service-blocks-links__list.is-visible {
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUpSmall;
  -moz-animation-name: fadeInUpSmall;
  animation-name: fadeInUpSmall;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
.service-blocks-links__list--static {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
}
.service-blocks-links__list--static .service-blocks-links__item {
  margin: 0;
}
@media only screen and (max-width: 598px) {
  .service-blocks-links__item.slick-slide {
    text-align: center;
  }
  .service-blocks-links__item.slick-slide .block-link__link {
    max-width: 270px;
    margin: 0 auto;
  }
}
.service-blocks-links__heading {
  padding: 26px 13px 0;
  margin-bottom: 0;
}
.service-blocks-links__intro {
  display: grid;
  grid-template-columns: 1fr;
  margin-bottom: 26px;
  opacity: 0;
}
.service-blocks-links__intro.is-visible {
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInRightSmall;
  -moz-animation-name: fadeInRightSmall;
  animation-name: fadeInRightSmall;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
@media only screen and (min-width: 599px) {
  .service-blocks-links__intro {
    grid-template-columns: 1fr 1fr;
    gap: 52px;
    margin-bottom: 0;
  }
}
.service-blocks-links__nav {
  display: flex;
  gap: 13px;
}
@media only screen and (max-width: 1023px) {
  .service-blocks-links__nav {
    justify-content: center;
    margin-bottom: 26px;
  }
}
.service-blocks-links__prev:hover {
  transform: translateX(-5px);
  background-color: #061533;
}
.service-blocks-links__prev:hover svg {
  fill: #dbf5ff;
}
.service-blocks-links__next:hover {
  transform: translateX(5px);
  background-color: #061533;
}
.service-blocks-links__next:hover svg {
  fill: #dbf5ff;
}
.service-blocks-links__prev, .service-blocks-links__next {
  width: 39px;
  height: 39px;
  border: 2px solid #061533;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: none;
  transition: background-color 0.2s, transform 0.2s;
}
.service-blocks-links__prev svg, .service-blocks-links__next svg {
  transition: fill 0.2s;
}
@media only screen and (min-width: 768px) {
  .service-blocks-links__prev, .service-blocks-links__next {
    width: 52px;
    height: 52px;
  }
}

.image-text-row {
  position: relative;
  z-index: 2;
  clear: both;
}
.home .image-text-row {
  padding-top: 0;
}
@media only screen and (min-width: 768px) {
  .home .image-text-row {
    padding-top: 78px;
  }
}
.home .image-text-row .wrap {
  position: relative;
}
.image-text-row p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1024px) {
  .image-text-row--cs {
    margin: 0 -104px 26px -104px;
  }
}
.image-text-row.valign--top .image-text-row__content {
  align-items: flex-start;
}
.image-text-row.valign--middle .image-text-row__content {
  align-items: center;
}
.image-text-row.valign--bottom .image-text-row__content {
  align-items: flex-end;
}
.image-text-row__background + .wrap {
  position: relative;
  z-index: 2;
}
.image-text-row__content {
  padding: 26px 0;
  display: flex;
  flex-direction: column;
  max-width: 700px;
  margin: 0 auto;
}
.image-text-row__content:before, .image-text-row__content:after {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .image-text-row__content {
    padding: 0;
    flex-direction: row;
    gap: 26px;
    margin: 0;
    max-width: none;
  }
  .image-text-row__content.js-visible {
    opacity: 0;
    transition: opacity 1.5s 0.5s, transform 3s cubic-bezier(0, 0.92, 0, 1) 0.5s;
    transform: translateY(-10%);
  }
  .image-text-row__content.is-visible, .no-js .image-text-row__content {
    opacity: 1;
    transform: none;
  }
}
.image-text-row__text {
  flex: 1;
  order: 1;
  position: relative;
  margin-bottom: 26px;
}
@media only screen and (min-width: 1024px) {
  .image-text-row__text {
    margin-bottom: 0;
  }
}
.image-text-row__image {
  position: relative;
  flex: 1;
  order: 2;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .image-text-row__image {
    padding-left: 78px;
  }
}
.image-text-row__image a[class^=button] {
  margin-top: 26px;
}
.image-text-row__image--image-sticky {
  position: sticky;
  top: 26px;
}
@media only screen and (min-width: 1024px) {
  .image-text-row__image--image-first {
    order: 1;
    padding-right: 78px;
    padding-left: 0;
  }
}
.image-text-row__image img {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 5px;
}

.case-studies-slider__header {
  margin-bottom: 26px;
  width: 100%;
  max-width: 650px;
  margin: 0 auto;
}
.case-studies-slider__item {
  position: relative;
  padding: 26px;
  background: #061533;
  border-radius: 12px;
}
@media only screen and (min-width: 768px) {
  .case-studies-slider__item {
    padding: 0;
    background: none;
  }
}
.case-studies-slider__heading {
  margin-bottom: 26px;
}
@media only screen and (min-width: 768px) {
  .case-studies-slider__heading {
    margin-bottom: 0;
  }
}
.case-studies-slider__item-heading {
  margin-bottom: 13px;
  font-weight: 600;
}
.case-studies-slider__image {
  border-radius: 12px;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .case-studies-slider__image {
    width: 80%;
    margin-left: 20%;
    opacity: 0;
    transition: opacity 0.5s;
  }
  .owl-item.active .case-studies-slider__image {
    opacity: 1;
  }
}
.case-studies-slider__text {
  flex: 1;
}
.case-studies-slider__text svg {
  fill: #ec4848;
  width: 137px;
  height: 24px;
}
.case-studies-slider__textbox {
  padding: 13px 0;
  flex: 1;
  width: 100%;
  background-color: #061533;
  color: #fff;
  border-radius: 12px;
}
@media only screen and (min-width: 768px) {
  .case-studies-slider__textbox {
    padding: 13px 26px;
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (min-width: 1024px) {
  .case-studies-slider__textbox {
    padding: 52px 39px;
    top: 50%;
    left: 30px;
    bottom: auto;
    transform: translate(10%, -50%);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
    width: 460px;
    opacity: 0;
    transition: transform 0.5s 0.3s, opacity 0.3s 0.3s cubic-bezier(0.06, 0.51, 0.24, 0.97);
  }
  .owl-item.active .case-studies-slider__textbox {
    opacity: 1;
    transform: translate(0%, -50%);
  }
}
.case-studies-slider__controls {
  margin-bottom: 26px;
  position: relative;
}

.c2a-section {
  position: relative;
}
.c2a-section__main {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  padding: 26px;
}
@media only screen and (min-width: 1200px) {
  .c2a-section__main {
    padding: 26px;
  }
}
.c2a-section--column {
  text-align: center;
}
.c2a-section--column.has-contact-links .c2a-section__subheading, .c2a-section--column.has-button .c2a-section__subheading {
  margin-bottom: 26px;
}
.c2a-section--row {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .c2a-section--row .c2a-section__content {
    text-align: left;
    display: flex;
    gap: 52px;
    align-items: center;
    justify-content: space-between;
  }
}
.c2a-section--row .c2a-section__text {
  flex: 1;
}
.c2a-section__content {
  position: relative;
  z-index: 1;
}
.c2a-section__heading {
  margin-bottom: 13px;
}
.c2a-section__eading {
  font-weight: 500;
  margin-bottom: 26px;
}
.c2a-section__eading p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .c2a-section__eading {
    margin-bottom: 0;
  }
}
.c2a-section__contact-links {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
@media only screen and (min-width: 1024px) {
  .c2a-section__contact-links {
    flex-direction: row;
    gap: 26px;
  }
}

.form-section .wrap {
  position: relative;
  z-index: 2;
}
.form-section__main {
  max-width: 650px;
  margin: 0 auto;
}

section.form:first-of-type {
  padding-top: 156px;
}

.onecol {
  position: relative;
  z-index: 1;
}
.onecol__text :last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1024px) {
  .onecol--narrow .one-column__text {
    margin: 0 auto;
    max-width: 80%;
  }
}

.usps {
  width: 100%;
  z-index: 2;
  color: #fff;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .usps {
    display: block;
  }
}
.usps__list {
  margin: 0;
}
.usps__content {
  font-weight: 500;
  position: relative;
  font-size: 20px;
  display: flex;
  align-items: center;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
}
@media only screen and (max-width: 1023px) {
  .usps__content {
    justify-content: center;
  }
}
.usps__icon {
  width: 39px;
  height: 39px;
  display: none;
}
@media only screen and (min-width: 599px) {
  .usps__icon {
    display: flex;
    align-items: center;
  }
}
@media only screen and (min-width: 1024px) {
  .usps .svgicon {
    display: block;
  }
}

.contact-main {
  position: relative;
  padding-top: 26px;
}
@media only screen and (min-width: 1024px) {
  .contact-main__content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 52px;
  }
}
.contact-main #googlemap {
  width: 100%;
  aspect-ratio: 4/3;
  margin-bottom: 13px;
}
@media only screen and (min-width: 1024px) {
  .contact-main__form-wrapper {
    margin-bottom: 0;
  }
}
.contact-main__form {
  max-width: 600px;
  margin: 0 auto;
}
.contact-main__form__subheading {
  font-size: 16px;
}
.contact-main__main {
  max-width: 650px;
}
.contact-main__main .box {
  padding: 52px 26px;
}
@media only screen and (min-width: 1024px) {
  .contact-main__main .box {
    padding: 52px;
  }
}

.sibling-page-grid {
  position: relative;
  overflow: hidden;
}
.sibling-page-grid .wrap {
  display: grid;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 768px) {
  .sibling-page-grid .wrap {
    grid-template-columns: 300px 1fr;
    grid-gap: 26px;
  }
}
.sibling-page-grid__list {
  margin: 0;
  text-align: left;
  position: relative;
  z-index: 2;
}
.sibling-page-grid__item {
  padding: 13px 0;
  position: relative;
}
.sibling-page-grid__icon {
  width: 39px;
  height: 39px;
}
.sibling-page-grid__icon svg {
  transition: transform 0.3s, opacity 0.2s;
  width: 23px;
  height: 11px;
}
.sibling-page-grid__icon:before {
  width: 23px;
  height: 11px;
}
@media only screen and (min-width: 1024px) {
  .sibling-page-grid__icon {
    position: absolute;
    top: 13px;
    right: 0;
  }
}
.sibling-page-grid__text {
  margin-top: 6.5px;
  border-radius: 5px;
  transition: background-color 0.3s;
}
.sibling-page-grid__header.section-header {
  padding: 0;
}
.sibling-page-grid__heading.page-link-grid__heading {
  font-size: 18px;
  transition: transform 0.3s;
  transform: translateX(-12px);
}
.sibling-page-grid__heading__button {
  display: flex;
  transition: transform 0.3s;
}
.sibling-page-grid__heading__button svg {
  transition: fill 0.3s;
}
.sibling-page-grid__link:hover {
  text-decoration: none;
}
.sibling-page-grid__link:hover .sibling-page-grid__text {
  background-color: #244381;
}
.sibling-page-grid__link:hover .sibling-page-grid__heading {
  transform: translateX(0);
  color: #fff;
}
.sibling-page-grid__link:hover .sibling-page-grid__heading__button {
  transform: translateX(-5px);
}
.sibling-page-grid__link:hover .sibling-page-grid__heading__button svg {
  fill: #fff;
}

.page-link-carousel__container {
  padding-bottom: 26px;
}

.page-link-grid--type2 {
  grid-gap: 26px;
}
@media only screen and (min-width: 768px) {
  .page-link-grid--type2 {
    grid-gap: 39px;
  }
}
.page-link-grid--type1 {
  background-color: #fff;
  grid-gap: 13px;
}
.page-link-grid__grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 26px;
}
@media only screen and (min-width: 480px) {
  .page-link-grid--3col .page-link-grid__grid {
    grid-template-columns: 1fr 1fr;
  }
  .page-link-grid--2col .page-link-grid__grid {
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
  }
}
@media only screen and (min-width: 768px) {
  .page-link-grid {
    grid-gap: 26px;
    position: relative;
  }
}
@media only screen and (min-width: 1200px) {
  .page-link-grid--2col .page-link-grid__grid {
    grid-template-columns: repeat(auto-fit, minmax(550px, 1fr));
  }
  .page-link-grid--3col .page-link-grid__grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.page-link-grid__text {
  gap: 13px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  flex: 1.5;
}
.page-link-grid__text__main {
  flex: 1;
  padding: 26px;
  position: relative;
}
.page-link-grid__text__main p:last-child {
  margin-bottom: 0;
}
.page-link-grid__c2a {
  width: fit-content;
}
.page-link-grid__link {
  background-color: #244381;
  display: block;
  display: flex;
  color: #ffffff;
  transition: color 0.3s;
  position: relative;
}
@media only screen and (min-width: 480px) {
  .page-link-grid__link {
    height: 100%;
  }
}
.page-link-grid__link::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background-color: #dbf5ff;
  transition: transform 0.4s ease-out;
  transform: scaleX(0);
  transform-origin: left;
}
.page-link-grid__link:hover {
  text-decoration: none;
  color: #444344;
}
.page-link-grid__link:hover:before {
  transform: scaleX(1);
}
.page-link-grid__link:hover .page-link-grid__image img {
  transform: scale(1.1);
}
.page-link-grid__link:hover .page-link-grid__heading {
  color: #244381;
}
.page-link-grid__image {
  -webkit-mask-image: url("./dist/img/page-link-mask.svg");
  mask-image: url("./dist/img/page-link-mask.svg");
  mask-repeat: no-repeat;
  mask-size: cover;
  overflow: hidden;
  flex: 1;
}
.page-link-grid__image img {
  object-fit: cover;
  height: 100%;
  transition: transform 0.5s;
}
@media only screen and (max-width: 1023px) {
  .page-link-grid__image {
    display: none;
  }
}
.page-link-grid__heading {
  line-height: 1.16;
  margin-bottom: 13px;
  flex: 1;
  transition: color 0.2s;
  color: #ffffff;
}

.dropdown-list__main {
  max-width: 90%;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .dropdown-list__main {
    max-width: 650px;
  }
}
@media only screen and (min-width: 1024px) {
  .dropdown-list--sidebar {
    margin-bottom: 52px;
  }
}
.dropdown-list__list {
  margin: 0;
}
@media only screen and (min-width: 599px) {
  .dropdown-list__list {
    padding-top: 26px;
  }
}
.dropdown-list__item {
  margin-bottom: 19.5px !important;
  background-color: #00aeef;
  border-radius: 10px;
  padding: 13px 13px 1px 52px;
}
.dropdown-list__item__heading {
  margin-bottom: 13px;
  transition: color 0.2s;
  cursor: pointer;
}
.dropdown-list__item__heading:hover {
  color: #244381;
}
.dropdown-list__item__heading:hover .dropdown-list__button {
  background-color: #dbf5ff;
}
.dropdown-list__item--is-open .dropdown-list__item__heading:hover .dropdown-list__button {
  background-color: #244381;
}
.dropdown-list__content {
  transition: max-height 0.5s cubic-bezier(0.46, 0.96, 0.43, 0.94);
  display: none;
  overflow: hidden;
  text-transform: none;
}
.dropdown-list__header {
  font-weight: bold;
  text-align: center;
}
.dropdown-list__preheading {
  opacity: 0.5;
}
.dropdown-list__button {
  width: 28px;
  height: 28px;
  position: absolute;
  background-color: #fff;
  transition: background-color 0.2s cubic-bezier(0.46, 0.96, 0.43, 0.94);
  display: flex;
  align-items: center;
  justify-content: center;
  left: 13px;
  border-radius: 50px;
}
.dropdown-list__item--is-open .dropdown-list__button {
  background-color: #244381;
}
.dropdown-list__item--is-open .dropdown-list__button:hover {
  background-color: #244381;
}
.dropdown-list__button:before {
  content: "";
  width: 13px;
  height: 3px;
  border-radius: 5px;
  background-color: #00aeef;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background-color 0.3s;
}
.dropdown-list__item--is-open .dropdown-list__button:before {
  background-color: #fff;
}
.dropdown-list__button:after {
  content: "";
  width: 3px;
  height: 13px;
  border-radius: 5px;
  background-color: #00aeef;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s cubic-bezier(0.46, 0.96, 0.43, 0.94), background-color 0.3s;
}
.dropdown-list__item--is-open .dropdown-list__button:after {
  opacity: 0;
}
.dropdown-list__item {
  list-style: none !important;
  position: relative;
}

.image-row__images:not(.slick-slider--accreditations) {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 26px;
  justify-items: center;
  align-items: center;
}
.image-row__images:not(.slick-slider--accreditations) img {
  max-height: 120px;
  width: auto;
}
@media only screen and (min-width: 768px) {
  .image-row__images:not(.slick-slider--accreditations) {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}

.twocol {
  position: relative;
  z-index: 1;
}
.twocol__row {
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .twocol__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (max-width: 767px) {
  .twocol__row--has-image-col .twocol__col--has-image {
    margin: 0 26px;
    position: absolute;
    top: 26px;
    left: 0;
    width: calc(100% - 26px* 2);
    padding: 0;
    height: 200px;
    z-index: 1;
  }
  .twocol__row--has-image-col .twocol__col--text {
    padding-top: 270px;
  }
}
.twocol__col {
  padding: 26px;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  position: relative;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s 0.2s, transform 0.5s 0.2s;
}
.twocol__col.is-visible {
  opacity: 1;
  transform: none;
}
.twocol__col--col1 {
  transform: translateX(-15px);
}
.twocol__col--col2 {
  transform: translateX(15px);
}
.twocol__col--text {
  background-position: left top;
}
.twocol__col p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1024px) {
  .twocol__col {
    padding: 26px;
  }
  .twocol__row--has-image-col .twocol__col {
    min-height: 460px;
    padding: 52px 78px;
  }
}
@media only screen and (min-width: 1200px) {
  .twocol__row--has-image-col .twocol__col {
    min-height: 540px;
  }
}
.twocol__image {
  border-radius: 20px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .twocol__image {
    border-radius: 40px;
    margin: 52px 26px 26px 26px;
  }
}
.twocol__content {
  position: relative;
  z-index: 2;
}
.twocol__content img {
  border-radius: 20px;
}

.gallery {
  z-index: 4;
}
.gallery__item {
  width: 100%;
  margin-bottom: 13px;
  transform: translateY(26px);
  transition: transform 1s ease-in-out, opacity 1.5s;
  width: calc(50% - 13px);
}
@media only screen and (min-width: 1024px) {
  .gallery__item {
    width: calc(33.3333% - 8.6666666667px);
  }
}
.gallery__item img {
  transition: transform 0.3s;
  width: 100%;
}
.gallery__link {
  overflow: hidden;
  position: relative;
  display: block;
}
.gallery__link:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  background-color: #000;
  opacity: 0;
  transition: opacity 0.3s;
  z-index: 1;
}
.gallery__link:after {
  content: "";
  width: 39px;
  height: 39px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url("./dist/img/svg/circle-plus--white.svg");
  background-size: 100%;
  transition: opacity 0.3s;
  opacity: 0;
  z-index: 2;
}
.gallery__link:hover:before, .gallery__link:hover:after {
  opacity: 0.7;
}
.gallery__link:hover img {
  transform: scale(1.1);
}

.pswp__button--share {
  display: none;
}

.m-container {
  padding-bottom: 26px;
  max-width: 1440px;
  margin: 0 auto;
}

.m-sizer {
  width: 100%;
  width: calc(50% - 13px);
}
@media only screen and (min-width: 1024px) {
  .m-sizer {
    width: calc(33.3333% - 8.6666666667px);
  }
}

.m-gutter {
  width: 13px;
}
@media only screen and (min-width: 1024px) {
  .m-gutter {
    width: 13px;
  }
}

.pswp__caption .pswp__caption__center {
  max-width: fit-content;
}

.testimonial {
  color: #fff;
  position: relative;
}
.testimonial .section__inner {
  --slantH: 25px;
  clip-path: polygon(0 0, 100% var(--slantH), 100% 100%, 0 100%);
}
@media only screen and (min-width: 768px) {
  .testimonial .section__inner {
    --slantH: 50px;
  }
}
.testimonial__content {
  margin: 0 auto;
}
@media only screen and (min-width: 599px) {
  .testimonial__content {
    max-width: 80%;
  }
}
.testimonial__main {
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 52px;
  text-align: center;
}
.testimonial__main .testimonial__heading {
  color: #fff;
}
@media only screen and (min-width: 1024px) {
  .testimonial__main:before {
    content: "";
    width: 78px;
    height: 78px;
    background-image: url("./dist/img/svg/quote--white.svg");
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    text-align: center;
    margin: 0 auto;
    z-index: 2;
  }
}

.accreditations {
  position: relative;
}
.accreditations__main {
  position: relative;
  border-radius: 3px;
  overflow: hidden;
  padding: 26px;
}
@media only screen and (min-width: 1024px) {
  .accreditations__main {
    padding: 52px 26px;
    display: flex;
    gap: 26px;
  }
}
.accreditations__logos {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 1024px) {
  .accreditations__logos {
    min-width: 50%;
    width: 50%;
  }
}
.accreditations__logos img {
  padding: 0 13px;
}
.accreditations__image {
  display: flex;
  justify-content: center;
}
.accreditations__header {
  margin-bottom: 26px;
}
@media only screen and (min-width: 1024px) {
  .accreditations__header {
    margin-bottom: 0;
  }
}
.accreditations__heading {
  margin-bottom: 13px;
}
.accreditations__subheading {
  font-weight: 500;
  margin-bottom: 26px;
}
.accreditations__subheading p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .accreditations__subheading {
    margin-bottom: 0;
  }
}

.image-slider {
  clear: both;
}
.image-slider__slide-wrapper {
  position: relative;
}
.image-slider__item img {
  margin: 0 auto;
}

.icon-text-columns {
  --maxcols: 1;
  padding-top: 52px;
  padding-bottom: 52px;
  position: relative;
}
@media only screen and (min-width: 599px) {
  .icon-text-columns {
    padding-top: 78px;
    padding-bottom: 78px;
  }
}
.icon-text-columns__main {
  position: relative;
  z-index: 2;
  display: grid;
  justify-content: center;
  gap: 39px;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 480px) {
  .icon-text-columns__main {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .icon-text-columns__main {
    grid-template-columns: repeat(var(--maxcols), 1fr);
  }
}
.icon-text-columns__item {
  width: 100%;
  flex: 1;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  opacity: 0;
}
.is-visible .icon-text-columns__item {
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUpSmall;
  -moz-animation-name: fadeInUpSmall;
  animation-name: fadeInUpSmall;
  -webkit-animation-iteration-count: 1;
  -moz-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: cubic-bezier(0.4, 0.12, 0.1, 1.35);
  -moz-animation-timing-function: cubic-bezier(0.4, 0.12, 0.1, 1.35);
  animation-timing-function: cubic-bezier(0.4, 0.12, 0.1, 1.35);
}
.is-visible .icon-text-columns__item:nth-child(1) {
  animation-delay: 0.25s;
}
.is-visible .icon-text-columns__item:nth-child(2) {
  animation-delay: 0.5s;
}
.is-visible .icon-text-columns__item:nth-child(3) {
  animation-delay: 0.75s;
}
.is-visible .icon-text-columns__item:nth-child(4) {
  animation-delay: 1s;
}
.is-visible .icon-text-columns__item:nth-child(5) {
  animation-delay: 1.25s;
}
.is-visible .icon-text-columns__item:nth-child(6) {
  animation-delay: 1.5s;
}
.icon-text-columns__item.align-center {
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .icon-text-columns__item {
    min-height: 234px;
  }
}
.icon-text-columns__item-text p:last-of-type {
  margin-bottom: 0;
}
.icon-text-columns__item-heading {
  margin-bottom: 13px;
  transition: color 0.5s;
}
.icon-text-columns__item-heading.subheading {
  letter-spacing: normal;
}
.icon-text-columns__image {
  display: inline-block;
  transition: transform 0.45s cubic-bezier(0.4, 0.12, 0.1, 1.35);
}
@media only screen and (min-width: 768px) {
  .icon-text-columns__image {
    margin-bottom: 13px;
  }
}
.icon-text-columns__image img {
  width: 52px;
}
@media only screen and (min-width: 768px) {
  .icon-text-columns__image img {
    width: 65px;
  }
}
.icon-text-columns__image--medium img {
  width: 26px;
}
@media only screen and (min-width: 768px) {
  .icon-text-columns__image--medium img {
    width: 52px;
  }
}
.icon-text-columns__image--large img {
  width: 40px;
}
@media only screen and (min-width: 768px) {
  .icon-text-columns__image--large img {
    width: 80px;
  }
}
.icon-text-columns__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  align-items: center;
  text-decoration: none;
  color: #444344;
  font-weight: normal;
}
.icon-text-columns__link--displayarrow:after {
  content: "→";
  transition: transform 0.3s, opacity 0.3s;
  opacity: 0;
  color: #00aeef;
  font-size: 28px;
  transform: translateX(-6.5px);
  display: inline-block;
}
.icon-text-columns__link--displayarrow:hover:after {
  opacity: 1;
  transform: none;
}
.icon-text-columns__link--rotateicon:hover .icon-text-columns__image {
  transform: rotate(180deg);
}
.icon-text-columns__link--rotateicon:hover .icon-text-columns__item-heading {
  color: #00aeef;
}
.icon-text-columns__link:hover {
  text-decoration: none;
  color: #444344;
}
.icon-text-columns__c2a {
  position: absolute;
  bottom: -39px;
}
.icon-text-columns__c2a svg {
  fill: #172a50;
  width: 26px;
  height: 26px;
}
.icon-text-columns__text {
  display: flex;
  flex-direction: column;
}
.icon-text-columns__text ul {
  display: flex;
  flex-direction: column;
  text-align: left;
  margin: 0;
  padding-left: 13px;
}
.icon-text-columns__text ul li {
  font-size: 14px;
}

.offset-carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
  align-items: center;
}
.offset-carousel__container {
  --bgcol: "";
  padding: 26px 0;
}
@media only screen and (min-width: 599px) {
  .offset-carousel__container {
    padding: 52px 0;
  }
}
.offset-carousel__intro {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  text-align: center;
  max-width: 1256px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .offset-carousel__intro {
    text-align: left;
    flex-direction: row;
    margin-bottom: 26px;
  }
}
.offset-carousel__intro .carousel-nav__nav {
  justify-content: flex-end;
  align-items: flex-end;
}
@media only screen and (max-width: 598px) {
  .offset-carousel__intro .carousel-nav__nav {
    justify-content: center;
    padding-right: 0;
  }
}
@media only screen and (max-width: 1023px) {
  .offset-carousel__intro .carousel-nav__nav {
    justify-content: center;
    margin-bottom: 26px;
    margin-top: 26px;
  }
}
.offset-carousel__intro p:last-child {
  margin-bottom: 0;
}
.offset-carousel__intro__subheading {
  max-width: 650px;
}
@media only screen and (min-width: 1024px) {
  .offset-carousel__intro--has-heading {
    margin-bottom: 26px;
    display: grid;
    gap: 26px;
    grid-template-columns: 705px 1fr;
  }
}
.offset-carousel__intro--has-button .carousel-nav__nav {
  justify-content: flex-start;
}
.offset-carousel__intro--no-heading .carousel-nav__nav {
  justify-content: center;
}
.offset-carousel__intro a[class^=button] {
  align-self: center;
  width: max-content;
  justify-self: flex-end;
  margin-top: 13px;
}
@media only screen and (max-width: 598px) {
  .offset-carousel__icon {
    justify-content: center;
  }
}
@media only screen and (max-width: 598px) {
  .offset-carousel__subheading {
    text-align: center;
  }
}
.offset-carousel__list:not(.slick-slider--offset-carousel) {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (min-width: 768px) {
  .offset-carousel__list:not(.slick-slider--offset-carousel) {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 1024px) {
  .offset-carousel__list:not(.slick-slider--offset-carousel) {
    grid-template-columns: repeat(4, 1fr);
  }
}
.offset-carousel__list.slick-slider--offset-carousel {
  display: block;
}
@media only screen and (min-width: 1024px) {
  .offset-carousel__list.slick-slider--offset-carousel {
    width: calc(105vw);
  }
}
.offset-carousel__main {
  display: flex;
  flex-direction: column;
  transition: opacity 0.5s;
  opacity: 0;
}
.offset-carousel__main.is-visible {
  opacity: 1;
}
.offset-carousel__list {
  position: relative;
}
.offset-carousel__subheading {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .offset-carousel__subheading {
    display: block;
  }
}
.offset-carousel__subheading p:last-child {
  margin-bottom: 0;
}
.offset-carousel__wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.home .offset-carousel__wrapper {
  position: relative;
  z-index: 1;
}
.offset-carousel__top-heading {
  position: absolute;
  padding: 0 26px;
  width: 100%;
  text-align: center;
  transition: opacity 0.2s 0.4s, transform 0.2s 0.4s;
  z-index: 2;
  margin-bottom: 0;
}
.offset-carousel__item {
  border-radius: 8px;
  margin: 0 10px;
}
.offset-carousel__item__textbox {
  position: absolute;
  padding: 13px 26px;
  width: 100%;
  text-align: center;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  transform: translateY(-13px);
}
.offset-carousel__item__main {
  position: relative;
}
@media only screen and (max-width: 479px) {
  .offset-carousel__item__main {
    max-width: 300px;
    margin: 0 auto;
  }
}
.offset-carousel__icon {
  display: flex;
  align-items: center;
  margin-bottom: 26px;
}
.offset-carousel__icon img {
  width: 26px;
  height: 26px;
}

.single-case-study__inner {
  padding: 26px;
  border-radius: 2px;
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 26px;
}
@media only screen and (min-width: 599px) {
  .single-case-study__inner {
    grid-template-columns: 1fr 400px;
  }
}
.single-case-study__inner--light {
  background-color: #dbf5ff;
}
.single-case-study__inner--light .single-case-study__link {
  color: #172a50;
}
.single-case-study__inner--dark {
  background-color: #172a50;
  color: #fff;
}
.single-case-study__inner--dark .single-case-study__link {
  color: #fff;
}
.single-case-study__excerpt {
  margin-bottom: 26px;
}
.single-case-study__thumbnail img {
  width: 100%;
}
.single-case-study__link {
  text-decoration: none;
  color: #244381;
  transition: color 0.2s;
}
.single-case-study__link:hover {
  text-decoration: none;
  color: #00aeef;
}

.case-study-intro__wrapper {
  padding-bottom: 0;
  padding-top: 13px;
  padding-left: 13px;
  padding-right: 13px;
  margin-top: -104px;
}
@media only screen and (min-width: 480px) {
  .case-study-intro__wrapper {
    padding-top: 26px;
    padding-left: 26px;
    padding-right: 39px;
  }
}
.case-study-intro__main {
  margin-bottom: 26px;
  display: flex;
  flex-direction: column;
  gap: 26px;
}
@media only screen and (min-width: 768px) {
  .case-study-intro__main {
    flex-direction: row;
    gap: 52px;
  }
}
.case-study-intro__main .case-study-intro__list .case-study-intro__item:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}
.case-study-intro__key-features {
  flex: 1;
  position: relative;
  transition: transform 0.3s;
}
.case-study-intro__key-features__heading {
  color: #fff;
  padding: 13px 13px 26px 13px;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .case-study-intro__key-features__heading {
    padding-bottom: 52px;
  }
}
.case-study-intro__intro-text {
  flex: 1;
  font-size: 16px;
  line-height: 1.4;
  padding-right: 13px;
  padding-left: 13px;
}
@media screen and (min-width: 768px) {
  .case-study-intro__intro-text {
    font-size: 18px;
    line-height: 1.3;
  }
}
.case-study-intro__intro-text p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 480px) {
  .case-study-intro__intro-text {
    padding-right: 0;
    padding-left: 0;
  }
}
@media only screen and (min-width: 768px) {
  .case-study-intro__intro-text {
    line-height: 1.8;
  }
}
.case-study-intro__content {
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
}
.case-study-intro__label {
  font-weight: 900;
  padding-right: 13px;
}
.case-study-intro__list {
  margin: 0;
  padding: 26px;
  padding-right: 26px;
  padding-top: 13px;
  font-size: 16px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .case-study-intro__list {
    font-size: 18px;
    line-height: 1.3;
  }
}
@media only screen and (min-width: 1024px) {
  .case-study-intro__list {
    padding: 52px;
    padding-top: 13px;
  }
}
.case-study-intro__item {
  padding-bottom: 13px;
}

.post-intro__wrapper {
  padding-bottom: 0;
  padding-top: 26px;
  padding-left: 26px;
  padding-right: 39px;
  margin-top: -104px;
}
.post-intro__main {
  margin-bottom: 26px;
  display: flex;
  flex-direction: column;
  gap: 26px;
}
@media only screen and (min-width: 768px) {
  .post-intro__main {
    flex-direction: row;
    gap: 52px;
  }
}
.post-intro__header {
  height: 52px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.post-intro__post-info {
  border-bottom: 1px solid #444344;
  margin-bottom: 26px;
}
.post-intro__post-date {
  display: flex;
  gap: 6.5px;
  align-items: center;
}
.post-intro__post-date svg {
  width: 18px;
  height: 18px;
}
.post-intro__post-date p {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.post-intro__author {
  flex: 1;
  position: relative;
  transition: transform 0.3s;
}
@media only screen and (min-width: 1024px) {
  .post-intro__author {
    flex: 1.5;
  }
}
@media only screen and (min-width: 1200px) {
  .post-intro__author {
    flex: 1;
  }
}
.post-intro__intro-text {
  flex: 1.5;
}
.post-intro__intro-text p {
  font-size: 14px;
  line-height: 1.6;
}
@media screen and (min-width: 1024px) {
  .post-intro__intro-text p {
    font-size: 16px;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1200px) {
  .post-intro__intro-text p {
    font-size: 18px;
    line-height: 1.8;
  }
}
.post-intro__intro-text p:last-child {
  margin-bottom: 0;
}
.post-intro__content {
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
}
.post-intro__label {
  font-weight: 900;
  padding-right: 13px;
}
.post-intro__item {
  padding-bottom: 13px;
}
.post-intro__heading {
  color: #fff;
  padding: 13px 13px 26px 13px;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .post-intro__heading {
    padding-bottom: 52px;
  }
}

.canopy-design-slider__item {
  border-radius: 3px;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
  color: #fff;
}
.canopy-design-slider__item img {
  border-radius: 3px;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__item img {
    border-radius: 3px;
    flex: 1.5;
  }
}
@media only screen and (max-width: 1023px) {
  .canopy-design-slider__item img {
    aspect-ratio: 5/3;
    object-fit: cover;
    margin: 0 auto;
  }
}
.canopy-design-slider__title {
  display: flex;
  gap: 13px;
  align-items: center;
  color: #fff;
  justify-content: center;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__title {
    justify-content: flex-start;
  }
}
.canopy-design-slider__title svg {
  width: 52px;
  height: 52px;
  fill: #fff;
  padding: 8.6666666667px;
  border-radius: 2px;
  background-color: #00aeef;
}
.canopy-design-slider__item-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 26px;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__item-content {
    flex-direction: row;
    gap: 52px;
  }
}
.canopy-design-slider__author {
  padding-top: 13px;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__author {
    padding-top: 26px;
  }
}
.canopy-design-slider__text {
  flex: 2;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__text {
    text-align: left;
  }
}
.canopy-design-slider__text__content {
  padding-top: 13px;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
  margin-bottom: 13px;
  text-align: center;
}
.canopy-design-slider__text__content p {
  font-size: 16px;
  line-height: 1.5;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__text__content {
    padding-right: 13px;
    text-align: left;
    margin-bottom: 26px;
  }
  .canopy-design-slider__text__content p {
    font-size: 18px;
  }
}
.canopy-design-slider__slider {
  border-radius: 3px;
}
.canopy-design-slider__slider .slick-list {
  border-radius: 3px;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__slider {
    width: calc(100% - 70px);
  }
}
.canopy-design-slider__wrapper {
  position: relative;
}
.canopy-design-slider__nav {
  display: flex;
  justify-content: center;
  padding-top: 13px;
  gap: 26px;
  color: #fff;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__nav {
    gap: 0;
    justify-content: initial;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 52px;
    display: grid;
    grid-template-rows: 1fr 64px;
    padding-top: 0;
  }
  .canopy-design-slider__nav:before {
    content: "";
    width: 100%;
    height: 5px;
    background-color: #fff;
    transform: skewY(-30deg);
    position: absolute;
    bottom: 60px;
    left: 0;
    z-index: 1;
  }
}
.canopy-design-slider__prev, .canopy-design-slider__next {
  background-color: #172a50;
  padding: 0;
  transition: background-color 0.3s, color 0.3s;
}
.canopy-design-slider__prev svg, .canopy-design-slider__next svg {
  fill: #fff;
  transition: fill 0.3s;
}
.canopy-design-slider__prev:hover, .canopy-design-slider__next:hover {
  color: #fff;
}
.canopy-design-slider__prev:hover svg, .canopy-design-slider__next:hover svg {
  fill: #fff;
}
.canopy-design-slider__prev:hover.slick-disabled, .canopy-design-slider__next:hover.slick-disabled {
  background-color: #172a50;
  color: #244381;
}
.canopy-design-slider__prev:hover.slick-disabled svg, .canopy-design-slider__next:hover.slick-disabled svg {
  fill: #ffffff;
}
@media only screen and (max-width: 1023px) {
  .canopy-design-slider__prev, .canopy-design-slider__next {
    width: 52px;
    height: 52px;
  }
}
.canopy-design-slider__prev {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__prev {
    margin-top: -12px;
  }
  .canopy-design-slider__prev:before {
    transition: background-color 0.3s;
    content: "";
    width: 100%;
    height: calc(100% - 1px);
    clip-path: polygon(0 40%, 100% 0, 100% 100%, 0% 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
  }
  .canopy-design-slider__prev svg {
    position: relative;
    z-index: 2;
    transform: translateY(5px);
  }
  .canopy-design-slider__prev:hover:before {
    background-color: #244381;
  }
}
.canopy-design-slider__next {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 13px;
  position: relative;
}
.canopy-design-slider__next svg {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__next:before {
    transition: background-color 0.3s;
    content: "";
    width: 100%;
    height: calc(100% + 14px);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 30px), 0% 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .canopy-design-slider__next:hover:before {
    background-color: #244381;
  }
}
@media only screen and (max-width: 1023px) {
  .canopy-design-slider__next {
    order: 1;
    padding-bottom: 0;
    align-items: center;
  }
}
.canopy-design-slider__next.slick-disabled:before {
  background-color: #c7cbd2;
}
.canopy-design-slider__next-title {
  color: #fff;
  display: flex;
  gap: 13px;
  position: relative;
  z-index: 2;
}
.canopy-design-slider__next-title svg {
  fill: #fff;
  transform: rotate(-90deg);
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__next-title {
    position: absolute;
    width: max-content;
    top: 16px;
    transform-origin: left;
    transform: rotate(90deg);
    left: 50%;
  }
}
.canopy-design-slider__button-nav {
  gap: 6.5px;
  margin-bottom: 26px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media only screen and (min-width: 599px) {
  .canopy-design-slider__button-nav {
    gap: 13px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 1024px) {
  .canopy-design-slider__button-nav {
    justify-content: flex-start;
  }
}
.canopy-design-slider__button-nav__button {
  border-radius: 3px;
  background-color: #fff;
  transition: background-color 0.3s, color 0.3s;
  border: 1px solid #444344;
  padding: 6.5px;
  display: flex;
  align-items: center;
  gap: 6.5px;
  color: #172a50;
  font-weight: 500;
}
.canopy-design-slider__button-nav__button svg {
  width: 19.5px;
  height: 19.5px;
}
@media only screen and (max-width: 598px) {
  .canopy-design-slider__button-nav__button {
    font-size: 12px;
  }
}
@media only screen and (min-width: 599px) {
  .canopy-design-slider__button-nav__button {
    padding: 6.5px 13px;
  }
  .canopy-design-slider__button-nav__button svg {
    width: 26px;
    height: 26px;
    transition: fill 0.3s;
    fill: #172a50;
  }
}
.canopy-design-slider__button-nav__button:hover, .canopy-design-slider__button-nav__button.active {
  background-color: #172a50;
  color: #fff;
}
.canopy-design-slider__button-nav__button:hover svg, .canopy-design-slider__button-nav__button.active svg {
  fill: #fff;
}

.system-specification-options {
  color: #fff;
  background-image: radial-gradient(circle at right bottom, #00aeef 0%, #172a50 80%, #172a50 100%);
}
.system-specification-options.bg--none {
  padding-bottom: 26px;
}
@media only screen and (min-width: 1024px) {
  .system-specification-options.bg--none {
    padding-bottom: 52px;
  }
}
.system-specification-options__header {
  margin-bottom: 52px;
}
.system-specification-options__header h2 {
  color: #fff;
}
.system-specification-options__heading {
  color: #fff;
}
.system-specification-options__panel {
  background-color: #244381;
  overflow: hidden;
}
.system-specification-options__panel h2 {
  color: #fff;
}
.system-specification-options__panel__header {
  padding: 26px;
}
.system-specification-options__options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}
.system-specification-options__options__item {
  padding: 26px;
  background-color: #172a50;
}
.system-specification-options__options__item img {
  margin-bottom: 13px;
}
.system-specification-options__download-table {
  padding: 26px;
  background-color: #172a50;
}
@media only screen and (min-width: 1024px) {
  .system-specification-options__download-table {
    display: grid;
    gap: 26px;
    grid-template-columns: repeat(2, 1fr);
  }
}
.system-specification-options__download-title {
  margin-bottom: 0;
}
.system-specification-options__textbox {
  padding: 26px;
  padding-top: 104px;
  position: relative;
  z-index: 1;
  width: 100%;
}
.system-specification-options__textbox h2 {
  color: #fff;
}
@media only screen and (min-width: 599px) {
  .system-specification-options__textbox {
    padding: 52px 26px 52px 104px;
  }
}
@media only screen and (min-width: 768px) {
  .system-specification-options__textbox {
    width: 50%;
  }
}
.system-specification-options__table {
  padding: 26px;
  position: relative;
  z-index: 1;
  flex: 1;
}
@media only screen and (min-width: 599px) {
  .system-specification-options__table {
    padding: 26px 26px 52px 26px;
  }
}
.system-specification-options__subpanel h2 {
  color: #fff;
}
.system-specification-options__subpanel__main {
  position: relative;
  box-shadow: 0 0 30px 15px rgba(0, 0, 0, 0.25);
  display: flex;
  background-size: cover;
  background-repeat: no-repeat;
}
.system-specification-options__subpanel__main:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(to bottom, #2d4d8c 0%, rgba(45, 77, 140, 0) 100%);
  z-index: 1;
}
@media only screen and (min-width: 599px) {
  .system-specification-options__subpanel__main:before {
    background-image: linear-gradient(90deg, #2d4d8c 0%, rgba(45, 77, 140, 0) 100%);
  }
}
.system-specification-options__subpanel-wrapper {
  position: relative;
}
.system-specification-options__subpanel-nav {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  display: flex;
  flex-direction: row;
  justify-content: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 2;
  padding: 13px 0;
  gap: 26px;
}
@media only screen and (min-width: 599px) {
  .system-specification-options__subpanel-nav {
    justify-content: initial;
    flex-direction: column;
    bottom: 0;
    right: auto;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    border-bottom: 0;
    padding: 0;
    padding-top: 26px;
  }
}
.system-specification-options__subpanel-nav button {
  background: none;
  padding-left: 13px;
  padding-right: 13px;
  display: flex;
  align-items: end;
  justify-content: center;
}
.system-specification-options__subpanel-nav button svg {
  fill: #fff;
  width: 39px;
  height: 39px;
  transition: fill 0.3s ease;
}
.system-specification-options__subpanel-nav button.is-active svg, .system-specification-options__subpanel-nav button:hover svg {
  fill: #00aeef;
}
.system-specification-options__subpanel__content {
  display: none;
  position: absolute;
}
.system-specification-options__subpanel__content--active {
  position: static;
  display: block;
}

.single-profile {
  position: relative;
  z-index: 2;
  clear: both;
}
.single-profile:after {
  position: absolute;
  content: "";
  background-position: calc(100% + 100px) calc(100% + 50px);
  background-repeat: no-repeat;
  background-size: 75%;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 1024px) {
  .single-profile:after {
    opacity: 0.1;
  }
}
.single-profile.bg--gradient-blue-mblue-radial-bottom-right:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-black-blue:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-black-mblue:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-dblue-black:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-blue-dblue:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-mblue:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-black:after {
  background-image: url("./dist/img/tf-logo-white.svg");
  mix-blend-mode: hard-light;
}
.single-profile.bg--gradient-arctic:after {
  background-image: url("./dist/img/tf-logo.svg");
}
.single-profile.bg--gradient-arctic-reverse:after {
  background-image: url("./dist/img/tf-logo.svg");
}
.single-profile.bg--white:after {
  background-image: url("./dist/img/tf-logo.svg");
}
.single-profile.bg--black:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile.bg--arctic:after {
  background-image: url("./dist/img/tf-logo.svg");
}
.single-profile.bg--blue:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile.bg--mblue:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile.bg--dblue:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile.bg--grey:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile.bg--red:after {
  background-image: url("./dist/img/tf-logo--white.svg");
}
.single-profile p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1024px) {
  .single-profile--cs {
    margin: 0 -104px 26px -104px;
  }
}
.single-profile.valign--top .single-profile__content {
  align-items: flex-start;
}
.single-profile.valign--middle .single-profile__content {
  align-items: center;
}
.single-profile.valign--bottom .single-profile__content {
  align-items: flex-end;
}
.single-profile__background + .wrap {
  position: relative;
  z-index: 2;
}
.single-profile__content {
  padding: 26px 0;
  display: flex;
  flex-direction: column;
  max-width: 700px;
  margin: 0 auto;
}
.single-profile__content:before, .single-profile__content:after {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .single-profile__content {
    padding: 0;
    flex-direction: row;
    gap: 26px;
    margin: 0;
    max-width: none;
  }
  .single-profile__content.js-visible {
    opacity: 0;
    transition: opacity 1.5s 0.5s, transform 3s cubic-bezier(0, 0.92, 0, 1) 0.5s;
    transform: translateY(-10%);
  }
  .single-profile__content.is-visible, .no-js .single-profile__content {
    opacity: 1;
    transform: none;
  }
}
.single-profile__text {
  flex: 1.5;
  order: 1;
  position: relative;
  margin-bottom: 26px;
}
@media only screen and (min-width: 1024px) {
  .single-profile__text {
    margin-bottom: 0;
  }
}
.single-profile__name, .single-profile__name .single-profile__title, .single-profile__name .single-profile__role {
  color: #fff;
}
.single-profile__profile {
  position: relative;
  flex: 1;
  order: 2;
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .single-profile__profile {
    padding-left: 78px;
  }
}
.single-profile__profile a[class^=button] {
  margin-top: 26px;
}
.single-profile__profile--image-sticky {
  position: sticky;
  top: 26px;
}
@media only screen and (min-width: 1200px) {
  .single-profile__profile--profile-first {
    order: 1;
    margin-right: 78px;
    padding-left: 0;
  }
}
.single-profile__profile img {
  position: relative;
  display: block;
  overflow: hidden;
}
.single-profile__link:after {
  background-image: linear-gradient(0, #244381 0%, #061533 100%);
}

.profiles-grid__main {
  display: grid;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 768px) {
  .profiles-grid__main {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 26px;
  }
}

.post-author-section {
  overflow: visible;
}
.post-author-section .wrap {
  display: flex;
  flex-direction: column;
  gap: 26px;
}
@media only screen and (min-width: 768px) {
  .post-author-section .wrap {
    flex-direction: row;
    gap: 52px;
  }
}
@media only screen and (min-width: 768px) {
  .post-author-section__author-details {
    margin-top: -130px;
  }
}
.post-author-section__c2a {
  padding-left: 0;
}
.post-author-section__top-heading {
  margin-bottom: 0;
}
.post-author-section__item__main {
  padding: 26px;
  background-color: #fff;
}
.post-author-section__item__image {
  border: 0;
  display: flex;
  gap: 13px;
  flex-direction: column;
}
@media only screen and (min-width: 599px) {
  .post-author-section__item__image {
    flex-direction: row;
    align-items: flex-end;
  }
}
@media only screen and (min-width: 768px) {
  .post-author-section__item__image {
    flex-direction: column;
    align-items: initial;
  }
}
@media only screen and (min-width: 1024px) {
  .post-author-section__item__image {
    flex-direction: row;
    align-items: flex-end;
  }
}
.post-author-section__item__image img {
  flex: 1;
  border: 10px solid #fff;
  border-bottom: 0;
}
.post-author-section__item__textbox {
  flex: 1.5;
}
@media only screen and (min-width: 599px) {
  .post-author-section__item__textbox {
    padding-top: 39px;
  }
}
@media only screen and (min-width: 768px) {
  .post-author-section__item__textbox {
    padding-top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .post-author-section__item__textbox {
    padding-top: 39px;
  }
}

/*--------------------------------------------------------------
4.0 Vendor
--------------------------------------------------------------*/
[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%;
  /* Not required for horizontal scroll to trigger */
  max-height: 100%;
  /* Needed for vertical scroll to trigger */
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.simplebar-content:before,
.simplebar-content:after {
  content: " ";
  display: table;
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0;
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-simplebar].simplebar-dragging {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: black;
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity 0.2s 0.5s linear;
}

.simplebar-scrollbar.simplebar-visible:before {
  opacity: 0.5;
  transition-delay: 0s;
  transition-duration: 0s;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
}

.simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
  left: 2px;
  right: 2px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 0;
  bottom: 0;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

/* Rtl support */
[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.simplebar-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
  -ms-overflow-style: scrollbar !important;
}

.simplebar-dummy-scrollbar-size > div {
  width: 200%;
  height: 200%;
  margin: 10px 0;
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #061533;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC;
}

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline;
}

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*

	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0 18px 0 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.pswp__button--close, .pswp__button--arrow--right {
  margin-right: 0;
}

.pswp__button:focus,
.pswp__button:hover {
  opacity: 1;
}

.pswp__button:active {
  outline: none;
  opacity: 0.9;
}

.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background-image: url(./photoswipe/default-skin.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 264px 88px;
  border-radius: 100%;
  width: 30px;
  height: 30px;
}

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
.pswp--svg .pswp__button--arrow--left:before,
.pswp--svg .pswp__button--arrow--right:before {
    background-image: url(./photoswipe/default-skin.svg);
  }

  .pswp--svg .pswp__button--arrow--left,
.pswp--svg .pswp__button--arrow--right {
    background: none;
  }
}
.pswp__button--close {
  background-position: -7px -51px;
  background-color: #fff;
}

.pswp__button--share {
  background-position: -50px -51px;
  background-color: #fff;
  display: none;
}

.pswp__button--fs {
  display: none;
  background-position: -7px -7px;
  background-color: #fff;
}

.pswp--supports-fs .pswp__button--fs {
  display: block;
}

.pswp--fs .pswp__button--fs {
  background-position: -59px -7px;
}

.pswp__button--zoom {
  display: none;
  background-position: -94px -7px;
  background-color: #fff;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -138px -7px;
}

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden;
}

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute;
}

.pswp__button--arrow--left {
  left: 0;
}

.pswp__button--arrow--right {
  right: 0;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: "";
  top: 35px;
  background-color: white;
  height: 30px;
  width: 30px;
  border-radius: 100%;
  position: absolute;
}

.pswp__button--arrow--left:before {
  left: 20px;
  background-position: -141px -44px;
}

.pswp__button--arrow--right:before {
  right: 20px;
  background-position: -94px -44px;
}

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__share-modal--hidden {
  display: none;
}

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #fff;
  top: 60px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 60px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}

.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px;
}

.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000;
}

.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0;
}

.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px;
}

.pswp__share-modal--fade-in {
  opacity: 1;
}

.pswp__share-modal--fade-in .pswp__share-tooltip {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px;
}

a.pswp__share--facebook:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid transparent;
  border-bottom-color: #fff;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none;
}

a.pswp__share--facebook:hover {
  background: #3e5c9a;
  color: #fff;
}

a.pswp__share--facebook:hover:before {
  border-bottom-color: #3e5c9a;
}

a.pswp__share--twitter:hover {
  background: #55acee;
  color: #fff;
}

a.pswp__share--pinterest:hover {
  background: #ccc;
  color: #ce272d;
}

a.pswp__share--download:hover {
  background: #ddd;
}

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 11px;
  line-height: 20px;
  letter-spacing: 1.5px;
  color: #fff;
  padding: 25px 10px 10px 26px;
  font-family: "Inter", Helvetica, Arial, "Lucida Grande", sans-serif;
}

/*

	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px;
}

.pswp__caption small {
  font-size: 11px;
  color: #bbb;
}

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 18px;
  padding: 10px;
  line-height: 24px;
  color: #ccc;
}

.pswp__caption--empty {
  display: none;
}

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden;
}

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr;
}

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px;
}

.pswp__preloader--active {
  opacity: 1;
}

.pswp__preloader--active .pswp__preloader__icn {
  /* We use .gif in browsers that don't support CSS animation */
  background: url(./photoswipe/preloader.gif) 0 0 no-repeat;
}

.pswp--css_animation .pswp__preloader--active {
  opacity: 1;
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  -webkit-animation: clockwise 500ms linear infinite;
  animation: clockwise 500ms linear infinite;
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
}

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0;
}

.pswp--css_animation .pswp__preloader__cut {
  /* 
  	The idea of animating inner circle is based on Polymer ("material") loading indicator 
  	 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
  */
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden;
}

.pswp--css_animation .pswp__preloader__donut {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #fff;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right;
  }
}
@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
/*

	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550;
}

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  padding: 26px;
}

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible;
}

.pswp__top-bar,
.pswp__caption {
  background-color: none;
}

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: none;
}

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0;
}

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0;
}

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001;
}

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none;
}

.pswp__element--disabled {
  display: none !important;
}

.pswp--minimal--dark .pswp__top-bar {
  background: none;
}

.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle;
}

.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-selection--single .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}

.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px;
}

.select2-container .select2-selection--multiple {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline;
  list-style: none;
  padding: 0;
}

.select2-container .select2-selection--multiple .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}

.select2-container .select2-search--inline .select2-search__field {
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  margin-left: 5px;
  padding: 0;
  max-width: 100%;
  resize: none;
  height: 18px;
  vertical-align: bottom;
  font-family: sans-serif;
  overflow: hidden;
  word-break: keep-all;
}

.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-dropdown {
  background-color: #172a50;
  border: 0;
  border-radius: 2px;
  height: 40px;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051;
}
@media only screen and (min-width: 768px) {
  .select2-dropdown {
    height: 54px;
  }
}

.select2-results {
  display: block;
  background-color: #172a50;
}

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0;
}

.select2-results__option {
  padding: 6px 12px;
  user-select: none;
  color: #fff;
  -webkit-user-select: none;
}

.select2-results__option--selectable {
  cursor: pointer;
}

.select2-container--open .select2-dropdown {
  left: 0;
}

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-search--dropdown {
  display: block;
  padding: 8px;
  background-color: #172a50;
}

.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  box-sizing: border-box;
}

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-search--dropdown.select2-search--hide {
  display: none;
  background-color: #172a50;
}

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0);
}

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

.select2-container--default .select2-selection--single {
  border: 0;
  border-radius: 2px;
  color: #ffffff;
  font-weight: 800;
  background-color: #172a50;
  border: 1px solid #00aeef;
  height: 40px;
  display: flex;
  align-items: center;
  font-size: 14px;
}
@media only screen and (min-width: 599px) {
  .select2-container--default .select2-selection--single {
    height: 54px;
  }
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #ffffff;
  line-height: 28px;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
  padding-right: 0px;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #fff;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1px;
  width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #fff transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}

.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}

.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  padding-bottom: 5px;
  padding-right: 5px;
  position: relative;
}

.select2-container--default .select2-selection--multiple.select2-selection--clearable {
  padding-right: 25px;
}

.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  font-weight: bold;
  height: 20px;
  margin-right: 10px;
  margin-top: 5px;
  position: absolute;
  right: 0;
  padding: 1px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  box-sizing: border-box;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
  padding-left: 20px;
  position: relative;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-right: 1px solid #aaa;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #999;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
  position: absolute;
  left: 0;
  top: 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
  background-color: #f1f1f1;
  color: #333;
  outline: none;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  border-left: 1px solid #aaa;
  border-right: none;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__clear {
  float: left;
  margin-left: 10px;
  margin-right: auto;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0;
}

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none;
}

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}

.select2-container--default .select2-results__option--group {
  padding: 0;
}

.select2-container--default .select2-results__option--disabled {
  color: rgba(255, 255, 255, 0.5);
}

.select2-container--default .select2-results__option--selected {
  background-color: #ddd;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #244381;
  font-weight: 800;
  color: white;
}

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.select2-container--classic .select2-selection--single:focus {
  border: 1px solid #5897fb;
}

.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}

.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
}

.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
  background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
  background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0);
}

.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}

.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto;
}

.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb;
}

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none;
}

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0);
}

.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  outline: 0;
  padding-bottom: 5px;
  padding-right: 5px;
}

.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid #5897fb;
}

.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #888;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
  outline: none;
}

.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}

.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb;
}

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0;
}

.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none;
}

.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent;
}

.select2-container--classic .select2-dropdown--above {
  border-bottom: none;
}

.select2-container--classic .select2-dropdown--below {
  border-top: none;
}

.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--classic .select2-results__option--group {
  padding: 0;
}

.select2-container--classic .select2-results__option--disabled {
  color: grey;
}

.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #3875d7;
  color: white;
}

.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJfZ2xvYmFsLnNjc3MiLCJ2YXJzL19nZW5lcmFsLnNjc3MiLCJ2YXJzL19jb2xvdXJzLnNjc3MiLCJfdHlwb2dyYXBoeS5zY3NzIiwiX2FuaW1hdGUuc2NzcyIsIl9sYXlvdXQuc2NzcyIsIl9oZWxwZXJzLnNjc3MiLCJtb2R1bGVzL19uYXYuc2NzcyIsIm1vZHVsZXMvX3RhYmxlcy5zY3NzIiwibW9kdWxlcy9fYnV0dG9uLnNjc3MiLCJtb2R1bGVzL19oZWFkZXIuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fbG9nby5zY3NzIiwibW9kdWxlcy9fZmx5b3V0bWVudS5zY3NzIiwidmFycy9fZ3JhZGllbnRzLnNjc3MiLCJtb2R1bGVzL19vd2xjYXJvdXNlbC5zY3NzIiwibW9kdWxlcy9fdG9nZ2xlLW5hdi5zY3NzIiwibW9kdWxlcy9fc29jaWFsLWxpbmtzLnNjc3MiLCJtb2R1bGVzL19jb250YWN0LWxpbmsuc2NzcyIsIm1vZHVsZXMvX2Vycm9yLTQwNC5zY3NzIiwibW9kdWxlcy9fZ3JhZGllbnQtc2hhZG93LnNjc3MiLCJtb2R1bGVzL19vdmVybGF5LnNjc3MiLCJtb2R1bGVzL19zdmdpY29uLnNjc3MiLCJtb2R1bGVzL19hdmF0YXIuc2NzcyIsIm1vZHVsZXMvX2dmb3JtLnNjc3MiLCJtb2R1bGVzL19saXR5LnNjc3MiLCJtb2R1bGVzL19wb3N0LnNjc3MiLCJtb2R1bGVzL19tb2JpbGUtbWFpbi1uYXZpZ2F0aW9uLnNjc3MiLCJtb2R1bGVzL19wb3J0cmFpdC1ibG9jay1saW5rLnNjc3MiLCJtb2R1bGVzL19zbGljay5zY3NzIiwibW9kdWxlcy9faWNvbi1idWxsZXQtbGlzdC5zY3NzIiwibW9kdWxlcy9fcG9zdC1zaGFyZS5zY3NzIiwibW9kdWxlcy9fcG9zdC1saXN0LnNjc3MiLCJtb2R1bGVzL19mZWF0dXJlcy1saXN0LnNjc3MiLCJtb2R1bGVzL19icmVhZGNydW1icy5zY3NzIiwibW9kdWxlcy9fd2lkZ2V0LnNjc3MiLCJtb2R1bGVzL19wYWdpbmF0aW9uLnNjc3MiLCJtb2R1bGVzL19zaWRlYmFyLnNjc3MiLCJtb2R1bGVzL19zbGFudC5zY3NzIiwibW9kdWxlcy9fZG93bmxvYWQuc2NzcyIsIm1vZHVsZXMvX3RhYmJlZC1wYW5lbHMuc2NzcyIsIm1vZHVsZXMvX2Nhcm91c2VsLW5hdi5zY3NzIiwibW9kdWxlcy9fd3AtZ29vZ2xlLXJldmlld3Muc2NzcyIsIm1vZHVsZXMvX3RmLWZpbHRlcnMuc2NzcyIsIm1vZHVsZXMvX3RmLWZpbHRlci1ncmlkLnNjc3MiLCJtb2R1bGVzL19wcm9maWxlLWNhcmQuc2NzcyIsIm1vZHVsZXMvX3RleHQtb3ZlcmxheS5zY3NzIiwibW9kdWxlcy9fcGhvdG9zd2lwZS5zY3NzIiwibW9kdWxlcy9fc2Nyb2xsYm94LnNjc3MiLCJtb2R1bGVzL19tZWdhLW1lbnUtcGFuZWwuc2NzcyIsIm1vZHVsZXMvX3Bvc3Qtc2VhcmNoLnNjc3MiLCJtb2R1bGVzL19kaXJlY3Rpb25zLWZvcm0uc2NzcyIsIm1vZHVsZXMvX2Rvd25sb2Fkcy1saXN0LnNjc3MiLCJsYXlvdXRzL19oZXJvLXNsaWRlci5zY3NzIiwibGF5b3V0cy9faGVyby5zY3NzIiwibGF5b3V0cy9fc3BhY2VyLnNjc3MiLCJsYXlvdXRzL19zZWN0aW9uLWhlYWRlci5zY3NzIiwibGF5b3V0cy9fc2VydmljZS1ibG9jay1saW5rcy5zY3NzIiwibGF5b3V0cy9faW1hZ2UtdGV4dC1yb3cuc2NzcyIsImxheW91dHMvX2Nhc2Utc3R1ZGllcy1zbGlkZXIuc2NzcyIsImxheW91dHMvX2MyYS1zZWN0aW9uLnNjc3MiLCJsYXlvdXRzL19mb3JtLXNlY3Rpb24uc2NzcyIsImxheW91dHMvX29uZS1jb2x1bW4uc2NzcyIsImxheW91dHMvX3VzcHMuc2NzcyIsImxheW91dHMvX2NvbnRhY3QtbWFpbi5zY3NzIiwibGF5b3V0cy9fc2libGluZy1wYWdlLWdyaWQuc2NzcyIsImxheW91dHMvX3BhZ2UtbGluay1jYXJvdXNlbC5zY3NzIiwibGF5b3V0cy9fcGFnZS1saW5rLWdyaWQuc2NzcyIsImxheW91dHMvX2Ryb3Bkb3duLWxpc3Quc2NzcyIsImxheW91dHMvX2ltYWdlLXJvdy5zY3NzIiwibGF5b3V0cy9fdHdvY29sLnNjc3MiLCJsYXlvdXRzL19nYWxsZXJ5LnNjc3MiLCJsYXlvdXRzL190ZXN0aW1vbmlhbC5zY3NzIiwibGF5b3V0cy9fYWNjcmVkaXRhdGlvbnMuc2NzcyIsImxheW91dHMvX2ltYWdlLXNsaWRlci5zY3NzIiwibGF5b3V0cy9faWNvbi10ZXh0LWNvbHVtbnMuc2NzcyIsImxheW91dHMvX29mZnNldC1jYXJvdXNlbC5zY3NzIiwibGF5b3V0cy9fc2luZ2xlLWNhc2Utc3R1ZHkuc2NzcyIsImxheW91dHMvX2Nhc2Utc3R1ZHktaW50cm8uc2NzcyIsImxheW91dHMvX3Bvc3QtaW50cm8uc2NzcyIsImxheW91dHMvX2Nhbm9weS1kZXNpZ24tc2xpZGVyLnNjc3MiLCJsYXlvdXRzL19zeXN0ZW0tc3BlY2lmaWNhdGlvbi1vcHRpb25zLnNjc3MiLCJsYXlvdXRzL19zaW5nbGUtcHJvZmlsZS5zY3NzIiwibGF5b3V0cy9fcHJvZmlsZXMtZ3JpZC5zY3NzIiwibGF5b3V0cy9fcG9zdC1hdXRob3Itc2VjdGlvbi5zY3NzIiwidmVuZG9yL3NpbXBsZWJhci9fc2ltcGxlYmFyLnNjc3MiLCJ2ZW5kb3IvcGhvdG9zd2lwZS9fcGhvdG9zd2lwZS5zY3NzIiwidmVuZG9yL3Bob3Rvc3dpcGUvX2RlZmF1bHQtc2tpbi5zY3NzIiwidmVuZG9yL3NlbGVjdDIvX3NlbGVjdDIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUF3QkE7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUN2Q0E7QUNBQTtBQUNBO0VBQ0k7RUFDQTs7O0FBR0o7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUF5REk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0VBR0k7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTs7O0FBR0o7RUFDSTtFQUNBLGFDcEdDO0VEcUdEO0VBQ0E7RUFDQSxPRTdGSztFRjhGTCxZRTFHTTs7QUhnR047RUNJSjtJQWFRO0lBQ0E7Ozs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFVSTs7O0FBR0o7QUFBQTtFQUVJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtFQUdJO0VBQ0E7OztBQUtBO0FBQUE7QUFBQTtFQUVJOzs7QUFJUjtBQUFBO0VBRUk7OztBQUdKO0FBU0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7RUFDQTs7O0FBV0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7OztBQUlSO0FBRUE7QUFBQTtFQUVJOzs7QUFHSjtBQUFBO0VBRUk7OztBQUlBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCRTNPTjtFRjRPTTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT0NoUFg7RURpUFcsV0NqUFg7RURrUFcsUUNsUFg7RURtUFc7RUFDQTs7O0FBTWhCO0FBQ0E7QUFBQTtFQUVJOzs7QUFHSjtBQUNBO0VBQ0k7OztBQUdKO0FBQ0E7QUFBQTtBQUFBO0VBR0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0FBQ0E7QUFBQTtFQUVJO0VBQ0E7OztBQUdKO0FBRUE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtFQUdJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0VBR0k7RUFDQTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7RUFDSTtFQUNBOzs7QUFJQTtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0FBQ0E7QUFBQTtBQUFBO0VBR0k7OztBQUNGO0FBRUY7QUFBQTtBQUFBO0VBR0k7OztBQUNGO0FBRUY7QUFB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Q0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7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Qk07O0FBRUE7RUFDSSxPSmpFWDs7QUkwRU87QUFBQTtBQUFBO0FBQUE7RUFJSTs7QUFvQlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFS0tJOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBS0ksT0pqSFY7O0FJb0hNO0VBQ0k7O0FBR0o7RUFDSSxPSnJIWDs7QUl3SE87RUFDSTs7QUF2Qlo7RUFDSSxrQkxGQTtFSzZCSSxPSnRIUDs7QUl3SE87QUFBQTtBQUFBO0FBQUE7RUFJSSxPSmxJVjs7QUlxSU07RUFDSSxPSnhJWDs7QUlrR0Q7RUFDSSxrQkxGQTtFSzZCSSxPSnRIUDs7QUl3SE87QUFBQTtBQUFBO0FBQUE7RUFJSSxPSmxJVjs7QUlxSU07RUFDSSxPSnhJWDs7O0FJK0lUO0VBQ0k7OztBQUlB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S1o7RUFDSTs7QVIxTko7RVE4Tkk7SUFDSTs7OztBQzVUWjtBQUVBO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQSxZTnpCSzs7O0FNMkJUO0VBQ0k7RUFDQSxPTnJCSzs7O0FNd0JUO0VBQ0ksa0JObkNPOzs7QU1zQ1g7RUFDSTs7O0FDdENKO0VWMkpJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZRy9KSztFSGdLTDtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9VdEt3QztFVnVLeEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBVXpKSjtFVmlJSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVTVJd0M7RVY2SXhDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FVOUlJO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0ROO0VRakRNOztBQWpDUjtFVnVKSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPRzlKSztFSCtKTDtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVekpKO0VWaUlKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZRTFFTTtFRjJFTjtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9VNUl3QztFVjZJeEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBVXJKSjtFVjZISjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWVVqSXdCO0VWa0l4QjtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9FakZNO0VGa0ZOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FVM0lRO0VBQ0ksWVJvRE47RVFuRE07RUFDQSxjUmtETjtFUWpETTs7QUFqQ1I7RVZ1Sko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1VqSzRDO0VWa0s1QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVekpKO0VWaUlKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZRTFFTTtFRjJFTjtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9VNUl3QztFVjZJeEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBVXJKSjtFVjZISjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWVVqSXdCO0VWa0l4QjtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9FakZNO0VGa0ZOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FVM0lRO0VBQ0ksWVJvRE47RVFuRE07RUFDQSxjUmtETjtFUWpETTs7QUFqQ1I7RVZ1Sko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0c5Sks7RUgrSkw7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBVXpKSjtFVmlJSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVTVJd0M7RVY2SXhDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QVVySko7RVY2SEo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlVakl3QjtFVmtJeEI7RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPRWpGTTtFRmtGTjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBVTNJUTtFQUNJLFlSb0ROO0VRbkRNO0VBQ0EsY1JrRE47RVFqRE07O0FBakNSO0VWdUpKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZRTFFTTtFRjJFTjtFQUNBLGFFbktDO0VGb0tEO0VBQ0E7RUFDQSxXRWxLQztFRm1LRDtFQUNBLE9Vaks0QztFVmtLNUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBVTFLUTtFQUNJLGtCUExkO0VPTWMsT1BkZDtFT2VjLGNQUGQ7O0FPU2M7RUFDSTs7QUFXcEI7RVZpSUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1U1SXdDO0VWNkl4QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVckpKO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0ROO0VRakRNOztBQWpDUjtFVnVKSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVWpLNEM7RVZrSzVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QVV6Sko7RVZpSUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1U1SXdDO0VWNkl4QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVckpKO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0ROO0VRakRNOztBQWpDUjtFVnVKSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVWpLNEM7RVZrSzVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QVV6Sko7RVZpSUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1U1SXdDO0VWNkl4QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVckpKO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0ROO0VRakRNOztBQWpDUjtFVnVKSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVWpLNEM7RVZrSzVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QVV6Sko7RVZpSUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1U1SXdDO0VWNkl4QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVckpKO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0ROO0VRakRNOztBQWpDUjtFVnVKSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUUxRU07RUYyRU47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPVWpLNEM7RVZrSzVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QVV6Sko7RVZpSUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlFMUVNO0VGMkVOO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT1U1SXdDO0VWNkl4QztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FVckpKO0VWNkhKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZVWpJd0I7RVZrSXhCO0VBQ0EsYUVuS0M7RUZvS0Q7RUFDQTtFQUNBLFdFbEtDO0VGbUtEO0VBQ0EsT0VqRk07RUZrRk47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVUzSVE7RUFDSSxZUm9ETjtFUW5ETTtFQUNBLGNSa0RO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Rlg7O0FtQm1DRDtFQU1ROztBQUxKO0VBQ0ksa0JwQmdETjs7QW9CMUNNO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSSxPbkJuRFg7O0FtQnNETztFQUNJOztBQUdKO0VBQ0ksT25CM0RYOztBbUI4RE87RUFDSSxrQm5CL0RYO0VtQmdFVyxPbkIxRFY7O0FtQjREVTtFQUNJO0VBQ0EsT25COURkOztBbUI2QkY7RUFNUTs7QUFMSjtFQUNJLGtCcEJnRE47O0FvQjFDTTtBQUFBO0FBQUE7QUFBQTtFQUlJOztBQUdKO0VBQ0ksT25CbkRYOztBbUJzRE87RUFDSTs7QUFHSjtFQUNJLE9uQjNEWDs7QW1COERPO0VBQ0ksa0JuQi9EWDtFbUJnRVcsT25CMURWOztBbUI0RFU7RUFDSTtFQUNBLE9uQjlEZDs7QW1CNkJGO0VBTVE7O0FBTEo7RUFDSSxrQnBCZ0ROOztBb0IxQ007QUFBQTtBQUFBO0FBQUE7RUFJSTs7QUFHSjtFQUNJLE9uQm5EWDs7QW1Cc0RPO0VBQ0k7O0FBR0o7RUFDSSxPbkIzRFg7O0FtQjhETztFQUNJLGtCbkIvRFg7RW1CZ0VXLE9uQjFEVjs7QW1CNERVO0VBQ0k7RUFDQSxPbkI5RGQ7O0FtQjZCRjtFQU1ROztBQUxKO0VBQ0ksa0JwQmdETjs7QW9CMUNNO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSSxPbkJuRFg7O0FtQnNETztFQUNJOztBQUdKO0VBQ0ksT25CM0RYOztBbUI4RE87RUFDSSxrQm5CL0RYO0VtQmdFVyxPbkIxRFY7O0FtQjREVTtFQUNJO0VBQ0EsT25COURkOztBbUI2QkY7RUFNUTs7QUFMSjtFQUNJLGtCcEJnRE47O0FvQjFDTTtBQUFBO0FBQUE7QUFBQTtFQUlJOztBQUdKO0VBQ0ksT25CbkRYOztBbUJzRE87RUFDSTs7QUFHSjtFQUNJLE9uQjNEWDs7QW1COERPO0VBQ0ksa0JuQi9EWDtFbUJnRVcsT25CMURWOztBbUI0RFU7RUFDSTtFQUNBLE9uQjlEZDs7QW1CaUZGO0VBRVE7O0FBRUE7QUFBQTtBQUFBO0FBQUE7RUFJSTs7QUFHSjtFQUNJLGtCcEJGUjs7QW9CVko7RUFFUTs7QUFFQTtBQUFBO0FBQUE7QUFBQTtFQUlJOztBQUdKO0VBQ0ksa0JwQkZSOztBb0JWSjtFQUVROztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSSxrQnBCRlI7O0FvQlZKO0VBRVE7O0FBRUE7QUFBQTtBQUFBO0FBQUE7RUFJSTs7QUFHSjtFQUNJLGtCcEJGUjs7QW9CVko7RUFFUTs7QUFFQTtBQUFBO0FBQUE7QUFBQTtFQUlJOztBQUdKO0VBQ0ksa0JwQkZSOztBb0JWSjtFQUVROztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSSxrQnBCRlI7O0FvQk1RO0VBQ0k7O0FBakJoQjtFQUVROztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSSxrQnBCRlI7O0FvQlZKO0VBdUJRLE9uQnRHUDs7QW1Cd0dPO0VBQ0ksa0JwQmhCUjs7QW9CVko7RUF1QlEsT25CdEdQOztBbUJ3R087RUFDSSxrQnBCaEJSOzs7QXFCbEdaO0VBQ0M7RUFDQTs7O0FDRkQ7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNITztFQUNJLGtCdEJFRjtFc0JERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBLGtCdEJWTjtFc0JXTTs7QUFJUjtFQUNJOztBQUdSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBRUksT3RCdkJBO0VzQndCQTtFQUNBO0VBQ0E7O0FBR0o7RXpCQ0k7RUFFSTs7QXlCQ1I7RUFDSSxldkIzQ0g7O0F1QitDRztFQUNJOztBQUlSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBT0k7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTs7QUFHSjtBQUFBO0VBRUk7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FDdEZSO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNHO0VBQ0s7OztBQUVWO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDSTtFQUNDO0VBQ0c7RUFDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDSTtFQUNDO0VBQ0c7OztBQUVWO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNROzs7QUFFVjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNROzs7QUFFVjtFQUNFO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDUTs7O0FBRVY7RUFDRTs7O0FBRUY7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNRO0VBQ1I7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDUTtFQUNSOzs7QUFFRjtFQUNFOzs7QUNqTUE7RTNCMENJO0VBRUk7RTJCMUNKLGV6QkNIO0V5QkFHOztBM0IyQkk7RTJCOUJSO0kzQjBDSTtJQUVJOzs7QTJCdkNKO0FBQUE7RUFFSTtFQUNBOztBM0JvRlI7RTJCdkZJO0FBQUE7SUFNUTs7O0EzQmlGWjtFMkJ2Rkk7QUFBQTtJQVVROzs7QUFLWjtFQUNJLGV6QmxCSDtFeUJtQkc7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0EzQmlFUjtFMkJ4RUE7SUFVUTs7RUFFQTtJQUNJOzs7QTNCMkRaO0UyQnREQTtJQUVROzs7QUFLSjtBQUFBO0VBRUk7O0FBR0o7RUFDSSxZekJoRFA7RXlCaURPLFN6QmpEUDtFeUJrRE8sa0J4QmpERjtFd0JrREU7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFSTs7QUFLWjtFQUNJOztBM0IwQko7RTJCM0JBO0lBR1E7SUFDQSxZekJsRVA7Ozs7QXlCdUVMO0VBQ0k7O0FBR0k7RUFDSSxPeEIzRUY7RXdCNEVFO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGV6QjdGSDtFeUI4Rkc7O0EzQkxKO0UyQlBBO0lBZVE7SUFDQTs7O0EzQlRSO0UyQlBBO0lBb0JROzs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QTNCNUJSO0UyQjBCSTtJQUtRLGF6QnhIWDs7O0F5QjRIRztFQUNJO0VBQ0EsV3pCL0hQOztBRjBGRDtFMkJtQ0k7STNCckZBO0lBRUk7OztBQWRBO0UyQmlHSjtJM0JyRkE7SUFFSTs7O0EyQjZGQTtFQUNJO0VBQ0E7RUFDQTs7QTNCaERaO0UyQjZDUTtJQU1RO0lBQ0E7Ozs7QUNqSnBCO0VBQ0k7O0FBR0k7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQSxrQnpCVkw7RXlCV0ssT3pCTE47RXlCTU07RUFDQTs7O0FDWmhCO0VBQ0k7O0FBRUE7RUFDSTs7QTdCeUZKO0U2QjdGSjtJQU9ROzs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QTdCdUVKO0U2Qi9FQTtJQVVROzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBLE8zQmpESDtFMkJvREc7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RTdCaUdKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxRNkIzR3VDO0U3QjRHdkM7RTZCM0dROztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0IxQjdGRjtFMEI4RkUsa0JkeEdJO0VjeUdKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7O0FBTWhCO0VBQ0k7OztBQ2hKSjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7OztBQUdSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQVdBOztBQVZBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUtKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0ksTzVCdkdIO0U0QndHRztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSSxrQjNCbkhIOztBMkJ5SEc7RUFDSSxrQjNCdEhOOztBMkJ1SE07RUFDSSxrQjNCeEhWOzs7QTJCK0hWO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFPSTtFQUNJO0VBQ0EsTTVCL0lQOztBNEJpSkc7RUFDSTs7QUFLSjtBQUFBO0VBRUk7RUFDQSxrQjNCekpGO0UyQjBKRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSSxNNUJuS1A7O0E0QnFLRztFQUNJLE81QnRLUDs7O0E2QkpMO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQSxPNUJaUDs7QTRCaUJMO0VBQ0k7OztBQ25CUjtFQUVDOztBQUVBO0VBQ0M7O0FoQ3dGRTtFZ0M3Rko7SUFTRTtJQUNBO0lBQ0E7SUFDQTs7O0FoQ2lGRTtFZ0M3Rko7SUFnQkU7OztBQUlEO0VBRUM7RUFDQTtFQUNBOztBQUVBO0VBQ0M7O0FoQ2tFQztFZ0N6RUg7SUFXRTtJQUNBO0lBQ0EsVzlCOUJFOztFOEIrQkY7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBS0g7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDQzs7QUFHRDtFQUNDO0VBQ0E7O0FBR0Q7RUFDQyxrQjlCa0RVOztBOEIvQ1g7RUFDQyxrQjlCZ0RTOztBOEI3Q1Y7RUFDQyxrQjlCOENVOzs7QStCM0hUO0VBQ0ksa0JsQldXOztBa0JSZjtFQUNJOztBQUVBO0VBQ0ksWS9CTFA7O0ErQk9PO0VBQ0k7O0FqQ2lGWjtFaUNsRlE7SUFHUSxrQjlCUFY7OztBSHNGTjtFaUNsRlE7SUFNUTs7RUFFQTtJQUNJLGtCOUJmZDtJOEJnQmM7O0VBQ0E7SUFDSTs7RUFHSjtJQUNJOztFQUVBO0lBQ0k7O0VBSVI7SUFDSTs7O0FqQzBEeEI7RWlDcERRO0lBRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFDQTtJQUNJO0lBQ0EsUy9COUNuQjtJK0IrQ21CO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0Esa0JsQnpDTztJa0IwQ1A7SUFDQTtJQUNBO0lBQ0E7OztBQU1oQjtFQUNJO0VBQ0E7RUFDQTs7QWpDb0JaO0VpQ2pCZ0I7SUFDSTs7O0FBS1o7RUFDSTs7QUFHSjtFQUNJLGUvQm5GWDs7QStCdUZHO0VBQ0k7O0FqQ0NSO0VpQ0ZJO0lBSVE7OztBQUlSO0VBQ0ksZS9CaEdQO0UrQmlHTztFQUNBLFMvQmxHUDtFK0JtR087O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QWpDaEJaO0VpQ1lRO0lBT1E7SUFDQTs7O0FBSVI7RUFDSTs7QWpDekJaO0VpQ3dCUTtJQUlROzs7QWpDNUJoQjtFaUNNSTtJQTJCUTtJQUNBO0lBQ0EsSy9CNUhYOzs7QUZ5RkQ7RWlDTUk7SUFpQ1E7SUFDQTtJQUNBOzs7QUFNQTtFQUNJOztBQUdKO0VBQ0k7RUFDQSxrQjlCckpWO0U4QnVKVTs7QUFDQTtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJLFMvQnJNSDtFK0JzTUc7RUFDQSxrQjlCNU1HO0U4QjZNSDtFQUNBO0FBQW9DO0VBQ3BDLE85QnpNRTtFOEIwTUY7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBakMxSEo7RWlDcUhBO0lBUVE7OztBakM3SFI7RWlDcUhBO0lBWVE7SUFDQTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QWpDeklKO0VpQ3FJQTtJQU9ROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQSxLL0I1T0g7O0FGeUZEO0VpQ2dKQTtJQU1ROzs7QWpDdEpSO0VpQ2dKQTtJQVVROzs7QUFHSjtFQUVJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBRUk7O0FBR0o7RUFDSTtFQUNBOztBakMvS1I7RWlDNktJO0lBS1E7OztBakNsTFo7RWlDNktJO0lBU1EsSy9CL1FYO0krQmdSVzs7O0FqQ3ZMWjtFaUM2S0k7SUFjUTs7O0FBTVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCOUI5UkU7RThCK1JGO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0ksYS9CdFRQO0UrQnVUTztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0Esa0I5Qm5WRjtFOEJvVkU7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQjlCdlZGO0U4QndWRSxrQmxCNVV1QjtFa0I2VXZCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0FBQThCOztBQUk5QjtFQUNJOztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYS9CeFlIO0UrQnlZRzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FDblpSO0VBQ0ksa0IvQklNO0UrQkhOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBbEM2RUo7RWtDbEZBO0lBUVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOzs7QUNuQ1I7RUFDSTtFQUNBO0VBQ0EsYWpDSkM7RWlDS0Q7RUFDQTs7QUFFQTtFQUNJO0VuQ21ISiw0Qm1DbEhxQjtFbkNtSHJCLHlCbUNuSHFCO0VuQ29IckIsb0JtQ3BIcUI7RW5DcUhyQjtFQUNBO0VBQ0E7RUFDQSx3Qm1DeEh5QjtFbkN5SHpCLHFCbUN6SHlCO0VuQzBIekIsZ0JtQzFIeUI7RW5DMkh6QixtQ21DM0g0QztFbkM0SDVDLGdDbUM1SDRDO0VuQzZINUMsMkJtQzdINEM7RW5DOEg1QyxtQ21DOUgrQztFbkMrSC9DLGdDbUMvSCtDO0VuQ2dJL0MsMkJtQ2hJK0M7O0FBRy9DO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFFSTtFQUNBO0VBRUE7O0FuQ3lESjtFbUM5REE7SUFRUTs7O0FBS0o7RUFDSTs7O0FDN0NaO0VBQ0k7RUFDQSxrQmpDSE87RWlDSVA7O0FBRUE7RUFDSSxTbENGSDtFa0NHRzs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBLGFsQ2xCSDtFa0NtQkc7O0FBRUE7RUFFSTs7QUFJQTtFQUNJLE9qQzFCUDtFaUMyQk87O0FBS1o7RUFDSSxPakN6QkM7RWlDMEJELGFsQ3BDSDtFa0NxQ0c7RUFDQTtFcENNQTtFQUVJOztBb0NKUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7O0FBS1o7RUFDSTs7O0FBS0k7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOzs7QUM5RWhCO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSSxlbkNiSDtFbUNjRztFQUNBOztBQUlBO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0EsTWxDeEJOOztBa0M4QkY7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQSxNbENwQ047O0FId0ZOO0VxQzVGSjtJQThDUTs7OztBQUlSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPbEN0RE07QWtDc0RXO0VBQ2pCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUE7QUFBQTtFQUNJOztBckNzQko7RXFDMUNKO0FBQUE7SUF3QlE7Ozs7QUFJUjtFQUNJLFlsQy9FSztBa0MrRWdCOzs7QUFHekI7RUFDSSxZbEMvRU07QWtDK0VnQjtFQUN0QixjbENoRk07RWtDaUZOOzs7QUN0Rko7RUFDSSxrQnZCRVc7RXVCRFg7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0V0Q2tIQSw0QnNDakhxQjtFdENrSHJCLHlCc0NsSHFCO0V0Q21IckIsb0JzQ25IcUI7RXRDb0hyQjtFQUNBO0VBQ0E7RUFDQSx3QnNDdkgyQjtFdEN3SDNCLHFCc0N4SDJCO0V0Q3lIM0IsZ0JzQ3pIMkI7RXRDMEgzQixtQ3NDMUh3QztFdEMySHhDLGdDc0MzSHdDO0V0QzRIeEMsMkJzQzVId0M7RXRDNkh4QyxtQ3NDN0gyQztFdEM4SDNDLGdDc0M5SDJDO0V0QytIM0MsMkJzQy9IMkM7RUFDdkM7O0F0Q2tGSjtFc0M3Rko7SUFlUTtJQUNBO0lBQ0E7SUFDQTs7O0F0QzJFSjtFc0M3Rko7SUFzQlE7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsS3BDL0JIOztBRnlGRDtFc0NwRUE7SUFhUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0EsT25DL0VIOztBbUNpRk87RUFDSSxNbkNsRlg7RW1DbUZXLGtCbkN2RlY7O0FtQzRGRjtFQUNJLGtCbkN6Rkg7RW1DMEZHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDbkdaO0VBQ0k7O0F2QzRGQTtFdUM3Rko7SUFJUTs7O0FBRUo7RUFDSTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7O0FDakJSO0VBQ0k7O0FBRUo7RUFDSSxPckNSRTtFcUNTRjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0ksZXRDVFA7O0FzQ1lHO0VBQ0k7RUFDQSxrQnJDZkY7RXFDZ0JFLE9yQ2xCSDs7QXFDc0JMO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUVBO0VBQ0ksa0JyQy9CTjtFcUNnQ007O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUNBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ2xFSjtFQUNJO0VBQ0E7O0F6Q3lGUjtFeUMzRkk7SUFJUTs7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7O0F6Q2dGaEI7RXlDbkZZO0lBTVEsa0J0Q1hkOzs7QUh3Rk47RXlDbkZZO0lBVVE7OztBQUdKO0VBRUksa0J0Q3RCZDs7QXNDMEJNO0VBQ0k7O0FBS1o7RUFDSTtFQUNBLFN2Q2pDUDtFdUNtQ087RUFDQTs7QXpDcURSO0V5QzFESTtJQU9ROzs7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFFSSxrQnRDdERmO0VzQ3VEZSxjdEN2RGY7O0FzQzJETztFQUNJOztBQU1oQjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFekMrQ0EsNEJ5QzlDcUI7RXpDK0NyQix5QnlDL0NxQjtFekNnRHJCLG9CeUNoRHFCO0V6Q2lEckI7RUFDQTtFQUNBO0VBQ0Esd0J5Q3BEMkI7RXpDcUQzQixxQnlDckQyQjtFekNzRDNCLGdCeUN0RDJCO0V6Q3VEM0IsbUN5Q3ZEbUM7RXpDd0RuQyxnQ3lDeERtQztFekN5RG5DLDJCeUN6RG1DO0V6QzBEbkMsbUN5QzFEc0M7RXpDMkR0QyxnQ3lDM0RzQztFekM0RHRDLDJCeUM1RHNDO0VBQ2xDOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FDMUZSO0VBQ0k7RUFDQTs7QTFDMEZKO0UwQzVGQTtJQUtRO0lBQ0EsZXhDSFA7SXdDSU8sWXhDSlA7OztBd0NPRztFQUNJOztBQUlRO0VBQ0k7O0FBS0o7RUFDSTs7QTFDc0VwQjtFMENsRkk7SUFrQlE7OztBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQVFoQjtFQUNJO0VBQ0E7O0FBS0o7RUFDSTtFQUNBOztBQUlSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZdkNoRkU7RXVDaUZGOztBQUVBO0VBQ0k7RUFDQTtFQUNBLE94Q3ZGUDtFd0N3Rk8sUXhDeEZQO0V3Q3lGTzs7QTFDQVI7RTBDakJBO0lBeUNRO0lBQ0E7Ozs7QUNuSEE7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDakJaO0VBQ0k7RUFDQTtFQUNBOztBQUlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QTVDMkVaO0U0QzVFUTtJQUdRO0lBQ0E7OztBQU1oQjtFQUNJLGtCekN2QkU7O0F5Q3lCRTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsSzFDbENYO0UwQ21DVzs7QTVDc0RaO0U0Qy9EUTtJQVdROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QTVDNkNaO0U0Q2hEUTtJQU1ROzs7QUFLSjtFQUNJO0VBQ0E7O0FBTWhCO0VBQ0k7RUFDQSxTMUM5REg7RTBDK0RHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0E1Q0NKO0U0Q0VRO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7OztBNUNOWjtFNENXUTtJQUNJOztFQUdKO0lBQ0k7SUFDQTs7O0FBS1o7RTVDeEVJO0VBRUk7RTRDd0VKO0VBQ0EsT3pDekhFO0V5QzBIRjtFQUNBLGtCekNuSEU7RXlDb0hGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0E1Q3BHSTtFNENvRlI7STVDeEVJO0lBRUk7OztBNEN3Rko7RUFFSSxrQnpDbElGO0V5Q21JRSxPekN2SUg7O0F5Q3lJRztFQUNJLE16QzFJUDs7QXlDOElEO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0E1QzFESjtFNEN1REE7SUFNUTs7O0FBR0o7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUE7RUFDSSxNekMzS1g7O0F5Q2lMTDtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QTVDM0ZKO0U0Q3FGQTtJQVNROzs7QUFJUjtFQUNJO0VBQ0EsTXpDcE1FO0V5Q3FNRjtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSSxlMUN2TUg7RTBDd01HOztBNUMvR0o7RTRDNkdBO0lBS1E7SUFDQTtJQUNBO0lBQ0EsYzFDOU1QOzs7QTBDa05EO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQSxjekMvTkY7O0FIZ0dOO0U0Q3lIQTtJQVNRO0lBQ0E7O0VBQ0E7SUFDSTtJQUNBO0lBQ0EsY3pDdk9OOzs7QUhnR047RTRDeUhBO0lBbUJROzs7QTVDNUlSO0U0Q2lKSTtJQUNJOzs7O0FDL09aO0VBQ0k7O0E3QzRGQTtFNkM3Rko7SUFJUTtJQUNBOzs7QUFHSjtFQUVJO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJOztBQUVBO0VBQ0k7O0FBS0o7RUFDSSxhM0N4QlA7RTJDeUJPLGdCM0N6QlA7O0FGeUZEO0U2Q2xFSTtJQUtRO0lBQ0E7OztBN0M0RFo7RTZDbEVJO0lBVVE7SUFDQTs7O0FBSVI7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQSxlM0M5Q0g7RTJDK0NHO0VBQ0E7RUFDQTs7QUFFQTtFQUNJLE8xQ3ZESDs7QUg0Rkw7RTZDOUNBO0lBYVEsUzNDeERQOzs7QTJDNEREO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RTdDa0RKLDRCNkNqRHlCO0U3Q2tEekIseUI2Q2xEeUI7RTdDbUR6QixvQjZDbkR5QjtFN0NvRHpCO0VBQ0E7RUFDQTtFQUNBLHdCNkN2RCtCO0U3Q3dEL0IscUI2Q3hEK0I7RTdDeUQvQixnQjZDekQrQjtFN0MwRC9CLG1DNkMxRHVDO0U3QzJEdkMsZ0M2QzNEdUM7RTdDNER2QywyQjZDNUR1QztFN0M2RHZDLG1DNkM3RDBDO0U3QzhEMUMsZ0M2QzlEMEM7RTdDK0QxQywyQjZDL0QwQzs7QTdDbUIxQztFNkNmUTtJQUVROzs7QTdDYWhCO0U2Q2ZRO0lBTVE7OztBN0NTaEI7RTZDZlE7SUFVUTs7O0FBR1I7RUFDSSxrQjFDN0ZMO0UwQzhGSyxZQUNJO0VBRUo7RUFDQTs7QUFFSjtFQUNJOztBN0NQWjtFNkNNUTtJQUdROzs7QUFJUjtFQUNJOztBQUlBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQSxXM0NwSGY7O0EyQ3VIVztFQUNJOztBN0M5QmhCO0U2QzZCWTtJQUlROzs7QUFJUjtFQUNJOztBQU1oQjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOzs7QUFLWjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7O0E3Q2hFQTtFNkMrREo7SUFJUTs7OztBQUlSO0VBQ0ksTzNDaktDOzs7QTRDSkw7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0I1Q2hCSDtFNENpQkc7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQSxLNUMzQkg7RTRDNEJHOztBQUVBO0VBQ0k7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBLE8zQzdERTs7QTJDZ0VOO0VBQ0k7RUFDQSxlNUNqRUg7RTRDa0VHOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPM0NyRUM7RTJDc0VEOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0Esa0IvQnRFdUI7RStCdUV2QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBS1o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0EsWTVDbElIO0U0Q21JRztFQUNBOztBQUVBO0VBQ0k7O0FBS0o7RUFDSTs7QUFHSjtFOUNPSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUc3Sk07RUg4Sk47RUFDQSxhRW5LQztFRm9LRDtFQUNBO0VBQ0EsV0VsS0M7RUZtS0Q7RUFDQSxPRzFLTTtFSDJLTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U4Q3RCUTs7QTlDeUJKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0E4QzNCQTtFQUNJLGtCM0N4SlA7RTJDeUpPLGMzQ3pKUDs7QUg0Rkw7RThDdURJO0lBVVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQ3RLWjtFQUNJOztBQUNBO0VBQ0k7O0FBRUE7RUFDSTs7QS9DdUZSO0UrQ3BGSTtJQUVRO0lBQ0E7SUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU1RO0UvQzRLWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxRK0N2TDRDO0UvQ3dMNUM7RStDdkxnQjtFQUNBOztBL0M2RGhCO0UrQ2hFWTtJL0M0S1o7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsUStDbExnRDtJL0NtTGhEOzs7QUF6SEE7RStDckRRO0lBRVE7SUFDQTtJQUNBLEs3Q3hDZjtJNkN5Q2U7SUFDQSxNN0MxQ2Y7STZDMkNlOzs7QUFTSjtFL0NpSVo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFErQzNJK0M7RS9DNEkvQztFK0MzSWdCO0VBQ0E7O0EvQ2tDaEI7RStDckNZO0kvQ2lJWjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsUStDdEltRDtJL0N1SW5EOzs7QUF4R0E7RStDMUJRO0lBRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQSxNN0NyRWY7STZDc0VlOzs7QUFNaEI7RUFDSTtFQUNBO0VBQ0EsUzdDL0VIOztBNkNpRkc7RUFDSTs7QS9DT1I7RStDYkE7SUFVUTtJQUNBO0lBQ0EsSzdDeEZQO0k2Q3lGTyxNN0N6RlA7STZDMEZPOzs7QUFJUjtFQUNJLGE3Qy9GSDtFNkNnR0csZTdDaEdIO0U2Q2lHRztFQUNBOztBL0NUSjtFK0NLQTtJQU1RO0lBQ0E7SUFDQSxRN0N0R1A7STZDdUdPLE83Q3ZHUDtJNkN3R087Ozs7QUNoSFo7QUFDQTtBQUFBO0FBQUE7QUFHQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFHSjtBQUNBO0FBQ0k7RUFDQTtFQUNBO0FBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFk3Qy9ETTtFNkNnRU47RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFDQTtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7QUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7RUFFSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFJQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQ3BNSjtFQUNJOztBakQ0RkE7RWlEN0ZKO0lBSVE7OztBQUdKO0VBRUksa0I5Q1JDO0U4Q1NEO0VBQ0E7RUFFQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBSUE7RUFDSTtFQUNBOztBQUtKO0VBQ0k7RUFDQTtFQUNBLGUvQ3hDUDs7QStDNENEO0VBQ0k7OztBQ2pEUjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QWxEeUZKO0VrRDFGQTtJQUlRO0lBQ0E7SUFDQSxPL0NORjtJK0NPRSxlaEROUDtJZ0RPTztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBbEQ2RVI7RWtEN0ZKO0lBcUJRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxZQUNJO0lBRUo7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0Esa0IvQy9DRDtJK0NnREM7SUFDQSxZQUNJO0lBRUo7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQSxLaEQ1RFA7O0VnRCtERztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBSVE7SUFDSTtJQUNBLFlBQ0k7SUFFSjtJQUNBO0lBQ0EsTy9DaEZkOztFK0NvRmM7SUFDSSxPL0N2Rm5COztFK0N3Rm1CO0lBQ0k7O0VBT2hCO0lBQ0k7O0VBSVI7SUFFSTs7O0FsRFhaO0VrRFNRO0lBS1E7OztBbERkaEI7RWtEaUJZO0lBQ0k7SUFDQTtJQUNBO0lBRUE7SUFDQTs7RUFFQTtJQUNJLE8vQzlHZjtJK0MrR2U7O0VBQ0E7SUFDSTtJQUNBLE8vQ2xIbkI7SStDbUhtQjs7RUFLSTtJQUNJLE8vQ2pJM0I7O0UrQ29JdUI7SUFDSTs7O0FsRHpDaEM7RWtEaURnQjtJQUNJO0lBQ0EsTy9DdklmO0krQ3dJZTtJQUNBOzs7QWxEckRwQjtFa0QwRGdCO0lBQ0ksTy9DdkpmO0krQ3dKZTtJQUNBOztFQUVKO0lBQ0k7SUFDQTtJQUNBLE8vQzlKZjs7RStDa0tlO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0EsTy9DMUtuQjtJK0MyS21COztFQUVBO0lBQ0ksTy9DdEx2Qjs7RStDMkxtQjtJQUNJLE8vQzVMdkI7O0UrQ2lNVztJQUNJOztFQUVBO0lBQ0k7O0VBR0o7SUFDSTtJQUNBOztFQUVBO0lBQ0ksTy9DN012Qjs7O0FINEZMO0VrRHVIWTtJQUNJOzs7QWxEeEhoQjtFa0QySFE7SUFDSTtJQUNBOzs7QWxEN0haO0VrRGdJUTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxPL0MxTlA7O0UrQzROTztJQUNJLE8vQ3JPWDs7O0FINEZMO0VrRDdGSjtJQTZPUTs7OztBQzdPUjtFQUNJO0VBQ0E7O0FuRDJGQTtFbUQ3Rko7SUFLUTtJQUNBO0lBQ0E7OztBbkRzRko7RW1EN0ZKO0lBVVE7OztBbkRtRko7RW1EaEZBO0lBRVE7SUFDQTs7O0FuRDZFUjtFbURoRkE7SUFPUTtJQUNBOzs7QUFJUjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0EsV2pEM0JIO0VpRDRCRztFQUNBOztBbkQ2REo7RW1EcEVBO0FBQUE7SUFVUTs7O0FuRDBEUjtFbURwRUE7QUFBQTtJQWNROzs7QUFLSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBS0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQmhEOURGO0VnRCtERTs7QW5EeUJSO0VtRGpDSTtBQUFBO0lBV1E7O0VBRUE7QUFBQTtJQUNJOzs7QUFJUjtBQUFBO0VBQ0ksT2hEaEZMOztBSDhGUDtFbURWWTtBQUFBO0lBQ0ksa0JoRC9FVjs7O0FnRG9GRjtFQUNJO0VBQ0E7OztBQzNGWjtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBR0k7RUFDSSxrQmpEWFA7O0FpRGFHO0VBQ0k7O0FBSVI7RUFDSSxrQmpEakJGO0VpRGtCRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLE9sRDlCUDtFa0QrQk87RUFDQTs7O0FDbkNSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSSxrQmxESEY7O0FrRFNFO0VBQ0k7RUFDQTtFQUNBOztBQU9JO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0Esa0JsRHpCZDs7QWtEZ0NOO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFDQTtFQUNJLE1sRHREVjs7QWtENEROO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FDaEZoQjtFQUNJO0VBQ0Esa0JuREdNO0VtREZOLGtCdkNGVztFdUNHWDtFQUNBOztBQUVBO0VBQ0ksZXBESkg7O0FGeUZEO0VzRHRGQTtJQUdRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0ksa0JuRGRFOztBbURpQk47RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBdERrRUo7RXNEdkVBO0lBUVE7SUFDQTs7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0V0RHdFUiw0QnNEdkV5QjtFdER3RXpCLHlCc0R4RXlCO0V0RHlFekIsb0JzRHpFeUI7RXREMEV6QjtFQUNBO0VBQ0E7RUFDQSx3QnNEN0U2QjtFdEQ4RTdCLHFCc0Q5RTZCO0V0RCtFN0IsZ0JzRC9FNkI7RXREZ0Y3QixtQ3NEaEY0QztFdERpRjVDLGdDc0RqRjRDO0V0RGtGNUMsMkJzRGxGNEM7RXREbUY1QyxtQ3NEbkYrQztFdERvRi9DLGdDc0RwRitDO0V0RHFGL0MsMkJzRHJGK0M7O0F0RHlDL0M7RXNEakRBO0lBWVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsZXBENURIO0VvRDZERztFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0F0RGtCUjtFc0RqQ0E7SUFtQlE7SUFDQTtJQUNBOzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F0RFRKO0VzREdBO0lBU1E7SUFDQTs7OztBQzFHWjtFQUNJO0VBQ0E7RUFDQTs7QXZEMEZBO0V1RDdGSjtJQU1ROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBLGdCckRUSDs7QXFEV0c7RUFDSTs7QUFJUjtFQUNJLGtCcERsQkU7O0FvRHFCTjtFQUNJLGtCcERwQkU7RW9EcUJGLGtCeENYMkI7RXdDWTNCO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0FBRUE7RUFDQSxrQnhDckJtQjtFd0NzQm5CO0FBRUE7RUFDQTtFQUNBO0FBQXdCO0VBQ3hCOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0k7O0FBRUo7RUFDSTs7QUFJQTtFQUNJO0VBQ0E7RUFDQSxLckRuRWY7O0FxRHFFZTtFQUNJOztBQUdKO0VBQ0k7O0F2RGVwQjtFdUR6Qlk7SUFjUTtJQUNBOzs7QXZEVXBCO0V1RE5vQjtJQUNJOzs7QUFReEI7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0k7O0FBTVI7RUFDSSxhckR4SFA7RXFEeUhPLGtCcER2SEg7RW9Ed0hHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFFQTtFQUNJOztBQUtaO0V2RDFCQSw0QnVEMkJxQjtFdkQxQnJCLHlCdUQwQnFCO0V2RHpCckIsb0J1RHlCcUI7RXZEeEJyQjtFQUNBO0VBQ0E7RUFDQSx3QnVEcUIyQjtFdkRwQjNCLHFCdURvQjJCO0V2RG5CM0IsZ0J1RG1CMkI7RXZEbEIzQixtQ3VEa0JtQztFdkRqQm5DLGdDdURpQm1DO0V2RGhCbkMsMkJ1RGdCbUM7RXZEZm5DLG1DdURlc0M7RXZEZHRDLGdDdURjc0M7RXZEYnRDLDJCdURhc0M7RUFDbEM7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFNQTtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0EsT3BEakxYOztBb0RzTEQ7RUFDSSxrQnBEdkxIO0VvRHdMRztFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFLWjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F2RGxJUjtFdUQ2SEk7SUFRUTs7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBTVI7RXZEdEhKLDRCdUR1SHlCO0V2RHRIekIseUJ1RHNIeUI7RXZEckh6QixvQnVEcUh5QjtFdkRwSHpCO0VBQ0E7RUFDQTtFQUNBLHdCdURpSCtCO0V2RGhIL0IscUJ1RGdIK0I7RXZEL0cvQixnQnVEK0crQjtFdkQ5Ry9CLG1DdUQ4R3VDO0V2RDdHdkMsZ0N1RDZHdUM7RXZENUd2QywyQnVENEd1QztFdkQzR3ZDLG1DdUQyRzBDO0V2RDFHMUMsZ0N1RDBHMEM7RXZEekcxQywyQnVEeUcwQztFQUNsQzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTs7QUFHSjtFQUNJOztBQUlBO0VBQ0k7RUFDQTtFQUNBLFVyRHBSWDs7QXFEeVJPO0VBQ0k7O0FBS1o7RUFDSTtFQUNBOztBQUdKO0VBR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVJO0VBQ0E7RUFDQSxLckRqVFA7RXFEa1RPO0VBQ0E7O0F2RDFOUjtFdURvTkk7SUFTUTs7O0FBSVI7RUFFSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBdkR0UFI7RXVEcVBJO0lBSVE7OztBQU1SO0VBR0k7RUFDQTtFQUNBLEtyRDdWUDs7QUZ5RkQ7RXVEK1BJO0lBUVE7OztBQUlSO0VBRUk7O0F2RDdRUjtFdUQyUUk7SUFLUTtJQUNBO0lBQ0E7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFLSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBdkR6VFI7RXVEa1RJO0lBVVE7OztBQUtaO0VBQ0k7RUFDQTtFQUNBOztBdkRwVUo7RXVEaVVBO0lBTVE7Ozs7QUNwYVo7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUtJOztBQUpBO0VBQ0k7O0FBTVI7RUFJSTs7QUFIQTtFQUNJOztBQU1aO0VBQ0k7O0F4RHdESjtFd0R6REE7SUFJUTs7O0FBRUo7RUFDSTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7QUFLWjtFQUNJOztBeERpQ0o7RXdEbENBO0lBSVE7Ozs7QUMvRFo7RUFFSSxldkRFQzs7QXVEQUQ7RUFFSTtFQUNBOztBekRzRko7RXlEN0ZKO0lBV1E7SUFDQTs7RUFFQTtJQUNJLGV2RFhQOzs7QXVEZUQ7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBSUE7RUFDSTs7QUFJQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0F6RHdDSjtFeUQ1Q0E7SUFPUTtJQUNBOzs7QUFPSTtFQUNJOztBQUlSO0VBQ0k7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBekRFUjtFeURSQTtJQVVRO0lBQ0E7O0VBRUE7SUFDSTs7O0FBS1o7RUFDSSxhdkRyR0g7OztBd0RKTDtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QTFEb0ZBO0UwRDdGSjtJQVlROzs7QTFEaUZKO0UwRDdGSjtJQWdCUTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RTFEbUdKLDRCMERsR3lCO0UxRG1HekIseUIwRG5HeUI7RTFEb0d6QixvQjBEcEd5QjtFMURxR3pCO0VBQ0E7RUFDQTtFQUNBLHdCMER4RzZCO0UxRHlHN0IscUIwRHpHNkI7RTFEMEc3QixnQjBEMUc2QjtFMUQyRzdCLG1DMEQzRzRDO0UxRDRHNUMsZ0MwRDVHNEM7RTFENkc1QywyQjBEN0c0QztFMUQ4RzVDLG1DMEQ5RytDO0UxRCtHL0MsZ0MwRC9HK0M7RTFEZ0gvQywyQjBEaEgrQzs7QUFHM0M7RUFDSTtFQUNBO0VBQ0EsS3hEM0JQOztBd0Q2Qk87RUFDSTs7QTFEMkRaO0UwRHREQTtJQUVROztFQUNBO0lBQ0k7SUFDQTs7O0FBS1o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBLGV4RHJESDtFd0RzREc7O0FBRUE7RTFEK0RKLDRCMEQ5RHlCO0UxRCtEekIseUIwRC9EeUI7RTFEZ0V6QixvQjBEaEV5QjtFMURpRXpCO0VBQ0E7RUFDQTtFQUNBLHdCMERwRTZCO0UxRHFFN0IscUIwRHJFNkI7RTFEc0U3QixnQjBEdEU2QjtFMUR1RTdCLG1DMER2RStDO0UxRHdFL0MsZ0MwRHhFK0M7RTFEeUUvQywyQjBEekUrQztFMUQwRS9DLG1DMEQxRWtEO0UxRDJFbEQsZ0MwRDNFa0Q7RTFENEVsRCwyQjBENUVrRDs7QTFEZ0NsRDtFMER2Q0E7SUFXUTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7QTFEb0JKO0UwRHRCQTtJQUtRO0lBQ0EsZXhEekVQOzs7QXdEOEVHO0VBQ0k7RUFDQSxrQnZEN0VGOztBdUQrRUU7RUFDSSxNdkR4Rkw7O0F1RDhGSDtFQUNJO0VBQ0Esa0J2RHhGRjs7QXVEMEZFO0VBQ0ksTXZEbkdMOztBdUR3R1A7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBMUR4QlI7RTBEVUE7SUFrQlE7SUFDQTs7OztBQzFIWjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBM0R1Rko7RTJEeEZBO0lBSVE7OztBQUdKO0VBQ0k7O0FBSVI7RUFDSTs7QTNEMkVKO0UyRHhFQTtJQUVROzs7QUFPSTtFQUNJOztBQU9KO0VBQ0k7O0FBT0o7RUFDSTs7QUFNaEI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUVJOztBM0QyQlI7RTJEbkNBO0lBV1E7SUFDQTtJQUNBLEt6RG5FUDtJeURvRU87SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTs7RUFHSjtJQUVJO0lBQ0E7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsZXpEekZIOztBRnlGRDtFMkRKQTtJQU9ROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBM0RYSjtFMkRPQTtJQU9ROzs7QUFHSjtFQUNJLFl6RDNHUDs7QXlEOEdHO0VBQ0k7RUFDQSxLekRoSFA7O0FGeUZEO0UyRDBCSTtJQUVRO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FDaklYO0VBQ0MsZTFEQ0c7RTBEQUg7RUFDQTtFQUNBOztBQUdEO0VBQ0M7RUFDQSxTMURQRztFMERRSCxZekRMUTtFeURNUjs7QTVEZ0ZFO0U0RHBGSDtJQU9FO0lBQ0E7OztBQUlGO0VBQ0MsZTFEbEJHOztBRnlGRDtFNER4RUg7SUFJRTs7O0FBSUY7RUFDQztFQUNBOztBQUdEO0VBQ0M7RUFDQTs7QTVEeURFO0U0RDNESDtJQUtFO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0M7OztBQUtIO0VBQ0M7O0FBRUE7RUFDQyxNekR6Q0s7RXlEMENMO0VBQ0E7O0FBSUY7RUFDQztFQUNBO0VBQ0E7RUFDQSxrQnpEekRRO0V5RDBEUjtFQUNBOztBNUQyQkU7RTREakNIO0lBU0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QTVEbUJDO0U0RGpDSDtJQWtCRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDQztJQUNBOzs7QUFLSDtFQUNDLGUxRDVGRztFMEQ2Rkg7OztBQ2pHRjtFQUNJOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsUzNESEg7O0FGeUZEO0U2RDFGQTtJQU1RLFMzRExQOzs7QTJEU0Q7RUFDSTs7QUFJSTtFQUNJLGUzRGZYOztBMkRvQkQ7RUFDSTs7QTdEb0VKO0U2RGxFSTtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBUUo7RUFDSTtFQUNBLGUzRHRESDs7QTJEd0RHO0VBQ0k7O0E3RGdDUjtFNkRyQ0E7SUFTUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QTdEb0JKO0U2RHhCQTtJQU9RO0lBQ0EsSzNEekVQOzs7O0E0REhEO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7OztBQ2JKO0VBQ0k7RUFDQTs7QUFHSTtFQUNJOztBL0R1RlI7RStEakZRO0lBRVE7SUFDQTs7OztBQ2ZwQjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBaEV5RkE7RWdFN0ZKO0lBT1E7OztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTlEckJIOztBRjhGRDtFZ0UvRUE7SUFTUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FoRStESjtFZ0VsRUE7SUFNUTtJQUNBOzs7QWhFMkRSO0VnRXRESTtJQUNJOzs7O0FDeENaO0VBQ0k7RUFDQSxhL0RFQzs7QUZ5RkQ7RWlFekZBO0lBRVE7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QWpFOEVKO0VpRTVFQTtJQUVROzs7QUFJUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJOztBQUVBO0VBQ0k7O0FqRXlEUjtFaUUxREk7SUFJUTs7OztBQ3ZDaEI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QWxFdUZKO0VrRXpGQTtJQUtRO0lBQ0EsVWhFTlA7OztBZ0VVRDtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBbEV3RFI7RWtFcERBO0lBRVE7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUtKO0VBQ0k7O0FBQ0E7RUFDSSxrQi9EM0VOOztBK0Q2RUU7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7O0FDeEZoQjtFQUNJLGdCakVFSDs7O0FrRUhEO0VBQ0ksVWxFRUg7O0FGeUZEO0VvRTVGQTtJQUlROzs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0EsVWxFYkg7O0FGeUZEO0VvRXZFUTtJQUNJOztFQUtKO0lBQ0k7OztBcEVnRVo7RW9FN0ZKO0lBbUNRLFVsRS9CSDtJa0VnQ0c7OztBcEV5REo7RW9FcERRO0lBQ0k7O0VBS0o7SUFDSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBLFNsRTNEUDtFa0U0RE87O0FBQ0E7RUFDSTs7QUFLWjtFQUNJOztBQUdKO0VBQ0ksa0JqRXpFRTtFaUUwRUY7RUFDQTtFQUNBLE9qRWxGRTtFaUVtRkY7RUFDQTs7QXBFWUo7RW9FbEJBO0lBU1E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JqRS9GRDtFaUVnR0M7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQSxPakU3Rkg7O0FpRStGRztFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSSxPakU5R047O0FpRW1ITjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QXBFcENSO0VvRXlCQTtJQWVROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT2pFakpFOzs7QWtFSU47RUFDSTtFQUNBOztBckUwRko7RXFFNUZBO0lBS1E7OztBckV1RlI7RXFFbkZBO0lBRVE7OztBQUlSO0VBQ0k7O0FyRTRFSjtFcUU3RUE7SUFJUSxhbkVoQlA7OztBbUVvQkQ7RUFDSTtFQUNBLGtCbEV6QkM7RWtFMEJEO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSSxPbEVqQ047O0FrRWtDTTtFQUNJLGtCbEV2Q1Q7O0FrRStDUztFQUNJLGtCbEU1Q2Q7O0FrRW1ETjtFQUNJO0VBRUE7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSSxrQmxFakZGOztBa0VtRkU7RUFDSSxrQmxFcEZOOztBa0V3RkY7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCbEUvRkg7RWtFZ0dHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JsRWhISDtFa0VpSEc7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNJOztBQUdKO0VBQ0k7O0FBS1o7RUFDSTtFQUNBOzs7QUNqSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QXRFbUZSO0VzRTVGQTtJQWFROzs7O0FDZFo7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBdkVzRko7RXVFekZBO0lBTVE7SUFDQTs7O0F2RWtGUjtFdUU3RVk7SUFDSTtJQUNBO0lBQ0EsS3JFZmY7SXFFZ0JlO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTs7O0FBTWhCO0VBQ0ksU3JFOUJIO0VxRStCRztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QXZFZ0NSO0V1RTVEQTtJQWdDUSxTckU3RFA7O0VxRThETztJQUNJO0lBQ0E7OztBdkV5Qlo7RXVFcEJRO0lBQ0k7OztBQUtaO0VBQ0k7RUFDQTs7QXZFWUo7RXVFZEE7SUFJUTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7O0FDN0ZaO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBeEVxRko7RXdFM0ZBO0lBU1E7OztBQUdKO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBRUk7O0FBR0o7RUFDSTs7O0FBTWhCO0VBQ0k7OztBQUdKO0VBQ0ksZ0J0RW5FQztFc0VvRUQ7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOztBeEVlQTtFd0VqQko7SUFLUTs7OztBQUlSO0VBQ0k7O0F4RU9BO0V3RVJKO0lBSVE7Ozs7QUFJUjtFQUNJOzs7QUM5Rko7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFLQTs7QXpFbUZKO0V5RXpGQTtJQUlROzs7QUFLUjtFQUNJOztBekUrRUo7RXlFaEZBO0lBSVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFFQTs7QUFFQTtFQUNJOztBekU4RFI7RXlFMURRO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7Ozs7QUM3Q2hCO0VBQ0k7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQSxTeEVISDs7QUZ5RkQ7RTBFMUZBO0lBT1E7SUFDQTtJQUNBLEt4RVJQOzs7QXdFWUQ7RUFDSTtFQUNBOztBMUUyRUo7RTBFN0VBO0lBS1E7SUFDQTs7O0FBR0o7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBR0o7RUFDSSxleEVoQ0g7O0FGeUZEO0UwRTFEQTtJQUlROzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQSxleEU3Q0g7O0F3RStDRztFQUNJOztBMUV5Q1I7RTBFOUNBO0lBU1E7Ozs7QUN4RFo7RUFDSTs7QUFDQTtFQUNJOztBQUlBO0VBQ0k7OztBQ1JaO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7O0E1RXdGQTtFNEU3Rko7SUFRUTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QTVFMkVKO0U0RWpGQTtJQVNROzs7QTVFd0VSO0U0RWpGQTtJQWFROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0U1RW9GSiw0QjRFakZ5QjtFNUVrRnpCLHlCNEVsRnlCO0U1RW1GekIsb0I0RW5GeUI7RTVFb0Z6QjtFQUNBO0VBQ0E7RUFDQSx3QjRFdkY2QjtFNUV3RjdCLHFCNEV4RjZCO0U1RXlGN0IsZ0I0RXpGNkI7RTVFMEY3QixtQzRFMUY0QztFNUUyRjVDLGdDNEUzRjRDO0U1RTRGNUMsMkI0RTVGNEM7RTVFNkY1QyxtQzRFN0YrQztFNUU4Ri9DLGdDNEU5RitDO0U1RStGL0MsMkI0RS9GK0M7O0FBRW5DO0VBRUk7O0FBRko7RUFFSTs7QUFGSjtFQUVJOztBQUZKO0VBRUk7O0FBRko7RUFFSTs7QUFGSjtFQUVJOztBQUtaO0VBQ0k7O0E1RXlDUjtFNEVoRUE7SUE0QlE7OztBQUtKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBNUVlSjtFNEVqQkE7SUFLUTs7O0FBR0o7RUFDSTs7QTVFUVI7RTRFVEk7SUFJUTs7O0FBS0o7RUFDSSxPMUUxRlg7O0FGeUZEO0U0RUFRO0lBSVE7OztBQU1SO0VBQ0k7O0E1RVhaO0U0RVVRO0lBSVE7OztBQU1oQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPekU5R0M7RXlFK0dEOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsT3pFOUhQO0V5RStITztFQUNBO0VBQ0E7O0FBSUE7RUFDSTtFQUNBOztBQU9KO0VBQ0k7O0FBR0o7RUFDSSxPekVuSlg7O0F5RXdKRDtFQUNJO0VBQ0EsT3pFbEpIOztBeUVzSkw7RUFDSTtFQUNBOztBQUVBO0VBQ0ksTXpFL0pGO0V5RWdLRSxPMUVqS1A7RTBFa0tPLFExRWxLUDs7QTBFc0tEO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7O0FDdExoQjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QTdFcUZKO0U2RXZGQTtJQUtROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzNFMkdEO0UyRTFHQzs7QTdFd0VKO0U2RTlFQTtJQVNRO0lBQ0E7SUFDQSxlM0V0QlA7OztBMkV5Qkc7RUFDSTtFQUNBOztBN0U4RFI7RTZFaEVJO0lBS1E7SUFDQTs7O0E3RTBEWjtFNkVoRUk7SUFVUTtJQUNBLGUzRXBDWDtJMkVxQ1csWTNFckNYOzs7QTJFeUNHO0VBQ0k7O0FBR0o7RUFDSTs7QTdFMkNSO0U2RXhDSTtJQUVRLGUzRW5EWDtJMkVvRFc7SUFDQSxLM0VyRFg7STJFc0RXOzs7QUFLSjtFQUNJOztBQUtKO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QTdFZ0JSO0U2RVpBO0lBRVE7OztBN0VVUjtFNkVOQTtJQUVROzs7QUFJUjtFQUNJO0VBQ0E7O0E3RUZKO0U2RUFBO0lBS1E7OztBN0VMUjtFNkVBQTtJQVNROzs7QUFJUjtFQUNJOztBN0VkSjtFNkVhQTtJQUdROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJOztBN0VuQ0o7RTZFa0NBO0lBSVE7OztBQUVKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBN0V4RlI7RTZFdUZJO0lBSVE7SUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0EsZTNFN0xIOztBMkUrTEc7RUFDSSxPM0VoTVA7RTJFaU1PLFEzRWpNUDs7O0E0RUhEO0VBQ0ksUzVFRUg7RTRFREc7RUFDQTtFQUNBO0VBQ0E7RUFDQSxLNUVISDs7QUZ5RkQ7RThFNUZBO0lBU1E7OztBQUdKO0VBQ0ksa0IzRWZEOztBMkVrQks7RUFDSSxPM0ViVjs7QTJFa0JGO0VBQ0ksa0IzRW5CRjtFMkVvQkU7O0FBR0k7RUFDSTs7QUFNaEI7RUFDSSxlNUVoQ0g7O0E0RW9DRztFQUNJOztBQUlSO0VBQ0k7RUFDQSxPM0U1Q0U7RTJFNkNGOztBQUNBO0VBQ0k7RUFDQSxPM0VsREg7OztBNEVBTDtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0EvRXVGSjtFK0U1RkE7SUFRUSxhN0VMUDtJNkVNTyxjN0VOUDtJNkVPTzs7O0FBSVI7RUFDSSxlN0VaSDtFNkVhRztFQUNBO0VBQ0EsSzdFZkg7O0FGeUZEO0UrRTlFQTtJQU9RO0lBQ0E7OztBQUlBO0VBQ0k7RUFDQTs7QUFLWjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QS9FbURSO0UrRXRESTtJQU1ROzs7QUFLWjtFQUNJO0UvRVJBO0VBRUk7RStFUUo7RUFDQTs7QS9FdkJJO0UrRW1CUjtJL0VQSTtJQUVJOzs7QStFV0o7RUFDSTs7QS9Fb0NSO0UrRTNDQTtJQVdRO0lBQ0E7OztBL0UrQlI7RStFM0NBO0lBZ0JROzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0EsUzdFNUVIO0U2RTZFRyxlN0U3RUg7RTZFOEVHO0UvRXZDQTtFQUVJOztBQWRBO0UrRStDUjtJL0VuQ0k7SUFFSTs7O0FBZ0RSO0UrRWZBO0lBUVE7SUFDQTs7O0FBSVI7RUFDSTs7O0FDM0ZKO0VBQ0k7RUFDQSxhOUVDSDtFOEVBRztFQUNBO0VBQ0E7O0FBR0o7RUFDSSxlOUVOSDtFOEVPRztFQUNBO0VBQ0EsSzlFVEg7O0FGeUZEO0VnRnBGQTtJQU9RO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQSxlOUU1Qkg7O0E4RStCRDtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QWhGc0NKO0VnRnpDQTtJQU1ROzs7QWhGbUNSO0VnRnpDQTtJQVVROzs7QUFJUjtFQUNJOztBQUVBO0VoRjFCQTtFQUVJOztBQWRBO0VnRnNDSjtJaEYxQkE7SUFFSTs7O0FBZEE7RWdGc0NKO0loRjFCQTtJQUVJOzs7QWdGMkNKO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QWhGaEJKO0VnRmFBO0lBTVE7Ozs7QUM5R1I7RUFDSTtFQUNBLGtCbEVXMkI7RWtFVjNCOztBQUVBO0VBQ0k7O0FqRnFGUjtFaUZ0Rkk7SUFJUTtJQUNBOzs7QWpGaUZaO0VpRnRGSTtJQVNRO0lBQ0E7SUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBakZpRUo7RWlGdEVBO0lBUVE7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCOUV2Q0g7O0E4RTJDTDtFQUNJO0VBQ0E7RUFDQTtFQUNBLFMvRTVDSDs7QUZ5RkQ7RWlGakRBO0lBT1E7SUFDQTs7O0FBSVI7RUFDSTs7QWpGb0NKO0VpRnJDQTtJQUdRLGEvRXZEUDs7O0ErRTJERDtFQUNJO0VBQ0E7O0FqRjRCSjtFaUY5QkE7SUFLUTs7O0FBR0o7RUFDSTtFQUNBLGEvRTFFUDtFK0UyRU87RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FqRmNaO0VpRnRCSTtJQVlRO0lBQ0E7SUFDQSxlL0VqRlg7O0UrRWtGVztJQUNJOzs7QUFNaEI7RUFDSTs7QUFFQTtFQUNJOztBakZKUjtFaUZBQTtJQVFROzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsSy9FN0dIO0UrRThHRzs7QWpGckJKO0VpRmdCQTtJQVFRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUVBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFLWjtFQUVJLGtCOUUzSUU7RThFNElGO0VBQ0EsWUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFFQTtFQUNJOztBQUdKO0VBQ0ksa0I5RTlKTjtFOEUrSk0sTzlFaktOOztBOEVtS007RUFDSSxNOUUxS1Y7O0FIZ0dOO0VpRmlEQTtJQStCUTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FqRjFGSjtFaUZxRkE7SUFRUTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTs7RUFJQTtJQUNJLGtCOUUvTVY7OztBOEVxTk47RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QWpGcElSO0VpRndJUTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFJQTtJQUNJLGtCOUVqUFY7OztBSDBGTjtFaUYySEE7SUFrQ1E7SUFDQTtJQUNBOzs7QUFJQTtFQUNJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FqRmpMWjtFaUZ3S0k7SUFZUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUtaO0VBQ0k7RUFDQSxlL0V6Ukg7RStFMFJHO0VBQ0E7O0FqRmxNSjtFaUY4TEE7SUFPUTtJQUNBO0lBQ0E7SUFDQTs7O0FqRnhNUjtFaUY4TEE7SUFjUTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0EsWUFDSTtFQUVKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxPOUVqVEY7RThFa1RFOztBQUVBO0VBQ0k7RUFDQTs7QWpGOU5aO0VpRjhNSTtJQW9CUTs7O0FqRmxPWjtFaUY4TUk7SUF3QlE7O0VBRUE7SUFDSSxPL0VsVWY7SStFbVVlLFEvRW5VZjtJK0VvVWU7SUFDQSxNOUVwVVY7OztBOEV3VUU7RUFFSSxrQjlFMVVOO0U4RTJVTTs7QUFFQTtFQUNJOzs7QUNuVnBCO0VBQ0k7RUFDQSxrQm5FYStCOztBbUVYL0I7RUFDSSxnQmhGREg7O0FGeUZEO0VrRnpGQTtJQUlROzs7QUFJUjtFQUNJOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJLGtCL0VyQkU7RStFc0JGOztBQUVBO0VBQ0k7O0FBR0o7RUFDSSxTaEY1QlA7O0FnRmdDRDtFQUNJO0VBQ0E7RUFDQSxLaEZuQ0g7O0FnRnFDRztFQUNJLFNoRnRDUDtFZ0Z1Q08sa0IvRXRDRjs7QStFd0NFO0VBQ0k7O0FBS1o7RUFDSSxTaEZoREg7RWdGaURHLGtCL0VoREU7O0FId0ZOO0VrRjFDQTtJQUlRO0lBQ0EsS2hGcERQO0lnRnFETzs7O0FBSVI7RUFDSTs7QUFHSjtFQUNJLFNoRjlESDtFZ0YrREc7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QWxGb0JSO0VrRjVCQTtJQVlROzs7QWxGZ0JSO0VrRjVCQTtJQWdCUTs7O0FBSVI7RUFFSSxTaEZuRkg7RWdGb0ZHO0VBQ0E7RUFDQTs7QWxGR0o7RWtGUkE7SUFTUTs7O0FBS0o7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBbEZ4Qlo7RWtGNEJZO0lBQ0k7OztBQUtaO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLEtoRjFJUDs7QUZ5RkQ7RWtGc0NJO0lBY1E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxhaEZwSlg7OztBZ0ZzSk87RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFLQTtFQUNJLE0vRTNLZjs7QStFaUxEO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7OztBQ3hMaEI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QW5GOEVKO0VtRnhGQTtJQWFROzs7QUFPSTtFQUNJO0VBQ0E7O0FBRko7RUFDSTtFQUNBOztBQUZKO0VBQ0k7RUFDQTs7QUFGSjtFQUNJO0VBQ0E7O0FBRko7RUFDSTtFQUNBOztBQUZKO0VBQ0k7RUFDQTs7QUFGSjtFQUNJO0VBQ0E7O0FBS0o7RUFDSTs7QUFESjtFQUNJOztBQWVKO0VBQ0k7O0FBUEo7RUFDSTs7QUFLSjtFQUNJOztBQVBKO0VBQ0k7O0FBREo7RUFDSTs7QUFESjtFQUNJOztBQURKO0VBQ0k7O0FBREo7RUFDSTs7QUFZaEI7RUFDSTs7QW5GcUNKO0VtRmxDQTtJQUVROzs7QUFPSTtFQUNJOztBQU9KO0VBQ0k7O0FBT0o7RUFDSTs7QUFNaEI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUVJOztBbkZYUjtFbUZHQTtJQVdRO0lBQ0E7SUFDQSxLakZ6R1A7SWlGMEdPO0lBQ0E7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFFSTtJQUNBOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBLGVqRi9ISDs7QUZ5RkQ7RW1Ga0NBO0lBT1E7OztBQUlSO0VBR0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QW5GdkRKO0VtRm1EQTtJQU9ROzs7QUFHSjtFQUNJLFlqRnZKUDs7QWlGMEpHO0VBQ0k7RUFDQSxLakY1SlA7O0FGeUZEO0VtRnNFSTtJQUVRO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBS0o7RUFDSSxrQnBFckxJOzs7QXFFRVo7RUFDSTtFQUNBOztBcEYwRko7RW9GNUZBO0lBS1E7SUFDQSxVbEZIUDs7OztBbUZKTDtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBLEtuRkRIOztBRnlGRDtFcUYzRkE7SUFLUTtJQUNBOzs7QXJGcUZSO0VxRmpGQTtJQUVROzs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7O0FBSUE7RUFDSSxTbkZ4QlA7RW1GeUJPOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FyRjBEUjtFcUY5REk7SUFPUTtJQUNBOzs7QXJGc0RaO0VxRjlESTtJQVlRO0lBQ0E7OztBckZpRFo7RXFGOURJO0lBaUJRO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FyRmlDUjtFcUZsQ0k7SUFHUTs7O0FyRitCWjtFcUZsQ0k7SUFNUTs7O0FyRjRCWjtFcUZsQ0k7SUFTUTs7OztBdEZQaEI7QUFBQTtBQUFBO0F1RmpFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFBYztFQUNkO0VBQ0E7QUFBaUI7RUFDakI7QUFBa0I7RUFDbEI7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFDQTtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ3BPRjtBQUNBO0FBQUE7QUFBQTtBQUdBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0E7RUFDQTtFQUNBOzs7QUFDQTtFQUNFO0VBQ1E7OztBQUNWO0VBQ0U7OztBQUVKO0FBQ0E7QUFDRTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ1E7OztBQUVWO0VBQ0U7OztBQUVGO0FBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWXBGdkRRO0VvRndEUjtFQUNBO0VBQ1E7RUFDUjtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDSTtFQUNKO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDUTs7O0FBRVY7RUFDRTtBQUNBO0VBQ0E7RUFDUTs7O0FBRVY7QUFBQTtFQUVFO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTs7O0FDcExGO0FBQ0E7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBWUE7O0FBQUE7O0FBQUE7QUFLQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUVJOzs7QUFHUjtBQUFBO0VBRUk7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFHSjtBQUNBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUNJO0VBQ0E7QUFBQTtBQUFBO0lBR0k7OztFQUVKO0FBQUE7SUFFSTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUNBO0FBQUE7RUFFSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjs7QUFBQTs7QUFBQTtBQUtBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0FBQ0k7RUFDQTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKOztBQUFBOztBQUFBO0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhdEZyVEM7OztBc0Z3VEw7O0FBQUE7O0FBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFDQTtFQUNJOzs7QUFHSjs7QUFBQTs7QUFBQTs7QUFBQTtBQU9BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUVKO0FBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFDSTtBQUFBO0FBQUE7QUFBQTtFQUlBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTtJQUNBOzs7QUFJUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7OztBQUlSO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7OztBQUlSOztBQUFBOztBQUFBO0FBS0E7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQSxTdEY5ZkM7OztBc0ZpZ0JMO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7QUFBQTtFQUVJOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0FBQ0E7QUFBQTtFQUVJOzs7QUFHSjtBQUNBO0VBQ0k7OztBQUdKO0FBQUE7RUFFSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0VBQ0E7OztBQUdKO0FBQ0E7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQ3RrQko7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0ksa0J0RjdETTtFc0Y4RE47RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBekZrQkE7RXlGNUJKO0lBYVE7Ozs7QUFJUjtFQUNJO0VBQ0Esa0J0Ri9FTTs7O0FzRmtGVjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQSxrQnRGdEhNOzs7QXNGd0hWO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0Esa0J0RmxJTTs7O0FzRnFJVjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0EsT3RGL0tNO0VzRmdMTjtFQUNBLGtCdEZ6S007RXNGMEtOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F6RnRGQTtFeUY0RUo7SUFhUTs7OztBQUdSO0VBQ0ksT3RGN0xNO0VzRjhMTjs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7QUFBQTtFQUVJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0FBQUE7RUFFSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTs7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJLGtCdEY5Wk07RXNGK1pOO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0kiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG5UaGVtZSBOYW1lOiBUd2luZml4XG5UaGVtZSBVUkk6IGh0dHBzOi8vd3d3LnR3aW5maXguY28udWtcbkF1dGhvcjogUGF1bGV5IENyZWF0aXZlXG5BdXRob3IgVVJJOiBodHRwczovL3d3dy5wYXVsZXljcmVhdGl2ZS5jby51a1xuVGFnczogbGlnaHQsIHJlc3BvbnNpdmUtbGF5b3V0XG5EZXNjcmlwdGlvbjogQSBiZXNwb2tlIHRoZW1lIGRlc2lnbmVkIGFuZCBkZXZlbG9wZWQgZm9yIFR3aW5maXhcblZlcnNpb246IDEuMFxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcbkxpY2Vuc2UgVVJJOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG5UZXh0IERvbWFpbjogdHdpbmZpeFxuRG9tYWluIFBhdGg6IC9sYW5ndWFnZXMvXG5cblRoaXMgdGhlbWUsIGxpa2UgV29yZFByZXNzLCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgR1BMLlxuVXNlIGl0IHRvIG1ha2Ugc29tZXRoaW5nIGNvb2wsIGhhdmUgZnVuLCBhbmQgc2hhcmUgd2hhdCB5b3UndmUgbGVhcm5lZCB3aXRoIG90aGVycy5cblxudW5kZXJkb2cgQm9pbGVycGxhdGUgaXMgYmFzZWQgb24gVW5kZXJzY29yZXMgaHR0cDovL3VuZGVyc2NvcmVzLm1lLywgKEMpIDIwMTItMjAxNCBBdXRvbWF0dGljLCBJbmMuXG5cblJlc2V0dGluZyBhbmQgcmVidWlsZGluZyBzdHlsZXMgaGF2ZSBiZWVuIGhlbHBlZCBhbG9uZyB0aGFua3MgdG8gdGhlIGZpbmUgd29yayBvZlxuRXJpYyBNZXllciBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L2luZGV4Lmh0bWxcbmFsb25nIHdpdGggTmljb2xhcyBHYWxsYWdoZXIgYW5kIEpvbmF0aGFuIE5lYWwgaHR0cDovL25lY29sYXMuZ2l0aHViLmNvbS9ub3JtYWxpemUuY3NzL1xuYW5kIEJsdWVwcmludCBodHRwOi8vd3d3LmJsdWVwcmludGNzcy5vcmcvXG5cbkRvIG5vdCByZW1vdmUgdGhlIGJlbG93IHN0eWxlcy4gTmVlZGVkIHRvIHBhc3MgdGhlICd0aGVtZSBjaGVjaycuKi9cbi5zdGlja3ksXG4uZ2FsbGVyeS1jYXB0aW9uLFxuLmJ5cG9zdGF1dGhvciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IFRBQkxFIE9GIENPTlRFTlRTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLjAgLSBHbG9iYWxcbjIuMCAtIE1vZHVsZXNcbjMuMCAtIFRoZW1lXG40LjAgLSBQYWNrYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLjAgR2xvYmFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJnbG9iYWxcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiYW5pbWF0ZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLjAgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGltcG9ydCBcImxheW91dFwiO1xuQGltcG9ydCBcImhlbHBlcnNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4wIE1vZHVsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGltcG9ydCBcIm1vZHVsZXNcIjtcbkBpbXBvcnQgXCJsYXlvdXRzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjQuMCBWZW5kb3Jcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGltcG9ydCBcInZlbmRvclwiO1xuIiwiLyogTWl4aW5zICovXG5cbkBtaXhpbiB0ZXh0LXNpemUtYWRqdXN0KCRzaXplKSB7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAkc2l6ZTtcbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogJHNpemU7XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMpIHtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3gtc2hhZG93KCR0b3AsICRsZWZ0LCAkYmx1ciwgJGNvbG9yLCAkaW5zZXQ6IGZhbHNlKSB7XG4gICAgQGlmICRpbnNldCB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgJHRvcCAkbGVmdCAkYmx1ciAkY29sb3I7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogaW5zZXQgJHRvcCAkbGVmdCAkYmx1ciAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgICAgICAtbW96LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICB9XG59XG5cbkBtaXhpbiBmb250LXNpemUoJGZzLW1hcCwgJGZzLWJyZWFrcG9pbnRzOiAkYnBzKSB7XG4gICAgQGVhY2ggJGZzLWJyZWFrcG9pbnQsICRmcy1mb250LXNpemUgaW4gJGZzLW1hcCB7XG4gICAgICAgIEBpZiAkZnMtYnJlYWtwb2ludCA9PSBudWxsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmICRmcy1mb250LXNpemUgaXMgYSBrZXkgdGhhdCBleGlzdHMgaW5cbiAgICAgICAgICAgIC8vICRmcy1icmVha3BvaW50cywgdXNlIHRoZSB2YWx1ZVxuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRmcy1icmVha3BvaW50cywgJGZzLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAkZnMtYnJlYWtwb2ludDogbWFwLWdldCgkZnMtYnJlYWtwb2ludHMsICRmcy1icmVha3BvaW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRmcy1icmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1mb250LXNpemUoJGZzLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFV0aWxpdHkgZnVuY3Rpb24gZm9yIG1peGluIGZvbnQtc2l6ZVxuQG1peGluIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpIHtcbiAgICAvLyBJZiAkZnMtZm9udC1zaXplIGlzIGEgbGlzdCwgaW5jbHVkZVxuICAgIC8vIGJvdGggZm9udC1zaXplIGFuZCBsaW5lLWhlaWdodFxuICAgIEBpZiB0eXBlLW9mKCRmcy1mb250LXNpemUpID09IFwibGlzdFwiIHtcbiAgICAgICAgZm9udC1zaXplOiBudGgoJGZzLWZvbnQtc2l6ZSwgMSk7XG4gICAgICAgIEBpZiAobGVuZ3RoKCRmcy1mb250LXNpemUpID4gMSkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG50aCgkZnMtZm9udC1zaXplLCAyKTtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRmcy1mb250LXNpemU7XG4gICAgfVxufVxuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cbkBtaXhpbiBncmFkaWVudCgkdG9wY29sb3VyLCAkYm90Y29sb3VyLCAkc3RhcnQ6IDAlLCAkc3RvcDogMTAwJSkge1xuICAgIGJhY2tncm91bmQ6ICR0b3Bjb2xvdXI7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAkdG9wY29sb3VyICRzdGFydCwgJGJvdGNvbG91ciAkc3RvcCk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgkc3RhcnQsICR0b3Bjb2xvdXIpLCBjb2xvci1zdG9wKCRzdG9wLCAkYm90Y29sb3VyKSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkdG9wY29sb3VyICRzdGFydCwgJGJvdGNvbG91ciAkc3RvcCk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHRvcGNvbG91ciAkc3RhcnQsICRib3Rjb2xvdXIgJHN0b3ApO1xuICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAkdG9wY29sb3VyICRzdGFydCwgJGJvdGNvbG91ciAkc3RvcCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHRvcGNvbG91ciAkc3RhcnQsICRib3Rjb2xvdXIgJHN0b3ApO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkdyYWRpZW50KEdyYWRpZW50VHlwZT0wLCBzdGFydENvbG9yc3RyPScjeyR0b3Bjb2xvdXJ9JywgZW5kQ29sb3JzdHI9JyN7JGJvdGNvbG91cn0nKTtcbiAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjeyR0b3Bjb2xvdXJ9JywgZW5kQ29sb3JzdHI9JyN7JGJvdGNvbG91cn0nKVwiO1xufVxuXG5AbWl4aW4gYWJzb2x1dGUtcG9zaXRpb24oJHRvcDogZmFsc2UsICRyaWdodDogZmFsc2UsICRib3R0b206IGZhbHNlLCAkbGVmdDogZmFsc2UpIHtcbiAgICBAaWYgJHRvcCB7XG4gICAgICAgIHRvcDogJHRvcDtcbiAgICB9XG4gICAgQGlmICRyaWdodCB7XG4gICAgICAgIHJpZ2h0OiAkcmlnaHQ7XG4gICAgfVxuICAgIEBpZiAkYm90dG9tIHtcbiAgICAgICAgYm90dG9tOiAkYm90dG9tO1xuICAgIH1cbiAgICBAaWYgJGxlZnQge1xuICAgICAgICBsZWZ0OiAkbGVmdDtcbiAgICB9XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG5AbWl4aW4gYnAoJHdpZHRoLCAkYnJlYWtwb2ludCkge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCR3aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBnZW5lcmljIHRyYW5zZm9ybVxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3Jtcykge1xuICAgIC1tb3otdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtby10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC1tcy10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICB0cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xufVxuLy8gcm90YXRlXG5AbWl4aW4gcm90YXRlKCRkZWcpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKCN7JGRlZ31kZWcpKTtcbn1cblxuLy8gc2NhbGVcbkBtaXhpbiBzY2FsZSgkc2NhbGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoJHNjYWxlKSk7XG59XG4vLyB0cmFuc2xhdGVcbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgkeCwgJHkpKTtcbn1cblxuLy8gQW5pbWF0aW9ucyAvIFRyYW5zaXRpb25zXG5cbkBtaXhpbiBhbmltYXRlKCR0aW1lLCAkbGFiZWwsICRjb3VudDogMSwgJHRpbWluZzogbGluZWFyKSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICR0aW1lO1xuICAgIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAkdGltZTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246ICR0aW1lO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbGFiZWw7XG4gICAgLW1vei1hbmltYXRpb24tbmFtZTogJGxhYmVsO1xuICAgIGFuaW1hdGlvbi1uYW1lOiAkbGFiZWw7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkY291bnQ7XG4gICAgLW1vei1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkY291bnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGNvdW50O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbn1cblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tcHJvcGVydHksICR0cmFuc2l0aW9uLXRpbWUsICRtZXRob2QsICR0cmFuc2l0aW9uLWRlbGF5OiAwKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XG4gICAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XG4gICAgLW1zLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uLXByb3BlcnR5ICR0cmFuc2l0aW9uLXRpbWUgJG1ldGhvZDtcbiAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tcHJvcGVydHkgJHRyYW5zaXRpb24tdGltZSAkbWV0aG9kO1xuXG4gICAgQGlmICR0cmFuc2l0aW9uLWRlbGF5IHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgLXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgIH1cbn1cblxuQG1peGluIGJ1dHRvbigkY29sb3VyLCAkY29sb3VyMjogI2ZmZiwgJHRleHQtY29sb3VyOiAkYy10ZXh0KSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTFweCAkbGg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvdXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG91cjI7XG4gICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6ICRmejtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG91cjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGJvcmRlci1jb2xvciAwLjJzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGlmICRjb2xvdXIgIT0gbm9uZSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvdXIsIDEwJSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3VyLCAxMCUpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gYm90dG9tLWdyYWQtc2hhZG93KCRzdHJlbmd0aDogMC40NSwgJGhlaWdodDogMTAwJSwgJGNvbG91cjogJGMtYmxhY2spIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmdiYSgkY29sb3VyLCAwKSAwJSwgcmdiYSgkY29sb3VyLCAwKSAxJSwgcmdiYSgkY29sb3VyLCAkc3RyZW5ndGgpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChyZ2JhKCRjb2xvdXIsIDApIDAlLCByZ2JhKCRjb2xvdXIsIDApIDElLCByZ2JhKCRjb2xvdXIsICRzdHJlbmd0aCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoJGNvbG91ciwgMCkgMCUsIHJnYmEoJGNvbG91ciwgMCkgMSUsIHJnYmEoJGNvbG91ciwgJHN0cmVuZ3RoKSAxMDAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyNhNjAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB6LWluZGV4OiAyO1xufVxuXG5AbWl4aW4gdG9wLWdyYWQtc2hhZG93KCRzdHJlbmd0aDogMC40NSwgJGhlaWdodDogMTAwJSwgJGNvbG91cjogJGMtYmxhY2spIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkY29sb3VyLCAkc3RyZW5ndGgpIDAlLCByZ2JhKCRjb2xvdXIsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkY29sb3VyLCAkc3RyZW5ndGgpIDAlLCByZ2JhKCRjb2xvdXIsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoJGNvbG91ciwgJHN0cmVuZ3RoKSAwJSwgcmdiYSgkY29sb3VyLCAwKSAxMDAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2E2MDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB6LWluZGV4OiAyO1xufVxuXG5AbWl4aW4gYm90aC1ncmFkLXNoYWRvdygpIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjQ1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA0MCUsIHJnYmEoMCwgMCwgMCwgMCkgNTAlLCByZ2JhKDAsIDAsIDAsIDApIDYwJSwgcmdiYSgwLCAwLCAwLCAwLjQ1KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC40NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgNDAlLCByZ2JhKDAsIDAsIDAsIDApIDUwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUsIHJnYmEoMCwgMCwgMCwgMC40NSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjQ1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA0MCUsIHJnYmEoMCwgMCwgMCwgMCkgNTAlLCByZ2JhKDAsIDAsIDAsIDApIDYwJSwgcmdiYSgwLCAwLCAwLCAwLjQ1KSAxMDAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2E2MDAwMDAwJywgZW5kQ29sb3JzdHI9JyNhNjAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cbiIsIi8qIEdsb2JhbCBTdHlsZXMgKi9cbjpyb290IHtcbiAgICAtLWJnY29sOiBcIlwiO1xuICAgIC0tYmdpbWc6IFwiXCI7XG59XG5cbi8qIFJlc2V0ICovXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5hcHBsZXQsXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmEsXG5hYmJyLFxuYWNyb255bSxcbmFkZHJlc3MsXG5iaWcsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuZm9udCxcbmlucyxcbmtiZCxcbnEsXG5zLFxuc2FtcCxcbnNtYWxsLFxuc3RyaWtlLFxuc3Ryb25nLFxuc3ViLFxuc3VwLFxudHQsXG52YXIsXG5kbCxcbmR0LFxuZGQsXG5vbCxcbnVsLFxubGksXG5maWVsZHNldCxcbmZvcm0sXG5sYWJlbCxcbmxlZ2VuZCxcbnRhYmxlLFxuY2FwdGlvbixcbnRib2R5LFxudGZvb3QsXG50aGVhZCxcbnRyLFxudGgsXG50ZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXN0eWxlOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIG1hcmdpbjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5odG1sIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmpzLWxvYWRpbmcgKixcbi5qcy1sb2FkaW5nICo6YmVmb3JlLFxuLmpzLWxvYWRpbmcgKjphZnRlciB7XG4gICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZCAhaW1wb3J0YW50O1xufVxuXG5ib2R5IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6ICRmZjtcbiAgICBmb250LXNpemU6IHB4dG9yZW0oJGZ6IC0gMnB4KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAkYy10ZXh0O1xuICAgIGJhY2tncm91bmQ6ICRjLWJnO1xuICAgIEBpZiAkdmVydGljYWwtcmh5dGhtID09IHRydWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDFweCwgdHJhbnNwYXJlbnQgMXB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlICRsaDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcHh0b3JlbSgkZnopO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIH1cbn1cblxuaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG59XG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxubWFpbixcbm5hdixcbnNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5vbCxcbnVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuY2FwdGlvbixcbnRoLFxudGQge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuYmxvY2txdW90ZSxcbnEge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbn1cblxuYmxvY2txdW90ZSxcbnEge1xuICAgIHF1b3RlczogXCJcIiBcIlwiO1xufVxuXG4vKiBDbGVhcmluZ3MgKi9cbi53cmFwcGVyLFxuLmNsZWFyLFxuLmVudHJ5LWNvbnRlbnQsXG4uY29tbWVudC1jb250ZW50LFxuLnNpdGUtaGVhZGVyLFxuLnNpdGUtY29udGVudCxcbi5zaXRlLWZvb3Rlcixcbi5jbGVhcmZpeCB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cbn1cbi53cmFwcGVyLFxuLmNsZWFyLFxuLmVudHJ5LWNvbnRlbnQsXG4uY29tbWVudC1jb250ZW50LFxuLnNpdGUtaGVhZGVyLFxuLnNpdGUtY29udGVudCxcbi5zaXRlLWZvb3Rlcixcbi5jbGVhcmZpeCB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLyogQ29udGVudCAqL1xuXG4uYnlsaW5lLFxuLnVwZGF0ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zaW5nbGUgLmJ5bGluZSxcbi5ncm91cC1ibG9nIC5ieWxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICAgIHVsOm5vdCguc2xpY2stZG90cykge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzQ7XG4gICAgICAgICAgICAvL2ZvbnQtc2l6ZTogJGZ6ICsgMnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIHVsOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIG9sIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgY291bnRlci1yZXNldDogcmhmYy1jb3VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGgvMjtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiByaGZjLWNvdW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIocmhmYy1jb3VudGVyKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbWJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbGgvNDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6ICRsaDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRsaDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogQXNpZGVzICovXG4uYmxvZyAuZm9ybWF0LWFzaWRlIC5lbnRyeS10aXRsZSxcbi5hcmNoaXZlIC5mb3JtYXQtYXNpZGUgLmVudHJ5LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBDb21tZW50cyAqL1xuLmNvbW1lbnQtY29udGVudCBhIHtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8qIE1lZGlhICovXG4ucGFnZS1jb250ZW50IGltZy53cC1zbWlsZXksXG4uZW50cnktY29udGVudCBpbWcud3Atc21pbGV5LFxuLmNvbW1lbnQtY29udGVudCBpbWcud3Atc21pbGV5IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qIE1ha2Ugc3VyZSBlbWJlZHMgYW5kIGlmcmFtZXMgZml0IHRoZWlyIGNvbnRhaW5lcnMgKi9cbmVtYmVkLFxuaWZyYW1lLFxub2JqZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIFNjcmVlbiBSZWFkZXIgVGV4dCAqL1xuLnNydCxcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IC05OTllbTtcbn1cblxuLyogQWxpZ25tZW50ICovXG5cbi5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuYmxvY2txdW90ZS5hbGlnbmxlZnQsXG5maWd1cmUud3AtY2FwdGlvbi5hbGlnbmxlZnQsXG5pbWcuYWxpZ25sZWZ0IHtcbiAgICBtYXJnaW46IDdweCAyNHB4IDdweCAwO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbmxlZnQge1xuICAgIG1hcmdpbjogN3B4IDE0cHggN3B4IDA7XG59XG5cbmJsb2NrcXVvdGUuYWxpZ25yaWdodCxcbmZpZ3VyZS53cC1jYXB0aW9uLmFsaWducmlnaHQsXG5pbWcuYWxpZ25yaWdodCB7XG4gICAgbWFyZ2luOiA3cHggMCA3cHggMjRweDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25yaWdodCB7XG4gICAgbWFyZ2luOiA3cHggMCA3cHggMTRweDtcbn1cblxuYmxvY2txdW90ZS5hbGlnbmNlbnRlcixcbmltZy5hbGlnbmNlbnRlcixcbi53cC1jYXB0aW9uLmFsaWduY2VudGVyIHtcbiAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogN3B4O1xufVxuXG4uc2l0ZS1jb250ZW50IGJsb2NrcXVvdGUuYWxpZ25sZWZ0LFxuLnNpdGUtY29udGVudCBibG9ja3F1b3RlLmFsaWducmlnaHQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBwYWRkaW5nLXRvcDogMTdweDtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uc2l0ZS1jb250ZW50IGJsb2NrcXVvdGUuYWxpZ25sZWZ0IHAsXG4uc2l0ZS1jb250ZW50IGJsb2NrcXVvdGUuYWxpZ25yaWdodCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLndwLWNhcHRpb24gaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gICAgY29sb3I6ICM3Njc2NzY7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luOiA5cHggMDtcbn1cblxuZGl2LndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuZGl2LndwLWNhcHRpb24uYWxpZ25yaWdodCBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdLFxuZGl2LndwLWNhcHRpb24uYWxpZ25yaWdodCAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLndwLXNtaWxleSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKiAgQ2FwdGlvbnMgKi9cbi53cC1jYXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53cC1jYXB0aW9uIHtcbiAgICBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBtYXJnaW46IDAuODA3NWVtIDA7XG59XG5cbi8qIEZvcm1zICovXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlcixcbnRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyLFxuc2VsZWN0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xufSAvKiBGaXJlZm94IDE5KyAqL1xuXG5pbnB1dDotbW96LXBsYWNlaG9sZGVyLFxudGV4dGFyZWE6LW1vei1wbGFjZWhvbGRlcixcbnNlbGVjdDotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xufSAvKiBGaXJlZm94IDE4LSAqL1xuXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG50ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG5zZWxlY3Q6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xufSAvKiBJRSAqL1xuXG5pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbnNlbGVjdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxudGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi8qIEZvcm1zICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBmb250LWZhbWlseTogJGZmO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zZWxlY3Qge1xuICAgIGJvcmRlcjogMDtcbiAgICBoZWlnaHQ6IDUycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IDAgJGxoLzI7XG59XG5cbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgIHBhZGRpbmc6IDVweCAkbGg7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAvKi13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG5cdC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyovXG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbnRleHRhcmVhIHtcbiAgICBjb2xvcjogJGMtdGV4dDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogJGMtd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICAgIGNvbG9yOiAkYy10ZXh0O1xuICAgIG91dGxpbmU6IDA7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICBwYWRkaW5nOiAwICRsaC8yO1xuICAgIGhlaWdodDogNDBweDtcbn1cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6ICRsaC8yO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIFdpZGdldCAqL1xuLndpZGdldCB7XG4gICAgbWFyZ2luOiAwIDAgMS41ZW07XG59XG5cbi53aWRnZXQgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53aWRnZXRfc2VhcmNoIHtcbiAgICAuc2VhcmNoLXN1Ym1pdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gVmFyaWFibGVzXG5cbi8vIEZvbnRzXG4kZmY6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBBcmlhbCwgXCJMdWNpZGEgR3JhbmRlXCIsIHNhbnMtc2VyaWY7XG4kZmYyOiAkZmY7XG5cbi8vIEJhc2UgdHlwb2dyYXBoeSBzZXR0aW5nc1xuJGZ6OiAxNHB4O1xuJGxoOiAyNnB4O1xuXG4kcC1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAxNHB4LFxuICAgICAgICAxLjcsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgICAxNHB4LFxuICAgICAgICAxLjksXG4gICAgKSxcbik7XG5cbiRoMS1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAyNnB4LFxuICAgICAgICAxLjIsXG4gICAgKSxcbiAgICB4czogKFxuICAgICAgICAzNnB4LFxuICAgICAgICAxLjIsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgICA0NnB4LFxuICAgICAgICAxLjIsXG4gICAgKSxcbik7XG5cbiRoMi1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAyMHB4LFxuICAgICAgICAxLjIsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgICAyNHB4LFxuICAgICAgICAxLjQsXG4gICAgKSxcbik7XG5cbiRoMy1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAxNnB4LFxuICAgICAgICAxLjQsXG4gICAgKSxcbiAgICBtZDogKFxuICAgICAgICAxOHB4LFxuICAgICAgICAxLjMsXG4gICAgKSxcbik7XG5cbiRoNC1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAxNHB4LFxuICAgICAgICAxLjUsXG4gICAgKSxcbik7XG5cbiRoNS1mb250LXNpemVzOiAoXG4gICAgbnVsbDogKFxuICAgICAgICAxMHB4LFxuICAgICAgICAxLjIsXG4gICAgKSxcbiAgICBtZDogKFxuICAgICAgICAxMnB4LFxuICAgICAgICAxLjQsXG4gICAgKSxcbik7XG5cbiRoZXJvLWZvbnQtc2l6ZXM6IChcbiAgICBudWxsOiAoXG4gICAgICAgIDQ0cHgsXG4gICAgICAgIDEuMixcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICAgIDUycHgsXG4gICAgICAgIDEuMixcbiAgICApLFxuKTtcblxuLy8gU2hvdyB2ZXJ0aWNhbCByaHl0aG1cbiR2ZXJ0aWNhbC1yaHl0aG06IGZhbHNlO1xuXG4kY29sb3VyczogKFxuICAgIFwibm9uZVwiOiBcIm5vbmVcIixcbiAgICBcIndoaXRlXCI6ICRjLXdoaXRlLFxuICAgIFwiYmxhY2tcIjogJGMtYmxhY2ssXG4gICAgXCJhcmN0aWNcIjogJGMtYXJjdGljLFxuICAgIFwiYmx1ZVwiOiAkYy1ibHVlLFxuICAgIFwibWJsdWVcIjogJGMtbWJsdWUsXG4gICAgXCJkYmx1ZVwiOiAkYy1kYmx1ZSxcbiAgICBcImdyZXlcIjogJGMtZ3JleSxcbiAgICBcInJlZFwiOiAkYy1yZWQsXG4pO1xuXG4kZ3JhZGllbnRzOiAoXG4gICAgXCJncmFkaWVudC1ibHVlLW1ibHVlLXJhZGlhbC1ib3R0b20tcmlnaHRcIjogJGctYmx1ZS1tYmx1ZS1yYWRpYWwtYm90dG9tLXJpZ2h0LFxuICAgIFwiZ3JhZGllbnQtYmxhY2stYmx1ZVwiOiAkZy1ibGFjay1ibHVlLFxuICAgIFwiZ3JhZGllbnQtYmxhY2stbWJsdWVcIjogJGctYmxhY2stbWJsdWUsXG4gICAgXCJncmFkaWVudC1kYmx1ZS1ibGFja1wiOiAkZy1kYmx1ZS1ibGFjayxcbiAgICBcImdyYWRpZW50LWJsdWUtZGJsdWVcIjogJGctYmx1ZS1kYmx1ZSxcbiAgICBcImdyYWRpZW50LW1ibHVlXCI6ICRnLW1ibHVlLFxuICAgIFwiZ3JhZGllbnQtYmxhY2tcIjogJGctYmxhY2ssXG4gICAgXCJncmFkaWVudC1hcmN0aWNcIjogJGctYXJjdGljLFxuICAgIFwiZ3JhZGllbnQtYXJjdGljLXJldmVyc2VcIjogJGctYXJjdGljLXJldmVyc2UsXG4pO1xuXG4kYy10ZXh0OiAkYy1ncmV5O1xuJGMtYmc6ICRjLXdoaXRlO1xuJGMtcHJpbWFyeTogJGMtYmx1ZTtcblxuJGRhcmstY29sb3VyczogXCJibGFja1wiLCBcIm1ibHVlXCIsIFwiYmx1ZVwiLCBcImdyZXlcIiwgXCJkYmx1ZVwiLCBcInJlZFwiLCBcImdyYWRpZW50LWJsdWUtbWJsdWUtcmFkaWFsLWJvdHRvbS1yaWdodFwiLCBcImdyYWRpZW50LWJsdWUtYmxhY2stcmFkaWFsLWJvdHRvbS1yaWdodFwiLCBcImdyYWRpZW50LWRibHVlLWJsYWNrXCIsIFwiZ3JhZGllbnQtYmxhY2stYmx1ZVwiLCBcImdyYWRpZW50LWJsYWNrLW1ibHVlXCIsIFwiZ3JhZGllbnQtbWJsdWUtYmxhY2tcIiwgXCJncmFkaWVudC1ibHVlLWRibHVlXCIsIFwiZ3JhZGllbnQtbWJsdWVcIiwgXCJncmFkaWVudC1ibGFja1wiO1xuJGxpZ2h0LWNvbG91cnM6IFwid2hpdGVcIiwgXCJhcmN0aWNcIiwgXCJncmFkaWVudC1hcmN0aWNcIiwgXCJncmFkaWVudC1hcmN0aWMtcmV2ZXJzZVwiO1xuXG4vLyBPdGhlciBDb2xvdXJzXG5cbi8vZmFjZWJvb2svL1xuJGMtZmFjZWJvb2s6ICM0MzYxOWM7XG4vL3R3aXR0ZXIvL1xuJGMtdHdpdHRlcjogIzI0YTllNjtcbi8vbGlua2VkaW4vL1xuJGMtbGlua2VkaW46ICMxODdmYjg7XG5cbi8vIFN0cnVjdHVyZVxuJHdyYXA6IDEyNTZweDtcblxuLy8gTWVkaWEgUXVlcmllc1xuXG4kbWluOiBtaW4td2lkdGg7XG4kbWF4OiBtYXgtd2lkdGg7XG4keC1zbWFsbDogNDgwcHg7XG4kc21hbGw6IDU5OXB4O1xuJG1lZGl1bTogNzY4cHg7XG4kbGFyZ2U6IDEwMjRweDtcbiR4LWxhcmdlOiAxMjAwcHg7XG4keHgtbGFyZ2U6IDE0MDBweDtcbiRzdXBlcjogMTYwMHB4O1xuXG4kYnBzOiAoXG4gICAgeHM6ICR4LXNtYWxsLFxuICAgIHNtOiAkc21hbGwsXG4gICAgbWQ6ICRtZWRpdW0sXG4gICAgbGc6ICRsYXJnZSxcbiAgICB4bDogJHgtbGFyZ2UsXG4gICAgeHhsOiAkeHgtbGFyZ2UsXG4gICAgc3VwZXI6ICRzdXBlcixcbik7XG5cbiRndXR0ZXI6ICRsaDtcbiIsIi8vd2hpdGUvL1xuJGMtd2hpdGU6ICNmZmZmZmY7XG4vL2FyY3RpYy8vXG4kYy1hcmN0aWM6ICNkYmY1ZmYgO1xuLy9ibHVlLy9cbiRjLWJsdWU6ICMwMGFlZWY7XG4vL21ibHVlLy9cbiRjLW1ibHVlOiAjMjQ0MzgxO1xuLy9kYmx1ZS8vXG4kYy1kYmx1ZTogIzE3MmE1MDtcbi8vYmxhY2svL1xuJGMtYmxhY2s6ICMwNjE1MzM7XG4vL2dyZXkvL1xuJGMtZ3JleTogIzQ0NDM0NDtcbi8vbWdyZXkvL1xuJGMtbWdyZXk6ICNlMGUwZTA7XG4vL3JlZC8vXG4kYy1yZWQ6ICNlYzQ4NDg7XG4iLCJhIHtcbiAgICBjb2xvcjogJGMtcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbnAge1xuICAgIG1hcmdpbi1ib3R0b206IHB4dG9yZW0oJGxoKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcC1mb250LXNpemVzKTtcbn1cblxuLnAtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xufVxuXG4ucHJlaGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJHAtZm9udC1zaXplcyk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuXG5oMTpub3QoLmZ6LWhlcm8pLFxuLmgxIHtcbiAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZXMpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcHh0b3JlbSgkbGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaDEsXG4uaDEge1xuICAgIGNvbG9yOiAkYy1tYmx1ZTtcbn1cblxuLmZ6LWhlcm8ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaGVyby1mb250LXNpemVzKTtcbiAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogcHh0b3JlbSgkbGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaDIsXG4uaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplcyk7XG4gICAgbWFyZ2luLWJvdHRvbTogcHh0b3JlbSgkbGggKiAwLjc1KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkYy1tYmx1ZTtcbn1cblxuaDMsXG4uaDMge1xuICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplcyk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiBweHRvcmVtKCRsaC8yKTtcbn1cblxuaDQsXG4uaDQge1xuICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplcyk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IHB4dG9yZW0oJGxoLzIpO1xufVxuXG5oNSxcbi5oNSB7XG4gICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemVzKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcHh0b3JlbSgkbGgvMik7XG59XG5cbnVsLFxub2wge1xuICAgIG1hcmdpbi1ib3R0b206IHB4dG9yZW0oJGxoKTtcbiAgICBtYXJnaW4tbGVmdDogJGxoO1xuXG4gICAgdWwsXG4gICAgb2wge1xuICAgICAgICBtYXJnaW46IDAgcHh0b3JlbSgkbGgpO1xuICAgIH1cbn1cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRmbixcbmNpdGUsXG5lbSxcbmkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDEuNWVtO1xufVxuXG5hZGRyZXNzIHtcbiAgICBtYXJnaW46IDAgMCAxLjVlbTtcbn1cblxucHJlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNvdXJpZXIgMTAgUGl0Y2hcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42ZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6IDEuNmVtO1xufVxuXG5jb2RlLFxua2JkLFxudHQsXG52YXIge1xuICAgIGZvbnQ6XG4gICAgICAgIDE1cHggTW9uYWNvLFxuICAgICAgICBDb25zb2xhcyxcbiAgICAgICAgXCJBbmRhbGUgTW9ub1wiLFxuICAgICAgICBcIkRlamFWdSBTYW5zIE1vbm9cIixcbiAgICAgICAgbW9ub3NwYWNlO1xufVxuXG5hYmJyLFxuYWNyb255bSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjNjY2O1xuICAgIGN1cnNvcjogaGVscDtcbn1cblxubWFyayxcbmlucyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjljMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnN1cCxcbnN1YiB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gICAgYm90dG9tOiAxZXg7XG59XG5cbnN1YiB7XG4gICAgdG9wOiAwLjVleDtcbn1cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xufVxuXG5iaWcge1xuICAgIGZvbnQtc2l6ZTogMTI1JTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuQW5pbWF0ZS5jc3MgLSBodHRwOi8vZGFuZWRlbi5tZS9hbmltYXRlXG5MaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG5Db3B5cmlnaHQgKGMpIDIwMTQgRGFuaWVsIEVkZW5cbiovXG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5EZWxheSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5mYWRlSW4ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbi5mYWRlSW5Eb3duIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93blNtYWxsIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93blNtYWxsIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG4uZmFkZUluRG93bkJpZyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG4uZmFkZUluTGVmdCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbi5mYWRlSW5MZWZ0QmlnIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRWU21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzJSwgMCwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0VlNtYWxsIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzJSwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMyUsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0U21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRTbWFsbCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhZGVJblJpZ2h0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhZGVJblJpZ2h0QmlnIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcFNtYWxsIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwJSwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwU21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwJSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgd2VsY29tZUludHJvIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApIHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKSByb3RhdGUoOTBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBWU21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1JSwgMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwVlNtYWxsIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1JSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNSUsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhZGVJblVwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhZGVJblVwQmlnIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLmZhZGVPdXQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0RG93biB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0RG93bkJpZyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIH1cbn1cblxuLmZhZGVPdXRMZWZ0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0TGVmdEJpZyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0UmlnaHQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIH1cbn1cblxuLmZhZGVPdXRSaWdodEJpZyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXAge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0VXAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwU21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMCUsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXBTbWFsbCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwJSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwJSwgMCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB9XG59XG5cbi5mYWRlT3V0VXBCaWcge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xufVxuXG4vKiBPdmVybGF5IGFuaW1hdGlvbiAoc2xvd2VyICsgdmVydGljYWwgbW92ZW1lbnQpICovXG5Aa2V5ZnJhbWVzIGF1cmFPdmVybGF5IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwJTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMCU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1hc2tNb3ZlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KSB0cmFuc2xhdGUoLTUwJSwgMzUlKTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHRyYW5zbGF0ZSgxNTAlLCAzNSUpO1xuICAgICAgICAvL2JhY2tncm91bmQtcG9zaXRpb246IDUwJSAxMjAlO1xuICAgIH1cblxuICAgIDU0JSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGUoMTUwJSwgMzUlKTtcbiAgICB9XG5cbiAgICA1NSUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSkgdHJhbnNsYXRlKDE1JSwgLTMwJSk7XG4gICAgfVxuXG4gICAgODUlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGUoMTAlLCAxMDAlKTtcbiAgICB9XG5cbiAgICA5OSUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZSgxMCUsIDEwMCUpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAvL2JhY2tncm91bmQtcG9zaXRpb246IDUwJSAzMCU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYXVyYSB7XG4gICAgMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgNTAlO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xuICAgIH1cbn1cbiIsIi8vIFRoZW1lIEJhc2VkIHN0eWxlc1xuQHZpZXctdHJhbnNpdGlvbiB7XG4gICAgbmF2aWdhdGlvbjogYXV0bztcbn1cblxuOjp2aWV3LXRyYW5zaXRpb24tb2xkKHJvb3QpLFxuOjp2aWV3LXRyYW5zaXRpb24tbmV3KHJvb3QpIHtcbiAgICBhbmltYXRpb246IGZhZGUgMC4zcyBlYXNlIGJvdGg7XG59XG5cbkBrZXlmcmFtZXMgZmFkZSB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi53cmFwIHtcbiAgICBtYXgtd2lkdGg6ICR3cmFwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgJGxoO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi0tbmFycm93IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICAgICAgcGFkZGluZzogMCAkbGg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoICogNDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkeHgtbGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGggKiAyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzdXBlcikge1xuICAgICAgICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGg7XG5cbiAgICAgICAgJi0tbmFycm93IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogODUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaXRlLW1haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3Qge1xuICAgIGJhY2tncm91bmQ6ICRjLWFyY3RpYztcbn1cblxuc2VjdGlvbiB7XG4gICAgcGFkZGluZzogJGxoIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5iZy0tbm9uZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgICYuaGFzLWdyYWQtYmcge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogJGxoICogMiAwO1xuXG4gICAgICAgICYuYmctLW5vbmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAkbGggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogJGxoICogMiAwO1xuICAgIH1cblxuICAgICZfX2JhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG59XG4iLCIvKiBIZWxwZXIgc3R5bGVzICovXG5cbi5hbGlnbi1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmFsaWduLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5hbGlnbi1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hbGlnbi1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG4uZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLmNsZWFyZml4IHtcbiAgICAqem9vbTogMTtcbn1cbi5jbGVhcmZpeDpiZWZvcmUsXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuLmNsZWFyZml4OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLnZhbGlnbiB7XG4gICAgJi0tdG9wIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJi0tbWlkZGxlIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxufVxuXG5AZWFjaCAkY29sb3VyLCAkY29sb3IgaW4gJGNvbG91cnMge1xuICAgIC5jLS0jeyRjb2xvdXJ9IHtcbiAgICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmhhcy1ncmFkLWJnIHtcbiAgICBoMSxcbiAgICAuaDEsXG4gICAgaDIsXG4gICAgLmgyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuXG4uYmcge1xuICAgIEBlYWNoICRjb2xvdXIsICRiZ2NvbG9yIGluICRjb2xvdXJzIHtcbiAgICAgICAgJi0tI3skY29sb3VyfSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdjb2xvcjtcblxuICAgICAgICAgICAgQGlmIGNvbnRhaW5zKCRkYXJrLWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgIGE6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGlmICgkY29sb3VyID09IFwiYmx1ZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgIGE6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICAgICAgLmgxLFxuICAgICAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgICAgIC5oMiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmIGNvbnRhaW5zKCRsaWdodC1jb2xvdXJzLCAkY29sb3VyKSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjLXRleHQ7XG5cbiAgICAgICAgICAgICAgICBoMSxcbiAgICAgICAgICAgICAgICAuaDEsXG4gICAgICAgICAgICAgICAgaDIsXG4gICAgICAgICAgICAgICAgLmgyLFxuICAgICAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgICAgIC5oMyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkZ3JhZGllbnQsICRiZ3JhZCBpbiAkZ3JhZGllbnRzIHtcbiAgICAgICAgJi0tI3skZ3JhZGllbnR9IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRiZ3JhZDtcblxuICAgICAgICAgICAgQGlmIGNvbnRhaW5zKCRkYXJrLWNvbG91cnMsICRncmFkaWVudCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICAgICAgLmgxLFxuICAgICAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgICAgIC5oMixcbiAgICAgICAgICAgICAgICAmLmgyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcmVoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigjZmZmLCA1JSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGljay1saXN0IGxpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vZGlzdC9pbWcvc3ZnL292YWwtdGljay5zdmdcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgY29udGFpbnMoJGxpZ2h0LWNvbG91cnMsICRncmFkaWVudCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy10ZXh0O1xuXG4gICAgICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICAgICAgLmgxLFxuICAgICAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgICAgIC5oMiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJlaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhhcy1iZy1pbWcge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG5AZWFjaCAkY29sb3VyLCAkZmlsbCBpbiAkY29sb3VycyB7XG4gICAgLmYtLSN7JGNvbG91cn0ge1xuICAgICAgICBmaWxsOiAkZmlsbDtcbiAgICB9XG59XG5cbkBlYWNoICRncmFkaWVudCwgJGJncmFkIGluICRncmFkaWVudHMge1xuICAgIC4jeyRncmFkaWVudH0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkYmdyYWQ7XG4gICAgfVxufVxuXG4uZmYyIHtcbiAgICBmb250LWZhbWlseTogJGZmMjtcbn1cblxuLy8gTWFyZ2luXG5cbi5tLW5vbmUge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItbm9uZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItaGFsZiB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxoLzIgIWltcG9ydGFudDtcbn1cblxuLm1iLXF0ciB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxoLzQgIWltcG9ydGFudDtcbn1cblxuLm1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGggIWltcG9ydGFudDtcbn1cblxuLm1iLTJ4IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGggKiAyICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1oYWxmIHtcbiAgICBtYXJnaW4tdG9wOiAkbGgvMiAhaW1wb3J0YW50O1xufVxuXG4ubXQge1xuICAgIG1hcmdpbi10b3A6ICRsaCAhaW1wb3J0YW50O1xufVxuXG4ubXQtMngge1xuICAgIG1hcmdpbi10b3A6ICRsaCAqIDIgIWltcG9ydGFudDtcbn1cblxuLy8gUGFkZGluZ1xuXG4ucC1ub25lIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wLWFsbCB7XG4gICAgcGFkZGluZzogJGxoICFpbXBvcnRhbnQ7XG59XG5cbi5wLWhhbGYge1xuICAgIHBhZGRpbmc6ICRsaC8yICFpbXBvcnRhbnQ7XG59XG5cbi5wdC1ub25lIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucHQtaGFsZiB7XG4gICAgcGFkZGluZy10b3A6ICRsaC8yICFpbXBvcnRhbnQ7XG59XG5cbi5wdCB7XG4gICAgcGFkZGluZy10b3A6ICRsaCAhaW1wb3J0YW50O1xufVxuXG4ucHQtMngge1xuICAgIHBhZGRpbmctdG9wOiAkbGggKiAyICFpbXBvcnRhbnQ7XG59XG5cbi5wdC00eCB7XG4gICAgcGFkZGluZy10b3A6ICRsaCAqIDQgIWltcG9ydGFudDtcbn1cbi5wYi1ub25lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucGItaGFsZiB7XG4gICAgcGFkZGluZy1ib3R0b206ICRsaC8yICFpbXBvcnRhbnQ7XG59XG5cbi5wYi1oYWxmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGxoLzIgIWltcG9ydGFudDtcbn1cblxuLnBiIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGxoICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0yeCB7XG4gICAgcGFkZGluZy1ib3R0b206ICRsaCAqIDIgIWltcG9ydGFudDtcbn1cblxuLnBiLTR4IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGxoICogNCAhaW1wb3J0YW50O1xufVxuXG4ucGwge1xuICAgIHBhZGRpbmctbGVmdDogJGxoICFpbXBvcnRhbnQ7XG59XG5cbi5wbC0yeCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbGggKiAyICFpbXBvcnRhbnQ7XG59XG5cbi5wbC00eCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbGggKiA0ICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc3BvbnNpdmVcblxuLm1vYi1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnAoJG1heCwgJGxhcmdlIC0gMSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5kdC1vbmx5IHtcbiAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi50by10YWIge1xuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmZyb20tdGFiIHtcbiAgICBAaW5jbHVkZSBicCgkbWF4LCAkbWVkaXVtIC0gMSkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gRGlzcGxheVxuXG4uZGIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZGliIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5kZiB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICYtLWNvbCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuXG4uaGFzLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAkbGgvMztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgc3ZnIHtcbiAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIH1cblxuICAgICYtLXRvcCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuLmxoIHtcbiAgICAmLS1ub3JtYWwge1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cbn1cblxuLy8gVGV4dCBUcmFuc2Zvcm1cblxuLnR0LXVwcGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBPdmVyZmxvd1xuXG4ub3ZlcmZsb3ctaCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gT3JkZXJcblxuLm9yZGVyLTEge1xuICAgIEBpbmNsdWRlIGJwKCRtYXgsICRzbWFsbCAtIDEpIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgJi1zbSB7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcmRlci0yIHtcbiAgICBAaW5jbHVkZSBicCgkbWF4LCAkc21hbGwgLSAxKSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cblxuICAgICYtc20ge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBQb3NpdGlvblxuXG4ucG9zciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBJbWFnZVxuXG4uaW1hZ2UtYXMtYmcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgJi0taGFsZiB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxufVxuXG4uaW1hZ2UtY29udGFpbiB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5oYXMtZGl2aWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG91ciwgJGJnY29sb3IgaW4gJGNvbG91cnMge1xuICAgICAgICAmLmJnLS0jeyRjb2xvdXJ9IHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGlmIGNvbnRhaW5zKCRkYXJrLWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaWYgY29udGFpbnMoJGxpZ2h0LWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5iZy0tbm9uZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnV0dG9uLXNldCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICRsaC8yO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG59XG5cbi8vIFRpY2sgTGlzdFxuXG4udGljay1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZGRyZXNzLXRleHQge1xuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi0taW5saW5lIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IE1haW4gTmF2aWdhdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5tYWluLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdHJhbnNpdGlvbjogMC4zcyBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAkbGg7XG5cbiAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgID4gdWwgPiBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICYuaGFzLWNvbHVtbnMge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgICAgID4gLm1haW4tbmF2aWdhdGlvbl9fc3VibWVudS10b2dnbGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5pcy1maXhlZCAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGE6bm90KFtjbGFzc149XCJidXR0b25cIl0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC40NiwgMC45NiwgMC40MywgMC45NCkgMC4ycztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpIHNjYWxlWCgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcyAwLjFzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4zcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1wYW5lbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtcHJpbWFyeTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSkgc2NhbGVYKDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjNzIDBzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuM3M7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubWFpbi1uYXZpZ2F0aW9uX19zdWJtZW51LXRvZ2dsZSBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgICAgIC5uby1mbGV4Ym94ICYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZChuICsgNikge1xuICAgICAgICAgICAgICAgIC5zdWItbWVudS5sZXZlbC0wIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciA+IC5zdWItbWVudS5sZXZlbC0wIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3ViLW1lbnUubGV2ZWwtMCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjRzLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuNHMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpIDAuMnM7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGxoLzI7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA5cHggOXB4IHJnYmEoMCwgMCwgMCwgMC4xNCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM4MHB4O1xuXG4gICAgICAgICAgICAgICAgJi5zdWItbWVudS0tbGlzdC1zdHlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNTBweDtcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvNDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnogLSAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3IgMC4ycyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4ycztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoLzIgJGxoLzIgJGxoO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJGxoLzI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkbGgvNCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgID4gYSA+IC5tZW51LWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN1Yi1tZW51LmxldmVsLTEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtJGxoLzI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxoICogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6ICRsaDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAkbGgvMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtYXgsICRsYXJnZSAtIDFweCkge1xuICAgICAgICAmX19zdWJtZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6ICRsaC8yO1xuICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgd2lkdGg6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgIGhlaWdodDogJGxoO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRjLW1ibHVlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGxoICogMC43NTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRsaCAqIDAuNzU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50X3BhZ2VfaXRlbSxcbi5tYWluLW5hdmlnYXRpb24gLmN1cnJlbnQtbWVudS1pdGVtLFxuLm1haW4tbmF2aWdhdGlvbiAuY3VycmVudC1wYWdlLWFuY2VzdG9yIHtcbiAgICA+IGEge1xuICAgICAgICBjb2xvcjogJGMtYmx1ZTtcblxuICAgICAgICAuaXMtZml4ZWQgJiB7XG4gICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICRjLWJsdWU7XG4gICAgICAgIC5pcy1maXhlZCAmIHtcbiAgICAgICAgICAgIGZpbGw6ICRjLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LW1haW4tbmF2aWdhdGlvbi1jb250YWluZXIgPiB1bCBsaSB7XG4gICAgZmxleDogMTtcblxuICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5tYWluLW5hdmlnYXRpb25fX3N1Ym1lbnUtdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAmLmxldmVsLTEgYSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiBDb29raWVzIFRhYmxlICovXG5cbi5hY2YtdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgLy9ib3JkZXI6IDFweCBzb2xpZCAjZTdlN2U3O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmFjZi10YWJsZSB0aCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRjLW1ibHVlLCAwLjQpO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5hY2YtdGFibGUgdGQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkYy1tYmx1ZSwgMC4yKTtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWNmLXRhYmxlIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJhY2tncm91bmQ6ICRjLWJsdWU7XG59XG4uYWNmLXRhYmxlIHRib2R5IHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGNvbG9yOiAkYy10ZXh0O1xufVxuXG4uYWNmLXRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYXJjdGljO1xufVxuXG4uYWNmLXRhYmxlIHRyOm50aC1jaGlsZChvZGQpIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBCdXR0b25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJGMtcHJpbWFyeSwgJGMtcHJpbWFyeSwgI2ZmZik7XG5cbiAgICBAZWFjaCAkY29sb3VyLCAkY29sb3IgaW4gJGNvbG91cnMge1xuICAgICAgICAmLS0jeyRjb2xvdXJ9IHtcbiAgICAgICAgICAgIEBpZiBjb250YWlucygkZGFyay1jb2xvdXJzLCAkY29sb3VyKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCRjb2xvciwgJGNvbG9yLCAjZmZmKTtcblxuICAgICAgICAgICAgICAgIEBpZiAoJGNvbG91ciA9PSBcImJsdWVcIikge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyOm5vdCguYnV0dG9uLS1uby1ob3Zlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjLWRibHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiBjb250YWlucygkbGlnaHQtY29sb3VycywgJGNvbG91cikge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbigkY29sb3IsICRjb2xvciwgJGMtdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zb2xpZC0tI3skY29sb3VyfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24oJGNvbG9yLCAkY29sb3IsICNmZmYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tZ2hvc3QtLSN7JGNvbG91cn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKG5vbmUsICRjb2xvciwgJGNvbG9yKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWhhcy1pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cbiAgICAgICAgLmJ1dHRvbl9fbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tYmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxoLzI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbWFsbCB7XG4gICAgICAgIHBhZGRpbmc6ICRsaC80ICRsaC8yO1xuICAgICAgICBmb250LXNpemU6IHB4dG9yZW0oMTJweCk7XG4gICAgfVxuXG4gICAgJi0tYXJyb3ctYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCwgMC4ycywgZWFzZS1pbi1vdXQpO1xuICAgICAgICB3aWR0aDogJGxoICogMS41O1xuICAgICAgICBoZWlnaHQ6ICRsaCAqIDEuNTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcblxuICAgICAgICBAZWFjaCAkY29sb3VyLCAkY29sb3IgaW4gJGNvbG91cnMge1xuICAgICAgICAgICAgJi0tI3skY29sb3VyfSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgICAgIEBpZiBjb250YWlucygkZGFyay1jb2xvdXJzLCAkY29sb3VyKSB7XG4gICAgICAgICAgICAgICAgICAgIC5zdmdpY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaWYgY29udGFpbnMoJGxpZ2h0LWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgICAgICAgICAgICAgLnN2Z2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJGMtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpZiAoJGNvbG91ciA9PSBcIndoaXRlXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjJzO1xuICAgICAgICAgICAgd2lkdGg6IDI3cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMsIHRyYW5zZm9ybSAwLjJzO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG5cbiAgICAgICAgJi0tYmVmb3JlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGxoLzQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1iaWcge1xuICAgICAgICBwYWRkaW5nOiAkbGgvMiAkbGg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IHB4dG9yZW0oMThweCk7XG4gICAgfVxuXG4gICAgJi0td2lkZSB7XG4gICAgICAgIHBhZGRpbmc6ICRsaC8yICRsaCAqIDI7XG4gICAgICAgIGZvbnQtc2l6ZTogcHh0b3JlbSgxOHB4KTtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG5cbiAgICAgICAgJi0tYmVmb3JlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGxoLzQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zcXVhcmUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAmLS1sYXJnZSB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMztcbiAgICAgICAgICAgIGhlaWdodDogJGxoICogMztcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaC80O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkbGggKiAyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGxoICogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNtYWxsIHtcbiAgICAgICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGxoO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGxoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBIZWFkZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2l0ZS1oZWFkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDZweCAxM3B4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgdG9wOiAwO1xuXG4gICAgJl9fYmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogOTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9yNDA0ICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJl9fdG9wYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtZml4ZWQ6bm90KC5zaXRlLWhlYWRlci0tbm8tbmF2KSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRsaCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAxNXB4IHJnYmEoIzAwMCwgMC4xKTtcbiAgICB9XG5cbiAgICAmLmlzLXZpc2libGU6bm90KC5zaXRlLWhlYWRlci0tbm8tbmF2KSB7XG4gICAgICAgIC8vYm9yZGVyLWNvbG9yOiRjLWxncmV5O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWhpZGRlbjpub3QoLnNpdGUtaGVhZGVyLS1uby1uYXYpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIHJvdy1nYXA6ICRsaC8yO1xuICAgICAgICBwYWRkaW5nOiAkbGgvMiAwICRsaCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAyLjU7XG4gICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRhY3Qge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmZjI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEvLTE7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RlbCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplcyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBGb290ZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2l0ZS1mb290ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgIHBhZGRpbmctdG9wOiAkbGggKiAyO1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgJl9fbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ3JpZC1nYXA6ICRsaDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgICAgICBncmlkLWdhcDogJGxoICogMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3QtbGlua3Mge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG9wIHtcbiAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogJGxoO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaCAqIDI7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZ2FwOiAkbGggKiAzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc3VwZXIpIHtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaCAqIDQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgcGFkZGluZzogJGxoICogMiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY2NyZWRpdGF0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6ICRsaCAqIDIgMDtcblxuICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6ICRsaCAqIDI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoICogNCAwICRsaCAqIDIgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbHVtbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tY29udGFjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbWVkaXVtIC0gMXB4KSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaXRlLWZvb3Rlcl9fY29sdW1uLS1pcy1hY2NvcmRpYW4gJiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l0ZS1mb290ZXJfX2NvbHVtbi0taXMtYWNjb3JkaWFuLm9wZW4gJiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FsaWduZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zaXRlLWZvb3Rlcl9fY29sdW1uLS1pcy1hY2NvcmRpYW4gJiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3M7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l0ZS1mb290ZXJfX2NvbHVtbi0taXMtYWNjb3JkaWFuLm9wZW4gJiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LWxpbmsge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbWVkaXVtIC0gMXB4KSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvNDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2luZm8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGggKiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzAwcHgsIDFmcikpO1xuICAgICAgICAgICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fY3JlZGl0IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGMtYmxhY2s7XG4gICAgICAgIHBhZGRpbmc6ICRsaC8yIDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdhcDogJGxoICogMjtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA2MDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jcmVkaXQtbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2FkZHJlc3MtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRtZWRpdW0gLSAxcHgpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IExvZ29cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ubG9nbyB7XG4gICAgJi0taGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmxvZ29fX2ltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZvb3RlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbWVkaXVtIC0gMXB4KSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBTbGlkZSBNZW51XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLm1lbnUtcGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzLCB3aWR0aCAwLjRzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDY7XG4gICAgdG9wOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDM3MHB4O1xuICAgIG1heC13aWR0aDogNzAwcHg7XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1zbWFsbCkge1xuICAgICAgICBtaW4td2lkdGg6IDQ0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICBtaW4td2lkdGg6IDUyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgbWluLXdpZHRoOiA3MDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgLy93aWR0aDogY2FsYygxMDB2dyAvIDMpO1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAvL3dpZHRoOiBjYWxjKDEwMHZ3IC8gMyk7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDQwMHB4O1xuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCA2cHggMTNweCByZ2JhKDAsIDAsIDAsIDAuMikpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDEzO1xuXG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmx1ZS1ibGFjay1yYWRpYWwtYm90dG9tLXJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoLzIgJGxoICogMS41ICRsaDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJGxoO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMztcbiAgICAgICAgZ2FwOiAkbGgvNDtcblxuICAgICAgICAuc3VibWVudS1vcGVuICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgwLjZzLCBmYWRlSW5EZWxheSwgMSwgbGluZWFyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nOiAwICRsaDtcblxuICAgICAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6ICRsaC80O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtcGFuZWxfX2NvbnRhY3RfX2J1dHRvbiB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgICAgICAuY29udGFjdC1saW5rX19saW5rIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGxoICogMjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbWJsdWU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jbG9zZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjLXdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgIGhlaWdodDogJGxoICogMS41O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMC43NTtcbiAgICAgICAgICAgIGhlaWdodDogJGxoICogMC43NTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXN1Ym1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgLnN1Ym1lbnUtb3BlbiAmIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJGMtd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogJGMtZGJsdWU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMnM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib3R0b20ge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoICogMztcbiAgICAgICAgbWFyZ2luLXRvcDogJGxoLzI7XG5cbiAgICAgICAgLnNlYXJjaC1mb3JtIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5tZW51LW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAxNHB4IHJnYmEoIzAwMCwgMC4yKTtcbiAgICB9XG5cbiAgICAmLm1lbnUtc3VibWVudS1vcGVuIHtcbiAgICAgICAgJi0tbGV2ZWwwIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3ICogMC42NjYpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tbGV2ZWwxIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMjAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgLy9oZWlnaHQ6MTAwdmg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLyAzKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5zdWItbWVudSB7XG4gICAgICAgIC8vb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyB0cmFuc2Zvcm0sIG9wYWNpdHkgMC4ycztcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTczMDRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZy1ibHVlLWJsYWNrLXJhZGlhbC1ib3R0b20tcmlnaHQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoLzI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRsaDtcbiAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDIuNTtcblxuICAgICAgICA+IC5tZW51LWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgei1pbmRleDogMTI7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJGxhcmdlIC0gMXB4KSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXN1Ym1lbnUtdGl0bGUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICBtYXJnaW46IDQzcHggMCAwIDA7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAubWVudS1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgdG9wOiAkbGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3VibWVudS10b2dnbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICByaWdodDogNXB4O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvL2dyYWRpZW50LWJsYWNrLW1ibHVlLy9cbiRnLWJsYWNrLW1ibHVlOiBsaW5lYXItZ3JhZGllbnQoMCwgIzA2MTUzMyAwJSwgIzI0NDM4MSAxMDAlKTtcbi8vZ3JhZGllbnQtYmxhY2stbWJsdWUvL1xuJGctbWJsdWUtYmxhY2s6IGxpbmVhci1ncmFkaWVudCgwLCAjMjQ0MzgxIDAlLCAjMDYxNTMzIDEwMCUpO1xuLy9ncmFkaWVudC1ibGFjay1ibHVlLy9cbiRnLWJsYWNrLWJsdWU6IGxpbmVhci1ncmFkaWVudCgwLCAjMDYxNTMzIDAlLCAjMDBhZWVmIDEwMCUpO1xuLy9ncmFkaWVudC1ibHVlLWRibHVlLy9cbiRnLWJsdWUtZGJsdWU6IGxpbmVhci1ncmFkaWVudCgwLCAjMDBhZWVmIDAlLCAjMTcyYTUwIDEwMCUpO1xuLy9ncmFkaWVudC1kYmx1ZS1ibGFjay8vXG4kZy1kYmx1ZS1ibGFjazogbGluZWFyLWdyYWRpZW50KDAsICMwZjE4MWMgMCUsICMyMjM2NzAgMTAwJSk7XG4vL2dyYWRpZW50LWJsYWNrLy9cbiRnLWJsYWNrOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwKSAwJSwgIzAwMCAxMDAlKTtcbi8vZ3JhZGllbnQtbWJsdWUvL1xuJGctbWJsdWU6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDApIDAlLCAjMjQ0MzgxIDEwMCUpO1xuLy9ncmFkaWVudC1hcmN0aWMvL1xuJGctYXJjdGljOiBsaW5lYXItZ3JhZGllbnQoMCwgI2VjZjBmMiAwJSwgI2ZmZmZmZiAxMDAlKTtcbi8vZ3JhZGllbnQtYXJjdGljLXJldmVyc2UvL1xuJGctYXJjdGljLXJldmVyc2U6IGxpbmVhci1ncmFkaWVudCgwLCAjZmZmZmZmIDAlLCAjZWNmMGYyIDEwMCUpO1xuLy9ncmFkaWVudC1ibHVlLWJsYWNrLXJhZGlhbC1ib3R0b20tcmlnaHRcbiRnLWJsdWUtYmxhY2stcmFkaWFsLWJvdHRvbS1yaWdodDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCByaWdodCBib3R0b20sICMwMGFlZWYgMCUsICMxNzJhNTAgODAlLCAjMTcyYTUwIDEwMCUpO1xuLy9ncmFkaWVudC1ibHVlLWJsYWNrLXJhZGlhbC10b3AtbGVmdFxuJGctYmx1ZS1ibGFjay1yYWRpYWwtdG9wLWxlZnQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgbGVmdCB0b3AsICMwMGFlZWYgMCUsICMxNzJhNTAgODAlLCAjMTcyYTUwIDEwMCUpO1xuLy9ncmFkaWVudC1ibHVlLW1ibHVlLXJhZGlhbC1ib3R0b20tcmlnaHRcbiRnLWJsdWUtbWJsdWUtcmFkaWFsLWJvdHRvbS1yaWdodDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCByaWdodCBib3R0b20sICMwMGFlZWYgMCUsICMyNDQzODEgNTAlLCAjMjQ0MzgxIDEwMCUpO1xuIiwiLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMi4wXG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE2IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL093bENhcm91c2VsMi9Pd2xDYXJvdXNlbDIvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGhlaWdodDogMDsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1sb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAub3dsLWNhcm91c2VsLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWRyYWcgLm93bC1pdGVtIHtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWdyYWIge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IGdyYWI7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIEF1dG8gSGVpZ2h0IFBsdWdpblxuICovXG4ub3dsLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDsgfVxuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenkge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgICAgICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIG1hcmdpbi10b3A6IC00MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAxMDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8vIEN1c3RvbVxuXG4ub3dsLWRvdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6JGxoIDAgMCAwO1xuICAvL2Rpc3BsYXk6bm9uZTtcbn1cblxuLm93bC1kb3Qge1xuICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgd2lkdGg6ICRsaCAvIDEuNTtcbiAgaGVpZ2h0OiAkbGggLyAxLjU7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNXB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkYy1wcmltYXJ5O1xuICB9XG59XG5cbi5vd2wtcHJldiB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgaGVpZ2h0OjQ4cHg7XG4gICAgd2lkdGg6NDhweDtcbiAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vaW1nL3N2Zy9wcmV2LnN2ZycpO1xuICAgIC8vIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLy8gYmFja2dyb3VuZC1wb3NpdGlvbjogMjAlIGNlbnRlcjtcbiAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IDIzcHg7XG4gICAgbGVmdDokbGgvNDtcbiAgICB0b3A6MzUlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXJlZDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICBmaWxsOiRjLWJsYWNrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxuICAgIFxuICAgIFxufVxuXG4ub3dsLW5leHQge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGhlaWdodDo0OHB4O1xuICAgIHdpZHRoOjQ4cHg7XG4gICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltZy9zdmcvbmV4dC5zdmcnKTtcbiAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IDIwJSBjZW50ZXI7XG4gICAgLy8gYmFja2dyb3VuZC1zaXplOiAyM3B4O1xuICAgIHJpZ2h0OiRsaC80O1xuICAgIHRvcDozNSU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yZWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBzdmcge1xuICAgICAgZmlsbDokYy1ibGFjaztcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuICAgIFxuXG59XG5cbi5vd2wtY3Mtc2xpZGVyIHtcbiAgLm93bC1uYXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6JGxoLzI7XG4gICAgbGVmdDokbGgvMjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJGxoLzI7XG4gIH1cblxuICAub3dsLXByZXYsXG4gIC5vd2wtbmV4dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBsZWZ0OmF1dG87XG4gICAgdG9wOmF1dG87XG4gICAgdHJhbnNmb3JtOm5vbmU7XG4gICAgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4yc1xuICB9XG5cbiAgLm93bC1wcmV2IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTVweCk7XG4gICAgfVxuICB9XG5cbiAgLm93bC1uZXh0IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoNXB4KTtcbiAgICB9XG4gIH1cbn1cblxuXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFRvZ2dsZSBOYXZcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4udG9nZ2xlLW5hdiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsLCAwLjJzLCBlYXNlLWluLW91dCk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgZmlsbDogJGMtZGJsdWU7XG4gICAgfVxuXG4gICAgJi0tbW9iaWxlIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAwIDVweCAwIDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgLnRvZ2dsZS1uYXZfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIHdpZHRoOiAkbGg7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWNsb3NlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAkZno7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgLnRvZ2dsZS1uYXZfX2ljb24ge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICYtLWNsb3NlIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRsaC80O1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBzdmcge1xuICAgICAgICBmaWxsOiAkYy1ibGFjaztcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpIDAuMnM7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxKSB7XG4gICAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICAgICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50b2dnbGUtbmF2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgID4gLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogU29jaWFsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnNvY2lhbC1saW5rcyB7XG4gICAgJl9fbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRsaC8yO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuICAgICAgICAmLS1yb3VuZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6ICRsaCAqIDAuNzU7XG4gICAgICAgIGhlaWdodDogJGxoICogMC43NTtcbiAgICAgICAgZmlsbDogJGMtZGJsdWU7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcztcblxuICAgICAgICAmLS1sYXJnZSB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMS4yO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbGggKiAxLjI7XG4gICAgICAgIH1cblxuICAgICAgICAuc2lkZWJhciAmIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ibG9nIHtcbiAgICAgICAgLnNvY2lhbC1saW5rc19fbGluayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGMtbWJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWxpbmtzX19pY29uIHtcbiAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1jb250YWN0LXBhZ2Uge1xuICAgICAgICAuc29jaWFsLWxpbmtzX19pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAkbGgvMjtcbiAgICAgICAgfVxuICAgICAgICAuc29jaWFsLWxpbmtzX19saXN0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZvb3RlciB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRsaC8yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogQ29udGFjdCBMaW5rXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbnRhY3QtbGluayB7XG4gICAgJl9fdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICB9XG5cbiAgICAmLS1pY29uIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGxoLzI7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWxpZ2h0IHtcbiAgICAgICAgLmNvbnRhY3QtbGlua19fbGluayB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLS1kYXJrIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICRjLXRleHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IDQwNFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5lcnJvci00MDQge1xuICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgcGFkZGluZzogJGxoICogMyAwO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJzQwNCc7XG4gICAgICAgIGZvbnQtc2l6ZTogNTB2dztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiNlYWVhZWE7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRvcDo1MCU7XG4gICAgICAgIGxlZnQ6NTAlO1xuICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC02MCUsIC01MCUpIHJvdGF0ZSgtMTVkZWcpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OjY1JTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLnNlYXJjaC1maWVsZCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIC8vYm9yZGVyOjFweCBzb2xpZCAkYy1ib3JkZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgjMDAwLDAuMDcpO1xuICAgICAgICBoZWlnaHQ6NDRweDtcbiAgICB9XG5cbiAgICAuc2VhcmNoLXN1Ym1pdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGMtcHJpbWFyeTtcbiAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgaGVpZ2h0OjQ0cHg7XG4gICAgfVxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogR3JhZGllbnQgU2hhZG93XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmdyYWRpZW50LXNoYWRvdyB7XG5cdCYtLXRvcCB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgdG9wLWdyYWQtc2hhZG93KDAuNik7XG5cdFx0fVxuXHR9XG5cblx0Ji0tYm90dG9tIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBib3R0b20tZ3JhZC1zaGFkb3coMC45KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0aGVpZ2h0OiA5MCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji0tYm90aCB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgYm90aC1ncmFkLXNoYWRvdygpO1xuXHRcdH1cblx0fVxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogT3ZlcmxheVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5vdmVybGF5IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYtLW5vbmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbGlnaHQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMTU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbWVkaXVtIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLXN0cm9uZyB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG91ciwgJGJnY29sb3IgaW4gJGNvbG91cnMge1xuICAgICAgICAmLS0jeyRjb2xvdXJ9IHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgY29udGFpbnMoJGRhcmstY29sb3VycywgJGNvbG91cikge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICAgICAgLmgxLFxuICAgICAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgICAgIC5oMiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGE6bm90KFtjbGFzc149XCJidXR0b25cIl0pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbi1oZWFkZXJfX2hlYWRpbmcge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgY29udGFpbnMoJGxpZ2h0LWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtdGV4dDtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYy10ZXh0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zZWN0aW9uLWhlYWRlcl9faGVhZGluZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRncmFkaWVudCwgJGJncmFkIGluICRncmFkaWVudHMge1xuICAgICAgICAmLS0jeyRncmFkaWVudH0ge1xuICAgICAgICAgICAgQGlmIGNvbnRhaW5zKCRkYXJrLWNvbG91cnMsICRncmFkaWVudCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICAgICAgLmgxLFxuICAgICAgICAgICAgICAgIGgyLFxuICAgICAgICAgICAgICAgIC5oMiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkYmdyYWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGlmICgkZ3JhZGllbnQgPT0gXCJncmFkaWVudC1tYmx1ZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiBjb250YWlucygkbGlnaHQtY29sb3VycywgJGdyYWRpZW50KSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjLXRleHQ7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGJncmFkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogU1ZHIEljb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc3ZnaWNvbiB7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6MjRweDtcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEF2YXRhclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5hdmF0YXIge1xuXHRib3JkZXItcmFkaXVzOjEwMCU7XG5cdGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG5cdGJveC1zaGFkb3c6IDAgMCA0cHggcmdiYSgjMDAwLDAuNSk7XG5cdHdpZHRoOiAkbGgqMyFpbXBvcnRhbnQ7XG5cdGhlaWdodDogJGxoKjM7XG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBHcmF2aXR5IEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuYm9keSB7XG4gICAgLmdmb3JtX3dyYXBwZXIuZ3Jhdml0eS10aGVtZSB7XG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGgvMiAkbGg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbWJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZ2ZpZWxkLWNob2ljZS1pbnB1dCArIGxhYmVsIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9yZXF1aXJlZDpub3QoLmdmaWVsZF9yZXF1aXJlZF90ZXh0KSB7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGMtcmVkO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICBwYWRkaW5nOiAwICRsaC80O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgY29sb3I6ICNmZjYzNjM7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRsaC80O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3JlcXVpcmVkIC5nZmllbGRfcmVxdWlyZWRfY3VzdG9tLFxuICAgIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfcmVxdWlyZWQgLmdmaWVsZF9yZXF1aXJlZF90ZXh0IHtcbiAgICAgICAgY29sb3I6ICRjLXJlZDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cblxuICAgIC5nZm9ybV93cmFwcGVyLmdyYXZpdHktdGhlbWUgLmdmaWVsZF9sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplcyk7XG4gICAgfVxuXG4gICAgLmdmb3JtX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgfVxuXG4gICAgI2dmb3JtX3dyYXBwZXJfMSB7XG4gICAgICAgIC5nZm9ybV9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfZXJyb3IgLmdmaWVsZF9yZXBlYXRlcl9jZWxsIGxhYmVsLFxuICAgIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfZXJyb3IgbGFiZWwsXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9lcnJvciBsZWdlbmQsXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF92YWxpZGF0aW9uX21lc3NhZ2UsXG4gICAgLmdmb3JtX3dyYXBwZXIgLnZhbGlkYXRpb25fbWVzc2FnZSxcbiAgICAuZ2Zvcm1fd3JhcHBlciBbYXJpYS1pbnZhbGlkPVwidHJ1ZVwiXSArIGxhYmVsLFxuICAgIC5nZm9ybV93cmFwcGVyIGxhYmVsICsgW2FyaWEtaW52YWxpZD1cInRydWVcIl0ge1xuICAgICAgICBjb2xvcjogI2ZmNDY0NjtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5kZXNjcmlwdGlvbixcbiAgICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZmllbGRfZGVzY3JpcHRpb24sXG4gICAgLmdmb3JtX3dyYXBwZXIuZ3Jhdml0eS10aGVtZSAuZ3NlY3Rpb25fZGVzY3JpcHRpb24sXG4gICAgLmdmb3JtX3dyYXBwZXIuZ3Jhdml0eS10aGVtZSAuaW5zdHJ1Y3Rpb24ge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF92YWxpZGF0aW9uX21lc3NhZ2UsXG4gICAgLmdmb3JtX3dyYXBwZXIgLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5maWVsZF9kZXNjcmlwdGlvbl9hYm92ZSAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzI2MDAwMDtcbiAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIH1cbn1cbiIsIi8qISBMaXR5IC0gdjIuNC4xIC0gMjAyMC0wNC0yNlxuKiBodHRwOi8vc29yZ2FsbGEuY29tL2xpdHkvXG4qIENvcHlyaWdodCAoYykgMjAxNS0yMDIwIEphbiBTb3JnYWxsYTsgTGljZW5zZWQgTUlUICovXG4ubGl0eSB7XG4gICAgei1pbmRleDogOTk5MDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYmFja2dyb3VuZDogIzBiMGIwYjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgfVxuICAubGl0eS5saXR5LW9wZW5lZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAubGl0eS5saXR5LWNsb3NlZCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAubGl0eSAqIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAubGl0eS13cmFwIHtcbiAgICB6LWluZGV4OiA5OTkwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAubGl0eS13cmFwOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVlbTtcbiAgfVxuICAubGl0eS1sb2FkZXIge1xuICAgIHotaW5kZXg6IDk5OTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0wLjhlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgfVxuICAubGl0eS1sb2FkaW5nIC5saXR5LWxvYWRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAubGl0eS1jb250YWluZXIge1xuICAgIHotaW5kZXg6IDk5OTI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmxpdHktY29udGVudCB7XG4gICAgei1pbmRleDogOTk5MztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UsIC1vLXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIH1cbiAgLmxpdHktbG9hZGluZyAubGl0eS1jb250ZW50LFxuICAubGl0eS1jbG9zZWQgLmxpdHktY29udGVudCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gIH1cbiAgLmxpdHktY29udGVudDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgei1pbmRleDogLTE7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICB9XG4gIC5saXR5LWNsb3NlIHtcbiAgICB6LWluZGV4OiA5OTk0O1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlO1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAubGl0eS1jbG9zZTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmxpdHktY2xvc2U6aG92ZXIsXG4gIC5saXR5LWNsb3NlOmZvY3VzLFxuICAubGl0eS1jbG9zZTphY3RpdmUsXG4gIC5saXR5LWNsb3NlOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTtcbiAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLmxpdHktY2xvc2U6YWN0aXZlIHtcbiAgICB0b3A6IDFweDtcbiAgfVxuICAvKiBJbWFnZSAqL1xuICAubGl0eS1pbWFnZSBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgLyogaUZyYW1lICovXG4gIC5saXR5LWlmcmFtZSAubGl0eS1jb250YWluZXIsXG4gIC5saXR5LXlvdXR1YmUgLmxpdHktY29udGFpbmVyLFxuICAubGl0eS12aW1lbyAubGl0eS1jb250YWluZXIsXG4gIC5saXR5LWZhY2Vib29rdmlkZW8gLmxpdHktY29udGFpbmVyLFxuICAubGl0eS1nb29nbGVtYXBzIC5saXR5LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA5NjRweDtcbiAgfVxuICAubGl0eS1pZnJhbWUtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgLmxpdHktaWZyYW1lLWNvbnRhaW5lciBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gIH1cbiAgLmxpdHktaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAiLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFBvc3Rcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ucG9zdCB7XG4gICAgJl9faW50cm8ge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZXMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBoMixcbiAgICAgICAgLmgyIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aHVtYm5haWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGxoLzQ7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMDRweCAkbGggLTEwNHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRsaC8yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29uZS1jb2x1bW4ge1xuICAgICAgICBoMixcbiAgICAgICAgLmgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRsaCAqIDI7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1yZXN1bHQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJGxoO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA1cHggc29saWQgJGMtYmx1ZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcblxuICAgICAgICAgICAgaDIsXG4gICAgICAgICAgICAuaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190d28tY29sdW1uIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAkbGg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaW5nbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICAuZW50cnktdGl0bGUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZW50cnktbWV0YSB7XG4gICAgICAgIHRleHQtYWxpZ246IExlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDE4cHggcmdiYSgjMDAwLCAwLjIpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwYWRkaW5nOiAkbGgvNCAkbGgvMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRsaC8yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQ0cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVudHJ5LWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLmVudHJ5LWF1dGhvciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmF1dGhvcl9fYmlvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJGxoLzI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkbGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYXV0aG9ybmFtZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZno7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYXV0aG9yX19pbWFnZSB7XG4gICAgICAgICAgICAuYXZhdGFyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBNb2JpbGUgTWFpbiBOYXZpZ2F0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLm1vYmlsZS1tYWluLW5hdmlnYXRpb24ge1xuICAgIHBhZGRpbmc6ICRsaC8yICRsaDtcblxuICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzQ7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkbGgvMjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1hcmN0aWM7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFBvcnRyYWl0IEJsb2NrIExpbmtzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnBvcnRyYWl0LWJsb2NrLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICYuc2xpY2stc2xpZGUge1xuICAgICAgICBtYXJnaW46IDAgJGxoLzI7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIGJvdHRvbTogJGxoICogMS41O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMC4zcywgdHJhbnNmb3JtIDAuM3MgMC4xcztcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRsYXJnZSAtIDFweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoICogMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgMC4zcztcbiAgICB9XG5cbiAgICAmX190ZXh0Ym94IHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIDAuMXMsIHRyYW5zZm9ybSAwLjNzIDAuMXM7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRsaC8yKTtcbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgcmlnaHQ6ICRsaDtcbiAgICAgICAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIC8vd2lkdGg6IDk1JTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIDAuM3MsIHRyYW5zZm9ybSAwLjNzIDAuMXM7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJGaW5kIG91dCBtb3JlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvdHRvbS1ncmFkLXNoYWRvdygxLCA2MCUsICRjLW1ibHVlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAwLjNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmxhY2stbWJsdWU7XG4gICAgICAgICAgICAtd2Via2l0LW1hc2staW1hZ2U6IHVybCguL2Rpc3QvaW1nL3BhZ2UtbGluay1tYXNrLnN2Zyk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoLi9kaXN0L2ltZy9wYWdlLWxpbmstbWFzay5zdmcpO1xuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXM7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDMpO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgKyAucG9ydHJhaXQtYmxvY2stbGlua19fYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIC8vdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9ydHJhaXQtYmxvY2stbGlua19faGVhZGluZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLSRsaCk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuaDMucG9ydHJhaXQtYmxvY2stbGlua19faGVhZGluZyB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICRsaC80O1xuICAgIGJvdHRvbTogLSRsaCAqIDEuNTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcbiAgICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHdpZHRoOiAkbGggKiAyO1xuICAgIGhlaWdodDogJGxoICogMjtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmlsbDogI2ZmZjtcbn1cblxuLy8gQ3VzdG9tIFNsaWRlciBTdHlsZXNcblxuLnNsaWNrLXNsaWRlciB7XG4gICAgJi0tc2VydmljZXMge1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAkbGg7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tcGFnZS1saW5rLWNhcm91c2VsIHtcbiAgICAgICAgLnNsaWNrLXByZXYsXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAkbGg7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogSWNvbiBCdWxsZXQgTGlzdFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pY29uLWJ1bGxldC1saXN0IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG5cbiAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGxoLzQ7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBQb3N0IFNoYXJlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5wb3N0LXNoYXJlIHtcblxuXHRmbG9hdDpsZWZ0O1xuXG5cdD4gKiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cdFxuXHRAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcblx0XHRmbG9hdDpub25lO1xuXHRcdGRpc3BsYXk6ZmxleDtcblx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcblx0XHRwYWRkaW5nOiAkbGgvMjtcblx0fVxuXG5cblx0Jl9fa2V5IHtcblx0XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZy1yaWdodDogJGxoLzQ7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXG5cdFx0cCB7XG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuXHRcdFx0cGFkZGluZy1yaWdodDogJGxoLzI7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6ICRsaC8yO1xuXHRcdFx0Zm9udC1zaXplOiAkZno7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDonJztcblx0XHRcdFx0d2lkdGg6IDA7XG5cdFx0XHRcdGhlaWdodDogMDtcblx0XHRcdFx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0dG9wOjEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fc29jaWFsIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRtYXJnaW46MCAzcHg7XG5cdFx0d2lkdGg6ICRsaCArIDNweDtcblx0XHRoZWlnaHQ6ICRsaCArIDNweDtcblx0XHRib3JkZXItcmFkaXVzOjEwMCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRmaWxsOiNmZmY7XG5cdFx0fVxuXG5cdFx0Ji0tZmFjZWJvb2sge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGMtZmFjZWJvb2s7XG5cdFx0fVxuXG5cdFx0Ji0tdHdpdHRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYy10d2l0dGVyO1xuXHRcdH1cblxuXHRcdCYtLWxpbmtlZGluIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjLWxpbmtlZGluO1xuXHRcdH1cblx0fVxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogUG9zdCBMaXN0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnBvc3QtbGlzdCB7XG4gICAgJi0tZ2FsbGVyeSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRnLWFyY3RpYy1yZXZlcnNlO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICYtLWZlYXR1cmVkLWNzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRsaDtcblxuICAgICAgICAgICAgLnBvc3QtbGlzdF9fbGluayB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRtZWRpdW0gLSAxcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgLnBvc3QtbGlzdF9fdGh1bWJuYWlsOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAucG9zdC1saXN0X19jb250ZW50X19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDUwcHggLTFweCwgMTAwJSAwLCAxMDAlIDEwMCUsIDBweCAxMDAlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXNlLXN0dWR5LWludHJvX19rZXktZmVhdHVyZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJGxoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3QtbGlzdF9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEyMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDEwMHB4IC0xcHgsIDEwMCUgMCwgMTAwJSAxMDAlLCAzMHB4IDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGggKiA2O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY2xpcC1wYXRoIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjMsIDAuODUsIDAuNDIsIDAuOSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZy1ibHVlLW1ibHVlLXJhZGlhbC1ib3R0b20tcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9zdC1saXN0X190aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxsOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhc2Utc3R1ZHktaW50cm9fX2tleS1mZWF0dXJlcyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FzZS1zdHVkeS1pbnRyb19fbGlzdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tcGFkZGVkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaC80O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGxoLzI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1pbmxpbmUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAucG9zdC1saXN0X19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3N0LWxpc3RfX3RodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoIC8gMjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEyMHB4IDFmcjtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMDBweCAxZnI7XG4gICAgICAgICAgICAgICAgZ2FwOiAkbGggKiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3Zlcjpub3QoLnBvc3QtbGlzdF9faXRlbS0tZmVhdHVyZWQtY3MpIHtcbiAgICAgICAgICAgIC5wb3N0LWxpc3Qge1xuICAgICAgICAgICAgICAgICZfX3RleHRib3gge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGxoLzIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKCMwMDAsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAvL2NvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2MyYSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXM7XG4gICAgICAgIHdpZHRoOiAkbGggKiAyO1xuICAgICAgICBoZWlnaHQ6ICRsaCAqIDI7XG4gICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWFyY3RpYztcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzLCBib3gtc2hhZG93IDAuMnM7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7IC8qIHN0YXJ0IHdpdGggbm9uZSAqL1xuICAgICAgICBjb2xvcjogJGMtZGJsdWU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJl9fdGV4dGJveCB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbWVkaXVtIC0gMXB4KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jMmEge1xuICAgICAgICBwYWRkaW5nOiAkbGgvNCAkbGgvMjtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGJvcmRlci1jb2xvciAwLjJzLCBvcGFjaXR5IDAuM3M7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wb3N0cyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBnYXA6ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNhcm91c2VsLFxuICAgICAgICAmLS1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmLS0xY29sIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tZnVsbCxcbiAgICAgICAgJi0tZmFpbCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLTJjb2wge1xuICAgICAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgICAgICAgIC8vbWF4LWhlaWdodDowO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkbGggKiAxLjU7XG4gICAgICAgIGxlZnQ6ICRsaCAqIDEuNTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6ICRsaC8yICRsaCAvIDIgJGxoLzIgJGxoLzI7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJl9fZGF5IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjc1O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tb250aCB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZmO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogJGxoLzI7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaC8yO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbGgvNDtcbiAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aHVtYm5haWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cztcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZy1ibHVlLW1ibHVlLXJhZGlhbC1ib3R0b20tcmlnaHQ7XG4gICAgICAgICAgICAtd2Via2l0LW1hc2staW1hZ2U6IHVybCguL2Rpc3QvaW1nL3BhZ2UtbGluay1tYXNrLnN2Zyk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoLi9kaXN0L2ltZy9wYWdlLWxpbmstbWFzay5zdmcpO1xuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXMsIGZpbHRlciAwLjVzO1xuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDMpO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMjtcbiAgICAgICAgICAgIGhlaWdodDogJGxoICogMjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDBweCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC42cyBlYXNlOyAvKiDwn5GIIG1ha2VzIGJsdXIgYW5pbWF0ZSAqL1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSksIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkbGg7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEZlYXR1cmVzIExpc3Rcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uZmVhdHVyZXMtbGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDE4cHggcmdiYSgjMDAwLCAwLjIpO1xuICAgIHBhZGRpbmc6ICRsaC8yICRsaDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBtYXJnaW46IC0kbGggYXV0byAwIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogJGxoLzI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICBnYXA6ICRsaCAqIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICBmaWxsOiAjZmZmO1xuICAgIH1cblxuICAgICZfX3ZhbHVlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogQnJlYWRjcnVtYnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uYnJlYWRjcnVtYnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGZvbnQtZmFtaWx5OiAkZmYyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIC5sb2FkZWQgJiB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgxcywgZmFkZUluUmlnaHRWU21hbGwsIDEsIGVhc2UtaW4tb3V0KTtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYl9sYXN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG5cbiAgICAmX19zZXBhcmF0b3Ige1xuICAgICAgICB3aWR0aDogJGxoLzI7XG4gICAgICAgIGhlaWdodDogJGxoLzI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vZGlzdC9pbWcvc3ZnL2FuZ2xlLXJpZ2h0LnN2Z1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAkbGggKiAxLjU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcblxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGxoLzIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZGFyayB7XG4gICAgICAgIC5icmVhZGNydW1ic19fc2VwYXJhdG9yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vZGlzdC9pbWcvc3ZnL2FuZ2xlLXJpZ2h0LS1kYXJrLnN2Z1wiKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogV2lkZ2V0IFN0eWxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi53aWRnZXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1hcmN0aWM7XG4gICAgcGFkZGluZzogJGxoLzIgMDtcblxuICAgID4gKiB7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaC8yO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjLXRleHQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZmY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplcyk7XG4gICAgfVxuXG4gICAgJi10aXRsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAwICRsaCAqIDAuNzU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGgvMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAud3AtYmxvY2stc2VhcmNoIHtcbiAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXdpZGdldC1sYXllcmVkLW5hdi1saXN0IC53b29jb21tZXJjZS13aWRnZXQtbGF5ZXJlZC1uYXYtbGlzdF9faXRlbSB7XG4gICAgcGFkZGluZzogMCAkbGggKiAwLjc1O1xufVxuXG5ib2R5Lndvb2NvbW1lcmNlIC53aWRnZXRfcHJpY2VfZmlsdGVyIHtcbiAgICAucHJpY2Vfc2xpZGVyIHtcbiAgICAgICAgJl9hbW91bnQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogUGFnaW5hdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qIFBhZ2luYXRpb24gKi9cbi5wYWdpbmF0aW9uIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogJGxoIDA7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJl9faXRlbXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICZfX2NvdW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGxoO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgJi5wYWdpbmF0aW9uX19uZXh0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGxoLzI7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkbGgvMjtcbiAgICAgICAgICAgICAgICBmaWxsOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICAmLnBhZ2luYXRpb25fX3ByZXYge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRsaC8yO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGxoLzI7XG4gICAgICAgICAgICAgICAgZmlsbDogJGMtZGJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6ICRsaCAqIDIgMDtcbiAgICB9XG59XG5cbi5wYWdpbmF0aW9uIHNwYW4sXG4ucGFnaW5hdGlvbiBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGMtZGJsdWU7IC8qIFBhZ2luYXRpb24gdGV4dCBjb2xvciAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGMtYmx1ZTtcblxuICAgIG1hcmdpbjogMCAkbGgvODtcblxuICAgICYucGFnaW5hdGlvbl9faGVsaXAge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgIG1hcmdpbjogMCAkbGgvNjtcbiAgICB9XG59XG5cbi5wYWdpbmF0aW9uIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjLWJsdWU7IC8qIFBhZ2luYXRpb24gYmFja2dyb3VuZCBvbiBob3ZlciAqL1xufVxuXG4ucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgYmFja2dyb3VuZDogJGMtZGJsdWU7IC8qIEN1cnJlbnQgcGFnZSBiYWNrZ3JvdW5kICovXG4gICAgYm9yZGVyLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogU2lkZWJhclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zaWRlYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZy1ibHVlLWRibHVlO1xuICAgIHdpZHRoOiAkbGggKiAzO1xuICAgIHBhZGRpbmc6ICRsaCAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgei1pbmRleDogNDtcblxuICAgIC5ob21lICYge1xuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKDAuMnMsIHNsaWRlSW5MZWZ0LCAxLCBjdWJpYy1iZXppZXIoMC4wNiwgMC43NCwgMC42OSwgMS4xMSkpO1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1heCwgJGxhcmdlIC0gMXB4KSB7XG4gICAgICAgIGxlZnQ6IC0kbGggKiAzO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoICogMztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDE0cHggcmdiYSgjMDAwLCAwLjIpO1xuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwdmggLSAyNHB4KTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoLTE2cHgsIDUwJSk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICBnYXA6ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19ncm91cCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAkbGggKiAyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYy1ibHVlLCAwLjUpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbGVmdDogOTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEyMGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgLnNpZGViYXJfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaC80O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycywgYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogU2xhbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2xhbnQge1xuICAgIC0tc2xhbnRIOiAyNXB4O1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAtLXNsYW50SDogNTBweDtcbiAgICB9XG4gICAgJi0tdG9wIHtcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSB2YXIoLS1zbGFudEgpLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG5cbiAgICAgICAgJi0tcmV2ZXJzZSB7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCB2YXIoLS1zbGFudEgpLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWJvdHRvbSB7XG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIGNhbGMoMTAwJSAtIHZhcigtLXNsYW50SCkpKTtcblxuICAgICAgICAmLS1yZXZlcnNlIHtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSBjYWxjKDEwMCUgLSB2YXIoLS1zbGFudEgpKSwgMCAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogRG93bmxvYWRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uZG93bmxvYWQge1xuICAgICZfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICB9XG4gICAgJl9fbGluayB7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAkbGgvNDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGMtbWJsdWU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGNvbG9yO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogJGxoLzI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGZsZXg6IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19maWxlbmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgbGVmdDogJGxoICogMjtcbiAgICB9XG5cbiAgICAmX19jMmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgJi5idXR0b24tLWJsdWUge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5idXR0b24tLWhhcy1pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0taGFzLWljb24ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGgvMjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogVGFiYmVkIFBhbmVsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi50YWJiZWQtcGFuZWxzIHtcbiAgICAmX190YWJzIHtcbiAgICAgICAgJi0tcHJpbWFyeS10YWJzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmJlZC1wYW5lbHMge1xuICAgICAgICAgICAgICAgICZfX3RhYiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGMtZGJsdWUsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE2MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmOm5vdCgudGFiYmVkLXBhbmVsc19fdGFiLS1hY3RpdmUpOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNlY29uZGFyeS10YWJzIHtcbiAgICAgICAgICAgIGdhcDogJGxoLzI7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGg7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmJlZC1wYW5lbHMge1xuICAgICAgICAgICAgICAgICZfX3RhYiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM1Yzc4YjE7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGxoLzQgJGxoO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgICAgICAmLS1hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC50YWJiZWQtcGFuZWxzX190YWItLWFjdGl2ZSk6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190YWIge1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGJvcmRlci1jb2xvciAwLjJzO1xuICAgIH1cblxuICAgICZfX3BhbmVsLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmX19wYW5lbC1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgwLjVzLCBmYWRlSW4sIDEsIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBDYXJvdXNlbCBOYXZcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uY2Fyb3VzZWwtbmF2IHtcbiAgICAmX19uYXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6ICRsaC8yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRsYXJnZSAtIDFweCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkbGg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAuY2Fyb3VzZWwtbmF2IHtcbiAgICAgICAgICAgICAgICAmX19wcmV2IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19uZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJGxhcmdlIC0gMXB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNlbnRlcmVkIHtcbiAgICAgICAgICAgIC5jYXJvdXNlbC1uYXYge1xuICAgICAgICAgICAgICAgICZfX3ByZXYge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNXB4LCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX25leHQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNzVweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByZXYge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uZXh0IHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcmV2LFxuICAgICZfX25leHQge1xuICAgICAgICB3aWR0aDogJGxoICogMS41O1xuICAgICAgICBoZWlnaHQ6ICRsaCAqIDEuNTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGMtZGJsdWU7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycywgYm9yZGVyLWNvbG9yIDAuMnMsIHRyYW5zZm9ybSAwLjJzO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMnM7XG4gICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgICAgIGhlaWdodDogJGxoO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBAZWFjaCAkY29sb3VyLCAkYmdjb2xvciBpbiAkY29sb3VycyB7XG4gICAgICAgIC8vICAgICAuYmctLSN7JGNvbG91cn0gJiB7XG4gICAgICAgIC8vICAgICAgICAgQGlmIGNvbnRhaW5zKCRkYXJrLWNvbG91cnMsICRjb2xvdXIpIHtcbiAgICAgICAgLy8gICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgIC8vICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgIC8vICAgICAgICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAvLyAgICAgICAgICAgICB9XG4gICAgICAgIC8vICAgICAgICAgfVxuXG4gICAgICAgIC8vICAgICAgICAgQGlmIGNvbnRhaW5zKCRsaWdodC1jb2xvdXJzLCAkY29sb3VyKSB7XG4gICAgICAgIC8vICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGMtYmxhY2s7XG5cbiAgICAgICAgLy8gICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgLy8gICAgICAgICAgICAgICAgIGZpbGw6ICRjLWJsYWNrO1xuICAgICAgICAvLyAgICAgICAgICAgICB9XG4gICAgICAgIC8vICAgICAgICAgfVxuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6ICRsaCAqIDI7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaCAqIDI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFdQIEdvb2dsZSBSZXZpZXdzIE92ZXJyaWRlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmJvZHkge1xuICAgIC53cC1nciB7XG4gICAgICAgICYud3BhYyB7XG4gICAgICAgICAgICBhLndwLWdvb2dsZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndwLWdvb2dsZS10aW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZ3J3LXJldmlldy1pbm5lciA+IHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEZpbHRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi50Zi1maWx0ZXJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZmxleDogMTtcblxuICAgICYtLXN0YWNrZWQge1xuICAgICAgICAudGYtZmlsdGVycyB7XG4gICAgICAgICAgICAmX193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjLWJsdWUsIDAuMyk7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1ODBweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBnYXA6ICRsaC8yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWlubGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAudGYtZmlsdGVycyB7XG4gICAgICAgICAgICAmX193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGgvMjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoLzI7XG4gICAgICAgICAgICAgICAgZ2FwOiAkbGg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZ2FwOiAkbGgvMjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2MyYSB7XG4gICAgICAgICAgICAgICAgJi5oMyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX193cmFwcGVyIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAmX19jMmEge1xuICAgICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgICZfX2ZpbHRlci13cmFwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgZmxleDogMTtcblxuICAgICAgICAudGYtZmlsdGVyc19fZmlsdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAmLS1oYXMtc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgICAgICAmLS1oYXMtc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGYtZmlsdGVyc19fYzJhIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zZWxlY3Qge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZXMpO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAkbGgvNCAkbGggKiAxLjUgJGxoLzQgJGxoLzI7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcywgY29sb3IgMC4zcztcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuXG4gICAgICAgICAgICArIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJGMtYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ZpbHRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3dyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICRsaC8zO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcztcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jbGVhci1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweCAzMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbGgvNDtcbiAgICAgICAgZmlsbDogJGMtd2hpdGU7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoLWZvcm0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICBvcmRlcjogMTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJGxoICogMS41O1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3N0LXNlYXJjaCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgICAgbWluLXdpZHRoOiAzMTVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4ycywgYm9yZGVyLWNvbG9yIDAuMnMsIHRyYW5zZm9ybSAwLjJzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE5NXB4O1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNSUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGMtd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAmX19zZWxlY3Qge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogRmlsdGVyIEdyaWRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4udGYtZmlsdGVyLWdyaWQge1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAxLjU7XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAzO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMjtcbiAgICB9XG5cbiAgICAmX193cmFwcGVyLFxuICAgICZfX3RhZy1maWx0ZXJzIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5yZW1vdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3dyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcblxuICAgICAgICAmLS1mYWlsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yZWxhdGVkLWxpbmstbGlzdCB7XG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoICogMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaCAqIDQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmVsYXRlZC1saW5rLWxpc3RfX21haW4ge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbnRybyB7XG4gICAgICAgIHBhZGRpbmc6ICRsaC8yO1xuICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgJGMtYmx1ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGxoO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIG1hcmdpbjogJGxoICogNCBhdXRvO1xuXG4gICAgICAgIC5oMiB7XG4gICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoIzAwMCwgMC4xNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFuaW1hdGUtaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgwLjZzLCBmYWRlSW4sIDEsIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXByb2plY3RzIHtcbiAgICAgICAgICAgIC5wb3N0LWxpc3RfX3RodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucG9zdC1saXN0X19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1hcmN0aWM7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjNzLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcztcbiAgICAgICAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBvc3QtbGlzdF9fZXhjZXJwdCB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3QtbGlzdF9fc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5wb3N0LWxpc3RfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy9wYWRkaW5nOiAkbGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wb3N0LWxpc3RfX2V4Y2VycHQge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmejtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucG9zdC1saXN0X19zdW1tYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMS4xKSBzY2FsZVgoMS4wNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmFpbCB7XG4gICAgICAgIG1hcmdpbjogJGxoICogMiAwO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgICYubG9hZGluZyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5tLXNpemVyIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRsaH0pO1xuICAgIH1cbn1cblxuLm0tZ3V0dGVyIHtcbiAgICB3aWR0aDogJGxoO1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBQcm9maWxlIENhcmRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ucHJvZmlsZS1jYXJkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJveC1zaGFkb3c6IDBweCAwIDE0cHggcmdiYSgjMDAwLCAwLjIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAkbGggKiAxLjU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoICogMS41O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbGggKiAxLjU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIGdhcDogJGxoO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoICogMjtcblxuICAgICAgICAucHJvZmlsZS1jYXJkIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLCAwLjYyLCAwLCAxLjc1KSwgYm94LXNoYWRvdyAwLjNzO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4ICRsaCByZ2JhKCMwMDAsIDApO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggJGxoIHJnYmEoIzAwMCwgMC4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0Ym94IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaCAvIDQ7XG4gICAgICAgIGNvbG9yOiAkYy1tYmx1ZTtcbiAgICB9XG5cbiAgICAmX19zdW1tYXJ5IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgY29sb3I6ICRjLXRleHQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmx1ZS1ibGFjay1yYWRpYWwtYm90dG9tLXJpZ2h0O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMTAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSBjYWxjKDEwMCUgLSA1MHB4KSwgMCAxMDAlKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03NSUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcblxuICAgICAgICAgICAgLnByb2ZpbGUtY2FyZF9fbmFtZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9maWxlLWNhcmRfX2ltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcm9sZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJl9fYzJhIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJl9fcG9zdC1jYXRzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgIG1hcmdpbi10b3A6ICRsaDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjLWdyZXk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Bvc3QtY2F0cyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCRjLW1ibHVlLCAkYy1tYmx1ZSwgJGMtd2hpdGUpO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzQgJGxoLzI7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkbGgvNCAkbGgvMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3N0LWNhdGVnb3JpZXMge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFRleHQgT3ZlcmxheVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi50ZXh0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmX19saW5rIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi0tc2hhZG93LXRvcCB7XG4gICAgICAgIC50ZXh0LW92ZXJsYXkge1xuICAgICAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWdyYWQtc2hhZG93KDEsIDEwMCUsICRjLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgMC4zcztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1ncmFkLXNoYWRvdygxLCA2MCUsICRjLWJsYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGV4dGJveCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogJGxoO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6ICRsaDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zaGFkb3ctYm90dG9tIHtcbiAgICAgICAgLnRleHQtb3ZlcmxheSB7XG4gICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3R0b20tZ3JhZC1zaGFkb3coMSwgMTAwJSwgJGMtYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyAwLjNzO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm90dG9tLWdyYWQtc2hhZG93KDEsIDYwJSwgJGMtYmxhY2spO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX190ZXh0Ym94IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6ICRsaDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0Ym94IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwYWRkaW5nOiAkbGg7XG5cbiAgICAgICAgPiAqOm5vdCguYnV0dG9uLS1ncmVlbikge1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB0b3A6ICRsaDtcbiAgICAgICAgICAgIGxlZnQ6ICRsaDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yZWFkbW9yZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbGg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogJGxoO1xuICAgICAgICAgICAgcmlnaHQ6ICRsaDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiEgUGhvdG9Td2lwZSBtYWluIENTUyBieSBEbWl0cnkgU2VtZW5vdiB8IHBob3Rvc3dpcGUuY29tIHwgTUlUIGxpY2Vuc2UgKi9cbi8qXG5cdFN0eWxlcyBmb3IgYmFzaWMgUGhvdG9Td2lwZSBmdW5jdGlvbmFsaXR5IChzbGlkaW5nIGFyZWEsIG9wZW4vY2xvc2UgdHJhbnNpdGlvbnMpXG4qL1xuLyogcHN3cCA9IHBob3Rvc3dpcGUgKi9cbi5wc3dwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB6LWluZGV4OiAxNTAwO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAvKiBjcmVhdGUgc2VwYXJhdGUgbGF5ZXIsIHRvIGF2b2lkIHBhaW50IG9uIHdpbmRvdy5vbnNjcm9sbCBpbiB3ZWJraXQvYmxpbmsgKi9cbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLnBzd3AgKiB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4ucHN3cCBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyogc3R5bGUgaXMgYWRkZWQgd2hlbiBKUyBvcHRpb24gc2hvd0hpZGVPcGFjaXR5IGlzIHNldCB0byB0cnVlICovXG4ucHN3cC0tYW5pbWF0ZV9vcGFjaXR5IHtcbiAgICAvKiAwLjAwMSwgYmVjYXVzZSBvcGFjaXR5OjAgZG9lc24ndCB0cmlnZ2VyIFBhaW50IGFjdGlvbiwgd2hpY2ggY2F1c2VzIGxhZyBhdCBzdGFydCBvZiB0cmFuc2l0aW9uICovXG4gICAgb3BhY2l0eTogMC4wMDE7XG4gICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gICAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xufVxuXG4ucHN3cC0tb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2ltZyB7XG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2ltZyB7XG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG59XG5cbi5wc3dwLS1kcmFnZ2luZyAucHN3cF9faW1nIHtcbiAgICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLypcblx0ICBCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cblx0ICBBcyBhbmltYXRpbmcgb3BhY2l0eSBpcyBtdWNoIGZhc3RlciB0aGFuIGFuaW1hdGluZyByZ2JhKCkgYmFja2dyb3VuZC1jb2xvci5cbiAgKi9cbi5wc3dwX19iZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLnBzd3BfX3Njcm9sbC13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xufVxuXG4ucHN3cF9fYmcge1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAgIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbn1cblxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX19iZyxcbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fem9vbS13cmFwIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ucHN3cF9faXRlbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHN3cF9faW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4vKlxuXHQgIHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcblx0ICBzdHlsZSBpcyBhZGRlZCB0byBhdm9pZCBmbGlja2VyaW5nIGluIHdlYmtpdC9ibGluayB3aGVuIGxheWVycyBvdmVybGFwXG4gICovXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlciB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qXG5cdCAgZGl2IGVsZW1lbnQgdGhhdCBtYXRjaGVzIHNpemUgb2YgbGFyZ2UgaW1hZ2Vcblx0ICBsYXJnZSBpbWFnZSBsb2FkcyBvbiB0b3Agb2YgaXRcbiAgKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyLS1ibGFuayB7XG4gICAgYmFja2dyb3VuZDogIzIyMjtcbn1cblxuLnBzd3AtLWllIC5wc3dwX19pbWcge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG59XG5cbi8qXG5cdCAgRXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuXHQgIChKUyBvcHRpb24gZXJyb3JNc2cgY29udHJvbHMgbWFya3VwKVxuICAqL1xuLnBzd3BfX2Vycm9yLW1zZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgIGNvbG9yOiAjY2NjO1xufVxuXG4ucHN3cF9fZXJyb3ItbXNnIGEge1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBTY3JvbGxib3hcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2Nyb2xsYm94IHtcbiAgICBoZWlnaHQ6IDM4MHB4O1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogNTgwcHg7XG4gICAgfVxuXG4gICAgLnNpbXBsZWJhci1zY3JvbGxiYXIge1xuICAgICAgICAvL2JvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgcmlnaHQ6IDVweDtcblxuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuXG4gICAgICAgIC5zeXN0ZW0tZG93bmxvYWRzLWxpc3QgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkbGgvMztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRsaCAqIDEuNTtcbiAgICB9XG5cbiAgICAuc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci12ZXJ0aWNhbCB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICB9XG5cbiAgICAmLnN5c3RlbS1kb3dubG9hZHMtbGlzdCB7XG4gICAgICAgIC5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLXZlcnRpY2FsIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgMC4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZG93bmxvYWRzLWxpc3QtLWludC1zY3JvbGxiYXIge1xuICAgICAgICAuc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBsZWZ0OiAxMXB4O1xuICAgICAgICAgICAgdG9wOiAxOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItaG9yaXpvbnRhbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBNZWdhIE1lbnUgUGFuZWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ubWVnYS1tZW51LXBhbmVsIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDUwcHgsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIDEwMCUpO1xuICAgIC5tZWdhLW1lbnUtcGFuZWxfX3N1Yi1tZW51ID4gbGkubWVnYS1tZW51LWNvbHVtbi1oZWFkaW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmeiAtIDJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBwYWRkaW5nOiAkbGggKiAxLjUgJGxoO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMy41O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRsaCAqIDQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgIHZpc2liaWxpdHkgMHMgbGluZWFyIDAuNHMsXG4gICAgICAgICAgICBvcGFjaXR5IDAuNHMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpIDAuMnM7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA5NHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1hcmN0aWM7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBsaW5lYXIgMC40cyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpIDAuNHM7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCA1MHB4LCAxMDAlIDAsIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTc1MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb2x1bW5zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgZ2FwOiAkbGg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWItbWVudSB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkYy1ibHVlO1xuXG4gICAgICAgICAgICAmLS1jb2x1bW4ge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yIDAuM3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy90cmFuc2Zvcm06dHJhbnNsYXRlWCgxMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWNvbHVtbi5sZXZlbC0xLFxuICAgICAgICAgICAgJi0tY29sdW1uLmxldmVsLTAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHN1cGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAycHggc29saWQgJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDdweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcblxuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLXRleHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnVuZGVybGluZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAgICAgICAgICAgICA+IGEgLm1lbnUtaXRlbV9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnN1Yi1tZW51LmxldmVsLTEge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC80O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhID4gLm1lbnUtaXRlbV9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmeiAtIDJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zdWItbWVudS5sZXZlbC0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkbGgvNDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC80O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAkbGgvMjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGggKiAxLjU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51LWl0ZW1fX3RpdGxlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC80O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy10ZXh0O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6ICRsaCAqIDMuNSAkbGggKiAyICRsaCAqIDIuNSAkbGggKiA0LjU7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBQb3N0IFNlYXJjaFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5wb3N0LXNlYXJjaCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMTtcblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoLWZvcm0ge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgICBmb250LXNpemU6ICRmejtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNTRweDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0td2hpdGUge1xuICAgICAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vZGlzdC9pbWcvc3ZnL3NlYXJjaC0td2hpdGUuc3ZnXCIpO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGxoICogMS41O1xuICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEpIGJyaWdodG5lc3MoMTApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZGJsdWUge1xuICAgICAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3N2Zy9zZWFyY2guc3ZnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMjBweCksIDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGMtYmx1ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRsYXJnZSAtIDFweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuXG4gICAgICAgICAgICAgICAgLm1veS1maWx0ZXJzX19maWx0ZXItd3JhcCAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1hcmN0aWM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMSkgYnJpZ2h0bmVzcygxMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IERpcmVjdGlvbnMgRm9ybVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5kaXJlY3Rpb25zLWZvcm0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaCAqIDI7XG4gICAgZmllbGRzZXQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6ICRsaC80O1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA4MHB4O1xuICAgIH1cbiAgICAmX19zdWJtaXQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcztcbiAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IERvd25sb2FkcyBMaXN0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmRvd25sb2Fkcy1saXN0IHtcbiAgICAmX19saXN0IHtcbiAgICAgICAgcGFkZGluZzogJGxoICRsaDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAwLjEpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbGggKiAxLjU7XG5cbiAgICAgICAgJi0tZGFyayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWludC1zY3JvbGxiYXIge1xuICAgICAgICAuZG93bmxvYWRzLWxpc3Qge1xuICAgICAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGggKiAyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbZGF0YS1zaW1wbGViYXI9XCJpbml0XCJdIHtcbiAgICAgICAgICAgIC5kb3dubG9hZHMtbGlzdCB7XG4gICAgICAgICAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogJGxoLzI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogJGxoLzI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogJGxoICogMC43NTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcHJlaGVhZGluZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoI2ZmZiwgMC4yKTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRsaC8yO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbi0tYmx1ZSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkbGggKiAxLjU7XG4gICAgICAgICAgICBtaW4td2lkdGg6ICRsaCAqIDEuNTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAkbGgvNDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvNDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGMtYmx1ZSwgMC4yKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgLmJ1dHRvbi0tYmx1ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExheW91dCA6IEhlcm8tU2xpZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmhlcm8tc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmxhY2stYmx1ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctdG9wOiAkbGggKiA0O1xuXG4gICAgJl9fd3JhcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDUwMHB4O1xuICAgICAgICAgICAgZ2FwOiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhvbWUgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgIH1cblxuICAgICZfX3NsaWRlciB7XG4gICAgICAgIG1pbi13aWR0aDogNTAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMC4ycztcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcmV2aWV3cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kbGggKiAzO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMXM7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKDFzLCBmYWRlSW5VcFNtYWxsLCAxLCBlYXNlLWluLW91dCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGggKiA1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuN3MsIG9wYWNpdHkgMC4zcyAwLjJzO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1cHgpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgIC5sb2FkZWQgJiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46ICRsaC80O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dC13cmFwcGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjc0LCAwLjQxLCAwLjkxKSwgb3BhY2l0eSAxLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjc0LCAwLjQxLCAwLjkxKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMS4xcztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvNDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMS4ycyBjdWJpYy1iZXppZXIoMC4yOSwgMC43NCwgMC40MSwgMC45MSksIG9wYWNpdHkgMS4ycyBjdWJpYy1iZXppZXIoMC4yOSwgMC43NCwgMC40MSwgMC45MSk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDFzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMYXlvdXQgOiBIZXJvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmhlcm8taW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgICB9XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaDtcblxuICAgICAgICAuaGVyby1pbWFnZV9fY29udGVudF9fdGV4dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJnLS1pbWFnZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgIH1cblxuICAgICYtLWRlZmF1bHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmx1ZS1ibGFjay1yYWRpYWwtYm90dG9tLXJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBhbmltYXRpb246IGF1cmEgMTBzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcblxuICAgICAgICAgICAgLyogU2FtZSBncmFkaWVudCBidXQgd2l0aCBzb21lIHRyYW5zcGFyZW5jeSAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmx1ZS1ibGFjay1yYWRpYWwtdG9wLWxlZnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1MCUgMjUwJTtcblxuICAgICAgICAgICAgLyogRGlmZmVyZW50IGFuaW1hdGlvbiBzcGVlZCArIGRpcmVjdGlvbiAqL1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBhdXJhT3ZlcmxheSAxNHMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbm9ybWFsOyAvKiBvcHRpb25hbDogbWFrZXMgY29sb3JzIHBvcCBtb3JlICovXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vZGlzdC9pbWcvdGYtbG9nby5zdmdcIikgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbWFza01vdmUgMTIwcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogc29mdC1saWdodDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMjAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlcm8taW1hZ2Uge1xuICAgICAgICAgICAgJl9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgICAgICAgICAgICAgLmhlcm8taW1hZ2VfX2NvbnRlbnRfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50Zi1maWx0ZXJzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5oZXJvLWltYWdlX19jb250ZW50X190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguaGVyby0taG9tZSk6bm90KC5oZXJvLS1jYXNlLXN0dWRpZXMpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSg0NSwgNzcsIDE0MCwgMC45NSkgMCUsIHJnYmEoNDUsIDc3LCAxNDAsIDAuOSkgMjUlLCByZ2JhKDQ1LCA3NywgMTQwLCAwKSAxMDAlKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuaGVybyB7XG4gICAgICAgICAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXNlYXJjaCB7XG4gICAgICAgIC5oZXJvLWltYWdlX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMnB4ICRsaC8yIDJweCAkbGgvNDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbm8taW1hZ2Uge1xuICAgICAgICBwYWRkaW5nOiAkbGggKiAyIDA7XG4gICAgICAgIG1hcmdpbjogMCAwICRsaCAqIDQgMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5oZXJvLWltYWdlX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaCAqIDI7XG5cbiAgICAgICAgICAgICYtLW1iLW5vbmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iYWNrZ3JvdW5kIHtcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgwLjNzLCBmYWRlSW4sIDEsIGxpbmVhcik7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLmJsb2cgJiB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByZWhlYWRpbmcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRsaC8yO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sYXRlc3QtcG9zdCB7XG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fYmFkZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGxoLzQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5oZXJvLWltYWdlX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgMC41cywgb3BhY2l0eSAxcyAwLjVzO1xuXG4gICAgICAgICAgICAubG9hZGVkICYge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlcm8taW1hZ2VfX2NvbnRlbnRfX3RleHQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlcm8taW1hZ2VfX2hlYWRpbmcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRsaCAqIDIgYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgMC4zcywgb3BhY2l0eSAxcyAwLjNzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLW1iLWhhbGYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubG9hZGVkICYge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1sZWZ0IHtcbiAgICAgICAgLmhlcm8taW1hZ2VfX3ByZWhlYWRpbmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgwLjNzLCBmYWRlSW4sIDEsIGxpbmVhcik7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICAgIH1cbiAgICAgICAgLmhlcm8taW1hZ2VfX3N1YmhlYWRpbmcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyAwLjVzLCBvcGFjaXR5IDFzIDAuNXM7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAubG9hZGVkICYge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlcm8taW1hZ2VfX2hlYWRpbmcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyAwLjNzLCBvcGFjaXR5IDFzIDAuM3M7XG5cbiAgICAgICAgICAgIC5sb2FkZWQgJiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVyby1pbWFnZV9fbWFpbl9fdGV4dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5oZXJvLS1jb250YWN0IHtcbiAgICAgICAgICAgIC5oZXJvLWltYWdlX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgICAgICAgICAgZ3JpZC1nYXA6ICRsaDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaGVyby0taG9tZSB7XG4gICAgICAgICAgICAuaGVyby1pbWFnZV9fbWFpbl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGh1bWJuYWlsIHtcbiAgICAgICAgZmxleDogMC43NTtcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICNmZmY7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIC8vei1pbmRleDogMjsgLSBjb21tZW50ZWQgb3V0IGFzIHdhcyBjYXVzaW5nIGhvdmVyIGV2ZW50IGlzc3VlcyB3aXRoIHRhYiBsaW5rcyBvbiBwcm9kdWN0IHBhZ2VcbiAgICAgICAgLy8gVGhpbmsgdGhlIHN0eWxlIGFib3ZlIGlzIHRvIHNpdCB0ZXh0IGFib3ZlIG92ZXJsYXkgLSBjaGVjayFcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkbGggKiAyO1xuXG4gICAgICAgIC5zaW5nbGUtcHJvZmlsZXMgJixcbiAgICAgICAgLnBhZ2UtY29udGFjdC11cyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAkbGg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nICYsXG4gICAgICAgIC5wYWdlLWNhc2Utc3R1ZGllcyAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGggKiA0O1xuICAgICAgICB9XG5cbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAjZ29vZ2xlbWFwIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKCMwMDAsIDAuMik7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkbGgvMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICYtLWhhcy10aHVtYm5haWwsXG4gICAgICAgIC5wYWdlLWNhc2Utc3R1ZGllcyAmLFxuICAgICAgICAuYmxvZyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNpbmdsZS1wcm9maWxlcyAmLFxuICAgICAgICAucGFnZS1jb250YWN0LXVzICYge1xuICAgICAgICAgICAgZmxleDogMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJHgtc21hbGwpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjc0LCAwLjQxLCAwLjkxKSwgb3BhY2l0eSAxLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjc0LCAwLjQxLCAwLjkxKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMS4xcztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgICZfX3N1YmhlYWRpbmcge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICYtLW1iLWhhbGYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQtd3JhcHBlciB7XG4gICAgICAgICYtLWZhZGluZyB7XG4gICAgICAgICAgICBhbmltYXRpb246IGZhZGVJbk91dCAxNnMgdmFyKC0tZCkgaW5maW5pdGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAkbGg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mYWRpbmctdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoICogMjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaCAqIDQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFNwYWNlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zcGFjZXIge1xuICAgIC0tbXVsdGlwbGllcjogMTtcbiAgICAtLWxoOiAjeyRsaH07XG4gICAgLS1saW5lY29sOiAjeyRjLW1ncmV5fTtcblxuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJi5zbGFudCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tbGluZWNvbCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xhbnQtLXRvcCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTJkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNsaXAtcGF0aDogaW5pdGlhbDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xhbnQtLWJvdHRvbSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMmRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNsaXAtcGF0aDogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2VjdGlvbi1zbGFudCB7XG4gICAgICAgIC0tc2xhbnRIOiAyNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIC0tc2xhbnRIOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICYtLXRvcCB7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIHZhcigtLXNsYW50SCksIDEwMCUgMTAwJSwgMCAxMDAlKTtcblxuICAgICAgICAgICAgJi0tcmV2ZXJzZSB7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgdmFyKC0tc2xhbnRIKSwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ib3R0b20ge1xuICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgY2FsYygxMDAlIC0gdmFyKC0tc2xhbnRIKSkpO1xuXG4gICAgICAgICAgICAmLS1yZXZlcnNlIHtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgY2FsYygxMDAlIC0gdmFyKC0tc2xhbnRIKSksIDAgMTAwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kaXYge1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tbGgpICogdmFyKC0tbXVsdGlwbGllcikgKiAwLjc1KTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tbGgpICogdmFyKC0tbXVsdGlwbGllcikpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBTZWN0aW9uIEhlYWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zZWN0aW9uLWhlYWRlciB7XG4gICAgLy9wYWRkaW5nOjAgJGxoO1xuICAgIG1hcmdpbi1ib3R0b206ICRsaDtcblxuICAgICY6bm90KC5uby1kaXZpZGVyKSB7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJsYWNrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaCAqIDI7XG5cbiAgICAgICAgJi5uby1kaXZpZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLWhlYWRlcl9faGVhZGluZ3Mge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMsIHRyYW5zZm9ybSAxcyBlYXNlLWluLW91dDtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICBhW2NsYXNzKj1cImJ1dHRvblwiXSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gICAgfVxuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5hbGlnbi1jZW50ZXIsXG4gICAgICAgICYuYWxpZ24tbGVmdCB7XG4gICAgICAgICAgICAuc2VjdGlvbi1oZWFkZXJfX2hlYWRpbmdzIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGFbY2xhc3MqPVwiYnV0dG9uXCJdIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLWxlZnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogJGxoICogMjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgICAgICAgJl9fc3ViaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19oZWFkaW5ncyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgJi5oMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YmhlYWRpbmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjcwcHg7XG5cbiAgICAgICAgICAgIC5hbGlnbi1jZW50ZXIgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogU2VydmljZSBCbG9jayBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zZXJ2aWNlLWJsb2Nrcy1saW5rcyB7XG4gICAgLS1zYkJHOiAjeyRnLWJsYWNrLWJsdWV9O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLXNiQkcpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAxLjU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAkbGggKiAyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAtLXNiQkc6ICN7JGctZGJsdWUtYmxhY2t9O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoICogMjtcbiAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDQ7XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgxcywgZmFkZUluVXBTbWFsbCwgMSwgZWFzZS1pbi1vdXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tc3RhdGljIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgICAgIC5zZXJ2aWNlLWJsb2Nrcy1saW5rc19faXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbS5zbGljay1zbGlkZSB7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRzbWFsbCAtIDFweCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLmJsb2NrLWxpbmtfX2xpbmsge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjcwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgcGFkZGluZzogJGxoICRsaC8yIDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJl9faW50cm8ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKDFzLCBmYWRlSW5SaWdodFNtYWxsLCAxLCBlYXNlLWluLW91dCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgIGdhcDogJGxoICogMjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6ICRsaC8yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRsYXJnZSAtIDFweCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcmV2IHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1ibGFjaztcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkYy1hcmN0aWM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uZXh0IHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRjLWFyY3RpYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByZXYsXG4gICAgJl9fbmV4dCB7XG4gICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgIGhlaWdodDogJGxoICogMS41O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYy1ibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycywgdHJhbnNmb3JtIDAuMnM7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiAkbGggKiAyO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBJbWFnZSArIFRleHQgUm93XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmltYWdlLXRleHQtcm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIC5ob21lICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMztcbiAgICAgICAgfVxuXG4gICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi0tY3Mge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTA0cHggJGxoIC0xMDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudmFsaWduIHtcbiAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgIC5pbWFnZS10ZXh0LXJvdyB7XG4gICAgICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLW1pZGRsZSB7XG4gICAgICAgICAgICAuaW1hZ2UtdGV4dC1yb3cge1xuICAgICAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJvdHRvbSB7XG4gICAgICAgICAgICAuaW1hZ2UtdGV4dC1yb3cge1xuICAgICAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFja2dyb3VuZCArIC53cmFwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAkbGggMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGdhcDogJGxoO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICAgICAmLmpzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzIDAuNXMsIHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMCwgMC45MiwgMCwgMSkgMC41cztcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtdmlzaWJsZSxcbiAgICAgICAgICAgIC5uby1qcyAmIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRsaCAqIDM7XG4gICAgICAgIH1cblxuICAgICAgICBhW2NsYXNzXj1cImJ1dHRvblwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkbGg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1pbWFnZS1zdGlja3kge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgIHRvcDogJGxoO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0taW1hZ2UtZmlyc3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGxoICogMztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBDYXNlIFN0dWRpZXMgU2xpZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNhc2Utc3R1ZGllcy1zbGlkZXIge1xuXG5cdCZfX2hlYWRlciB7XG5cdFx0bWFyZ2luLWJvdHRvbTogJGxoO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1heC13aWR0aDogNjUwcHg7XG5cdFx0bWFyZ2luOjAgYXV0bztcblx0fVxuXG5cdCZfX2l0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiRsaDtcblx0XHRiYWNrZ3JvdW5kOiAkYy1ibGFjaztcblx0XHRib3JkZXItcmFkaXVzOiAxMnB4O1xuXG5cdFx0QGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmX19oZWFkaW5nIHtcblx0XHRtYXJnaW4tYm90dG9tOiAkbGg7XG5cblx0XHRAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG5cdCZfX2l0ZW0taGVhZGluZyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogJGxoLzI7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0fVxuXG5cdCZfX2ltYWdlIHtcblx0XHRib3JkZXItcmFkaXVzOiAxMnB4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcblx0XHRcdHdpZHRoOjgwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAyMCU7XG5cdFx0XHRvcGFjaXR5OjA7XG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG5cblx0XHRcdC5vd2wtaXRlbS5hY3RpdmUgJiB7XG5cdFx0XHRcdG9wYWNpdHk6MTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX190ZXh0IHtcblx0XHRmbGV4OjE7XG5cblx0XHRzdmcge1xuXHRcdFx0ZmlsbDogJGMtcmVkO1xuXHRcdFx0d2lkdGg6IDEzN3B4O1xuXHRcdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdH1cblx0fVxuXG5cdCZfX3RleHRib3gge1xuXHRcdHBhZGRpbmc6ICRsaC8yIDA7XG5cdFx0ZmxleDoxO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGMtYmxhY2s7XG5cdFx0Y29sb3I6I2ZmZjtcblx0XHRib3JkZXItcmFkaXVzOiAxMnB4O1xuXG5cdFx0QGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogJGxoLzIgJGxoO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6JGxoKjIgJGxoICoxLjU7XG5cdFx0XHR0b3A6NTAlO1xuXHRcdFx0bGVmdDozMHB4O1xuXHRcdFx0Ym90dG9tOmF1dG87XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMCUsIC01MCUpO1xuXHRcdFx0Ym94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLDAuMyk7XG5cdFx0XHR3aWR0aDogNDYwcHg7XG5cdFx0XHRvcGFjaXR5OjA7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyAwLjNzLCBvcGFjaXR5IDAuM3MgMC4zcyBjdWJpYy1iZXppZXIoMC4wNiwgMC41MSwgMC4yNCwgMC45Nyk7XG5cblx0XHRcdC5vd2wtaXRlbS5hY3RpdmUgJiB7XG5cdFx0XHRcdG9wYWNpdHk6MTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2NvbnRyb2xzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAkbGg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBDMmEgU2VjdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jMmEtc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1sYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tY29sdW1uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICYuaGFzLWNvbnRhY3QtbGlua3MsXG4gICAgICAgICYuaGFzLWJ1dHRvbiB7XG4gICAgICAgICAgICAuYzJhLXNlY3Rpb25fX3N1YmhlYWRpbmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXJvdyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAuYzJhLXNlY3Rpb25fX2NvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaCAqIDI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYzJhLXNlY3Rpb25fX3RleHQge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAmLS1uby1zdWIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZWFkaW5nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRhY3QtbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogRm9ybSBTZWN0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmZvcm0tc2VjdGlvbiB7XG4gICAgLndyYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbn1cblxuc2VjdGlvbi5mb3JtOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctdG9wOiAkbGggKiA2O1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMYXlvdXQgOiBPbmUgQ29sdW1uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLm9uZWNvbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW5hcnJvdyB7XG4gICAgICAgIC5vbmUtY29sdW1uIHtcbiAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBVU1BzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnVzcHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmb250LWZhbWlseTogJGZmMjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgIGhlaWdodDogJGxoICogMS41O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgLnN2Z2ljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExheW91dCA6IENvbnRhY3QgTWFpblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jb250YWN0LW1haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogJGxoO1xuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgIGdhcDogJGxoICogMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNnb29nbGVtYXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgIH1cbiAgICAmX19mb3JtLXdyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mb3JtIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgJl9fc3ViaGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmeiArIDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuXG4gICAgICAgIC5ib3gge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoICogMiAkbGg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRsaCAqIDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFNpYmxpbmcgUGFnZSBHcmlkIFNlY3Rpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2libGluZy1wYWdlLWdyaWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLndyYXAge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwMHB4IDFmcjtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAkbGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAkbGgvMiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgIGhlaWdodDogJGxoICogMS41O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjJzO1xuICAgICAgICAgICAgd2lkdGg6IDIzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogMjNweDtcbiAgICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogJGxoLzI7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAkbGgvNDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyLnNlY3Rpb24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmX19oZWFkaW5nLnBhZ2UtbGluay1ncmlkX19oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMnB4KTtcbiAgICB9XG5cbiAgICAmX19oZWFkaW5nX19idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjNzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgLnNpYmxpbmctcGFnZS1ncmlkX190ZXh0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zaWJsaW5nLXBhZ2UtZ3JpZF9faGVhZGluZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2libGluZy1wYWdlLWdyaWRfX2hlYWRpbmdfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFBhZ2UgTGluayBDYXJvdXNlbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5wYWdlLWxpbmstY2Fyb3VzZWwge1xuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGg7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBDaGlsZCBQYWdlIExpbmsgR3JpZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5wYWdlLWxpbmstZ3JpZCB7XG4gICAgJi0tdHlwZTIge1xuICAgICAgICBncmlkLWdhcDogJGxoO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAkbGggKiAxLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS10eXBlMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGdyaWQtZ2FwOiAkbGgvMjtcbiAgICB9XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtZ2FwOiAkbGg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtc21hbGwpIHtcbiAgICAgICAgJi0tM2NvbCB7XG4gICAgICAgICAgICAucGFnZS1saW5rLWdyaWRfX2dyaWQge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLTJjb2wge1xuICAgICAgICAgICAgLnBhZ2UtbGluay1ncmlkX19ncmlkIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDQ1MHB4LCAxZnIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgZ3JpZC1nYXA6ICRsaDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgICYtLTJjb2wge1xuICAgICAgICAgICAgLnBhZ2UtbGluay1ncmlkX19ncmlkIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDU1MHB4LCAxZnIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLTNjb2wge1xuICAgICAgICAgICAgLnBhZ2UtbGluay1ncmlkX19ncmlkIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIGdhcDogJGxoLzI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiAxLjU7XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYzJhIHtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LXNtYWxsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWFyY3RpYztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2Utb3V0O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGMtdGV4dDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFnZS1saW5rLWdyaWRfX2ltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFnZS1saW5rLWdyaWRfX2hlYWRpbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3BhZ2UtbGluay1tYXNrLnN2Z1wiKTtcbiAgICAgICAgbWFzay1pbWFnZTogdXJsKFwiLi9kaXN0L2ltZy9wYWdlLWxpbmstbWFzay5zdmdcIik7XG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMYXlvdXQgOiBEcm9wZG93biBMaXN0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmRyb3Bkb3duLWxpc3Qge1xuICAgICZfX21haW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXNpZGViYXIge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaCAqIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGggKiAwLjc1ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6ICRsaC8yICRsaC8yIDFweCAkbGggKiAyO1xuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtbWJsdWU7XG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLWxpc3RfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWFyY3RpYztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1pcy1vcGVuIHtcbiAgICAgICAgICAgIC5kcm9wZG93bi1saXN0X19pdGVtX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLWxpc3RfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuNXMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpO1xuICAgICAgICAvL21heC1oZWlnaHQ6MHB4O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3ByZWhlYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbGVmdDogJGxoLzI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cbiAgICAgICAgLmRyb3Bkb3duLWxpc3RfX2l0ZW0tLWlzLW9wZW4gJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtbWJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xuXG4gICAgICAgICAgICAuZHJvcGRvd24tbGlzdF9faXRlbS0taXMtb3BlbiAmIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6IDNweDtcbiAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsdWU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuNDYsIDAuOTYsIDAuNDMsIDAuOTQpLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4zcztcblxuICAgICAgICAgICAgLmRyb3Bkb3duLWxpc3RfX2l0ZW0tLWlzLW9wZW4gJiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEltYWdlIFJvd1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pbWFnZS1yb3cge1xuICAgICZfX2ltYWdlczpub3QoLnNsaWNrLXNsaWRlci0tYWNjcmVkaXRhdGlvbnMpIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICBncmlkLWdhcDogJGxoO1xuICAgICAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGF5b3V0IDogVHdvIENvbHVtblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi50d29jb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgJl9fcm93IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWhhcy1pbWFnZS1jb2wge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJG1lZGl1bSAtIDFweCkge1xuICAgICAgICAgICAgICAgIC50d29jb2xfX2NvbC0taGFzLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICRsaDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6ICRsaDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGxofSogMik7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC50d29jb2xfX2NvbC0tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb2wge1xuICAgICAgICBwYWRkaW5nOiAkbGg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMC4ycywgdHJhbnNmb3JtIDAuNXMgMC4ycztcblxuICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNvbDEge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNvbDIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tdGV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDtcbiAgICAgICAgfVxuXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGg7XG4gICAgICAgICAgICAudHdvY29sX19yb3ctLWhhcy1pbWFnZS1jb2wgJiB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDYwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogJGxoICogMiAkbGggKiAzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgIC50d29jb2xfX3Jvdy0taGFzLWltYWdlLWNvbCAmIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogJGxoICogMiAkbGggJGxoICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEdhbGxlcnlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uZ2FsbGVyeSB7XG4gICAgei1pbmRleDogNDtcbiAgICAmX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGxoKTtcbiAgICAgICAgLy9vcGFjaXR5OjA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlLWluLW91dCwgb3BhY2l0eSAxLjVzO1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRsaC8yfSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtICN7JGxoLzN9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAkbGggKiAxLjU7XG4gICAgICAgICAgICBoZWlnaHQ6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3N2Zy9jaXJjbGUtcGx1cy0td2hpdGUuc3ZnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBzd3BfX2J1dHRvbi0tc2hhcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206ICRsaDtcbiAgICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm0tc2l6ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtICN7JGxoLzJ9KTtcblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtICN7JGxoLzN9KTtcbiAgICB9XG59XG5cbi5tLWd1dHRlciB7XG4gICAgd2lkdGg6ICRsaC8yO1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAkbGgvMjtcbiAgICB9XG59XG5cbi5wc3dwX19jYXB0aW9uIC5wc3dwX19jYXB0aW9uX19jZW50ZXIge1xuICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFRlc3RpbW9uaWFsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnRlc3RpbW9uaWFsIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAtLXNsYW50SDogMjVweDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAtLXNsYW50SDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIHZhcigtLXNsYW50SCksIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgcGFkZGluZzogJGxoICogMjtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLnRlc3RpbW9uaWFsX19oZWFkaW5nIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGxoICogMztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRsaCAqIDM7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9kaXN0L2ltZy9zdmcvcXVvdGUtLXdoaXRlLnN2Z1wiKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IEFjY3JlZGl0YXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmFjY3JlZGl0YXRpb25zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaCAqIDIgJGxoO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbG9nb3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGxoLzI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoLzI7XG4gICAgfVxuXG4gICAgJl9fc3ViaGVhZGluZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcblxuICAgICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExheW91dCA6IEltYWdlIFNsaWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pbWFnZS1zbGlkZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgICZfX3NsaWRlLXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogSWNvbiBUZXh0IENvbHVtbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaWNvbi10ZXh0LWNvbHVtbnMge1xuICAgIC0tbWF4Y29sczogMTtcblxuICAgIHBhZGRpbmctdG9wOiAkbGggKiAyO1xuICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMztcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaCAqIDM7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogJGxoICogMS41O1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1zbWFsbCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS1tYXhjb2xzKSwgMWZyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5pcy12aXNpYmxlICYge1xuICAgICAgICAgICAgJHRpbWVPZmZzZXQ6IDAuMjVzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKDFzLCBmYWRlSW5VcFNtYWxsLCAxLCBjdWJpYy1iZXppZXIoMC40LCAwLjEyLCAwLjEsIDEuMzUpKTtcbiAgICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gdW5pdHMgYXJlIGluIHRoZSB2YXJpYWJsZSBzbyBTQ1NTIGp1c3QgZG9lcyBtYXRoXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGkgKiAkdGltZU9mZnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgLy9wYWRkaW5nOiAkbGggKiAyICRsaCAkbGggJGxoO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjM0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtLXRleHQge1xuICAgICAgICBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbS1oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoIC8gMjtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC41cztcblxuICAgICAgICAmLnN1YmhlYWRpbmcge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40NXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4xMiwgMC4xLCAxLjM1KTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGgvMjtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkbGggKiAyLjU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tZWRpdW0ge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGxoO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJGxoICogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1sYXJnZSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYy10ZXh0O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICYtLWRpc3BsYXlhcnJvdyB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcMjE5MlwiO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzLCBvcGFjaXR5IDAuM3M7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kbGgvNCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJvdGF0ZWljb24ge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmljb24tdGV4dC1jb2x1bW5zX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmljb24tdGV4dC1jb2x1bW5zX19pdGVtLWhlYWRpbmcge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYy10ZXh0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYzJhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0kbGggKiAxLjU7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICRjLWRibHVlO1xuICAgICAgICAgICAgd2lkdGg6ICRsaDtcbiAgICAgICAgICAgIGhlaWdodDogJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGgvMjtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogT2Zmc2V0IENhcm91c2VsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLm9mZnNldC1jYXJvdXNlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIC0tYmdjb2w6IFwiXCI7XG4gICAgICAgIHBhZGRpbmc6ICRsaCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoICogMiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW50cm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWF4LXdpZHRoOiAkd3JhcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJvdXNlbC1uYXZfX25hdiB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkc21hbGwgLSAxcHgpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogJGxoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1oYXMtaGVhZGluZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDcwNXB4IDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWhhcy1idXR0b24ge1xuICAgICAgICAgICAgLmNhcm91c2VsLW5hdl9fbmF2IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uby1oZWFkaW5nIHtcbiAgICAgICAgICAgIC5jYXJvdXNlbC1uYXZfX25hdiB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYVtjbGFzc149XCJidXR0b25cIl0ge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRsaC8yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtYXgsICRzbWFsbCAtIDFweCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zdWJoZWFkaW5nIHtcbiAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJHNtYWxsIC0gMXB4KSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saXN0Om5vdCguc2xpY2stc2xpZGVyLS1vZmZzZXQtY2Fyb3VzZWwpIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlzdC5zbGljay1zbGlkZXItLW9mZnNldC1jYXJvdXNlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwNXZ3KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX19zdWJoZWFkaW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAuaG9tZSAmIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190b3AtaGVhZGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogMCAkbGg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAwLjRzLCB0cmFuc2Zvcm0gMC4ycyAwLjRzO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuXG4gICAgICAgICZfX3RleHRib3gge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRsaC8yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkeC1zbWFsbCAtIDFweCkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogJGxoO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbGg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFNpbmdsZSBDYXNlIFN0dWR5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnNpbmdsZS1jYXNlLXN0dWR5IHtcbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA0MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxpZ2h0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWFyY3RpYztcblxuICAgICAgICAgICAgLnNpbmdsZS1jYXNlLXN0dWR5IHtcbiAgICAgICAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWRhcmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgLnNpbmdsZS1jYXNlLXN0dWR5IHtcbiAgICAgICAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZXhjZXJwdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICB9XG5cbiAgICAmX190aHVtYm5haWwge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGMtbWJsdWU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IENhc2UgU3R1ZHkgSW50cm9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uY2FzZS1zdHVkeS1pbnRybyB7XG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoLzI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRsaC8yO1xuICAgICAgICBtYXJnaW4tdG9wOiAtJGxoICogNDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1zbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxoO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGxoICogMS41O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAkbGg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGdhcDogJGxoICogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXNlLXN0dWR5LWludHJvX19saXN0IHtcbiAgICAgICAgICAgIC5jYXNlLXN0dWR5LWludHJvX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19rZXktZmVhdHVyZXMge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGgvMiAkbGgvMiAkbGggJGxoLzI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaCAqIDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbnRyby10ZXh0IHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemVzKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGxoLzI7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxoLzI7XG5cbiAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkeC1zbWFsbCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGxoLzI7XG4gICAgfVxuICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGxoO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplcyk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGggKiAyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaC8yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGgvMjtcbiAgICB9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vZHVsZSA6IFBvc3QgSW50cm9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ucG9zdC1pbnRybyB7XG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRsaDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGxoICogMS41O1xuICAgICAgICBtYXJnaW4tdG9wOiAtJGxoICogNDtcbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZ2FwOiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAkbGggKiAyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgJl9fcG9zdC1pbmZvIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWdyZXk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICB9XG5cbiAgICAmX19wb3N0LWRhdGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6ICRsaC80O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hdXRob3Ige1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgZmxleDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbnRyby10ZXh0IHtcbiAgICAgICAgZmxleDogMS41O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKFxuICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgbnVsbDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgMTRweCxcbiAgICAgICAgICAgICAgICAgICAgICAgIDEuNixcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgbGc6IChcbiAgICAgICAgICAgICAgICAgICAgICAgIDE2cHgsXG4gICAgICAgICAgICAgICAgICAgICAgICAxLjYsXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIHhsOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAxOHB4LFxuICAgICAgICAgICAgICAgICAgICAgICAgMS44LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgfVxuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbGgvMjtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaC8yO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogJGxoLzIgJGxoLzIgJGxoICRsaC8yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMYXlvdXQgOiBDYW5vcHkgRGVzaWduIFNsaWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jYW5vcHktZGVzaWduLXNsaWRlciB7XG4gICAgLy8gbWFyZ2luLXRvcDogLSRsaCAqIDI7XG4gICAgJl9faXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGctYmx1ZS1ibGFjay1yYWRpYWwtYm90dG9tLXJpZ2h0O1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgZmxleDogMS41O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDUvMztcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAkbGggKiAyO1xuICAgICAgICAgICAgaGVpZ2h0OiAkbGggKiAyO1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaC8zO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBnYXA6ICRsaCAqIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBmbGV4OiAyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZmMjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGxoLzI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGg7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX193cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogJGxoLzI7XG4gICAgICAgIGdhcDogJGxoO1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6ICRsaCAqIDI7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgNjRweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koLTMwZGVnKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByZXYsXG4gICAgJl9fbmV4dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjNzLFxuICAgICAgICAgICAgY29sb3IgMC4zcztcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjLW1ibHVlO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJGMtd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJGxhcmdlIC0gMXB4KSB7XG4gICAgICAgICAgICB3aWR0aDogJGxoICogMjtcbiAgICAgICAgICAgIGhlaWdodDogJGxoICogMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByZXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7XG4gICAgICAgICAgICAgICAgLy90cmFuc2Zvcm06IHNrZXdZKC0zMGRlZyk7XG4gICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZDAwO1xuICAgICAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDQwJSwgMTAwJSAwLCAxMDAlIDEwMCUsIDAlIDEwMCUpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX25leHQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoLzI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMTRweCk7XG4gICAgICAgICAgICAgICAgLy90cmFuc2Zvcm06IHNrZXdZKC0zMGRlZyk7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIGNhbGMoMTAwJSAtIDMwcHgpLCAwJSAxMDAlKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWF4LCAkbGFyZ2UgLSAxcHgpIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M3Y2JkMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uLW5hdiB7XG4gICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIGdhcDogJGxoLzI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgICAmX19idXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjNzLFxuICAgICAgICAgICAgICAgIGNvbG9yIDAuM3M7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYy1ncmV5O1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogJGxoLzQ7XG4gICAgICAgICAgICBjb2xvcjogJGMtZGJsdWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkbGggKiAwLjc1O1xuICAgICAgICAgICAgICAgIGhlaWdodDogJGxoICogMC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1heCwgJHNtYWxsIC0gMXB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkbGgvNCAkbGgvMjtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAkbGg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJGxoO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuM3M7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRjLWRibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBTeXN0ZW0gU3BlY2lmaWNhdGlvbiBPcHRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnN5c3RlbS1zcGVjaWZpY2F0aW9uLW9wdGlvbnMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRnLWJsdWUtYmxhY2stcmFkaWFsLWJvdHRvbS1yaWdodDtcblxuICAgICYuYmctLW5vbmUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGxoO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRsaCAqIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGggKiAyO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAmX19wYW5lbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLW1ibHVlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29wdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICBnYXA6ICRsaDtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaC8yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZG93bmxvYWQtdGFibGUge1xuICAgICAgICBwYWRkaW5nOiAkbGg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBnYXA6ICRsaDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kb3dubG9hZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJl9fdGV4dGJveCB7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRsaCAqIDIgJGxoICRsaCAqIDIgJGxoICogNDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190YWJsZSB7XG4gICAgICAgIC8vcGFkZGluZzogJGxoICogNCAkbGggJGxoICogMiAkbGg7XG4gICAgICAgIHBhZGRpbmc6ICRsaDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgLy9wYWRkaW5nOiAkbGggKiAyICRsaCAkbGggKiAyICRsaCAqIDQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbGggJGxoICRsaCAqIDIgJGxoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3VicGFuZWwge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IDE1cHggcmdiYSgjMDAwLCAwLjI1KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDQ1LCA3NywgMTQwLCAxKSAwJSwgcmdiYSg0NSwgNzcsIDE0MCwgMCkgMTAwJSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoNDUsIDc3LCAxNDAsIDEpIDAlLCByZ2JhKDQ1LCA3NywgMTQwLCAwKSAxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1uYXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCNmZmYsIDAuMik7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgcGFkZGluZzogJGxoLzIgMDtcbiAgICAgICAgICAgIGdhcDogJGxoO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgjZmZmLCAwLjIpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxoLzI7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGxoLzI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkbGggKiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaXMtYWN0aXZlLFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJGMtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgOiBTaW5nbGUgUHJvZmlsZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zaW5nbGUtcHJvZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgKyAxMDBweCkgY2FsYygxMDAlICsgNTBweCk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkZ3JhZGllbnQsICRiZ3JhZCBpbiAkZ3JhZGllbnRzIHtcbiAgICAgICAgJi5iZy0tI3skZ3JhZGllbnR9IHtcbiAgICAgICAgICAgIEBpZiBjb250YWlucygkZGFyay1jb2xvdXJzLCAkZ3JhZGllbnQpIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9kaXN0L2ltZy90Zi1sb2dvLXdoaXRlLnN2Z1wiKTtcbiAgICAgICAgICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGhhcmQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgY29udGFpbnMoJGxpZ2h0LWNvbG91cnMsICRncmFkaWVudCkge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3RmLWxvZ28uc3ZnXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRjb2xvdXIsICRiZ2NvbG9yIGluICRjb2xvdXJzIHtcbiAgICAgICAgJi5iZy0tI3skY29sb3VyfSB7XG4gICAgICAgICAgICBAaWYgY29udGFpbnMoJGRhcmstY29sb3VycywgJGNvbG91cikge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3RmLWxvZ28tLXdoaXRlLnN2Z1wiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiBjb250YWlucygkbGlnaHQtY29sb3VycywgJGNvbG91cikge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2Rpc3QvaW1nL3RmLWxvZ28uc3ZnXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi0tY3Mge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTA0cHggJGxoIC0xMDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudmFsaWduIHtcbiAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgIC5zaW5nbGUtcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLW1pZGRsZSB7XG4gICAgICAgICAgICAuc2luZ2xlLXByb2ZpbGUge1xuICAgICAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJvdHRvbSB7XG4gICAgICAgICAgICAuc2luZ2xlLXByb2ZpbGUge1xuICAgICAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFja2dyb3VuZCArIC53cmFwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAkbGggMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGdhcDogJGxoO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgICAgICAmLmpzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzIDAuNXMsIHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMCwgMC45MiwgMCwgMSkgMC41cztcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtdmlzaWJsZSxcbiAgICAgICAgICAgIC5uby1qcyAmIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBmbGV4OiAxLjU7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaDtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYW1lLFxuICAgICZfX25hbWUgLnNpbmdsZS1wcm9maWxlX190aXRsZSxcbiAgICAmX19uYW1lIC5zaW5nbGUtcHJvZmlsZV9fcm9sZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgICZfX3Byb2ZpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJHgtbGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGxoICogMztcbiAgICAgICAgfVxuXG4gICAgICAgIGFbY2xhc3NePVwiYnV0dG9uXCJdIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRsaDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWltYWdlLXN0aWNreSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgdG9wOiAkbGg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1wcm9maWxlLWZpcnN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICR4LWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbGggKiAzO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZy1tYmx1ZS1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTW9kdWxlIDogUHJvZmlsZXMgR3JpZCBTZWN0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnByb2ZpbGVzLWdyaWQge1xuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgZ3JpZC1nYXA6ICRsaDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGF5b3V0IDogUG9zdCBBdXRob3IgU2VjdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5wb3N0LWF1dGhvci1zZWN0aW9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAud3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogJGxoO1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZ2FwOiAkbGggKiAyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXV0aG9yLWRldGFpbHMge1xuICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxoICogNTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2MyYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmX190b3AtaGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgcGFkZGluZzogJGxoO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAkbGgvMjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKCRtaW4sICRzbWFsbCkge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDEwcHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dGJveCB7XG4gICAgICAgICAgICBmbGV4OiAxLjU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicCgkbWluLCAkc21hbGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJGxoICogMS41O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG1pbiwgJGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRsaCAqIDEuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIltkYXRhLXNpbXBsZWJhcl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnNpbXBsZWJhci13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IGluaGVyaXQ7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICBtYXgtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uc2ltcGxlYmFyLW1hc2sge1xuICBkaXJlY3Rpb246IGluaGVyaXQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAwO1xufVxuXG4uc2ltcGxlYmFyLW9mZnNldCB7XG4gIGRpcmVjdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBib3gtc2l6aW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5zaW1wbGViYXItY29udGVudC13cmFwcGVyIHtcbiAgZGlyZWN0aW9uOiBpbmhlcml0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTsgLyogUmVxdWlyZWQgZm9yIGhvcml6b250YWwgbmF0aXZlIHNjcm9sbGJhciB0byBub3QgYXBwZWFyIGlmIHBhcmVudCBpcyB0YWxsZXIgdGhhbiBuYXR1cmFsIGhlaWdodCAqL1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiBOb3QgcmVxdWlyZWQgZm9yIGhvcml6b250YWwgc2Nyb2xsIHRvIHRyaWdnZXIgKi9cbiAgbWF4LWhlaWdodDogMTAwJTsgLyogTmVlZGVkIGZvciB2ZXJ0aWNhbCBzY3JvbGwgdG8gdHJpZ2dlciAqL1xuICBvdmVyZmxvdzogYXV0bztcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG59XG5cbi5zaW1wbGViYXItY29udGVudC13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcixcbi5zaW1wbGViYXItaGlkZS1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLnNpbXBsZWJhci1jb250ZW50OmJlZm9yZSxcbi5zaW1wbGViYXItY29udGVudDphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5zaW1wbGViYXItcGxhY2Vob2xkZXIge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNpbXBsZWJhci1oZWlnaHQtYXV0by1vYnNlcnZlci13cmFwcGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgbWF4LWhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmxleC1ncm93OiBpbmhlcml0O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMDtcbn1cblxuLnNpbXBsZWJhci1oZWlnaHQtYXV0by1vYnNlcnZlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAwJTtcbiAgd2lkdGg6IDEwMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIG1pbi13aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogLTE7XG59XG5cbi5zaW1wbGViYXItdHJhY2sge1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5bZGF0YS1zaW1wbGViYXJdLnNpbXBsZWJhci1kcmFnZ2luZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuW2RhdGEtc2ltcGxlYmFyXS5zaW1wbGViYXItZHJhZ2dpbmcgLnNpbXBsZWJhci1jb250ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5bZGF0YS1zaW1wbGViYXJdLnNpbXBsZWJhci1kcmFnZ2luZyAuc2ltcGxlYmFyLXRyYWNrIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cblxuLnNpbXBsZWJhci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtaW4taGVpZ2h0OiAxMHB4O1xufVxuXG4uc2ltcGxlYmFyLXNjcm9sbGJhcjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBsZWZ0OiAycHg7XG4gIHJpZ2h0OiAycHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAwLjVzIGxpbmVhcjtcbn1cblxuLnNpbXBsZWJhci1zY3JvbGxiYXIuc2ltcGxlYmFyLXZpc2libGU6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG59XG5cbi5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLXZlcnRpY2FsIHtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTFweDtcbn1cblxuLnNpbXBsZWJhci1zY3JvbGxiYXI6YmVmb3JlIHtcbiAgdG9wOiAycHg7XG4gIGJvdHRvbTogMnB4O1xuICBsZWZ0OiAycHg7XG4gIHJpZ2h0OiAycHg7XG59XG5cbi5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLWhvcml6b250YWwge1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDExcHg7XG59XG5cbi5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLWhvcml6b250YWwgLnNpbXBsZWJhci1zY3JvbGxiYXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8qIFJ0bCBzdXBwb3J0ICovXG5bZGF0YS1zaW1wbGViYXItZGlyZWN0aW9uPSdydGwnXSAuc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci12ZXJ0aWNhbCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4uc2ltcGxlYmFyLWR1bW15LXNjcm9sbGJhci1zaXplIHtcbiAgZGlyZWN0aW9uOiBydGw7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBoZWlnaHQ6IDUwMHB4O1xuICB3aWR0aDogNTAwcHg7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhciAhaW1wb3J0YW50O1xufVxuXG4uc2ltcGxlYmFyLWR1bW15LXNjcm9sbGJhci1zaXplID4gZGl2IHtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbi5zaW1wbGViYXItaGlkZS1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbn1cbiIsIi8qISBQaG90b1N3aXBlIG1haW4gQ1NTIGJ5IERtaXRyeSBTZW1lbm92IHwgcGhvdG9zd2lwZS5jb20gfCBNSVQgbGljZW5zZSAqL1xuLypcblx0U3R5bGVzIGZvciBiYXNpYyBQaG90b1N3aXBlIGZ1bmN0aW9uYWxpdHkgKHNsaWRpbmcgYXJlYSwgb3Blbi9jbG9zZSB0cmFuc2l0aW9ucylcbiovXG4vKiBwc3dwID0gcGhvdG9zd2lwZSAqL1xuLnBzd3Age1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICB6LWluZGV4OiAxNTAwO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIGNyZWF0ZSBzZXBhcmF0ZSBsYXllciwgdG8gYXZvaWQgcGFpbnQgb24gd2luZG93Lm9uc2Nyb2xsIGluIHdlYmtpdC9ibGluayAqL1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAucHN3cCAqIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5wc3dwIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG4gIC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47IH1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLnBzd3AtLWRyYWdnaW5nIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZzsgfVxuXG4vKlxuXHRCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cblx0QXMgYW5pbWF0aW5nIG9wYWNpdHkgaXMgbXVjaCBmYXN0ZXIgdGhhbiBhbmltYXRpbmcgcmdiYSgpIGJhY2tncm91bmQtY29sb3IuXG4qL1xuLnBzd3BfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICRjLWJsYWNrO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTsgfVxuXG4ucHN3cF9fc2Nyb2xsLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7IH1cblxuLyogUHJldmVudCBzZWxlY3Rpb24gYW5kIHRhcCBoaWdobGlnaHRzICovXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX2ltZyB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cblxuLnBzd3BfX3pvb20td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3BfX2JnIHtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX19iZyxcbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fem9vbS13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnBzd3BfX2l0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ucHN3cF9faW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7IFxuXG59XG5cbi8qXG5cdHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcblx0c3R5bGUgaXMgYWRkZWQgdG8gYXZvaWQgZmxpY2tlcmluZyBpbiB3ZWJraXQvYmxpbmsgd2hlbiBsYXllcnMgb3ZlcmxhcFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcblx0ZGl2IGVsZW1lbnQgdGhhdCBtYXRjaGVzIHNpemUgb2YgbGFyZ2UgaW1hZ2Vcblx0bGFyZ2UgaW1hZ2UgbG9hZHMgb24gdG9wIG9mIGl0XG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXItLWJsYW5rIHtcbiAgYmFja2dyb3VuZDogIzIyMjsgfVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLypcblx0RXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuXHQoSlMgb3B0aW9uIGVycm9yTXNnIGNvbnRyb2xzIG1hcmt1cClcbiovXG4ucHN3cF9fZXJyb3ItbXNnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgY29sb3I6ICNDQ0M7IH1cblxuLnBzd3BfX2Vycm9yLW1zZyBhIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4iLCIvKiEgUGhvdG9Td2lwZSBEZWZhdWx0IFVJIENTUyBieSBEbWl0cnkgU2VtZW5vdiB8IHBob3Rvc3dpcGUuY29tIHwgTUlUIGxpY2Vuc2UgKi9cbi8qXG5cblx0Q29udGVudHM6XG5cblx0MS4gQnV0dG9uc1xuXHQyLiBTaGFyZSBtb2RhbCBhbmQgbGlua3Ncblx0My4gSW5kZXggaW5kaWNhdG9yIChcIjEgb2YgWFwiIGNvdW50ZXIpXG5cdDQuIENhcHRpb25cblx0NS4gTG9hZGluZyBpbmRpY2F0b3Jcblx0Ni4gQWRkaXRpb25hbCBzdHlsZXMgKHJvb3QgZWxlbWVudCwgdG9wIGJhciwgaWRsZSBzdGF0ZSwgaGlkZGVuIHN0YXRlLCBldGMuKVxuXG4qL1xuLypcblx0XG5cdDEuIEJ1dHRvbnNcblxuICovXG4vKiA8YnV0dG9uPiBjc3MgcmVzZXQgKi9cbi5wc3dwX19idXR0b24ge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMCAkbGgvMiArIDUgMCAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmLS1jbG9zZSxcbiAgICAmLS1hcnJvdy0tcmlnaHQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuLnBzd3BfX2J1dHRvbjpmb2N1cyxcbi5wc3dwX19idXR0b246aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG59XG4ucHN3cF9fYnV0dG9uOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjk7XG59XG4ucHN3cF9fYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbn1cblxuLyogcHN3cF9fdWktLW92ZXItY2xvc2UgY2xhc3MgaXQgYWRkZWQgd2hlbiBtb3VzZSBpcyBvdmVyIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vdmVyLWNsb3NlIC5wc3dwX19idXR0b24tLWNsb3NlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ucHN3cF9fYnV0dG9uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vcGhvdG9zd2lwZS9kZWZhdWx0LXNraW4ucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI2NHB4IDg4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG59XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjA5Mzc1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMDVkcGkpLCAobWluLXJlc29sdXRpb246IDEuMWRwcHgpIHtcbiAgICAvKiBTZXJ2ZSBTVkcgc3ByaXRlIGlmIGJyb3dzZXIgc3VwcG9ydHMgU1ZHIGFuZCByZXNvbHV0aW9uIGlzIG1vcmUgdGhhbiAxMDVkcGkgKi9cbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24sXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vcGhvdG9zd2lwZS9kZWZhdWx0LXNraW4uc3ZnKTtcbiAgICB9XG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4ucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTdweCAtNTFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1zaGFyZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTUxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1mcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtN3B4IC03cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnBzd3AtLXN1cHBvcnRzLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBzd3AtLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTlweCAtN3B4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NHB4IC03cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTM4cHggLTdweDtcbn1cblxuLyogbm8gYXJyb3dzIG9uIHRvdWNoIHNjcmVlbnMgKi9cbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcblx0QXJyb3cgYnV0dG9ucyBoaXQgYXJlYVxuXHQoaWNvbiBpcyBhZGRlZCB0byA6YmVmb3JlIHBzZXVkby1lbGVtZW50KVxuKi9cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCB7XG4gICAgbGVmdDogMDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0b3A6IDM1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAxKTtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSB7XG4gICAgbGVmdDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQxcHggLTQ0cHg7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NHB4IC00NHB4O1xufVxuXG4vKlxuXG5cdDIuIFNoYXJlIG1vZGFsL3BvcHVwIGFuZCBsaW5rc1xuXG4gKi9cbi5wc3dwX19jb3VudGVyLFxuLnBzd3BfX3NoYXJlLW1vZGFsIHtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTYwMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwtLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAge1xuICAgIHotaW5kZXg6IDE2MjA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdG9wOiA2MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICByaWdodDogNjBweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yNXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG4ucHN3cF9fc2hhcmUtdG9vbHRpcCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpmaXJzdC1jaGlsZCB7XG4gICAgLyogcm91bmQgY29ybmVycyBvbiB0aGUgZmlyc3QvbGFzdCBsaXN0IGl0ZW0gKi9cbiAgICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbn1cbi5wc3dwX19zaGFyZS10b29sdGlwIGE6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG59XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiB7XG4gICAgb3BhY2l0eTogMTtcbn1cbi5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiAucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qIGluY3JlYXNlIHNpemUgb2Ygc2hhcmUgbGlua3Mgb24gdG91Y2ggZGV2aWNlcyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19zaGFyZS10b29sdGlwIGEge1xuICAgIHBhZGRpbmc6IDE2cHggMTJweDtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTJweDtcbiAgICByaWdodDogMTVweDtcbiAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xuICAgIC13ZWJraXQtcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLW1vei1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzZTVjOWE7XG4gICAgY29sb3I6ICNmZmY7XG59XG5hLnBzd3BfX3NoYXJlLS1mYWNlYm9vazpob3ZlcjpiZWZvcmUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzZTVjOWE7XG59XG5cbmEucHN3cF9fc2hhcmUtLXR3aXR0ZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM1NWFjZWU7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbmEucHN3cF9fc2hhcmUtLXBpbnRlcmVzdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgICBjb2xvcjogI2NlMjcyZDtcbn1cblxuYS5wc3dwX19zaGFyZS0tZG93bmxvYWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbi8qXG5cblx0My4gSW5kZXggaW5kaWNhdG9yIChcIjEgb2YgWFwiIGNvdW50ZXIpXG5cbiAqL1xuLnBzd3BfX2NvdW50ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAyNXB4IDEwcHggMTBweCAyNnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZmY7XG59XG5cbi8qXG5cdFxuXHQ0LiBDYXB0aW9uXG5cbiAqL1xuLnBzd3BfX2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xufVxuLnBzd3BfX2NhcHRpb24gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogI2JiYjtcbn1cblxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXgtd2lkdGg6IDQyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGNvbG9yOiAjY2NjO1xufVxuXG4ucHN3cF9fY2FwdGlvbi0tZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEZha2UgY2FwdGlvbiBlbGVtZW50LCB1c2VkIHRvIGNhbGN1bGF0ZSBoZWlnaHQgb2YgbmV4dC9wcmV2IGltYWdlICovXG4ucHN3cF9fY2FwdGlvbi0tZmFrZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yIChwcmVsb2FkZXIpXG5cblx0WW91IGNhbiBwbGF5IHdpdGggaXQgaGVyZSAtIGh0dHA6Ly9jb2RlcGVuLmlvL2RpbXNlbWVub3YvcGVuL3l5QldvUlxuXG4gKi9cbi5wc3dwX19wcmVsb2FkZXIge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIycHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAxMnB4O1xufVxuXG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG59XG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICAvKiBXZSB1c2UgLmdpZiBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgQ1NTIGFuaW1hdGlvbiAqL1xuICAgIGJhY2tncm91bmQ6IHVybCguL3Bob3Rvc3dpcGUvcHJlbG9hZGVyLmdpZikgMCAwIG5vLXJlcGVhdDtcbn1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGNsb2Nrd2lzZSA1MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uOiBjbG9ja3dpc2UgNTAwbXMgbGluZWFyIGluZmluaXRlO1xufVxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2RvbnV0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZG9udXQtcm90YXRlIDEwMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKSBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246IGRvbnV0LXJvdGF0ZSAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSkgaW5maW5pdGU7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTVweDtcbiAgICB0b3A6IDE1cHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyX19jdXQge1xuICAgIC8qIFxuXHRcdFx0VGhlIGlkZWEgb2YgYW5pbWF0aW5nIGlubmVyIGNpcmNsZSBpcyBiYXNlZCBvbiBQb2x5bWVyIChcIm1hdGVyaWFsXCIpIGxvYWRpbmcgaW5kaWNhdG9yIFxuXHRcdFx0IGJ5IEtlYW51IExlZSBodHRwczovL2Jsb2cua2VhbnVsZWUuY29tLzIwMTQvMTAvMjAvdGhlLXRhbGUtb2YtdGhyZWUtc3Bpbm5lcnMuaHRtbFxuXHRcdCovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2RvbnV0IHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnBzd3BfX3ByZWxvYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb2Nrd2lzZSB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xNDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRvbnV0LXJvdGF0ZSB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB9XG59XG5cbi8qXG5cdFxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlc1xuXG4gKi9cbi8qIHJvb3QgZWxlbWVudCBvZiBVSSAqL1xuLnBzd3BfX3VpIHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxNTUwO1xufVxuXG4vKiB0b3AgYmxhY2sgYmFyIHdpdGggYnV0dG9ucyBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3IgKi9cbi5wc3dwX190b3AtYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgLy9oZWlnaHQ6IDQ0cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogJGxoO1xufVxuXG4ucHN3cF9fY2FwdGlvbixcbi5wc3dwX190b3AtYmFyLFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbn1cblxuLyogcHN3cC0taGFzX21vdXNlIGNsYXNzIGlzIGFkZGVkIG9ubHkgd2hlbiB0d28gc3Vic2VxdWVudCBtb3VzZW1vdmUgZXZlbnRzIG9jY3VyICovXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5wc3dwX190b3AtYmFyLFxuLnBzd3BfX2NhcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG59XG5cbi8qIHBzd3BfX3VpLS1maXQgY2xhc3MgaXMgYWRkZWQgd2hlbiBtYWluIGltYWdlIFwiZml0c1wiIGJldHdlZW4gdG9wIGJhciBhbmQgYm90dG9tIGJhciAoY2FwdGlvbikgKi9cbi5wc3dwX191aS0tZml0IC5wc3dwX190b3AtYmFyLFxuLnBzd3BfX3VpLS1maXQgLnBzd3BfX2NhcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG59XG5cbi8qIHBzd3BfX3VpLS1pZGxlIGNsYXNzIGlzIGFkZGVkIHdoZW4gbW91c2UgaXNuJ3QgbW92aW5nIGZvciBzZXZlcmFsIHNlY29uZHMgKEpTIG9wdGlvbiB0aW1lVG9JZGxlKSAqL1xuLnBzd3BfX3VpLS1pZGxlIC5wc3dwX190b3AtYmFyIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vKlxuXHRwc3dwX191aS0taGlkZGVuIGNsYXNzIGlzIGFkZGVkIHdoZW4gY29udHJvbHMgYXJlIGhpZGRlblxuXHRlLmcuIHdoZW4gdXNlciB0YXBzIHRvIHRvZ2dsZSB2aXNpYmlsaXR5IG9mIGNvbnRyb2xzXG4qL1xuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fY2FwdGlvbixcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICAvKiBGb3JjZSBwYWludCAmIGNyZWF0ZSBjb21wb3NpdGlvbiBsYXllciBmb3IgY29udHJvbHMuICovXG4gICAgb3BhY2l0eTogMC4wMDE7XG59XG5cbi8qIHBzd3BfX3VpLS1vbmUtc2xpZGUgY2xhc3MgaXMgYWRkZWQgd2hlbiB0aGVyZSBpcyBqdXN0IG9uZSBpdGVtIGluIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb25lLXNsaWRlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2NvdW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucHN3cC0tbWluaW1hbC0tZGFyayAucHN3cF9fdG9wLWJhciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cbiIsIi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXJbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogMzJweDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcmVzaXplOiBub25lO1xuICAgIGhlaWdodDogMThweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd29yZC1icmVhazoga2VlcC1hbGw7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4uc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEwMDAwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwNTE7XG5cbiAgICBAaW5jbHVkZSBicCgkbWluLCAkbWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICB9XG59XG5cbi5zZWxlY3QyLXJlc3VsdHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIGxlZnQ6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZGJsdWU7XG59XG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duLnNlbGVjdDItc2VhcmNoLS1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWRibHVlO1xufVxuXG4uc2VsZWN0Mi1jbG9zZS1tYXNrIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG4uc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBjb2xvcjogJGMtd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1kYmx1ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYy1ibHVlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgQGluY2x1ZGUgYnAoJG1pbiwgJHNtYWxsKSB7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICB9XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgY29sb3I6ICRjLXdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgcmlnaHQ6IDFweDtcbiAgICB3aWR0aDogMjBweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgIGxlZnQ6IDFweDtcbiAgICByaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUuc2VsZWN0Mi1zZWxlY3Rpb24tLWNsZWFyYWJsZSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMXB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMCA0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3Zlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYm9yZGVyOiBzb2xpZCBibGFjayAxcHg7XG4gICAgb3V0bGluZTogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAvL2JvcmRlcjogMXB4IHNvbGlkICNhYWE7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zZW07XG4gICAgcGFkZGluZy1sZWZ0OiA0ZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtNGVtO1xuICAgIHBhZGRpbmctbGVmdDogNWVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC01ZW07XG4gICAgcGFkZGluZy1sZWZ0OiA2ZW07XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7XG4gICAgY29sb3I6IHJnYmEoI2ZmZiwgMC41KTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1tYmx1ZTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNnB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDUwJSwgI2VlZWVlZSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSA1MCUsICNlZWVlZWUgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgNTAlLCAjZWVlZWVlIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzk5OTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgcmlnaHQ6IDFweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGQ0NDQ0NDJywgR3JhZGllbnRUeXBlPTApO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA1cHggNHB4IDAgNHB4O1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGxlZnQ6IDFweDtcbiAgICByaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNlZWVlZWUgNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSAwJSwgI2VlZWVlZSA1MCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlIDUwJSwgd2hpdGUgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsIHdoaXRlIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUgNTAlLCB3aGl0ZSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkZGRkZGRicsIEdyYWRpZW50VHlwZT0wKTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIHBhZGRpbmc6IDA7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAjODg4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAwIDRweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXIge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcbiAgICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7XG4gICAgY29sb3I6IGdyZXk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNnB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIGJvcmRlci1jb2xvcjogIzU4OTdmYjtcbn1cbiJdfQ== */
