@charset "UTF-8";
/*! Theme cmw-theme-dev-rev-0 */
/**
 * COLORS
 */
/**
 * SIZES
 */
/**
 * BREAKPOINTS
 */
/**
 * DURATIONS
 */
/**
 * Z-INDEX
 */
/* dm-sans-regular - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  src: url(/resource/crblob/52638/73dbdaf159206bcffb8494bf67528341/dmsans-regular-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Regular"), local("DMSans-Regular"), url(/resource/crblob/52638/73dbdaf159206bcffb8494bf67528341/dmsans-regular-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52640/13dd253ca19362d3ec20b6514f6d4dff/dmsans-regular-woff2-data.woff2) format("woff2"), url(/resource/crblob/52642/c74958701fc0d56bd34de64a2f94e20d/dmsans-regular-woff-data.woff) format("woff"), url(/resource/crblob/52644/32a080121027edcb6f342cbc360119aa/dmsans-regular-ttf-data.ttf) format("truetype");
}

/* dm-sans-italic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 400;
  src: url(/resource/crblob/52646/14b22d294f6a14a07b497387f2d3aace/dmsans-italic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Italic"), local("DMSans-Italic"), url(/resource/crblob/52646/14b22d294f6a14a07b497387f2d3aace/dmsans-italic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52648/a59bd6386428e889a89c09530cd46236/dmsans-italic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52650/d9e3671d4f7ff4950419d0524f070a58/dmsans-italic-woff-data.woff) format("woff"), url(/resource/crblob/52652/d623c12d30d1196e579bd3061664d0b6/dmsans-italic-ttf-data.ttf) format("truetype");
}

/* dm-sans-medium - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  src: url(/resource/crblob/52654/dcaf30d2771fc434109545b334812c9f/dmsans-medium-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Medium"), local("DMSans-Medium"), url(/resource/crblob/52654/dcaf30d2771fc434109545b334812c9f/dmsans-medium-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52656/8f5dcfab353c6c63eef920dd0b12b39a/dmsans-medium-woff2-data.woff2) format("woff2"), url(/resource/crblob/52658/d3260980d482ca11cacc4bf0891cbd23/dmsans-medium-woff-data.woff) format("woff"), url(/resource/crblob/52660/5dd491a46ffa835753644a3ee31915c8/dmsans-medium-ttf-data.ttf) format("truetype");
}

/* dm-sans-mediumitalic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 500;
  src: url(/resource/crblob/52662/6a4c136c231eccee4909f0f5bac9a9ac/dmsans-mediumitalic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Medium Italic"), local("DMSans-MediumItalic"), url(/resource/crblob/52662/6a4c136c231eccee4909f0f5bac9a9ac/dmsans-mediumitalic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52664/53d11b3eaef94cc336206fd8dc6bc9cb/dmsans-mediumitalic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52666/d63038a3f53419910720276956a0266a/dmsans-mediumitalic-woff-data.woff) format("woff"), url(/resource/crblob/52668/3c2c5dec00ba4d0032531bec6c01eaf1/dmsans-mediumitalic-ttf-data.ttf) format("truetype");
}

/* dm-sans-bold - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  src: url(/resource/crblob/52670/9dfb9d8333c0bee5526394e979abe42a/dmsans-bold-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Bold"), local("DMSans-Bold"), url(/resource/crblob/52670/9dfb9d8333c0bee5526394e979abe42a/dmsans-bold-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52672/d0c829b79addac04e9d53785278030b7/dmsans-bold-woff2-data.woff2) format("woff2"), url(/resource/crblob/52674/84ed579707f1b7c7d071825f3dfcb877/dmsans-bold-woff-data.woff) format("woff"), url(/resource/crblob/52676/c4211e54451b21cc21d01c639c16da6d/dmsans-bold-ttf-data.ttf) format("truetype");
}

/* dm-sans-bolditalic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 700;
  src: url(/resource/crblob/52678/1f4aeab4341b4897c654c6e3f8bf7ce2/dmsans-bolditalic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Bold Italic"), local("DMSans-BoldItalic"), url(/resource/crblob/52678/1f4aeab4341b4897c654c6e3f8bf7ce2/dmsans-bolditalic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52680/b64526e6c54f6173a419ab5e7b508471/dmsans-bolditalic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52682/d8dcae6ad03712381c03d5779b9fc7de/dmsans-bolditalic-woff-data.woff) format("woff"), url(/resource/crblob/52684/c950e44d90207c07e77d537fc649e24a/dmsans-bolditalic-ttf-data.ttf) format("truetype");
}

/**
 * FONTS
 */
/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -ms-user-select: none;
  user-select: none;
  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 {
  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;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

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

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "";
}

[dir="rtl"] .slick-prev:before {
  content: "";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "";
}

[dir="rtl"] .slick-next:before {
  content: "";
}

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

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
.cm-richtext {
  /* basic styles */
  /* alignment */
  /* floating (images) */
  /* default table layout */
  /* headings for paragraphs [deprecated] */
  /* font-families [deprecated] */
  /* font-sizes [deprecated] */
  /* colors [deprecated] */
  /* background-colors [deprecated] */
  /* list items [deprecated] */
}

.cm-richtext a,
.cm-richtext .underline {
  text-decoration: underline;
}

.cm-richtext .strike {
  text-decoration: line-through;
}

.cm-richtext sub {
  vertical-align: sub;
}

.cm-richtext sup {
  vertical-align: super;
}

.cm-richtext .rte--list {
  margin-bottom: 1em;
  margin-left: 20px;
}

.cm-richtext blockquote {
  margin: 0 0 1rem 0;
  padding: 1em;
  background: #f0f0f0;
  quotes: inherit;
}

.cm-richtext blockquote p {
  display: inline-block;
}

.cm-richtext blockquote p:last-child {
  margin-bottom: 0;
}

.cm-richtext .align--left {
  text-align: left;
}

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

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

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

.cm-richtext .float--left {
  float: left;
}

.cm-richtext .float--right {
  float: right;
}

.cm-richtext .float--none {
  float: none;
}

.cm-richtext table {
  width: 100%;
  border: 1px solid #000;
  margin: 10px 0;
}

.cm-richtext table th {
  font-weight: bold;
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px dashed #000;
}

.cm-richtext table td {
  padding: 5px 10px;
  border-bottom: 1px dashed #ccc;
}

.cm-richtext table tr:last-child td {
  border-bottom: none;
}

.cm-richtext .p--standard {
  font-weight: normal;
  font-size: 12px;
}

.cm-richtext .p--heading-1 {
  font-weight: bold;
  font-size: 24px;
}

.cm-richtext .p--heading-2 {
  font-weight: bold;
  font-size: 20px;
}

.cm-richtext .p--heading-3 {
  font-weight: bold;
  font-size: 16px;
}

.cm-richtext .p--heading-4 {
  font-weight: bold;
  font-size: 14px;
}

.cm-richtext .p--heading-5 {
  font-weight: bold;
  font-size: 13px;
}

.cm-richtext .p--heading-6 {
  font-weight: bold;
  font-size: 12px;
}

.cm-richtext .font-name--arial {
  font-family: Arial, sans-serif;
}

.cm-richtext .font-name--arial-black {
  font-family: "Arial Black", sans-serif;
}

.cm-richtext .font-name--arial-narrow {
  font-family: "Arial Narrow", sans-serif;
}

.cm-richtext .font-name--century {
  font-family: Century, serif;
}

.cm-richtext .font-name--courier {
  font-family: Courier, serif;
}

.cm-richtext .font-name--lucida-console {
  font-family: "Lucida Console", serif;
}

.cm-richtext .font-name--lucida-sans-unicode {
  font-family: "Lucida Sans Unicode", sans-serif;
}

.cm-richtext .font-name--times-new-roman {
  font-family: Times New Roman, serif;
}

.cm-richtext .font-name--verdana {
  font-family: Verdana, sans-serif;
}

.cm-richtext .font-size--8 {
  font-size: 8px;
}

.cm-richtext .font-size--9 {
  font-size: 9px;
}

.cm-richtext .font-size--10 {
  font-size: 10px;
}

.cm-richtext .font-size--11 {
  font-size: 11px;
}

.cm-richtext .font-size--12 {
  font-size: 12px;
}

.cm-richtext .font-size--14 {
  font-size: 14px;
}

.cm-richtext .font-size--16 {
  font-size: 16px;
}

.cm-richtext .font-size--18 {
  font-size: 18px;
}

.cm-richtext .font-size--20 {
  font-size: 20px;
}

.cm-richtext .font-size--24 {
  font-size: 24px;
}

.cm-richtext .font-size--26 {
  font-size: 26px;
}

.cm-richtext .font-size--28 {
  font-size: 28px;
}

.cm-richtext .font-size--36 {
  font-size: 36px;
}

.cm-richtext .font-size--48 {
  font-size: 48px;
}

.cm-richtext .font-size--72 {
  font-size: 72px;
}

.cm-richtext .color--black {
  color: black;
}

.cm-richtext .color--green {
  color: green;
}

.cm-richtext .color--silver {
  color: silver;
}

.cm-richtext .color--lime {
  color: lime;
}

.cm-richtext .color--gray {
  color: gray;
}

.cm-richtext .color--olive {
  color: olive;
}

.cm-richtext .color--white {
  color: white;
}

.cm-richtext .color--yellow {
  color: yellow;
}

.cm-richtext .color--maroon {
  color: maroon;
}

.cm-richtext .color--navy {
  color: navy;
}

.cm-richtext .color--red {
  color: red;
}

.cm-richtext .color--blue {
  color: blue;
}

.cm-richtext .color--purple {
  color: purple;
}

.cm-richtext .color--teal {
  color: teal;
}

.cm-richtext .color--fuchsia {
  color: fuchsia;
}

.cm-richtext .color--aqua {
  color: aqua;
}

.cm-richtext .background-color--black {
  background-color: black;
}

.cm-richtext .background-color--green {
  background-color: green;
}

.cm-richtext .background-color--silver {
  background-color: silver;
}

.cm-richtext .background-color--lime {
  background-color: lime;
}

.cm-richtext .background-color--gray {
  background-color: gray;
}

.cm-richtext .background-color--olive {
  background-color: olive;
}

.cm-richtext .background-color--white {
  background-color: white;
}

.cm-richtext .background-color--yellow {
  background-color: yellow;
}

.cm-richtext .background-color--maroon {
  background-color: maroon;
}

.cm-richtext .background-color--navy {
  background-color: navy;
}

.cm-richtext .background-color--red {
  background-color: red;
}

.cm-richtext .background-color--blue {
  background-color: blue;
}

.cm-richtext .background-color--purple {
  background-color: purple;
}

.cm-richtext .background-color--teal {
  background-color: teal;
}

.cm-richtext .background-color--fuchsia {
  background-color: fuchsia;
}

.cm-richtext .background-color--aqua {
  background-color: aqua;
}

.cm-richtext .list-item--none {
  list-style-type: none;
}

.cm-richtext .list-item--square {
  list-style-type: square;
}

.cm-richtext .list-item--circle {
  list-style-type: circle;
}

.cm-richtext .list-item--disc {
  list-style-type: disc;
}

.cm-richtext--dark-shadow {
  text-shadow: -1px 0 #ffffff, 0 1px #ffffff, 1px 0 #ffffff, 0 -1px #ffffff;
}

.cm-richtext--light-shadow {
  text-shadow: 0 0 30px #000000;
}

.cm-cta {
  display: inline-flex;
  justify-content: center;
}

.cm-cta__button + .cm-cta__button {
  margin-left: 5px;
}

.cm-cta-button {
  display: inline-block;
}

.cm-teaser-overlay {
  position: absolute;
  padding: 5px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}

.cm-teaser-overlay__text :first-child {
  margin-top: 0;
}

.cm-teaser-overlay__text :last-child {
  margin-bottom: 0;
}

.cm-teaser-overlay__cta {
  margin: 5px 0 0 0;
  text-align: center;
  width: 100%;
}

.cm-teaser-overlay__cta-button {
  pointer-events: auto;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
/* --- fragment ----------------------------------------------------------------------------------------------------- */
.cm-fragment {
  display: none;
}

.cm-fragment--loading {
  position: relative;
}

.cm-fragment--loading:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  opacity: 0.5;
  transition: background-color 0.5s ease;
}

/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
.cm-richtext {
  /* basic styles */
  /* alignment */
  /* floating (images) */
  /* default table layout */
  /* headings for paragraphs [deprecated] */
  /* font-families [deprecated] */
  /* font-sizes [deprecated] */
  /* colors [deprecated] */
  /* background-colors [deprecated] */
  /* list items [deprecated] */
}

.cm-richtext a,
.cm-richtext .underline {
  text-decoration: underline;
}

.cm-richtext .strike {
  text-decoration: line-through;
}

.cm-richtext sub {
  vertical-align: sub;
}

.cm-richtext sup {
  vertical-align: super;
}

.cm-richtext .rte--list {
  margin-bottom: 1em;
  margin-left: 20px;
}

.cm-richtext blockquote {
  margin: 0 0 1rem 0;
  padding: 1em;
  background: #f0f0f0;
  quotes: inherit;
}

.cm-richtext blockquote p {
  display: inline-block;
}

.cm-richtext blockquote p:last-child {
  margin-bottom: 0;
}

.cm-richtext .align--left {
  text-align: left;
}

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

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

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

.cm-richtext .float--left {
  float: left;
}

.cm-richtext .float--right {
  float: right;
}

.cm-richtext .float--none {
  float: none;
}

.cm-richtext table {
  width: 100%;
  border: 1px solid #000;
  margin: 10px 0;
}

.cm-richtext table th {
  font-weight: bold;
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px dashed #000;
}

.cm-richtext table td {
  padding: 5px 10px;
  border-bottom: 1px dashed #ccc;
}

.cm-richtext table tr:last-child td {
  border-bottom: none;
}

.cm-richtext .p--standard {
  font-weight: normal;
  font-size: 12px;
}

.cm-richtext .p--heading-1 {
  font-weight: bold;
  font-size: 24px;
}

.cm-richtext .p--heading-2 {
  font-weight: bold;
  font-size: 20px;
}

.cm-richtext .p--heading-3 {
  font-weight: bold;
  font-size: 16px;
}

.cm-richtext .p--heading-4 {
  font-weight: bold;
  font-size: 14px;
}

.cm-richtext .p--heading-5 {
  font-weight: bold;
  font-size: 13px;
}

.cm-richtext .p--heading-6 {
  font-weight: bold;
  font-size: 12px;
}

.cm-richtext .font-name--arial {
  font-family: Arial, sans-serif;
}

.cm-richtext .font-name--arial-black {
  font-family: "Arial Black", sans-serif;
}

.cm-richtext .font-name--arial-narrow {
  font-family: "Arial Narrow", sans-serif;
}

.cm-richtext .font-name--century {
  font-family: Century, serif;
}

.cm-richtext .font-name--courier {
  font-family: Courier, serif;
}

.cm-richtext .font-name--lucida-console {
  font-family: "Lucida Console", serif;
}

.cm-richtext .font-name--lucida-sans-unicode {
  font-family: "Lucida Sans Unicode", sans-serif;
}

.cm-richtext .font-name--times-new-roman {
  font-family: Times New Roman, serif;
}

.cm-richtext .font-name--verdana {
  font-family: Verdana, sans-serif;
}

.cm-richtext .font-size--8 {
  font-size: 8px;
}

.cm-richtext .font-size--9 {
  font-size: 9px;
}

.cm-richtext .font-size--10 {
  font-size: 10px;
}

.cm-richtext .font-size--11 {
  font-size: 11px;
}

.cm-richtext .font-size--12 {
  font-size: 12px;
}

.cm-richtext .font-size--14 {
  font-size: 14px;
}

.cm-richtext .font-size--16 {
  font-size: 16px;
}

.cm-richtext .font-size--18 {
  font-size: 18px;
}

.cm-richtext .font-size--20 {
  font-size: 20px;
}

.cm-richtext .font-size--24 {
  font-size: 24px;
}

.cm-richtext .font-size--26 {
  font-size: 26px;
}

.cm-richtext .font-size--28 {
  font-size: 28px;
}

.cm-richtext .font-size--36 {
  font-size: 36px;
}

.cm-richtext .font-size--48 {
  font-size: 48px;
}

.cm-richtext .font-size--72 {
  font-size: 72px;
}

.cm-richtext .color--black {
  color: black;
}

.cm-richtext .color--green {
  color: green;
}

.cm-richtext .color--silver {
  color: silver;
}

.cm-richtext .color--lime {
  color: lime;
}

.cm-richtext .color--gray {
  color: gray;
}

.cm-richtext .color--olive {
  color: olive;
}

.cm-richtext .color--white {
  color: white;
}

.cm-richtext .color--yellow {
  color: yellow;
}

.cm-richtext .color--maroon {
  color: maroon;
}

.cm-richtext .color--navy {
  color: navy;
}

.cm-richtext .color--red {
  color: red;
}

.cm-richtext .color--blue {
  color: blue;
}

.cm-richtext .color--purple {
  color: purple;
}

.cm-richtext .color--teal {
  color: teal;
}

.cm-richtext .color--fuchsia {
  color: fuchsia;
}

.cm-richtext .color--aqua {
  color: aqua;
}

.cm-richtext .background-color--black {
  background-color: black;
}

.cm-richtext .background-color--green {
  background-color: green;
}

.cm-richtext .background-color--silver {
  background-color: silver;
}

.cm-richtext .background-color--lime {
  background-color: lime;
}

.cm-richtext .background-color--gray {
  background-color: gray;
}

.cm-richtext .background-color--olive {
  background-color: olive;
}

.cm-richtext .background-color--white {
  background-color: white;
}

.cm-richtext .background-color--yellow {
  background-color: yellow;
}

.cm-richtext .background-color--maroon {
  background-color: maroon;
}

.cm-richtext .background-color--navy {
  background-color: navy;
}

.cm-richtext .background-color--red {
  background-color: red;
}

.cm-richtext .background-color--blue {
  background-color: blue;
}

.cm-richtext .background-color--purple {
  background-color: purple;
}

.cm-richtext .background-color--teal {
  background-color: teal;
}

.cm-richtext .background-color--fuchsia {
  background-color: fuchsia;
}

.cm-richtext .background-color--aqua {
  background-color: aqua;
}

.cm-richtext .list-item--none {
  list-style-type: none;
}

.cm-richtext .list-item--square {
  list-style-type: square;
}

.cm-richtext .list-item--circle {
  list-style-type: circle;
}

.cm-richtext .list-item--disc {
  list-style-type: disc;
}

.cm-richtext--dark-shadow {
  text-shadow: -1px 0 #ffffff, 0 1px #ffffff, 1px 0 #ffffff, 0 -1px #ffffff;
}

.cm-richtext--light-shadow {
  text-shadow: 0 0 30px #000000;
}

.cm-cta {
  display: inline-flex;
  justify-content: center;
}

.cm-cta__button + .cm-cta__button {
  margin-left: 5px;
}

.cm-cta-button {
  display: inline-block;
}

.cm-teaser-overlay {
  position: absolute;
  padding: 5px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}

.cm-teaser-overlay__text :first-child {
  margin-top: 0;
}

.cm-teaser-overlay__text :last-child {
  margin-bottom: 0;
}

.cm-teaser-overlay__cta {
  margin: 5px 0 0 0;
  text-align: center;
  width: 100%;
}

.cm-teaser-overlay__cta-button {
  pointer-events: auto;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.cm-slick-carousel {
  z-index: 0;
}

.cm-slick-carousel__item {
  display: none;
}

.cm-slick-carousel__item:first-child {
  display: block;
}

.cm-slick-carousel .slick-arrow::before {
  display: block;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.cm-slick-carousel .slick-prev::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2JhY2siPgogICAgICAgICAgICA8cGF0aCBkPSJNMTAuNzQ5NzQ3NywxNC40NDk3NDc1IEwxMC43NDk3NDc3LDguNDQ5NzQ3NDcgTDkuNzQ5NzQ3NjYsOC40NDk3NDc0NyBMOS43NDk3NDc2NiwxNC45NDk3NDc1IEw5Ljc0OTc0NzY2LDE1LjQ0OTc0NzUgTDE2Ljc0OTc0NzcsMTUuNDQ5NzQ3NSBMMTYuNzQ5NzQ3NywxNC40NDk3NDc1IEwxMC43NDk3NDc3LDE0LjQ0OTc0NzUgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjMDAwMDAwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMy4yNDk3NDgsIDExLjk0OTc0Nykgcm90YXRlKC0zMTUuMDAwMDAwKSB0cmFuc2xhdGUoLTEzLjI0OTc0OCwgLTExLjk0OTc0NykgIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4K);
}

.cm-slick-carousel .slick-next::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2ZvcndhcmQiPgogICAgICAgICAgICA8cGF0aCBkPSJNOC4yNDk3NDc2NiwxNC40NDk3NDc1IEw4LjI0OTc0NzY2LDguNDQ5NzQ3NDcgTDcuMjQ5NzQ3NjYsOC40NDk3NDc0NyBMNy4yNDk3NDc2NiwxNC45NDk3NDc1IEw3LjI0OTc0NzY2LDE1LjQ0OTc0NzUgTDE0LjI0OTc0NzcsMTUuNDQ5NzQ3NSBMMTQuMjQ5NzQ3NywxNC40NDk3NDc1IEw4LjI0OTc0NzY2LDE0LjQ0OTc0NzUgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjMDAwMDAwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMC43NDk3NDgsIDExLjk0OTc0Nykgcm90YXRlKC0xMzUuMDAwMDAwKSB0cmFuc2xhdGUoLTEwLjc0OTc0OCwgLTExLjk0OTc0NykgIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4K);
}

.cm-slick-carousel--inner-arrows .slick-arrow {
  top: 0;
  bottom: 0;
  height: auto;
  transform: none;
  width: 5%;
}

.cm-slick-carousel--inner-arrows .slick-arrow:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.cm-slick-carousel--inner-arrows .slick-prev {
  z-index: 1;
  left: 0;
}

.cm-slick-carousel--inner-arrows .slick-prev:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2JhY2siPgogICAgICAgICAgICA8Y2lyY2xlIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbC1vcGFjaXR5PSIwLjUiIGZpbGw9IiNGRkZGRkYiIGN4PSIxMiIgY3k9IjEyIiByPSIxMiI+PC9jaXJjbGU+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMC43NDk3NDc3LDE0LjQ0OTc0NzUgTDEwLjc0OTc0NzcsOC40NDk3NDc0NyBMOS43NDk3NDc2Niw4LjQ0OTc0NzQ3IEw5Ljc0OTc0NzY2LDE0Ljk0OTc0NzUgTDkuNzQ5NzQ3NjYsMTUuNDQ5NzQ3NSBMMTYuNzQ5NzQ3NywxNS40NDk3NDc1IEwxNi43NDk3NDc3LDE0LjQ0OTc0NzUgTDEwLjc0OTc0NzcsMTQuNDQ5NzQ3NSBaIiBpZD0iQ29tYmluZWQtU2hhcGUiIGZpbGw9IiMwMDAwMDAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEzLjI0OTc0OCwgMTEuOTQ5NzQ3KSByb3RhdGUoLTMxNS4wMDAwMDApIHRyYW5zbGF0ZSgtMTMuMjQ5NzQ4LCAtMTEuOTQ5NzQ3KSAiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=);
}

.cm-slick-carousel--inner-arrows .slick-prev:hover:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2JhY2staG92ZXIiPgogICAgICAgICAgICA8Y2lyY2xlIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iI0ZGRkZGRiIgY3g9IjEyIiBjeT0iMTIiIHI9IjEyIj48L2NpcmNsZT4KICAgICAgICAgICAgPHBhdGggZD0iTTEwLjc0OTc0NzcsMTQuNDQ5NzQ3NSBMMTAuNzQ5NzQ3Nyw4LjQ0OTc0NzQ3IEw5Ljc0OTc0NzY2LDguNDQ5NzQ3NDcgTDkuNzQ5NzQ3NjYsMTQuOTQ5NzQ3NSBMOS43NDk3NDc2NiwxNS40NDk3NDc1IEwxNi43NDk3NDc3LDE1LjQ0OTc0NzUgTDE2Ljc0OTc0NzcsMTQuNDQ5NzQ3NSBMMTAuNzQ5NzQ3NywxNC40NDk3NDc1IFoiIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iIzAwMDAwMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTMuMjQ5NzQ4LCAxMS45NDk3NDcpIHJvdGF0ZSgtMzE1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMy4yNDk3NDgsIC0xMS45NDk3NDcpICI+PC9wYXRoPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+Cg==);
}

.cm-slick-carousel--inner-arrows .slick-next {
  right: 0;
}

.cm-slick-carousel--inner-arrows .slick-next:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2ZvcndhcmQiPgogICAgICAgICAgICA8Y2lyY2xlIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbC1vcGFjaXR5PSIwLjUiIGZpbGw9IiNGRkZGRkYiIGN4PSIxMiIgY3k9IjEyIiByPSIxMiI+PC9jaXJjbGU+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik04LjI0OTc0NzY2LDE0LjQ0OTc0NzUgTDguMjQ5NzQ3NjYsOC40NDk3NDc0NyBMNy4yNDk3NDc2Niw4LjQ0OTc0NzQ3IEw3LjI0OTc0NzY2LDE0Ljk0OTc0NzUgTDcuMjQ5NzQ3NjYsMTUuNDQ5NzQ3NSBMMTQuMjQ5NzQ3NywxNS40NDk3NDc1IEwxNC4yNDk3NDc3LDE0LjQ0OTc0NzUgTDguMjQ5NzQ3NjYsMTQuNDQ5NzQ3NSBaIiBpZD0iQ29tYmluZWQtU2hhcGUiIGZpbGw9IiMwMDAwMDAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjc0OTc0OCwgMTEuOTQ5NzQ3KSByb3RhdGUoLTEzNS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuNzQ5NzQ4LCAtMTEuOTQ5NzQ3KSAiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=);
}

.cm-slick-carousel--inner-arrows .slick-next:hover:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBpZD0iU3ltYm9scyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Imljb25zL2Nhcm91c2VsL2ZvcndhcmQtaG92ZXIiPgogICAgICAgICAgICA8Y2lyY2xlIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iI0ZGRkZGRiIgY3g9IjEyIiBjeT0iMTIiIHI9IjEyIj48L2NpcmNsZT4KICAgICAgICAgICAgPHBhdGggZD0iTTguMjQ5NzQ3NjYsMTQuNDQ5NzQ3NSBMOC4yNDk3NDc2Niw4LjQ0OTc0NzQ3IEw3LjI0OTc0NzY2LDguNDQ5NzQ3NDcgTDcuMjQ5NzQ3NjYsMTQuOTQ5NzQ3NSBMNy4yNDk3NDc2NiwxNS40NDk3NDc1IEwxNC4yNDk3NDc3LDE1LjQ0OTc0NzUgTDE0LjI0OTc0NzcsMTQuNDQ5NzQ3NSBMOC4yNDk3NDc2NiwxNC40NDk3NDc1IFoiIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iIzAwMDAwMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuNzQ5NzQ4LCAxMS45NDk3NDcpIHJvdGF0ZSgtMTM1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC43NDk3NDgsIC0xMS45NDk3NDcpICI+PC9wYXRoPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+Cg==);
}

.cm-slick-carousel .slick-slide:not(.slick-current) video {
  visibility: hidden;
}

.cm-slick-carousel--transitioning .slick-slide:not(.slick-current) video {
  visibility: visible;
}

.custom-text {
  color: #FF0000;
}

.custom-text {
  color: #FF0000;
}

.custom-text {
  color: #FF0000;
}

/*
 *  MIXIN: cm2020-breakpoint()
 *
 *	$break-tablet-start: 768px;
 *	$break-desktop-start: 1024px;
 *	$break-desktop-hd-start: 1440px;
 *
 *	@mixin cm2020-breakpoint($media)
 *  @params $media: mobile | tablet | desktop | desktophd | mobileTablet | tabletDesktop
 *	@example  @include cm2020-breakpoint(tabletOnly) { width: 125px; }
 */
/**
 * @description Function to calculate the percentage of a col width
 * With one parameter width 100% is based on 12 cols minus outer gutter -> 100% - gutter
 * With two parameter width 100% is based on the second parameter ( col(3, 6) -> 50% - gutter ) minus outer gutter
 * With the third parameter false width ignores outer gutter. 100% = 100%
 *
 * @example width: col-width(8);
 * @example width: col-width(2, 6);
 * @example width: col-width(2, 6, false);
 */
/**
 * @description Creates CSS for a grid behavior of elements
 *
 * @example grid(8);
 * @example grid(2, 6);
 * @example grid(2, 6, false);
 */
/**
 * @description: Spans a container over the whole type-area (max 1024px) with
 * gutter as padding at the left and right side.
 *
 * There are some edge cases, where you need the whole span, but without padding
 */
/**
 * MIXIN: touch device detection
 * @description: Somewhat problematic topic with many edge cases. So don't use it for
 * important stuff that can break user experience!
 * There is also an touch device detection in JS.
 *
 * More infos:
 * - http://www.stucox.com/blog/you-cant-detect-a-touchscreen/
 * - https://stackoverflow.com/questions/7838680/detecting-that-the-browser-has-no-mouse-and-is-touch-only/52854585#answer-52854585
 * - https://dev.opera.com/articles/media-features/
 * - Test example for matchMedia: https://patrickhlauke.github.io/touch/pointer-hover-any-pointer-any-hover/
 */
/**
 * MIXIN: negative touch device detection
 * @description: Somewhat problematic topic with many edge cases. So don't use it for
 * important stuff that can break user experience!
 * There is also an touch device detection in JS.
 *
 * More infos:
 * - http://www.stucox.com/blog/you-cant-detect-a-touchscreen/
 * - https://stackoverflow.com/questions/7838680/detecting-that-the-browser-has-no-mouse-and-is-touch-only/52854585#answer-52854585
 * - https://dev.opera.com/articles/media-features/
 * - Test example for matchMedia: https://patrickhlauke.github.io/touch/pointer-hover-any-pointer-any-hover/
 */
/**
 * MIXIN: Clearfix
 * @description: Different variants for basic clearfix stuff
 */
.clearfix {
  *zoom: 1;
}

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

.clearfix::after {
  clear: both;
}

/**
 * MIXIN: Accessibility stuff
 */
.is-hidden {
  display: none;
}

/**
 *  MIXIN: Centering stuff
 *  @description: centering vertically
 *
 *	@mixin align-middle
 *	@example @include align-middle();
 */
/**
 *  @description: centering vertically AND horizontally
 *
 *	@mixin align-center-middle
 *	@example @include align-center-middle();
 */
/**
 * MIXIN: Resetting stuff
 * @description: sets the element to an neutral appearance
 */
/**
 * MIXIN: Grid-CSS stuff
 * @description: IE11-"Polyfill" for different handling of grid-area command
 */
body {
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  line-height: 25px;
  color: #363936;
  background-color: #ffffff;
  background-size: 100% auto;
}

body::before {
  display: none;
  visibility: hidden;
}

@media only screen and (max-width: 767px) {
  body::before {
    content: 'mobile';
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  body::before {
    content: 'tablet';
  }
}

@media only screen and (min-width: 1080px) {
  body::before {
    content: 'desktop';
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

ul,
ol {
  margin-top: 0;
  margin-bottom: 0;
}

button {
  appearance: none;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: transparent;
}

strong,
b {
  font-weight: 700;
}

/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
.cm-richtext {
  /* basic styles */
  /* alignment */
  /* floating (images) */
  /* default table layout */
  /* headings for paragraphs [deprecated] */
  /* font-families [deprecated] */
  /* font-sizes [deprecated] */
  /* colors [deprecated] */
  /* background-colors [deprecated] */
  /* list items [deprecated] */
}

.cm-richtext a,
.cm-richtext .underline {
  text-decoration: underline;
}

.cm-richtext .strike {
  text-decoration: line-through;
}

.cm-richtext sub {
  vertical-align: sub;
}

.cm-richtext sup {
  vertical-align: super;
}

.cm-richtext .rte--list {
  margin-bottom: 1em;
  margin-left: 20px;
}

.cm-richtext blockquote {
  margin: 0 0 1rem 0;
  padding: 1em;
  background: #f0f0f0;
  quotes: inherit;
}

.cm-richtext blockquote p {
  display: inline-block;
}

.cm-richtext blockquote p:last-child {
  margin-bottom: 0;
}

.cm-richtext .align--left {
  text-align: left;
}

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

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

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

.cm-richtext .float--left {
  float: left;
}

.cm-richtext .float--right {
  float: right;
}

.cm-richtext .float--none {
  float: none;
}

.cm-richtext table {
  width: 100%;
  border: 1px solid #000;
  margin: 10px 0;
}

.cm-richtext table th {
  font-weight: bold;
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px dashed #000;
}

.cm-richtext table td {
  padding: 5px 10px;
  border-bottom: 1px dashed #ccc;
}

.cm-richtext table tr:last-child td {
  border-bottom: none;
}

.cm-richtext .p--standard {
  font-weight: normal;
  font-size: 12px;
}

.cm-richtext .p--heading-1 {
  font-weight: bold;
  font-size: 24px;
}

.cm-richtext .p--heading-2 {
  font-weight: bold;
  font-size: 20px;
}

.cm-richtext .p--heading-3 {
  font-weight: bold;
  font-size: 16px;
}

.cm-richtext .p--heading-4 {
  font-weight: bold;
  font-size: 14px;
}

.cm-richtext .p--heading-5 {
  font-weight: bold;
  font-size: 13px;
}

.cm-richtext .p--heading-6 {
  font-weight: bold;
  font-size: 12px;
}

.cm-richtext .font-name--arial {
  font-family: Arial, sans-serif;
}

.cm-richtext .font-name--arial-black {
  font-family: "Arial Black", sans-serif;
}

.cm-richtext .font-name--arial-narrow {
  font-family: "Arial Narrow", sans-serif;
}

.cm-richtext .font-name--century {
  font-family: Century, serif;
}

.cm-richtext .font-name--courier {
  font-family: Courier, serif;
}

.cm-richtext .font-name--lucida-console {
  font-family: "Lucida Console", serif;
}

.cm-richtext .font-name--lucida-sans-unicode {
  font-family: "Lucida Sans Unicode", sans-serif;
}

.cm-richtext .font-name--times-new-roman {
  font-family: Times New Roman, serif;
}

.cm-richtext .font-name--verdana {
  font-family: Verdana, sans-serif;
}

.cm-richtext .font-size--8 {
  font-size: 8px;
}

.cm-richtext .font-size--9 {
  font-size: 9px;
}

.cm-richtext .font-size--10 {
  font-size: 10px;
}

.cm-richtext .font-size--11 {
  font-size: 11px;
}

.cm-richtext .font-size--12 {
  font-size: 12px;
}

.cm-richtext .font-size--14 {
  font-size: 14px;
}

.cm-richtext .font-size--16 {
  font-size: 16px;
}

.cm-richtext .font-size--18 {
  font-size: 18px;
}

.cm-richtext .font-size--20 {
  font-size: 20px;
}

.cm-richtext .font-size--24 {
  font-size: 24px;
}

.cm-richtext .font-size--26 {
  font-size: 26px;
}

.cm-richtext .font-size--28 {
  font-size: 28px;
}

.cm-richtext .font-size--36 {
  font-size: 36px;
}

.cm-richtext .font-size--48 {
  font-size: 48px;
}

.cm-richtext .font-size--72 {
  font-size: 72px;
}

.cm-richtext .color--black {
  color: black;
}

.cm-richtext .color--green {
  color: green;
}

.cm-richtext .color--silver {
  color: silver;
}

.cm-richtext .color--lime {
  color: lime;
}

.cm-richtext .color--gray {
  color: gray;
}

.cm-richtext .color--olive {
  color: olive;
}

.cm-richtext .color--white {
  color: white;
}

.cm-richtext .color--yellow {
  color: yellow;
}

.cm-richtext .color--maroon {
  color: maroon;
}

.cm-richtext .color--navy {
  color: navy;
}

.cm-richtext .color--red {
  color: red;
}

.cm-richtext .color--blue {
  color: blue;
}

.cm-richtext .color--purple {
  color: purple;
}

.cm-richtext .color--teal {
  color: teal;
}

.cm-richtext .color--fuchsia {
  color: fuchsia;
}

.cm-richtext .color--aqua {
  color: aqua;
}

.cm-richtext .background-color--black {
  background-color: black;
}

.cm-richtext .background-color--green {
  background-color: green;
}

.cm-richtext .background-color--silver {
  background-color: silver;
}

.cm-richtext .background-color--lime {
  background-color: lime;
}

.cm-richtext .background-color--gray {
  background-color: gray;
}

.cm-richtext .background-color--olive {
  background-color: olive;
}

.cm-richtext .background-color--white {
  background-color: white;
}

.cm-richtext .background-color--yellow {
  background-color: yellow;
}

.cm-richtext .background-color--maroon {
  background-color: maroon;
}

.cm-richtext .background-color--navy {
  background-color: navy;
}

.cm-richtext .background-color--red {
  background-color: red;
}

.cm-richtext .background-color--blue {
  background-color: blue;
}

.cm-richtext .background-color--purple {
  background-color: purple;
}

.cm-richtext .background-color--teal {
  background-color: teal;
}

.cm-richtext .background-color--fuchsia {
  background-color: fuchsia;
}

.cm-richtext .background-color--aqua {
  background-color: aqua;
}

.cm-richtext .list-item--none {
  list-style-type: none;
}

.cm-richtext .list-item--square {
  list-style-type: square;
}

.cm-richtext .list-item--circle {
  list-style-type: circle;
}

.cm-richtext .list-item--disc {
  list-style-type: disc;
}

.cm-richtext--dark-shadow {
  text-shadow: -1px 0 #ffffff, 0 1px #ffffff, 1px 0 #ffffff, 0 -1px #ffffff;
}

.cm-richtext--light-shadow {
  text-shadow: 0 0 30px #000000;
}

.cm-cta {
  display: inline-flex;
  justify-content: center;
}

.cm-cta__button + .cm-cta__button {
  margin-left: 5px;
}

.cm-cta-button {
  display: inline-block;
}

.cm-teaser-overlay {
  position: absolute;
  padding: 5px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}

.cm-teaser-overlay__text :first-child {
  margin-top: 0;
}

.cm-teaser-overlay__text :last-child {
  margin-bottom: 0;
}

.cm-teaser-overlay__cta {
  margin: 5px 0 0 0;
  text-align: center;
  width: 100%;
}

.cm-teaser-overlay__cta-button {
  pointer-events: auto;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.cm-media {
  max-width: 100%;
}

.cm-media--responsive {
  color: transparent;
}

.cm-media--uncropped {
  font-family: "object-fit:cover";
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.cm-media--loading {
  background-color: #eeeeee;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(data:image/gif;base64,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);
}

.cm-media--missing {
  background-color: #ffffff;
  background-size: 50%;
}

.cm-audio {
  width: 100%;
}

.cm-audio--missing {
  border: 1px solid #000000;
  padding: 20px;
  text-align: center;
  background-color: #000000;
  color: #ffffff;
}

.cm-video {
  font-family: "object-fit:cover";
  object-fit: cover;
  max-width: 100%;
  max-height: 100%;
}

.cm-video--missing {
  border: 1px solid #000000;
  padding: 40px;
  text-align: center;
  background-color: #000000;
  color: #ffffff;
}

.cm-play-button {
  width: 90px;
  height: 90px;
  max-width: 75%;
  max-height: 75%;
  background: transparent url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICA8c3R5bGU+CiAgICAuc3QwIHsKICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjUpOwogICAgICBzdHJva2U6ICNGRkZGRkY7CiAgICAgIHN0cm9rZS13aWR0aDogMzA7CiAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgIH0KICAgIC5zdDEgewogICAgICBmaWxsOiAjRkZGRkZGOwogICAgfQogIDwvc3R5bGU+CiAgPGNpcmNsZSBjeD0iMjU2IiBjeT0iMjU2IiByPSIyMzEiIGNsYXNzPSJzdDAiLz4KICA8cGF0aCBkPSJNMzQ4LjEgMjQ1LjZsLTEzNC03OC4yYy0xMi4yLTcuMS0yMi4xLTEuNC0yMiAxMi43bC43IDE1NS4yYy4xIDE0LjEgMTAgMTkuOSAyMi4zIDEyLjhsMTMzLTc2LjhjMTIuMi03LjEgMTIuMy0xOC42IDAtMjUuN3oiIGNsYXNzPSJzdDEiLz4KPC9zdmc+) no-repeat;
  transition: all 0.35s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.cm-play-button:hover {
  background: transparent url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICA8c3R5bGU+CiAgICAuc3QwIHsKICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjYpOwogICAgICBzdHJva2U6ICNGRkZGRkY7CiAgICAgIHN0cm9rZS13aWR0aDogMzA7CiAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgIH0KICAgIC5zdDEgewogICAgICBmaWxsOiAjRkZGRkZGOwogICAgfQogIDwvc3R5bGU+CiAgPGNpcmNsZSBjeD0iMjU2IiBjeT0iMjU2IiByPSIyMzEiIGNsYXNzPSJzdDAiLz4KICA8cGF0aCBkPSJNMzQ4LjEgMjQ1LjZsLTEzNC03OC4yYy0xMi4yLTcuMS0yMi4xLTEuNC0yMiAxMi43bC43IDE1NS4yYy4xIDE0LjEgMTAgMTkuOSAyMi4zIDEyLjhsMTMzLTc2LjhjMTIuMi03LjEgMTIuMy0xOC42IDAtMjUuN3oiIGNsYXNzPSJzdDEiLz4KPC9zdmc+) no-repeat;
  transition: all 0.35s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.cm-play-button:focus {
  background: transparent url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICA8c3R5bGU+CiAgICAuc3QwIHsKICAgICAgZmlsbDogcmdiYSgwLCAwLCAwLCAwLjYpOwogICAgICBzdHJva2U6ICNGRkZGRkY7CiAgICAgIHN0cm9rZS13aWR0aDogMzA7CiAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgIH0KICAgIC5zdDEgewogICAgICBmaWxsOiAjRkZGRkZGOwogICAgfQogIDwvc3R5bGU+CiAgPGNpcmNsZSBjeD0iMjU2IiBjeT0iMjU2IiByPSIyMzEiIGNsYXNzPSJzdDAiLz4KICA8cGF0aCBkPSJNMzQ4LjEgMjQ1LjZsLTEzNC03OC4yYy0xMi4yLTcuMS0yMi4xLTEuNC0yMiAxMi43bC43IDE1NS4yYy4xIDE0LjEgMTAgMTkuOSAyMi4zIDEyLjhsMTMzLTc2LjhjMTIuMi03LjEgMTIuMy0xOC42IDAtMjUuN3oiIGNsYXNzPSJzdDEiLz4KPC9zdmc+) no-repeat;
}

/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
.cm-richtext {
  /* basic styles */
  /* alignment */
  /* floating (images) */
  /* default table layout */
  /* headings for paragraphs [deprecated] */
  /* font-families [deprecated] */
  /* font-sizes [deprecated] */
  /* colors [deprecated] */
  /* background-colors [deprecated] */
  /* list items [deprecated] */
}

.cm-richtext a,
.cm-richtext .underline {
  text-decoration: underline;
}

.cm-richtext .strike {
  text-decoration: line-through;
}

.cm-richtext sub {
  vertical-align: sub;
}

.cm-richtext sup {
  vertical-align: super;
}

.cm-richtext .rte--list {
  margin-bottom: 1em;
  margin-left: 20px;
}

.cm-richtext blockquote {
  margin: 0 0 1rem 0;
  padding: 1em;
  background: #f0f0f0;
  quotes: inherit;
}

.cm-richtext blockquote p {
  display: inline-block;
}

.cm-richtext blockquote p:last-child {
  margin-bottom: 0;
}

.cm-richtext .align--left {
  text-align: left;
}

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

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

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

.cm-richtext .float--left {
  float: left;
}

.cm-richtext .float--right {
  float: right;
}

.cm-richtext .float--none {
  float: none;
}

.cm-richtext table {
  width: 100%;
  border: 1px solid #000;
  margin: 10px 0;
}

.cm-richtext table th {
  font-weight: bold;
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px dashed #000;
}

.cm-richtext table td {
  padding: 5px 10px;
  border-bottom: 1px dashed #ccc;
}

.cm-richtext table tr:last-child td {
  border-bottom: none;
}

.cm-richtext .p--standard {
  font-weight: normal;
  font-size: 12px;
}

.cm-richtext .p--heading-1 {
  font-weight: bold;
  font-size: 24px;
}

.cm-richtext .p--heading-2 {
  font-weight: bold;
  font-size: 20px;
}

.cm-richtext .p--heading-3 {
  font-weight: bold;
  font-size: 16px;
}

.cm-richtext .p--heading-4 {
  font-weight: bold;
  font-size: 14px;
}

.cm-richtext .p--heading-5 {
  font-weight: bold;
  font-size: 13px;
}

.cm-richtext .p--heading-6 {
  font-weight: bold;
  font-size: 12px;
}

.cm-richtext .font-name--arial {
  font-family: Arial, sans-serif;
}

.cm-richtext .font-name--arial-black {
  font-family: "Arial Black", sans-serif;
}

.cm-richtext .font-name--arial-narrow {
  font-family: "Arial Narrow", sans-serif;
}

.cm-richtext .font-name--century {
  font-family: Century, serif;
}

.cm-richtext .font-name--courier {
  font-family: Courier, serif;
}

.cm-richtext .font-name--lucida-console {
  font-family: "Lucida Console", serif;
}

.cm-richtext .font-name--lucida-sans-unicode {
  font-family: "Lucida Sans Unicode", sans-serif;
}

.cm-richtext .font-name--times-new-roman {
  font-family: Times New Roman, serif;
}

.cm-richtext .font-name--verdana {
  font-family: Verdana, sans-serif;
}

.cm-richtext .font-size--8 {
  font-size: 8px;
}

.cm-richtext .font-size--9 {
  font-size: 9px;
}

.cm-richtext .font-size--10 {
  font-size: 10px;
}

.cm-richtext .font-size--11 {
  font-size: 11px;
}

.cm-richtext .font-size--12 {
  font-size: 12px;
}

.cm-richtext .font-size--14 {
  font-size: 14px;
}

.cm-richtext .font-size--16 {
  font-size: 16px;
}

.cm-richtext .font-size--18 {
  font-size: 18px;
}

.cm-richtext .font-size--20 {
  font-size: 20px;
}

.cm-richtext .font-size--24 {
  font-size: 24px;
}

.cm-richtext .font-size--26 {
  font-size: 26px;
}

.cm-richtext .font-size--28 {
  font-size: 28px;
}

.cm-richtext .font-size--36 {
  font-size: 36px;
}

.cm-richtext .font-size--48 {
  font-size: 48px;
}

.cm-richtext .font-size--72 {
  font-size: 72px;
}

.cm-richtext .color--black {
  color: black;
}

.cm-richtext .color--green {
  color: green;
}

.cm-richtext .color--silver {
  color: silver;
}

.cm-richtext .color--lime {
  color: lime;
}

.cm-richtext .color--gray {
  color: gray;
}

.cm-richtext .color--olive {
  color: olive;
}

.cm-richtext .color--white {
  color: white;
}

.cm-richtext .color--yellow {
  color: yellow;
}

.cm-richtext .color--maroon {
  color: maroon;
}

.cm-richtext .color--navy {
  color: navy;
}

.cm-richtext .color--red {
  color: red;
}

.cm-richtext .color--blue {
  color: blue;
}

.cm-richtext .color--purple {
  color: purple;
}

.cm-richtext .color--teal {
  color: teal;
}

.cm-richtext .color--fuchsia {
  color: fuchsia;
}

.cm-richtext .color--aqua {
  color: aqua;
}

.cm-richtext .background-color--black {
  background-color: black;
}

.cm-richtext .background-color--green {
  background-color: green;
}

.cm-richtext .background-color--silver {
  background-color: silver;
}

.cm-richtext .background-color--lime {
  background-color: lime;
}

.cm-richtext .background-color--gray {
  background-color: gray;
}

.cm-richtext .background-color--olive {
  background-color: olive;
}

.cm-richtext .background-color--white {
  background-color: white;
}

.cm-richtext .background-color--yellow {
  background-color: yellow;
}

.cm-richtext .background-color--maroon {
  background-color: maroon;
}

.cm-richtext .background-color--navy {
  background-color: navy;
}

.cm-richtext .background-color--red {
  background-color: red;
}

.cm-richtext .background-color--blue {
  background-color: blue;
}

.cm-richtext .background-color--purple {
  background-color: purple;
}

.cm-richtext .background-color--teal {
  background-color: teal;
}

.cm-richtext .background-color--fuchsia {
  background-color: fuchsia;
}

.cm-richtext .background-color--aqua {
  background-color: aqua;
}

.cm-richtext .list-item--none {
  list-style-type: none;
}

.cm-richtext .list-item--square {
  list-style-type: square;
}

.cm-richtext .list-item--circle {
  list-style-type: circle;
}

.cm-richtext .list-item--disc {
  list-style-type: disc;
}

.cm-richtext--dark-shadow {
  text-shadow: -1px 0 #ffffff, 0 1px #ffffff, 1px 0 #ffffff, 0 -1px #ffffff;
}

.cm-richtext--light-shadow {
  text-shadow: 0 0 30px #000000;
}

.cm-cta {
  display: inline-flex;
  justify-content: center;
}

.cm-cta__button + .cm-cta__button {
  margin-left: 5px;
}

.cm-cta-button {
  display: inline-block;
}

.cm-teaser-overlay {
  position: absolute;
  padding: 5px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}

.cm-teaser-overlay__text :first-child {
  margin-top: 0;
}

.cm-teaser-overlay__text :last-child {
  margin-bottom: 0;
}

.cm-teaser-overlay__cta {
  margin: 5px 0 0 0;
  text-align: center;
  width: 100%;
}

.cm-teaser-overlay__cta-button {
  pointer-events: auto;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.cm-page {
  height: 100%;
  background-color: #fff;
  margin: 0;
}

.cm-javascript {
  display: none;
}

.no-js {
  margin-top: 40px;
}

.no-js .cm-javascript {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 40px;
  line-height: 40px;
  background: #000000;
  color: #FFFFFF;
  text-align: center;
}

/*
  The following standard setting and these paragraph styles rules
  should be listed before the alignment rules. Otherwise,
  the alignment rules won't overwrite the standard setting.
*/
.cm-richtext {
  /* basic styles */
  /* alignment */
  /* floating (images) */
  /* default table layout */
  /* headings for paragraphs [deprecated] */
  /* font-families [deprecated] */
  /* font-sizes [deprecated] */
  /* colors [deprecated] */
  /* background-colors [deprecated] */
  /* list items [deprecated] */
}

.cm-richtext a,
.cm-richtext .underline {
  text-decoration: underline;
}

.cm-richtext .strike {
  text-decoration: line-through;
}

.cm-richtext sub {
  vertical-align: sub;
}

.cm-richtext sup {
  vertical-align: super;
}

.cm-richtext .rte--list {
  margin-bottom: 1em;
  margin-left: 20px;
}

.cm-richtext blockquote {
  margin: 0 0 1rem 0;
  padding: 1em;
  background: #f0f0f0;
  quotes: inherit;
}

.cm-richtext blockquote p {
  display: inline-block;
}

.cm-richtext blockquote p:last-child {
  margin-bottom: 0;
}

.cm-richtext .align--left {
  text-align: left;
}

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

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

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

.cm-richtext .float--left {
  float: left;
}

.cm-richtext .float--right {
  float: right;
}

.cm-richtext .float--none {
  float: none;
}

.cm-richtext table {
  width: 100%;
  border: 1px solid #000;
  margin: 10px 0;
}

.cm-richtext table th {
  font-weight: bold;
  text-align: left;
  padding: 10px 10px;
  border-bottom: 1px dashed #000;
}

.cm-richtext table td {
  padding: 5px 10px;
  border-bottom: 1px dashed #ccc;
}

.cm-richtext table tr:last-child td {
  border-bottom: none;
}

.cm-richtext .p--standard {
  font-weight: normal;
  font-size: 12px;
}

.cm-richtext .p--heading-1 {
  font-weight: bold;
  font-size: 24px;
}

.cm-richtext .p--heading-2 {
  font-weight: bold;
  font-size: 20px;
}

.cm-richtext .p--heading-3 {
  font-weight: bold;
  font-size: 16px;
}

.cm-richtext .p--heading-4 {
  font-weight: bold;
  font-size: 14px;
}

.cm-richtext .p--heading-5 {
  font-weight: bold;
  font-size: 13px;
}

.cm-richtext .p--heading-6 {
  font-weight: bold;
  font-size: 12px;
}

.cm-richtext .font-name--arial {
  font-family: Arial, sans-serif;
}

.cm-richtext .font-name--arial-black {
  font-family: "Arial Black", sans-serif;
}

.cm-richtext .font-name--arial-narrow {
  font-family: "Arial Narrow", sans-serif;
}

.cm-richtext .font-name--century {
  font-family: Century, serif;
}

.cm-richtext .font-name--courier {
  font-family: Courier, serif;
}

.cm-richtext .font-name--lucida-console {
  font-family: "Lucida Console", serif;
}

.cm-richtext .font-name--lucida-sans-unicode {
  font-family: "Lucida Sans Unicode", sans-serif;
}

.cm-richtext .font-name--times-new-roman {
  font-family: Times New Roman, serif;
}

.cm-richtext .font-name--verdana {
  font-family: Verdana, sans-serif;
}

.cm-richtext .font-size--8 {
  font-size: 8px;
}

.cm-richtext .font-size--9 {
  font-size: 9px;
}

.cm-richtext .font-size--10 {
  font-size: 10px;
}

.cm-richtext .font-size--11 {
  font-size: 11px;
}

.cm-richtext .font-size--12 {
  font-size: 12px;
}

.cm-richtext .font-size--14 {
  font-size: 14px;
}

.cm-richtext .font-size--16 {
  font-size: 16px;
}

.cm-richtext .font-size--18 {
  font-size: 18px;
}

.cm-richtext .font-size--20 {
  font-size: 20px;
}

.cm-richtext .font-size--24 {
  font-size: 24px;
}

.cm-richtext .font-size--26 {
  font-size: 26px;
}

.cm-richtext .font-size--28 {
  font-size: 28px;
}

.cm-richtext .font-size--36 {
  font-size: 36px;
}

.cm-richtext .font-size--48 {
  font-size: 48px;
}

.cm-richtext .font-size--72 {
  font-size: 72px;
}

.cm-richtext .color--black {
  color: black;
}

.cm-richtext .color--green {
  color: green;
}

.cm-richtext .color--silver {
  color: silver;
}

.cm-richtext .color--lime {
  color: lime;
}

.cm-richtext .color--gray {
  color: gray;
}

.cm-richtext .color--olive {
  color: olive;
}

.cm-richtext .color--white {
  color: white;
}

.cm-richtext .color--yellow {
  color: yellow;
}

.cm-richtext .color--maroon {
  color: maroon;
}

.cm-richtext .color--navy {
  color: navy;
}

.cm-richtext .color--red {
  color: red;
}

.cm-richtext .color--blue {
  color: blue;
}

.cm-richtext .color--purple {
  color: purple;
}

.cm-richtext .color--teal {
  color: teal;
}

.cm-richtext .color--fuchsia {
  color: fuchsia;
}

.cm-richtext .color--aqua {
  color: aqua;
}

.cm-richtext .background-color--black {
  background-color: black;
}

.cm-richtext .background-color--green {
  background-color: green;
}

.cm-richtext .background-color--silver {
  background-color: silver;
}

.cm-richtext .background-color--lime {
  background-color: lime;
}

.cm-richtext .background-color--gray {
  background-color: gray;
}

.cm-richtext .background-color--olive {
  background-color: olive;
}

.cm-richtext .background-color--white {
  background-color: white;
}

.cm-richtext .background-color--yellow {
  background-color: yellow;
}

.cm-richtext .background-color--maroon {
  background-color: maroon;
}

.cm-richtext .background-color--navy {
  background-color: navy;
}

.cm-richtext .background-color--red {
  background-color: red;
}

.cm-richtext .background-color--blue {
  background-color: blue;
}

.cm-richtext .background-color--purple {
  background-color: purple;
}

.cm-richtext .background-color--teal {
  background-color: teal;
}

.cm-richtext .background-color--fuchsia {
  background-color: fuchsia;
}

.cm-richtext .background-color--aqua {
  background-color: aqua;
}

.cm-richtext .list-item--none {
  list-style-type: none;
}

.cm-richtext .list-item--square {
  list-style-type: square;
}

.cm-richtext .list-item--circle {
  list-style-type: circle;
}

.cm-richtext .list-item--disc {
  list-style-type: disc;
}

.cm-richtext--dark-shadow {
  text-shadow: -1px 0 #ffffff, 0 1px #ffffff, 1px 0 #ffffff, 0 -1px #ffffff;
}

.cm-richtext--light-shadow {
  text-shadow: 0 0 30px #000000;
}

.cm-cta {
  display: inline-flex;
  justify-content: center;
}

.cm-cta__button + .cm-cta__button {
  margin-left: 5px;
}

.cm-cta-button {
  display: inline-block;
}

.cm-teaser-overlay {
  position: absolute;
  padding: 5px;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}

.cm-teaser-overlay__text :first-child {
  margin-top: 0;
}

.cm-teaser-overlay__text :last-child {
  margin-bottom: 0;
}

.cm-teaser-overlay__cta {
  margin: 5px 0 0 0;
  text-align: center;
  width: 100%;
}

.cm-teaser-overlay__cta-button {
  pointer-events: auto;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
/* ------------------------------------ *\
	Settings
\* ------------------------------------ */
/**
 * COLORS
 */
/**
 * SIZES
 */
/**
 * BREAKPOINTS
 */
/**
 * DURATIONS
 */
/**
 * Z-INDEX
 */
/* dm-sans-regular - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  src: url(/resource/crblob/52638/73dbdaf159206bcffb8494bf67528341/dmsans-regular-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Regular"), local("DMSans-Regular"), url(/resource/crblob/52638/73dbdaf159206bcffb8494bf67528341/dmsans-regular-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52640/13dd253ca19362d3ec20b6514f6d4dff/dmsans-regular-woff2-data.woff2) format("woff2"), url(/resource/crblob/52642/c74958701fc0d56bd34de64a2f94e20d/dmsans-regular-woff-data.woff) format("woff"), url(/resource/crblob/52644/32a080121027edcb6f342cbc360119aa/dmsans-regular-ttf-data.ttf) format("truetype");
}

/* dm-sans-italic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 400;
  src: url(/resource/crblob/52646/14b22d294f6a14a07b497387f2d3aace/dmsans-italic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Italic"), local("DMSans-Italic"), url(/resource/crblob/52646/14b22d294f6a14a07b497387f2d3aace/dmsans-italic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52648/a59bd6386428e889a89c09530cd46236/dmsans-italic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52650/d9e3671d4f7ff4950419d0524f070a58/dmsans-italic-woff-data.woff) format("woff"), url(/resource/crblob/52652/d623c12d30d1196e579bd3061664d0b6/dmsans-italic-ttf-data.ttf) format("truetype");
}

/* dm-sans-medium - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  src: url(/resource/crblob/52654/dcaf30d2771fc434109545b334812c9f/dmsans-medium-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Medium"), local("DMSans-Medium"), url(/resource/crblob/52654/dcaf30d2771fc434109545b334812c9f/dmsans-medium-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52656/8f5dcfab353c6c63eef920dd0b12b39a/dmsans-medium-woff2-data.woff2) format("woff2"), url(/resource/crblob/52658/d3260980d482ca11cacc4bf0891cbd23/dmsans-medium-woff-data.woff) format("woff"), url(/resource/crblob/52660/5dd491a46ffa835753644a3ee31915c8/dmsans-medium-ttf-data.ttf) format("truetype");
}

/* dm-sans-mediumitalic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 500;
  src: url(/resource/crblob/52662/6a4c136c231eccee4909f0f5bac9a9ac/dmsans-mediumitalic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Medium Italic"), local("DMSans-MediumItalic"), url(/resource/crblob/52662/6a4c136c231eccee4909f0f5bac9a9ac/dmsans-mediumitalic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52664/53d11b3eaef94cc336206fd8dc6bc9cb/dmsans-mediumitalic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52666/d63038a3f53419910720276956a0266a/dmsans-mediumitalic-woff-data.woff) format("woff"), url(/resource/crblob/52668/3c2c5dec00ba4d0032531bec6c01eaf1/dmsans-mediumitalic-ttf-data.ttf) format("truetype");
}

/* dm-sans-bold - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  src: url(/resource/crblob/52670/9dfb9d8333c0bee5526394e979abe42a/dmsans-bold-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Bold"), local("DMSans-Bold"), url(/resource/crblob/52670/9dfb9d8333c0bee5526394e979abe42a/dmsans-bold-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52672/d0c829b79addac04e9d53785278030b7/dmsans-bold-woff2-data.woff2) format("woff2"), url(/resource/crblob/52674/84ed579707f1b7c7d071825f3dfcb877/dmsans-bold-woff-data.woff) format("woff"), url(/resource/crblob/52676/c4211e54451b21cc21d01c639c16da6d/dmsans-bold-ttf-data.ttf) format("truetype");
}

/* dm-sans-bolditalic - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 700;
  src: url(/resource/crblob/52678/1f4aeab4341b4897c654c6e3f8bf7ce2/dmsans-bolditalic-eot-data.eot);
  /* IE9 Compat Modes */
  src: local("DM Sans Bold Italic"), local("DMSans-BoldItalic"), url(/resource/crblob/52678/1f4aeab4341b4897c654c6e3f8bf7ce2/dmsans-bolditalic-eot-data.eot) format("embedded-opentype"), url(/resource/crblob/52680/b64526e6c54f6173a419ab5e7b508471/dmsans-bolditalic-woff2-data.woff2) format("woff2"), url(/resource/crblob/52682/d8dcae6ad03712381c03d5779b9fc7de/dmsans-bolditalic-woff-data.woff) format("woff"), url(/resource/crblob/52684/c950e44d90207c07e77d537fc649e24a/dmsans-bolditalic-ttf-data.ttf) format("truetype");
}

/**
 * FONTS
 */
/* ------------------------------------ *\
	Tools
\* ------------------------------------ */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*
 *  MIXIN: cm2020-breakpoint()
 *
 *	$break-tablet-start: 768px;
 *	$break-desktop-start: 1024px;
 *	$break-desktop-hd-start: 1440px;
 *
 *	@mixin cm2020-breakpoint($media)
 *  @params $media: mobile | tablet | desktop | desktophd | mobileTablet | tabletDesktop
 *	@example  @include cm2020-breakpoint(tabletOnly) { width: 125px; }
 */
/**
 * @description Function to calculate the percentage of a col width
 * With one parameter width 100% is based on 12 cols minus outer gutter -> 100% - gutter
 * With two parameter width 100% is based on the second parameter ( col(3, 6) -> 50% - gutter ) minus outer gutter
 * With the third parameter false width ignores outer gutter. 100% = 100%
 *
 * @example width: col-width(8);
 * @example width: col-width(2, 6);
 * @example width: col-width(2, 6, false);
 */
/**
 * @description Creates CSS for a grid behavior of elements
 *
 * @example grid(8);
 * @example grid(2, 6);
 * @example grid(2, 6, false);
 */
/**
 * @description: Spans a container over the whole type-area (max 1024px) with
 * gutter as padding at the left and right side.
 *
 * There are some edge cases, where you need the whole span, but without padding
 */
/**
 * MIXIN: touch device detection
 * @description: Somewhat problematic topic with many edge cases. So don't use it for
 * important stuff that can break user experience!
 * There is also an touch device detection in JS.
 *
 * More infos:
 * - http://www.stucox.com/blog/you-cant-detect-a-touchscreen/
 * - https://stackoverflow.com/questions/7838680/detecting-that-the-browser-has-no-mouse-and-is-touch-only/52854585#answer-52854585
 * - https://dev.opera.com/articles/media-features/
 * - Test example for matchMedia: https://patrickhlauke.github.io/touch/pointer-hover-any-pointer-any-hover/
 */
/**
 * MIXIN: negative touch device detection
 * @description: Somewhat problematic topic with many edge cases. So don't use it for
 * important stuff that can break user experience!
 * There is also an touch device detection in JS.
 *
 * More infos:
 * - http://www.stucox.com/blog/you-cant-detect-a-touchscreen/
 * - https://stackoverflow.com/questions/7838680/detecting-that-the-browser-has-no-mouse-and-is-touch-only/52854585#answer-52854585
 * - https://dev.opera.com/articles/media-features/
 * - Test example for matchMedia: https://patrickhlauke.github.io/touch/pointer-hover-any-pointer-any-hover/
 */
/**
 * MIXIN: Clearfix
 * @description: Different variants for basic clearfix stuff
 */
.clearfix {
  *zoom: 1;
}

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

.clearfix::after {
  clear: both;
}

/**
 * MIXIN: Accessibility stuff
 */
.is-hidden {
  display: none;
}

.is-visible {
  display: block;
}

/**
 * Not hiding, but pushing behind, as visual fallback as long as some DOM stuff
 * gets built or loaded.
 */
.is-fallback-bg {
  z-index: -1;
}

/**
 *  MIXIN: Centering stuff
 *  @description: centering vertically
 *
 *	@mixin align-middle
 *	@example @include align-middle();
 */
/**
 *  @description: centering vertically AND horizontally
 *
 *	@mixin align-center-middle
 *	@example @include align-center-middle();
 */
/**
 * MIXIN: Resetting stuff
 * @description: sets the element to an neutral appearance
 */
/**
 * MIXIN: Grid-CSS stuff
 * @description: IE11-"Polyfill" for different handling of grid-area command
 */
/**
* MIXIN: add property with value as variable and fallback value
* e.g. used for theming with custom properties tough sass
 */
/**
 * @description: This file contains mixins made by CoreMedia. These mixins are
 * included in standard CoreMedia installations and needed for some work flows,
 * i.e. aspect-ratio-box() for responsive images.

 * As CoreMedia is still using node-sass/LibSass instead of the newer Dart Sass
 * implementation, there is no way for conditional imports for mixins.
 * So instead each needed CoreMedia mixin is copied manually into this file.

 * The existence of the mixin is checked (was it already imported by some
 * CoreMedia brick magic?) and if needed, initialized by the version here
 */
/**
 * @description: Wrapper for brick-utils:aspect-ratio-box()
 *
 * Generates an aspect ratio box. Elements within the aspect ratio box need to be positioned absolute otherwise
 * they will extend the box.
 *
 * @param: {x} The x-coordinate for the aspect ratio
 * @param: {y} The y-coordinate for the aspect ratio
 * @param: {overflow} By default overflow is hidden, this can be adjusted if not wanted
 * @example:
 *
 * @include aspect-ratio-box(4, 3) {
 *    background-color: red;
 * }
 */
/**
 * @description: Wrapper for brick-utils:stretch-absolute()
 *
 * Applies styles to stretch to parent container using position absolute.
 *
 * @param: {boolean} vertically stretched? default: true
 * @param: {boolean} horizontally stretched? default: true
 *
 * @example:
 * img {
 *   @include stretch-absolute();
 * }
 *
 */
/**
 * @description: Mixins für text stylings
 */

.richtext-wrapper a:link,
.richtext-wrapper a:visited,
.richtext-wrapper a:hover,
.richtext-wrapper a:active {
  color: var(--primaryColour);
  text-decoration: none;
}


.richtext-wrapper p:first-child {
  margin-top: 0;
}


.richtext-wrapper p:last-child {
  margin-bottom: 0;
}


.richtext-wrapper ul,
.richtext-wrapper ol,
.richtext-wrapper .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

/* ------------------------------------ *\
	Bases
\* ------------------------------------ */
/**
* COLOUR SCHEME
* Setting a body-class different colour-schemes can be used.
* The default scheme is ParanoidPurle with TangyTurqoise.
* Second: red-purple
* Third: green-purple
*/
:root {
  --primaryColour: #672779;
  --secondaryColour: #6fc3b8;
}

body {
  font-family: "DM Sans", sans-serif;
  color: #363936;
  background-color: #ffffff;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  body {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  body {
    font-size: 16px;
    line-height: 25px;
  }
}

body.red-purple {
  --primaryColour: #dd342b;
  --secondaryColour: #672779;
}

body.green-purple {
  --primaryColour: #2fac66;
  --secondaryColour: #672779;
}

body::before {
  display: none;
  visibility: hidden;
}

@media only screen and (max-width: 767px) {
  body::before {
    content: 'mobile';
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  body::before {
    content: 'tablet';
  }
}

@media only screen and (min-width: 1080px) {
  body::before {
    content: 'desktop';
  }
}

@media only screen and (max-width: 767px) {
  body.has-megamenu-overlay-visible {
    overflow-y: hidden;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  body.has-megamenu-overlay-visible {
    overflow-y: hidden;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

ul,
ol,
dl {
  margin-top: 0;
  margin-bottom: 0;
}

dd {
  margin-left: 0;
}

button {
  appearance: none;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: transparent;
  color: inherit;
}

strong,
b {
  font-weight: 700;
}

/* ------------------------------------ *\
	Vendor
\* ------------------------------------ */
.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

.glide * {
  box-sizing: inherit;
}

.glide__track {
  overflow: hidden;
}

.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  touch-action: pan-Y;
  overflow: hidden;
  padding: 0;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
}

.glide__slides--dragging {
  -ms-user-select: none;
      user-select: none;
}

.glide__slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  white-space: normal;
  -ms-user-select: none;
      user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.glide__slide a {
  user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.glide__arrows {
  -webkit-touch-callout: none;
  -ms-user-select: none;
      user-select: none;
}

.glide__bullets {
  -webkit-touch-callout: none;
  -ms-user-select: none;
      user-select: none;
}

.glide--rtl {
  direction: rtl;
}

/**
 * @description: SCSS Theme for the GlideJS slider
 *
 * Basic styling to be found in _vendor.glide.core.scss
 *
 * _vendor.glide.variables.scss and _vendor.glide.core.scss are copied from the
 * original package. Only file name was changed and the @import of variables in
 * the core SCSS file was commented out.
 */
/**
 * Local variables, only used in this file
 */
/**
 * @description: Outer wrapper of the slider
 */
.glide {
  position: relative;
}

/**
 * @description: Variants of the slider
 */
.glide--swipeable {
  cursor: grab;
}

.glide--dragging {
  cursor: grabbing;
}

/**
 * @description: List of slides, inside the track
 */
.glide__slides {
  margin: 0;
}

/**
 * @description: Arrows left/right
 */
@media only screen and (max-width: 767px) {
  .glide__arrows {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .glide__arrows {
    opacity: 0;
    position: absolute;
    top: calc( 50% - 17px);
    left: 30px;
    right: 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    transition: opacity 200ms ease-in;
  }
}

@media only screen and (min-width: 768px) {
  .glide__arrow {
    height: 35px;
    width: 35px;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    transition: background-color 200ms ease-in;
  }
  .glide__arrow svg {
    display: block;
    margin: 0 auto;
    fill: rgba(255, 255, 255, 0.5);
    transition: fill 200ms ease-in;
  }
  .glide__arrow:hover {
    background-color: rgba(255, 255, 255, 0.5);
  }
  .glide__arrow:hover svg {
    fill: #ffffff;
  }
}

/**
 * @description: Wrapper for Bullet points.
 * Bullet points are clickable to jump to a specific slide
 */
.glide__bullets {
  position: absolute;
  display: flex;
  justify-content: center;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .glide__bullets {
    bottom: 16px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .glide__bullets {
    bottom: 8px;
  }
}

@media only screen and (min-width: 1080px) {
  .glide__bullets {
    bottom: 40px;
  }
}

.glide__bullet {
  appearance: none;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: transparent;
  height: 12px;
  width: 12px;
  padding: 0;
  border: 2px solid #ffffff;
  border-radius: 50%;
  transition: all 200ms ease-in-out;
  cursor: pointer;
}

.glide__bullet:focus {
  outline: none;
}

.glide__bullet + .glide__bullet {
  margin-left: 8px;
}

.glide__bullet--active {
  background-color: #ffffff;
}

/* ------------------------------------ *\
	Atoms
\* ------------------------------------ */
/**
 * @description: Generic rich text styling
 */
.a-richtext a:link,
.a-richtext a:visited,
.a-richtext a:hover,
.a-richtext a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.a-richtext p:first-child {
  margin-top: 0;
}

.a-richtext p:last-child {
  margin-bottom: 0;
}

.a-richtext ul,
.a-richtext ol,
.a-richtext .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

.a-richtext .o-video {
  padding: 0;
}

.a-richtext .o-video + p {
  margin-top: 2em;
}

.a-richtext .video__text,
.a-richtext figcaption.detail__text {
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  .a-richtext .video__text,
  .a-richtext figcaption.detail__text {
    font-size: 14px;
    line-height: 19px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .a-richtext .video__text,
  .a-richtext figcaption.detail__text {
    font-size: 14px;
    line-height: 19px;
  }
}

@media only screen and (min-width: 1080px) {
  .a-richtext .video__text,
  .a-richtext figcaption.detail__text {
    font-size: 14px;
    line-height: 19px;
  }
}

.a-richtext .o-image-detail {
  margin-top: 30px;
  margin-right: 0;
  margin-left: 0;
  padding: 0;
}

.a-richtext .o-image-detail + p {
  margin-top: 2em;
}

.a-richtext .o-image-detail figcaption.detail__text {
  margin-top: 15px;
}

.richtext__image {
  position: relative;
  overflow: hidden;
}

.richtext__image:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.richtext__image img {
  width: 100%;
}

.a-button, .o-download .download__button-wrapper .a-link, .o-hero:not(.hero--box-slider) .btn, .teaser--12-col-teaser-alternating .btn, .teaser--12-col-external-link-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .btn, .teaser--12-col-with-image-and-cta .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--blog .o-teaser .btn, .teaser-collection__cta-row .a-link, #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, .tabs__link {
  display: inline-flex;
  align-items: center;
  padding: 13px;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background-color: var(--primaryColour);
  border-radius: 99px;
}

.button--invers, .button--secondary, .teaser--12-col-teaser-alternating .button--secondary, .teaser--12-col-external-link-teaser .button--secondary, .teaser-collection--12-col-teaser-alternating .o-teaser .button--secondary,
.teaser--12-col-teaser-alternating .btn--secondary,
.teaser--12-col-external-link-teaser .btn--secondary,
.teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary, .teaser-collection--12-col-teaser-50-50 .o-teaser .button--secondary, .teaser-collection--6-col-press-teaser .o-teaser .button--secondary, .teaser-collection--blog .o-teaser .button--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .btn--secondary,
.teaser-collection--blog .o-teaser .btn--secondary,
.btn--secondary, #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  color: var(--primaryColour);
  background-color: #ffffff;
  border: 2px solid var(--primaryColour);
}

.button--ghost, .o-hero:not(.hero--box-slider) .btn {
  color: #ffffff;
  background-color: transparent;
  border: 2px solid #ffffff;
}

.button--invers-blue {
  color: #006cae;
  background-color: #ffffff;
  border: 2px solid #006cae;
}

.button--invers-red {
  color: #dd342b;
  background-color: #ffffff;
  border: 2px solid #dd342b;
}

.button--small {
  padding: 3px 13px 2px;
  font-size: 16px;
  line-height: 17px;
}

.button--medium, #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  padding: 8px 13px 7px;
  font-size: 15px;
  line-height: 20px;
}

.button--fixed {
  min-width: 255px;
}

.button--primary,
.button--secondary,
.teaser--12-col-teaser-alternating .button--secondary,
.teaser--12-col-external-link-teaser .button--secondary,
.teaser-collection--12-col-teaser-alternating .o-teaser .button--secondary,
.teaser--12-col-teaser-alternating .btn--secondary,
.teaser--12-col-external-link-teaser .btn--secondary,
.teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .button--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .button--secondary,
.teaser-collection--blog .o-teaser .button--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .btn--secondary,
.teaser-collection--blog .o-teaser .btn--secondary,
.button--tertiary {
  padding: 5px 10px 5px 30px;
}

.button--primary.button--arrow-right,
.button--secondary.button--arrow-right,
.teaser--12-col-teaser-alternating .button--arrow-right.btn--secondary,
.teaser--12-col-external-link-teaser .button--arrow-right.btn--secondary,
.teaser-collection--12-col-teaser-alternating .o-teaser .button--arrow-right.btn--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .button--arrow-right.button--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .button--arrow-right.button--secondary,
.teaser-collection--blog .o-teaser .button--arrow-right.button--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .button--arrow-right.btn--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .button--arrow-right.btn--secondary,
.teaser-collection--blog .o-teaser .button--arrow-right.btn--secondary,
.button--tertiary.button--arrow-right {
  padding: 10px 30px;
}

.button--primary.button--fixed,
.button--secondary.button--fixed,
.teaser--12-col-teaser-alternating .button--fixed.btn--secondary,
.teaser--12-col-external-link-teaser .button--fixed.btn--secondary,
.teaser-collection--12-col-teaser-alternating .o-teaser .button--fixed.btn--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .button--fixed.button--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .button--fixed.button--secondary,
.teaser-collection--blog .o-teaser .button--fixed.button--secondary,
.teaser-collection--12-col-teaser-50-50 .o-teaser .button--fixed.btn--secondary,
.teaser-collection--6-col-press-teaser .o-teaser .button--fixed.btn--secondary,
.teaser-collection--blog .o-teaser .button--fixed.btn--secondary,
.button--tertiary.button--fixed {
  justify-content: space-between;
}

.button--primary #icon-arrow-right,
.button--secondary #icon-arrow-right,
.teaser--12-col-teaser-alternating .btn--secondary #icon-arrow-right,
.teaser--12-col-external-link-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--6-col-press-teaser .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--blog .o-teaser .btn--secondary #icon-arrow-right,
.button--tertiary #icon-arrow-right {
  padding-left: 10px;
}

.button--primary #icon-arrow-right-circle,
.button--secondary #icon-arrow-right-circle,
.teaser--12-col-teaser-alternating .btn--secondary #icon-arrow-right-circle,
.teaser--12-col-external-link-teaser .btn--secondary #icon-arrow-right-circle,
.teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary #icon-arrow-right-circle,
.teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary #icon-arrow-right-circle,
.teaser-collection--6-col-press-teaser .o-teaser .btn--secondary #icon-arrow-right-circle,
.teaser-collection--blog .o-teaser .btn--secondary #icon-arrow-right-circle,
.button--tertiary #icon-arrow-right-circle {
  padding-left: 30px;
  fill: #ffffff;
  height: 40px;
  width: 40px;
}


.button--secondary #icon-arrow-right,
.teaser--12-col-teaser-alternating .btn--secondary #icon-arrow-right,
.teaser--12-col-external-link-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--6-col-press-teaser .o-teaser .btn--secondary #icon-arrow-right,
.teaser-collection--blog .o-teaser .btn--secondary #icon-arrow-right,
.btn--secondary #icon-arrow-right {
  fill: var(--primaryColour);
}

.button--secondary #icon-button-arrow-right, .teaser--12-col-teaser-alternating .btn--secondary #icon-button-arrow-right, .teaser--12-col-external-link-teaser .btn--secondary #icon-button-arrow-right, .teaser-collection--12-col-teaser-alternating .o-teaser .btn--secondary #icon-button-arrow-right, .teaser-collection--12-col-teaser-50-50 .o-teaser .btn--secondary #icon-button-arrow-right, .teaser-collection--6-col-press-teaser .o-teaser .btn--secondary #icon-button-arrow-right, .teaser-collection--blog .o-teaser .btn--secondary #icon-button-arrow-right,
.btn--secondary #icon-button-arrow-right {
  padding-left: 30px;
  fill: var(--primaryColour);
  width: 36px;
  height: 36px;
}

.button--tertiary {
  color: #666666;
  background-color: #efefef;
  border: 2px solid #666666;
}

.button--tertiary #icon-arrow-right {
  fill: #666666;
}

.button--tertiary #icon-button-arrow-right {
  padding-left: 30px;
  fill: #666666;
  height: 36px;
  width: 36px;
}

.a-icon-button {
  display: block;
  padding: 0;
  cursor: pointer;
}

.a-icon-button svg {
  display: block;
}

.is-platinum #icon-ribbon {
  fill: #a0b2c6;
}

.is-gold #icon-ribbon {
  fill: #d4af37;
}

.is-silver #icon-ribbon {
  fill: #bec2cb;
}

.is-registered #icon-ribbon {
  fill: #41aa6a;
}

.is-certified #icon-ribbon {
  fill: #672779;
}

.a-image.cm-media--loading {
  background-color: #f1f2f4;
}

.a-list {
  text-align: center;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, pxToRem(32px));
  gap: pxToRem(14px);
}

.list--social-icon {
  display: flex;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.list--social-icon .list__item:not(:last-child) {
  margin-right: 20px;
}

.list--social-icon .list__item svg {
  fill: var(--primaryColour);
  height: 30px;
  width: 30px;
}

.a-logo-coremedia {
  display: block;
  width: auto;
  height: 100%;
  fill: #ffffff;
}

.a-logo-coremedia--square {
  display: none;
}

/**
 * @description: menu item level 0
 * @states: .is-active and :hover
 */
.a-megamenu__item {
  color: #ffffff;
  background-color: #363936;
}

@media only screen and (max-width: 1079px) {
  .a-megamenu__item {
    box-sizing: border-box;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
  }
}

@media only screen and (max-width: 1079px) and (max-width: 767px) {
  .a-megamenu__item {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 768px) and (max-width: 1079px) {
  .a-megamenu__item {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 1080px) {
  .a-megamenu__item {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .a-megamenu__item {
    padding-top: 13px;
    padding-bottom: 13px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .a-megamenu__item {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

@media only screen and (min-width: 1080px) {
  .a-megamenu__item {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    margin: 10px 0;
    padding: 8px 0 0;
  }
  .a-megamenu__item::after {
    content: '⌄';
    display: inline-block;
    margin-top: 2px;
    margin-left: 9px;
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
  }
}

/**
 * @description: Label/Headline of menu item in level 0
 * @states: parent.active and parent:hover
 */
.a-megamenu__item__headline {
  display: block;
  line-height: 1;
}

@media only screen and (max-width: 767px) {
  .a-megamenu__item__headline {
    font-size: 18px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .a-megamenu__item__headline {
    font-size: 18px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 1080px) {
  .a-megamenu__item__headline {
    font-size: 16px;
    font-weight: 400;
    padding: 4px 0 7px;
    border-bottom: 4px solid transparent;
    transition: border-bottom-color 600ms ease-out;
  }
}

@media only screen and (min-width: 1080px) {
  .a-megamenu__item:hover .a-megamenu__item__headline {
    border-bottom: 4px solid #ffffff;
  }
}

@media only screen and (max-width: 767px) {
  .a-megamenu__item.is-active .a-megamenu__item__headline {
    font-size: 22px;
  }
}

@media only screen and (min-width: 1080px) {
  .a-megamenu__item.is-active .a-megamenu__item__headline {
    border-bottom: 4px solid #ffffff;
  }
}

/**
 * @description: Caret icon in megamenu in level 0
 * @states: parent.active
 */
@media only screen and (max-width: 767px) {
  .a-megamenu__item__after {
    fill: #ffffff;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .a-megamenu__item__after {
    transform: rotate(90deg);
    fill: #ffffff;
  }
}

@media only screen and (min-width: 1080px) {
  .a-megamenu__item__after {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .is-active .a-megamenu__item__after {
    transform: rotate(-90deg) translateY(3px);
  }
}

/**
 * @description: Overlay appearing when menu is open
 * @states: BODY.has-megamenu-overlay-visible
 */
.a-megamenu__overlay {
  display: none;
}

@media only screen and (max-width: 1079px) {
  .has-megamenu-overlay-visible .a-megamenu__overlay {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    height: 100%;
    z-index: 999;
  }
}

@media only screen and (max-width: 767px) {
  .has-megamenu-overlay-visible .a-megamenu__overlay {
    background-color: #363936;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .has-megamenu-overlay-visible .a-megamenu__overlay {
    background-color: rgba(54, 57, 54, 0.5);
  }
}

.a-video {
  width: 100%;
  height: auto;
}

.a-video__wrapper {
  position: relative;
  height: 0;
  padding-bottom: calc( var( --aspect-ratio, 0.5625 ) * 100%);
}

.a-video__wrapper .a-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ------------------------------------ *\
	Molecules
\* ------------------------------------ */
/**
 * @description: Wrapper for a list of filters/tags
 */
@media only screen and (max-width: 767px) {
  .m-filter-box + .m-filter-box {
    margin-top: 45px;
  }
}

.filter-box__label {
  font-size: 13px;
  line-height: 17px;
  color: #363936;
}

.filter-box__filterlist {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.filter-box__filter {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  margin-top: 8px;
  margin-right: 30px;
}

.filter-box__filter svg {
  width: 17px;
  height: 24px;
}

.filter-box__filter svg + .m-tag-button {
  margin-left: 7px;
}

/**
 * @description: Search component in the header
 */
@media only screen and (max-width: 1079px) {
  .m-header__search {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (max-width: 1079px) and (max-width: 767px) {
  .m-header__search {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 768px) and (max-width: 1079px) {
  .m-header__search {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 1080px) {
  .m-header__search {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 1080px) {
  .m-header__search {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
}

@media only screen and (max-width: 1079px) {
  .m-header__search svg {
    fill: #363936;
  }
}

/**
 * @description: FORM element with input field of search in the header
 */
.header__search__form {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

@media only screen and (max-width: 1079px) {
  .header__search__form {
    padding: 7px 12px 7px 15px;
    box-sizing: border-box;
    background-color: #ffffff;
    border-radius: 8px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__search__form {
    display: none;
    padding-left: 13px;
    padding-right: 13px;
    border-radius: 99px;
    border: 2px solid var(--primaryColour);
  }
}

@media only screen and (max-width: 1079px) {
  .header__search__form .icon-button--search {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .header__search__form .icon-button--search svg {
    fill: #363936;
  }
}

@media only screen and (max-width: 1079px) {
  .header__search__form .icon--close {
    display: none;
  }
}

/**
 * @description: INPUT field with search term
 */
.header__search__field {
  display: block;
  width: 100%;
  line-height: 1;
  border: 0;
}

.header__search__field:-ms-input-placeholder {
  font-size: 13px;
  line-height: 17px;
}

.header__search__field::placeholder {
  font-size: 13px;
  line-height: 17px;
}

.header__search__field:focus {
  outline: none;
}

@media only screen and (max-width: 767px) {
  .header__search__field {
    font-size: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__search__field {
    font-size: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__search__field {
    padding-top: 2px;
    padding-bottom: 2px;
    font-size: 16px;
  }
}

.header__search__action--search {
  margin-top: 3px;
}

@media only screen and (min-width: 1080px) {
  .header__search__action--search {
    cursor: pointer;
  }
}

.is-active .header__search__action--search {
  display: none;
}

.header__search__action--close {
  display: none;
  cursor: pointer;
}

.is-active .header__search__action--close {
  display: block;
}

.header__search__autosuggestions {
  z-index: 1000;
  margin-top: 6px;
  margin-left: -15px;
  padding-left: 15px;
  border: 2px solid var(--primaryColour);
  background-color: #ffffff;
  border-radius: 19px;
}

.header__search__autosuggestions .selected .label {
  color: var(--primaryColour);
  font-weight: 700;
}

.header__search__autosuggestions .selected .count {
  color: var(--primaryColour);
}

.header__search__autosuggestions > div {
  cursor: pointer;
}

/**
 * @description: Teaser that can be placed inside the meta header, visible
 * in all viewports
 */
@media only screen and (max-width: 767px) {
  .m-header__meta__teaser {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .m-header__meta__teaser {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
  }
}

@media only screen and (max-width: 767px) {
  .m-header__meta__teaser .teaser__headline {
    line-height: 20px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 768px) {
  .m-header__meta__teaser .teaser__headline {
    order: 2;
    margin-right: 30px;
    margin-left: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .m-header__meta__teaser .teaser__actions {
    margin-top: 10px;
    -ms-grid-row-align: center;
        align-self: center;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
}

@media only screen and (min-width: 768px) {
  .m-header__meta__teaser .teaser__actions {
    order: 1;
  }
}

/**
 * @description: Megamenu header. Contains logo and actions buttons like Menu, Exit and Back.
 */
.m-megamenu__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 50px;
  color: #ffffff;
  background-color: #363936;
  /**
	 * Icons, initial
	 */
}

@media only screen and (max-width: 1079px) {
  .m-megamenu__header {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (max-width: 1079px) and (max-width: 767px) {
  .m-megamenu__header {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 768px) and (max-width: 1079px) {
  .m-megamenu__header {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 1079px) and (min-width: 1080px) {
  .m-megamenu__header {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.m-megamenu__header svg {
  fill: #ffffff;
}

.m-megamenu__header .a-icon-button {
  display: flex;
  align-items: center;
}

.m-megamenu__header .icon-button__label {
  margin-right: 8px;
  margin-left: 8px;
}

@media only screen and (max-width: 1079px) {
  .m-megamenu__header .icon-button--menu {
    flex-direction: row;
  }
}

@media only screen and (min-width: 1080px) {
  .m-megamenu__header .icon-button--menu {
    display: none;
  }
}

.m-megamenu__header .icon-button--close {
  display: none;
}

@media only screen and (max-width: 767px) {
  .m-megamenu__header .icon-button--close {
    flex-direction: row-reverse;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .m-megamenu__header .icon-button--close {
    flex-direction: row;
  }
}

.m-megamenu__header .icon-button--arrow-left {
  display: none;
}

/**
 * @description: wrapper for all menuitems (level-0) and search/language chooser
 */
.m-megamenu__content {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
  background-color: #363936;
}

@media only screen and (min-width: 1080px) {
  .m-megamenu__content {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    margin-left: 30px;
  }
  .m-megamenu__content .m-header__search,
  .m-megamenu__content .m-language-chooser {
    display: none;
  }
}

/**
 * @description: content header and content footer are both initially empty
 * and are filled with search & language chooser if using mobile & tablet
 * viewport. JS is used to move the DOM components from the meta header into
 * these two slots.
 */
@media only screen and (max-width: 767px) {
  .megamenu__content__header {
    margin-top: 10px;
    margin-bottom: 8px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .megamenu__content__header {
    margin-top: 5px;
    margin-bottom: 8px;
  }
}

@media only screen and (max-width: 767px) {
  .megamenu__content__footer {
    margin-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .megamenu__content__footer {
    margin-top: 15px;
    margin-bottom: 5px;
  }
}

/**
 * @description: Collection of megamenu teasers = all level-1 items
 */
@media only screen and (max-width: 1079px) {
  .megamenu__teaser__collection {
    width: 100%;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__collection {
    box-sizing: border-box;
    width: 66.6666666667%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/**
 * @description: Teaser component in Megamenu = all level-1 items
 * @variants: --quicklinks, contains linklist
 */
.m-megamenu__teaser {
  color: #ffffff;
  text-decoration: none;
}

@media only screen and (min-width: 1080px) {
  .m-megamenu__teaser {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
    padding: 35px 22px;
    height: 220px;
    overflow: hidden;
  }
}

.m-megamenu__teaser--quicklinks {
  color: #ffffff;
  background-color: #363936;
}

@media only screen and (max-width: 1079px) {
  .m-megamenu__teaser--quicklinks {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .m-megamenu__teaser--quicklinks {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 33.3333333333% - 30px);
    height: auto;
  }
}

@media only screen and (min-width: 1080px) {
  .m-megamenu__teaser--quicklinks .megamenu__node {
    color: #ffffff;
    text-decoration: none;
  }
}

/**
 * @description: Wrapper in megamenu-teaser for icon and headline
 */
@media only screen and (max-width: 767px) {
  .megamenu__teaser__header {
    width: 100%;
    cursor: pointer;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .megamenu__teaser__header {
    width: 100%;
    cursor: pointer;
    margin-left: 10px;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__header {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-end;
  }
}

@media only screen and (max-width: 1079px) {
  .megamenu__teaser__header .a-image {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__header .a-image {
    display: block;
    max-width: 50px;
    max-height: 50px;
    width: 100%;
  }
}

/**
 * @description: Headline in megamenu-teaser
 */
@media only screen and (max-width: 1079px) {
  .megamenu__teaser__headline {
    display: block;
    padding: 13px 0;
    font-size: 16px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__headline {
    margin: 0 0 -6px 0px;
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
  }
}

/**
 * @description: Text/Copy in megamenu-teaser
 */
@media only screen and (max-width: 1079px) {
  .megamenu__teaser__text {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__text {
    margin-top: 7px;
    font-size: 12px;
    line-height: 16px;
  }
  .megamenu__teaser__text a:link,
  .megamenu__teaser__text a:visited,
  .megamenu__teaser__text a:hover,
  .megamenu__teaser__text a:active {
    color: var(--primaryColour);
    text-decoration: none;
  }
  .megamenu__teaser__text p:first-child {
    margin-top: 0;
  }
  .megamenu__teaser__text p:last-child {
    margin-bottom: 0;
  }
  .megamenu__teaser__text ul,
  .megamenu__teaser__text ol,
  .megamenu__teaser__text .rte--list {
    padding-left: 20px;
    list-style-position: outside;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__text ul {
    padding: 0;
    margin: 0;
    list-style: none;
    text-indent: 0;
    padding-left: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__teaser__text li {
    margin-top: 13px;
  }
}

.m-megamenu__content .megamenu__teaser__text a:link,
.m-megamenu__content .megamenu__teaser__text a:visited,
.m-megamenu__content .megamenu__teaser__text a:hover,
.m-megamenu__content .megamenu__teaser__text a:active {
  color: #ffffff;
}

.m-image__box {
  position: relative;
  overflow: hidden;
}

.m-image__box:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.m-image__box .image--responsive {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  right: 0;
  width: 100%;
}

/**
 * configuration
 */
/**
 * @description: Language chooser component in the header
 * @states: is-open
 */
.m-language-chooser {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  min-height: 40px;
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  .m-language-chooser {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 768px) and (max-width: 1079px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 1080px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .m-language-chooser {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) and (max-width: 767px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) and (min-width: 768px) and (max-width: 1079px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) and (min-width: 1080px) {
  .m-language-chooser {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 1080px) {
  .m-language-chooser {
    height: 40px;
    background-color: #ffffff;
  }
}

.m-language-chooser.is-open[data-number-of-languages='1'] .language-chooser__languages {
  height: 30px;
}

.m-language-chooser.is-open[data-number-of-languages='2'] .language-chooser__languages {
  height: 60px;
}

.m-language-chooser.is-open[data-number-of-languages='3'] .language-chooser__languages {
  height: 90px;
}

.m-language-chooser.is-open[data-number-of-languages='4'] .language-chooser__languages {
  height: 120px;
}

.m-language-chooser.is-open[data-number-of-languages='5'] .language-chooser__languages {
  height: 150px;
}

.m-language-chooser.is-open[data-number-of-languages='6'] .language-chooser__languages {
  height: 180px;
}

.m-language-chooser.is-open[data-number-of-languages='7'] .language-chooser__languages {
  height: 210px;
}

/**
 * @description: Icon for language chooser, visible only in some viewports
 */
.language-chooser__icon {
  display: block;
  margin-bottom: 10px;
}

@media only screen and (max-width: 1079px) {
  .language-chooser__icon {
    fill: #ffffff;
  }
}

@media only screen and (min-width: 1080px) {
  .language-chooser__icon {
    fill: #363936;
  }
}

.language-chooser__icon > * {
  display: block;
}

/**
 * @description: Wrapper for all languages, selected or not
 */
.language-chooser__languages {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 30px;
  margin-bottom: 10px;
  transition: height ease-in-out 200ms;
  overflow-y: hidden;
}

.language-chooser__items {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
}

/**
 * @description: Link to the website in the specified language
 * @states: :hover
 */
.language-chooser__link,
.language-chooser__selected-language {
  display: block;
  padding: 7px 10px 6px;
  font-size: 16px;
  line-height: 17px;
  text-decoration: none;
}

@media only screen and (max-width: 1079px) {
  .language-chooser__link,
  .language-chooser__selected-language {
    font-weight: 400;
    color: #ffffff;
    background-color: #363936;
  }
}

@media only screen and (min-width: 1080px) {
  .language-chooser__link,
  .language-chooser__selected-language {
    font-weight: 500;
    color: #363936;
    background-color: #ffffff;
  }
}

@media (any-pointer: coarse) {
  .language-chooser__link:hover,
  .language-chooser__selected-language:hover {
    text-decoration: underline;
  }
}

.m-pagination {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

@media only screen and (max-width: 1079px) {
  .m-pagination {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .m-pagination {
    margin-top: 60px;
  }
}

.pagination__items {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 auto;
}

.pagination__item + .pagination__item {
  margin-left: 22px;
}

.pagination__item .a-link {
  display: block;
  min-width: 18px;
  padding: 0 3px;
  box-sizing: content-box;
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  color: var(--primaryColour);
  background-color: #ffffff;
  border-radius: 12px;
  white-space: nowrap;
  transition: background-color 200ms ease-in, color 200ms ease-in;
}

.pagination__item .a-link:hover, .pagination__item .a-link.is-active {
  color: #ffffff;
  background-color: var(--primaryColour);
}

.tag-button__ui {
  display: none;
}

.tag-button__label {
  /* stylelint-disable */
  -webkit-touch-callout: none;
  -ms-user-select: none;
  user-select: none;
  /* stylelint-enable */
  padding: 0 5px;
  font-size: 13px;
  line-height: 17px;
  color: var(--primaryColour);
  white-space: nowrap;
  border-radius: 10px;
  border: 2px solid var(--primaryColour);
  background-color: #ffffff;
  cursor: pointer;
}

:checked ~ .tag-button__label {
  color: #ffffff;
  border-radius: 10px;
  background-color: var(--primaryColour);
}

.m-tag-list {
  vertical-align: middle;
}

.m-tag-list svg {
  position: relative;
  top: 5px;
  width: 20px;
  height: 20px;
}

.m-tag-list #icon-tag {
  fill: var(--primaryColour);
}

.m-tag-list .a-link {
  color: var(--primaryColour);
}

.m-tag-list .a-link:not(last-child) {
  padding-right: 10px;
}

/* ------------------------------------ *\
	Organisms
\* ------------------------------------ */
/**
 * @description: Teaser Download & Factsheet
 */
.o-download .a-image {
  display: block;
  width: 100%;
}

.o-download .download__title {
  font-weight: 700;
}

.o-download .download__text {
  font-weight: 400;
}

.o-download .download__text a:link,
.o-download .download__text a:visited,
.o-download .download__text a:hover,
.o-download .download__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.o-download .download__text p:first-child {
  margin-top: 0;
}

.o-download .download__text p:last-child {
  margin-bottom: 0;
}

.o-download .download__text ul,
.o-download .download__text ol,
.o-download .download__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

.o-download .download__text > :first-child {
  margin-top: 0;
}

.o-download .download__text > :last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .o-download .download__file-size {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-download .download__file-size {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-download .download__file-size {
    font-size: 16px;
    line-height: 25px;
  }
}

.o-download .download__button-wrapper {
  text-align: center;
}

.o-download .download__button-wrapper .a-link {
  padding-right: 60px;
  padding-left: 60px;
}

/**
 * @description: Download/Factsheet 4-col variant
 * For 1x1 and 16x9 images
 */
.download-4-col-download-teaser-1x1 .download__content, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__content, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

@media only screen and (max-width: 1079px) {
  .download-4-col-download-teaser-1x1 .download__content, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__content, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__content {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .download-4-col-download-teaser-1x1 .download__content, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__content, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__content {
    position: relative;
    padding: 15px 30px 25px;
  }
  .download-4-col-download-teaser-1x1 .download__content::after, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__content::after, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__content::after {
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    border-right: 4px solid var(--secondaryColour);
    height: 50%;
  }
}

.download-4-col-download-teaser-1x1 .download__title, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__title, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__title {
  overflow: hidden;
  order: 1;
}

.download-4-col-download-teaser-1x1 .download__text, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__text, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__text {
  order: 2;
  flex: 1 1 0;
  margin-top: 10px;
}

@media only screen and (max-width: 1079px) {
  .download-4-col-download-teaser-1x1 .download__file-size, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__file-size, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__file-size {
    margin-top: 10px;
    order: 3;
    text-align: left;
  }
}

@media only screen and (min-width: 1080px) {
  .download-4-col-download-teaser-1x1 .download__file-size, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__file-size, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__file-size {
    margin-top: 10px;
    order: 4;
    text-align: center;
  }
}

@media only screen and (max-width: 1079px) {
  .download-4-col-download-teaser-1x1 .download__button-wrapper, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__button-wrapper, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__button-wrapper {
    order: 4;
  }
}

@media only screen and (min-width: 1080px) {
  .download-4-col-download-teaser-1x1 .download__button-wrapper, .teaser-collection--4-col-download-teaser-1x1 .o-download .download__button-wrapper, .teaser-collection--4-col-download-teaser-16x9 .o-download .download__button-wrapper {
    margin-top: 20px;
    -ms-grid-row-align: center;
        align-self: center;
    order: 3;
  }
}

@media only screen and (max-width: 767px) {
  .download-4-col-download-teaser-1x1 .a-link, .teaser-collection--4-col-download-teaser-1x1 .o-download .a-link, .teaser-collection--4-col-download-teaser-16x9 .o-download .a-link {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .download-4-col-download-teaser-1x1 .a-link, .teaser-collection--4-col-download-teaser-1x1 .o-download .a-link, .teaser-collection--4-col-download-teaser-16x9 .o-download .a-link {
    margin-top: 15px;
  }
}

.download--12-col-download-teaser {
  box-sizing: border-box;
  width: 100%;
  margin-top: 50px;
  /* stylelint-disable */
  /* stylelint-enable */
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) {
  .download--12-col-download-teaser {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 768px) {
  .download--12-col-download-teaser > div {
    width: calc( 50% - 15px);
  }
}

.download--12-col-download-teaser .download__content {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  padding-right: 20px;
}

.download--12-col-download-teaser .download__content::after {
  position: absolute;
  content: '';
  bottom: 0;
  right: 0;
  border-right: 4px solid var(--secondaryColour);
  height: 50%;
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser .download__content {
    flex-direction: column;
    padding: 15px 15px 15px 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser .download__content {
    flex-direction: column;
    padding: 15px 15px 10px 0;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser .download__content {
    justify-content: flex-end;
    align-items: flex-start;
    padding: 15px 30px 5px 0;
  }
}

@media only screen and (max-width: 1079px) {
  .download--12-col-download-teaser .download__title {
    order: 1;
  }
  .download--12-col-download-teaser .download__text {
    order: 2;
  }
  .download--12-col-download-teaser .download__file-size {
    order: 4;
  }
  .download--12-col-download-teaser .download__button-wrapper {
    order: 3;
  }
}

.download--12-col-download-teaser .download__title {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser .download__title {
    overflow: hidden;
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser .download__title {
    font-size: 20px;
    line-height: 23px;
    flex-grow: 1;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser .download__title {
    font-size: 40px;
    line-height: 46px;
  }
}

.download--12-col-download-teaser .download__text {
  width: 100%;
  font-size: 12px;
  line-height: 16px;
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser .download__text {
    margin-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser .download__text {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser .download__text {
    margin-top: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser .download__file-size {
    margin-top: 13px;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser .download__file-size {
    margin-top: 5px;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser .download__file-size {
    margin-top: 23px;
  }
}

@media only screen and (max-width: 767px) {
  .download--12-col-download-teaser .download__button-wrapper {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .download--12-col-download-teaser .download__button-wrapper {
    margin-top: 10px;
    text-align: left;
  }
}

@media only screen and (min-width: 1080px) {
  .download--12-col-download-teaser .download__button-wrapper {
    margin-top: 10px;
    margin-left: 20px;
  }
}

.o-footer {
  margin-top: 60px;
  color: #ffffff;
  background-color: #363936;
}

.o-footer .a-link,
.o-footer .a-link:visited {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .o-footer .a-link,
  .o-footer .a-link:visited {
    font-size: 14px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-footer .a-link,
  .o-footer .a-link:visited {
    font-size: 10px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 1080px) {
  .o-footer .a-link,
  .o-footer .a-link:visited {
    font-size: 10px;
    font-weight: 700;
  }
}

.o-footer .o-teaser-collection.teaser-collection--footer {
  box-sizing: border-box;
  width: 100%;
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    padding-top: 20px;
    padding-bottom: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    padding-top: 8px;
    padding-bottom: 15px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-footer .o-teaser-collection.teaser-collection--footer {
    padding-top: 8px;
    padding-bottom: 20px;
  }
}

.o-footer .teaser-collection__detailtext {
  line-height: 1.333;
  font-weight: 400;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .o-footer .teaser-collection__detailtext {
    font-size: 12px;
  }
}

@media only screen and (min-width: 768px) {
  .o-footer .teaser-collection__detailtext {
    margin-top: 0;
    font-size: 10px;
  }
}

.o-footer .teaser-collection__detailtext a,
.o-footer .teaser-collection__detailtext a:link,
.o-footer .teaser-collection__detailtext a:visited {
  color: #ffffff;
  font-weight: 700;
}

.o-footer .teaser-collection__detailtext a:hover,
.o-footer .teaser-collection__detailtext a:active {
  text-decoration: underline;
}

.o-footer .teaser-collection__teaser-wrapper {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .o-footer .teaser-collection__teaser-wrapper {
    margin-top: 45px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-footer .teaser-collection__teaser-wrapper {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-footer .teaser-collection__teaser-wrapper {
    margin-top: 35px;
  }
}

.o-footer .teaser-collection__teaser-wrapper .a-link {
  text-decoration: none;
}

.o-footer .teaser-collection__teaser-wrapper .a-link:hover {
  text-decoration: underline;
}

.o-footer .teaser-collection__teaser-wrapper .a-link + .a-link::before {
  content: '|';
  margin-left: 0.4em;
  margin-right: 0.4em;
  font-weight: 400;
}

.o-footer .teaser-collection__footer {
  line-height: 1.333;
  font-weight: 400;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .o-footer .teaser-collection__footer {
    margin-top: 40px;
    font-size: 12px;
  }
}

@media only screen and (min-width: 768px) {
  .o-footer .teaser-collection__footer {
    margin-top: 15px;
    font-size: 8px;
  }
}

.teaser-collection--contact-invites + .o-footer,
.teaser-collection--contact-invites + .a-megamenu__overlay + .o-footer,
.cm-placement--footerNavigation + .cm-placement--footer > .o-footer,
.type-area + .a-megamenu__overlay + .o-footer {
  margin-top: 0;
}

.o-form {
  box-sizing: border-box;
  width: 100%;
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  .o-form {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-form {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-form {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

/**
 * @description: reduced styling possibilities due to external code
 * (from Hubspot)
 */
.form-hubspot .hs-form-iframe {
  /* stylelint-disable */
  width: 100% !important;
  /* stylelint-enable */
}

/**
 * START Copy-Paste Area in --> CSS <-- for JS module form-hubspot
 */
input[type='date'].hs-input,
input[type='email'].hs-input,
input[type='number'].hs-input,
input[type='password'].hs-input,
input[type='tel'].hs-input,
input[type='text'].hs-input,
input[type='url'].hs-input,
textarea.hs-input {
  border: 2px solid var(--primaryColour);
  border-radius: 10px;
}

.hs-button.primary.large {
  display: inline-block;
  padding: 13px;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background-color: var(--primaryColour);
  border: none;
  border-radius: 99px;
}

/**
 * END Copy-Paste Area
 */
.o-header {
  position: relative;
  z-index: 1000;
  width: 100%;
}

@media only screen and (min-width: 1080px) {
  .o-header {
    position: sticky;
    top: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .o-header .a-logo-coremedia {
    max-width: 197px;
  }
}

/**
 * @description: The "white bar" above the megamenu
 */
.o-header__meta {
  color: #363936;
  background-color: #ffffff;
}

.header__meta__typearea {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .header__meta__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .header__meta__typearea {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__typearea {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
    min-height: 50px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__typearea {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    height: 50px;
  }
}

/**
 * @description: Slots for some content/modules in the Metaheader (teaser, search, language chooser)
 * @variants: --teaser, --actions
 */
@media only screen and (min-width: 1080px) {
  .header__meta__placement {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
  }
}

@media only screen and (max-width: 767px) {
  .header__meta__placement--teaser {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

@media only screen and (max-width: 767px) {
  .header__meta__placement--actions {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__placement--actions {
    justify-content: flex-end;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__placement--actions {
    height: 50px;
    align-items: flex-start;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__placement--actions .m-header__search {
    margin-left: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__placement--actions .m-header__search {
    height: calc( 100% - 20px);
    margin-top: 10px;
    margin-left: 30px;
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__placement--actions .m-language-chooser {
    margin-left: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__placement--actions .m-language-chooser {
    margin-left: 15px;
    padding-left: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .header__meta__placement--actions > .a-button, .o-download .download__button-wrapper .header__meta__placement--actions > .a-link, .o-hero:not(.hero--box-slider) .header__meta__placement--actions > .btn, .teaser--12-col-teaser-alternating .header__meta__placement--actions > .btn, .teaser--12-col-external-link-teaser .header__meta__placement--actions > .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .header__meta__placement--actions > .btn, .teaser--12-col-with-image-and-cta .header__meta__placement--actions > .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .header__meta__placement--actions > .btn, .teaser-collection--6-col-press-teaser .o-teaser .header__meta__placement--actions > .btn, .teaser-collection--blog .o-teaser .header__meta__placement--actions > .btn, .teaser-collection__cta-row .header__meta__placement--actions > .a-link, #CybotCookiebotDialogBodyLevelWrapper .header__meta__placement--actions > #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .header__meta__placement--actions > a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
    margin-left: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .header__meta__placement--actions > .a-button, .o-download .download__button-wrapper .header__meta__placement--actions > .a-link, .o-hero:not(.hero--box-slider) .header__meta__placement--actions > .btn, .teaser--12-col-teaser-alternating .header__meta__placement--actions > .btn, .teaser--12-col-external-link-teaser .header__meta__placement--actions > .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .header__meta__placement--actions > .btn, .teaser--12-col-with-image-and-cta .header__meta__placement--actions > .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .header__meta__placement--actions > .btn, .teaser-collection--6-col-press-teaser .o-teaser .header__meta__placement--actions > .btn, .teaser-collection--blog .o-teaser .header__meta__placement--actions > .btn, .teaser-collection__cta-row .header__meta__placement--actions > .a-link, #CybotCookiebotDialogBodyLevelWrapper .header__meta__placement--actions > #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .header__meta__placement--actions > a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
    margin-top: 12px;
    margin-left: 15px;
  }
}

/**
 * @description: The "white bar" in the state of opened search bar
 * Exists only in desktop view!
 */
@media only screen and (min-width: 1080px) {
  .o-header__meta.has-search-opened .header__meta__placement--teaser {
    display: none;
  }
  .o-header__meta.has-search-opened .header__meta__placement--actions {
    justify-content: flex-end;
    width: 100%;
  }
  .o-header__meta.has-search-opened .m-header__search {
    width: 100%;
    max-width: 500px;
  }
  .o-header__meta.has-search-opened .header__search__form {
    display: flex;
  }
  .o-header__meta.has-search-opened .icon-button--search {
    display: none;
  }
}

/**
 * @description: The wrapper for the megamenu
 */
.o-header__flyout {
  color: #ffffff;
  background-color: #363936;
}

@media only screen and (max-width: 1079px) {
  .o-header__flyout .a-icon-bkacheutton {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    color: #ffffff;
    background-color: #363936;
    cursor: pointer;
  }
  .o-header__flyout .a-icon-bkacheutton svg {
    height: 27px;
    width: 27px;
    fill: #ffffff;
  }
  .o-header__flyout .a-icon-bkacheutton .icon-button__label {
    margin-left: 8px;
    font-size: 14px;
    line-height: 1;
  }
  .o-header__flyout .icon-button--search {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .o-header__flyout .a-icon-button {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .header__flyout__typearea {
    box-sizing: border-box;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    height: 70px;
  }
}

@media only screen and (min-width: 1080px) and (max-width: 767px) {
  .header__flyout__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 1080px) and (min-width: 768px) and (max-width: 1079px) {
  .header__flyout__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) and (min-width: 1080px) {
  .header__flyout__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

/**
 * @description: Megamenu component
 * @states: .is-open, .is-lvl-0, .is-lvl-1
 */
.o-header__megamenu {
  background-color: #363936;
  /**
	 * States Megamenu Header, non-initial
	 */
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu {
    position: relative;
    max-height: 100vh;
    overflow-y: auto;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-header__megamenu {
    position: relative;
    max-height: 100vh;
    overflow-y: auto;
  }
}

@media only screen and (min-width: 1080px) {
  .o-header__megamenu {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
}

.o-header__megamenu .link--home {
  display: block;
}

@media only screen and (max-width: 1079px) {
  .o-header__megamenu .link--home {
    height: 29px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-header__megamenu .link--home {
    height: 33px;
  }
}

@media only screen and (max-width: 1079px) {
  .o-header__megamenu.is-open {
    position: fixed;
    top: 0;
    width: 100%;
  }
}

.o-header__megamenu.is-open .icon-button--menu {
  display: none;
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-open .icon-button--close {
    display: flex;
    flex-direction: row-reverse;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-header__megamenu.is-open .icon-button--close {
    display: flex;
  }
}

@media only screen and (max-width: 1079px) {
  .o-header__megamenu.is-open .m-megamenu__content {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-open .link--home {
    display: none;
  }
}

@media only screen and (max-width: 1079px) {
  .o-header__megamenu:not(.is-open) .m-megamenu__content {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-lvl-0 .m-megamenu__header {
    justify-content: flex-end;
  }
}

@media only screen and (max-width: 1079px) {
  .o-header__megamenu.is-lvl-0 .icon-button--arrow-left {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-lvl-1 .m-megamenu__header {
    flex-direction: row;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-header__megamenu.is-lvl-1 .m-megamenu__header {
    flex-direction: row;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-lvl-1 .icon-button--arrow-left {
    display: flex;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-lvl-1 .a-megamenu__item:not(.is-active),
  .o-header__megamenu.is-lvl-1 .a-megamenu__item__after {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .o-header__megamenu.is-lvl-1 .m-language-chooser {
    display: none;
  }
}

/**
 * @description: Megamenu branch (generic, as lvl-0 and as lvl-1)
 */
@media only screen and (min-width: 1080px) {
  .megamenu__branch {
    display: block;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__branch--lvl-0 + .megamenu__branch--lvl-0 {
    margin-left: 20px;
  }
}

.megamenu__branch--lvl-1 {
  display: none;
  background-color: #363936;
}

@media only screen and (min-width: 1080px) {
  .megamenu__branch--lvl-1 {
    position: absolute;
    left: 0;
    right: 0;
  }
}

.is-active ~ .megamenu__branch--lvl-1 {
  display: block;
}

/**
 * @description: lvl-1 content
 */
.megamenu__branch__content {
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

@media only screen and (max-width: 767px) {
  .megamenu__branch__content {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .megamenu__branch__content {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .megamenu__branch__content {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.o-hero:not(.hero--box-slider) {
  background-color: var(--primaryColour);
  color: #ffffff;
}

@media only screen and (min-width: 768px) {
  .o-hero:not(.hero--box-slider):hover .glide__arrows {
    opacity: 1;
  }
  .o-hero:not(.hero--box-slider):hover .glide__arrow {
    display: block;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .hero__wrapper {
    padding: 0;
    max-width: 100%;
  }
}

@media only screen and (min-width: 1472px) {
  .o-hero:not(.hero--box-slider) .hero__wrapper {
    padding: 0;
    max-width: 100%;
  }
}

.o-hero:not(.hero--box-slider) .o-teaser {
  position: relative;
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .m-image__box {
    position: relative;
    overflow: hidden;
  }
  .o-hero:not(.hero--box-slider) .m-image__box:before {
    display: block;
    padding-top: calc(133.333333333%);
    content: "";
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .m-image__box {
    position: relative;
    overflow: hidden;
  }
  .o-hero:not(.hero--box-slider) .m-image__box:before {
    display: block;
    padding-top: calc(56.25%);
    content: "";
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .m-image__box {
    position: relative;
    overflow: hidden;
  }
  .o-hero:not(.hero--box-slider) .m-image__box:before {
    display: block;
    padding-top: calc(56.25%);
    content: "";
  }
}

@media only screen and (min-width: 1472px) {
  .o-hero:not(.hero--box-slider) .m-image__box {
    position: relative;
    overflow: hidden;
  }
  .o-hero:not(.hero--box-slider) .m-image__box:before {
    display: block;
    padding-top: calc(37.5%);
    content: "";
  }
}

.o-hero:not(.hero--box-slider) .teaser__content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
    display: -ms-grid;
    display: grid;
        grid-template-areas: 'margintop' 'headline' 'teasertext' 'spacer' 'button' 'spacer2';
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: 30px auto auto 1fr auto 40px;
    grid-template-rows: 30px auto auto 1fr auto 40px;
  }
}

@media only screen and (min-width: 768px) {
  .o-hero:not(.hero--box-slider) .teaser__inner-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.o-hero:not(.hero--box-slider) .teaser__headline {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .teaser__headline {
    grid-area: headline;
    width: 100%;
    font-size: 30px;
    line-height: 30px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .teaser__headline {
    width: 50%;
    font-size: 50px;
    line-height: 50px;
    font-weight: 700;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .teaser__headline {
    width: 33.3333333333%;
    font-size: 60px;
    line-height: 50px;
    font-weight: 700;
  }
}

.o-hero:not(.hero--box-slider) .teaser__text a:link,
.o-hero:not(.hero--box-slider) .teaser__text a:visited,
.o-hero:not(.hero--box-slider) .teaser__text a:hover,
.o-hero:not(.hero--box-slider) .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.o-hero:not(.hero--box-slider) .teaser__text p:first-child {
  margin-top: 0;
}

.o-hero:not(.hero--box-slider) .teaser__text p:last-child {
  margin-bottom: 0;
}

.o-hero:not(.hero--box-slider) .teaser__text ul,
.o-hero:not(.hero--box-slider) .teaser__text ol,
.o-hero:not(.hero--box-slider) .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .teaser__text {
    grid-area: teasertext;
    width: 100%;
    margin-top: 28px;
    font-size: 30px;
    line-height: 40px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .teaser__text {
    width: 50%;
    margin-top: 28px;
    font-size: 30px;
    line-height: 40px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .teaser__text {
    width: 33.3333333333%;
    margin-top: 28px;
    font-size: 40px;
    line-height: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .teaser__button-wrapper {
    grid-area: button;
    width: 100%;
    margin-top: 30px;
    text-align: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .teaser__button-wrapper {
    width: 50%;
    margin-top: 30px;
    text-align: left;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .teaser__button-wrapper {
    width: 33.3333333333%;
    margin-top: 50px;
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .o-hero:not(.hero--box-slider) .btn {
    display: block;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero:not(.hero--box-slider) .btn {
    padding-left: 60px;
    padding-right: 60px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero:not(.hero--box-slider) .btn {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.o-hero:not(.hero--box-slider) .btn::after {
  content: ' ';
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: bottom;
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='xMinYMin meet'%3E%3Cpath fill='%23ffffff' d='M13.495 22.576l6.056-6.028c.007-.006.017-.008.023-.015.285-.284.427-.659.426-1.033a1.447 1.447 0 00-.426-1.033c-.006-.007-.016-.008-.023-.015l-6.056-6.028a1.472 1.472 0 00-2.068 0 1.455 1.455 0 000 2.059l5.041 5.017-5.041 5.017a1.455 1.455 0 000 2.059c.568.565 1.5.566 2.068 0' fill-rule='evenodd'/%3E%3C/svg%3E");
  background-size: 24px;
  background-repeat: no-repeat;
  background-position: center;
}

.hero--slider .hero__wrapper {
  overflow: hidden;
}

@media only screen and (max-width: 1079px) {
  .hero--box-slider {
    background: transparent radial-gradient(circle at 90% 30%, #62d6cd 20%, #3e28a1 110%) 0 0 no-repeat padding-box;
  }
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider {
    background: transparent radial-gradient(circle at 20% 30%, #62d6cd 20%, #3e28a1 110%) 0 0 no-repeat padding-box;
  }
}

@media only screen and (max-width: 1079px) {
  .hero--box-slider .glide__bullets {
    bottom: 60px;
  }
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider .glide__bullets {
    position: relative;
    bottom: auto;
    padding: 38px;
    background-color: #ffffff;
  }
}

.hero--box-slider .glide__arrows {
  display: none;
}

.hero--box-slider .glide__bullet {
  margin: 0 10px;
  border-radius: unset;
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider .glide__bullet {
    width: 100px;
    height: auto;
    border: none;
  }
}

@media only screen and (max-width: 1079px) {
  .hero--box-slider .glide__bullet .a-image {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider .glide__bullet .a-image {
    width: 100%;
    height: auto;
    transition: filter 500ms ease-in-out, opacity 500ms ease-in-out;
  }
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider .glide__bullet:not(.glide__bullet--active) .a-image:not(:hover) {
    filter: grayscale(1);
    opacity: 0.3;
  }
}

.hero--box-slider .o-teaser {
  max-width: 1232px;
  color: #ffffff;
}

@media only screen and (max-width: 1079px) {
  .hero--box-slider .o-teaser {
    margin: 65px 40px 110px;
  }
}

@media only screen and (min-width: 1080px) {
  .hero--box-slider .o-teaser {
    width: 90%;
    margin: 40px auto;
  }
}

.o-image-detail {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .o-image-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-image-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-image-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 1079px) {
  .o-image-detail {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-image-detail {
    margin-top: 60px;
  }
}

.o-image-detail .detail__wrapper {
  display: flex;
  margin: 0;
}

.o-image-detail .detail__text a:link,
.o-image-detail .detail__text a:visited,
.o-image-detail .detail__text a:hover,
.o-image-detail .detail__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.o-image-detail .detail__text p:first-child {
  margin-top: 0;
}

.o-image-detail .detail__text p:last-child {
  margin-bottom: 0;
}

.o-image-detail .detail__text ul,
.o-image-detail .detail__text ol,
.o-image-detail .detail__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 1079px) {
  .o-image-detail .detail__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-image-detail .detail__text {
    font-size: 20px;
    line-height: 36px;
  }
}

.o-image-detail.image-detail--top .detail__wrapper {
  flex-direction: column-reverse;
}

@media only screen and (max-width: 1079px) {
  .o-image-detail.image-detail--top .m-image__box {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-image-detail.image-detail--top .m-image__box {
    margin-top: 60px;
  }
}

.o-image-detail:not(.image-detail--top) .detail__wrapper {
  flex-direction: column;
}

@media only screen and (max-width: 1079px) {
  .o-image-detail:not(.image-detail--top) .detail__text {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-image-detail:not(.image-detail--top) .detail__text {
    margin-top: 60px;
  }
}

.o-logowall-filtered {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .o-logowall-filtered {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-logowall-filtered {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-logowall-filtered {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 1079px) {
  .o-logowall-filtered {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-logowall-filtered {
    margin-top: 60px;
  }
}

/**
 * @description: optional detail text
 */
.logowall-filtered__detailtext {
  color: #363936;
}

@media only screen and (max-width: 1079px) {
  .logowall-filtered__detailtext {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .logowall-filtered__detailtext {
    font-size: 20px;
    line-height: 36px;
  }
}

/**
 * @description: head area with filters and filter actions
 */
.logowall-filtered__meta {
  margin-top: 30px;
}

.logowall-filtered__meta__head {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: nowrap;
  padding-bottom: 15px;
  border-bottom: 1px solid #666666;
}

.logowall-filtered__label {
  appearance: none;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: transparent;
  padding-left: 0;
  padding-right: 15px;
  font-size: 13px;
  line-height: 17px;
  color: #363936;
  background-repeat: no-repeat;
  background-position: right center;
  background-image: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"%3e%3cpath fill="none" stroke="%23343a40" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2 5l6 6 6-6"/%3e%3c/svg%3e');
  background-size: 10px 7px;
}

.logowall-filtered__label.is-closed {
  background-image: url('data:image/svg+xml,%3csvg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"%3e%3cpath transform="rotate(-180 8 8)" id="svg_1" d="m2,5l6,6l6,-6" stroke-width="2" stroke-linejoin="round" stroke-linecap="round" stroke="%23343a40" fill="none"/%3e%3c/svg%3e');
}

.logowall-filtered__tag {
  appearance: none;
  border: none;
  outline: none;
  cursor: pointer;
  background-color: transparent;
  padding: 0 24px 0 10px;
  font-size: 13px;
  line-height: 17px;
  color: #ffffff;
  white-space: nowrap;
  border-radius: 10px;
  background-color: var(--primaryColour);
  background-image: url('data:image/svg+xml,%3csvg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet" aria-label="Close"%3e%3cg fill-rule="nonzero"%3e%3cpath d="M21.25 8.75a.628.628 0 00-.884 0L15 14.116 9.634 8.748a.626.626 0 00-.885.885L14.116 15 8.75 20.366a.626.626 0 00.885.884L15 15.883l5.366 5.367a.626.626 0 00.884-.884L15.883 15l5.367-5.366a.629.629 0 000-.885z"  stroke="%23ffffff" fill="none"/%3e%3cpath d="M15 0C6.716 0 0 6.716 0 15c0 8.284 6.716 15 15 15 8.284 0 15-6.716 15-15A15 15 0 0015 0zm9.723 24.723A13.75 13.75 0 115.277 5.277a13.75 13.75 0 1119.446 19.446z" stroke="%23ffffff" fill="none"/%3e%3c/g%3e%3c/svg%3e');
  background-size: 20px 14px;
  background-repeat: no-repeat;
  background-position: right center;
  cursor: pointer;
}

/**
 * @description: Wrapper for the area with filter tags
 */
.logowall-filtered__meta__filters {
  margin-top: 15px;
  overflow-y: hidden;
  transition: max-height 200ms ease;
}

@media only screen and (max-width: 767px) {
  .logowall-filtered__meta__filters {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-wrap: nowrap;
  }
}

@media only screen and (min-width: 768px) {
  .logowall-filtered__meta__filters {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
}

.logowall-filtered__meta__filters .m-filter-box {
  flex: 1 1 0;
}

/**
 * @description: Wrapper for the logos
 */
.logowall-filtered__teasercollection {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}

.logowall-filtered__teasercollection .teaser--logo:not(.is-hidden) {
  position: relative;
  margin-top: 30px;
  margin-left: 15px;
  margin-right: 15px;
}

@media only screen and (max-width: 767px) {
  .logowall-filtered__teasercollection .teaser--logo:not(.is-hidden) {
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .logowall-filtered__teasercollection .teaser--logo:not(.is-hidden) {
    width: calc( 33.3333333333% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .logowall-filtered__teasercollection .teaser--logo:not(.is-hidden) {
    width: calc( 25% - 30px);
  }
}

.logowall-filtered__teasercollection .teaser--not-found {
  text-align: center;
}

.logowall-filtered__teasercollection .teaser--not-found:not(.is-visible) {
  display: none;
}

.logowall-filtered__teasercollection .teaser__badge--partner,
.logowall-filtered__teasercollection .teaser__badge--certification {
  margin-top: 5px;
  margin-left: 5px;
}

.logowall-filtered__teasercollection .teaser__badge--partner svg,
.logowall-filtered__teasercollection .teaser__badge--certification svg {
  width: 17px;
  height: 24px;
}

.logowall-filtered__teasercollection .teaser__badge-list {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

/**
 * @description: Person SCSS -- existing in an 12-col and 6-col variant with
 * different layouts!
 * 12-col-variant: person--default wrapper
 * 12-col-variant with social media: person--ext
 * 6-col-variant: person--6-col wrapper
 */
/**
 * @description: Person wrapper (outer layout wrapper)
 */
.person--default,
.person--ext {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .person--default,
  .person--ext {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .person--default,
  .person--ext {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .person--default,
  .person--ext {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .person--default,
  .person--ext {
    *zoom: 1;
    margin-top: 30px;
  }
  .person--default::before, .person--default::after,
  .person--ext::before,
  .person--ext::after {
    content: ' ';
    display: table;
  }
  .person--default::after,
  .person--ext::after {
    clear: both;
  }
}

@media only screen and (min-width: 768px) {
  .person--default,
  .person--ext {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
  }
}

.person--6-col {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 130px 1fr;
  grid-template-columns: 130px 1fr;
  margin-top: 20px;
}

/**
 * @description: person content elements
 */
.person__image {
  display: block;
  padding: 15px 15px 15px 0;
  box-sizing: border-box;
  text-align: center;
}

.person__image .m-image__box {
  position: relative;
  overflow: hidden;
}

.person__image .m-image__box:before {
  display: block;
  padding-top: calc(100%);
  content: "";
}

.person__image .a-image {
  border-radius: 50%;
  max-width: 100%;
}

@media only screen and (max-width: 767px) {
  .person--default .person__image,
  .person--ext .person__image {
    float: left;
    width: 33.3333333333%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .person--default .person__image,
  .person--ext .person__image {
    width: 33.3333333333%;
    max-width: 300px;
  }
}

@media only screen and (min-width: 1080px) {
  .person--default .person__image,
  .person--ext .person__image {
    width: 33.3333333333%;
    max-width: 300px;
  }
}

.person--6-col .person__image {
  padding: 15px 15px 0;
}

.person__content {
  padding: 15px 0 15px 15px;
  box-sizing: border-box;
}

.person--default .person__content,
.person--ext .person__content {
  position: relative;
}

.person--default .person__content::after,
.person--ext .person__content::after {
  position: absolute;
  content: '';
  bottom: 0;
  right: 0;
  border-right: 4px solid var(--secondaryColour);
  height: 75%;
}

@media only screen and (max-width: 767px) {
  .person--default .person__content,
  .person--ext .person__content {
    padding-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .person--default .person__content,
  .person--ext .person__content {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    width: 66.6666666667%;
  }
}

@media only screen and (min-width: 1080px) {
  .person--default .person__content,
  .person--ext .person__content {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 1fr;
    grid-template-rows: auto 1fr;
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
    width: 66.6666666667%;
  }
}

.person--6-col .person__content {
  padding-right: 15px;
}

/**
 * @description: Person name and title
 */
a.person__name {
  text-decoration: none;
  color: #363936;
}

.person__name {
  display: block;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .person__name {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .person__name {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .person__name {
    font-size: 40px;
    line-height: 46px;
  }
}

@media only screen and (max-width: 1079px) {
  .person__title {
    font-size: 14px;
    line-height: 24px;
  }
}

.person--default .person__title,
.person--ext .person__title {
  -ms-grid-row-align: center;
  -ms-grid-column-align: stretch;
  place-self: center stretch;
}

@media only screen and (min-width: 1080px) {
  .person--default .person__title,
  .person--ext .person__title {
    margin-right: 80px;
    font-size: 14px;
    line-height: 18px;
    text-align: right;
  }
}

@media only screen and (min-width: 1080px) {
  .person--6-col .person__title {
    font-size: 20px;
    line-height: 36px;
  }
}

/**
 * @description: Person bio
 */
.person__vita {
  margin-top: 9px;
}

.person__vita a:link,
.person__vita a:visited,
.person__vita a:hover,
.person__vita a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.person__vita p:first-child {
  margin-top: 0;
}

.person__vita p:last-child {
  margin-bottom: 0;
}

.person__vita ul,
.person__vita ol,
.person__vita .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

.person--default .person__vita,
.person--ext .person__vita {
  padding-right: 30px;
}

@media only screen and (max-width: 767px) {
  .person--default .person__vita,
  .person--ext .person__vita {
    font-size: 14px;
    line-height: 19px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .person--default .person__vita,
  .person--ext .person__vita {
    font-size: 14px;
    line-height: 19px;
  }
}

@media only screen and (min-width: 1080px) {
  .person--default .person__vita,
  .person--ext .person__vita {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-area: 2 / 1 / 3 / 3;
    font-size: 14px;
    line-height: 19px;
  }
}

.person--6-col .person__vita {
  font-size: 12px;
  line-height: 16px;
}

.person__name-linklist-wrapper {
  display: flex;
  align-items: center;
}

.person__social-linklist {
  display: flex;
}

.person__social-item {
  position: relative;
  display: block;
  overflow: hidden;
  margin-left: 10px;
  width: 30px;
  height: 30px;
  text-indent: -1000px;
  line-height: 30px;
}

.person__social-item:first-child {
  margin-left: 20px;
}

.person__social-item::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: ' ';
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center;
}

.person__social-item--linkedin::before {
  background-image: url('data:image/svg+xml, %3Csvg width="21" height="21" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M18.933 0C20.06 0 21 .94 21 2.067v16.819C21 20.06 20.06 21 18.886 21H2.114A2.105 2.105 0 010 18.886V2.114C0 .94.94 0 2.114 0h16.819zM4.922 3C3.89 3 3 3.874 3 4.99c0 1.117.89 1.99 1.922 1.99 1.031 0 1.922-.873 1.922-1.99 0-1.116-.89-1.99-1.922-1.99zM3.375 17.951h3.14V8.194h-3.14v9.757zm11.016-9.854c-1.266 0-2.25.583-2.72 1.36V8.242H8.579V18h3.14v-4.078c0-1.505.516-2.427 1.641-2.427.844 0 1.5.583 1.5 2.136V18H18v-5.922c0-2.816-1.219-3.98-3.61-3.98z" fill="%230A66C2" fill-rule="evenodd"/%3E%3C/svg%3E');
}

.person__social-item--twitter::before {
  background-image: url('data:image/svg+xml, %3Csvg viewBox="0 0 21 21" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" fill="%231DA1F2" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2"%3E%3Cpath d="M21 2.207A2.208 2.208 0 0018.793 0H2.207A2.208 2.208 0 000 2.207v16.586C0 20.011.989 21 2.207 21h16.586A2.208 2.208 0 0021 18.793V2.207zM7.717 16.855c5.661 0 8.757-4.655 8.757-8.691 0-.132 0-.264-.009-.395A6.218 6.218 0 0018 6.188a6.2 6.2 0 01-1.768.481 3.065 3.065 0 001.353-1.689 6.217 6.217 0 01-1.954.741 3.097 3.097 0 00-3.697-.601 3.048 3.048 0 00-1.547 3.387 8.757 8.757 0 01-6.343-3.192 3.043 3.043 0 00.953 4.078A3.078 3.078 0 013.6 9.01v.039a3.06 3.06 0 002.469 2.994 3.094 3.094 0 01-1.39.053 3.08 3.08 0 002.876 2.121A6.208 6.208 0 013 15.483a8.756 8.756 0 004.717 1.369v.003z"/%3E%3C/svg%3E');
}

.person--blog {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "image content";
  -ms-grid-columns: 60px 15px auto;
  grid-template-columns: 60px auto;
  grid-column-gap: 15px;
  align-items: center;
  margin-top: 20px;
}

.person--blog .person__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
  padding: 0;
  width: 50px;
  height: 50px;
}

.person--blog .person__content {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: content;
  padding: 0;
}

.person--blog .person__name {
  font-size: 16px;
  line-height: 25px;
}

.person--blog .person__title {
  font-size: 14px;
  line-height: 19px;
}

.o-quote:not(.quote--box-tab) {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .o-quote:not(.quote--box-tab) {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-quote:not(.quote--box-tab) {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-quote:not(.quote--box-tab) {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .o-quote:not(.quote--box-tab) {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-quote:not(.quote--box-tab) {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-quote:not(.quote--box-tab) {
    margin-top: 50px;
  }
}

.o-quote:not(.quote--box-tab) .quote__text {
  margin: 0;
  font-style: italic;
  border-right: 4px solid var(--secondaryColour);
}

.o-quote:not(.quote--box-tab) .quote__text a:link,
.o-quote:not(.quote--box-tab) .quote__text a:visited,
.o-quote:not(.quote--box-tab) .quote__text a:hover,
.o-quote:not(.quote--box-tab) .quote__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.o-quote:not(.quote--box-tab) .quote__text p:first-child {
  margin-top: 0;
}

.o-quote:not(.quote--box-tab) .quote__text p:last-child {
  margin-bottom: 0;
}

.o-quote:not(.quote--box-tab) .quote__text ul,
.o-quote:not(.quote--box-tab) .quote__text ol,
.o-quote:not(.quote--box-tab) .quote__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .o-quote:not(.quote--box-tab) .quote__text {
    padding: 14px 25px;
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-quote:not(.quote--box-tab) .quote__text {
    padding: 60px;
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-quote:not(.quote--box-tab) .quote__text {
    padding: 40px 40px 0;
    font-size: 30px;
    line-height: 39px;
  }
}

.o-quote:not(.quote--box-tab) .quote__cite {
  display: block;
  margin: 0;
  font-style: normal;
  text-align: right;
}

.o-quote:not(.quote--box-tab) .quote__cite::before {
  content: '—';
}

@media only screen and (max-width: 1079px) {
  .o-quote:not(.quote--box-tab) .quote__cite {
    padding: 14px 0 30px 40px;
    font-size: 14px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-quote:not(.quote--box-tab) .quote__cite {
    padding: 20px 40px 30px;
    font-size: 23px;
    line-height: 30px;
    border-right: 4px solid var(--secondaryColour);
  }
}

/**
 *
 */
.quote--box-tab {
  background-position: left 6px;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml,%3Csvg width="62px" height="45px" viewBox="0 0 62 45" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"%3E%3Cg id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"%3E%3Cg id="“-”" transform="translate(0.300000, 0.000000)" fill="%23FFFFFF" fill-rule="nonzero"%3E%3Cpath d="M0,44.6 L18,0 L30,0 L18.8,44.6 L0,44.6 Z M31.2,44.6 L49.4,0 L61.4,0 L50,44.6 L31.2,44.6 Z" id="Shape"%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E');
}

[lang^="de"] .quote--box-tab {
  background-image: url('data:image/svg+xml,%0A%3Csvg width="62px" height="45px" viewBox="0 0 62 45" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"%3E%3Cg id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"%3E%3Cg id="“-”" transform="translate(-127.700000, 0.000000)" fill="%23FFFFFF" fill-rule="nonzero"%3E%3Cpath d="M159.2,44.6 L170.6,0 L189.4,0 L171.2,44.6 L159.2,44.6 Z M127.8,44.6 L139.4,0 L158.2,0 L139.8,44.6 L127.8,44.6 Z" id="Shape"%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E');
}

@media only screen and (max-width: 1079px) {
  .quote--box-tab {
    background-size: 40px;
  }
}

.quote--box-tab .quote__text {
  margin: 0;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .quote--box-tab .quote__text {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .quote--box-tab .quote__text {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .quote--box-tab .quote__text {
    font-size: 40px;
    line-height: 46px;
  }
}

.quote--box-tab .quote__text > *:first-child {
  margin-top: 0;
}

.quote--box-tab .quote__text > *:last-child {
  margin-bottom: 0;
}

.quote--box-tab .quote__cite {
  display: block;
  margin: 22px 0 0;
}

@media only screen and (max-width: 767px) {
  .quote--box-tab .quote__cite {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .quote--box-tab .quote__cite {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .quote--box-tab .quote__cite {
    font-size: 23px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 1079px) {
  .quote--box-tab .quote__text,
  .quote--box-tab .quote__cite {
    margin-left: 60px;
  }
}

@media only screen and (min-width: 1080px) {
  .quote--box-tab .quote__text,
  .quote--box-tab .quote__cite {
    margin-left: 94px;
  }
}

.o-search-results {
  box-sizing: border-box;
  width: 100%;
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  .o-search-results {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-search-results {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-search-results {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.search-results__head {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: 2px solid #8e9c9c;
}

@media only screen and (max-width: 767px) {
  .search-results__head {
    padding-bottom: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .search-results__head {
    padding-bottom: 3px;
  }
}

.search_results__title {
  line-height: 1.15;
  font-weight: 700;
  color: #363936;
}

@media only screen and (max-width: 767px) {
  .search_results__title {
    font-size: 20px;
    width: calc( 66.6666666667% - 30px);
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .search_results__title {
    font-size: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .search_results__title {
    font-size: 40px;
  }
}

.search-results__meta {
  font-size: 10px;
  line-height: 1.3;
  color: #000000;
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .search-results__meta {
    width: calc( 33.3333333333% - 30px);
    align-self: flex-start;
    margin-top: 3px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .search-results__meta {
    -ms-grid-row-align: center;
        align-self: center;
  }
}

@media only screen and (min-width: 1080px) {
  .search-results__meta {
    margin-bottom: 3px;
  }
}

.search-results__facet {
  background-color: cornsilk;
}

/**
 * @description: one single tab
 */
.tab__radio {
  display: none;
}

@media only screen and (min-width: 1080px) {
  .tab__label {
    display: inline-block;
    min-width: 198px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 23px;
    line-height: 32px;
    text-align: center;
    border-bottom: 1px solid var(--secondaryColour);
    cursor: pointer;
  }
  .tab__radio:checked + .tab__label {
    background-color: var(--secondaryColour);
  }
  .red-purple .tab__radio:checked + .tab__label,
  .green-purple .tab__radio:checked + .tab__label {
    color: #ffffff;
  }
}

.tab__content {
  display: none;
}

.tab__radio:checked + .tab__label + .tab__content {
  display: block;
}

/**
 * @description: Styled SELECT as tabs alternative for mobile and tablet view
 */
.tabs__select-wrapper {
  /**
	 * @description: SELECT style
	 */
}

@media only screen and (max-width: 1079px) {
  .tabs__select-wrapper {
    display: block;
    text-align: center;
    border-bottom: 4px solid var(--secondaryColour);
  }
}

@media only screen and (max-width: 767px) {
  .tabs__select-wrapper {
    margin-top: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs__select-wrapper {
    margin-top: 25px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs__select-wrapper {
    display: none;
  }
}

@media only screen and (max-width: 1079px) {
  .tabs__select-wrapper .form__ui--select {
    display: inline-block;
    width: auto;
    padding: 5px 12px 5px 2px;
    font-size: 16px;
    line-height: 1.71;
    font-weight: 700;
    color: #363936;
    vertical-align: middle;
    text-align: center;
    text-align-last: center;
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-position: right center;
    background-image: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"%3e%3cpath fill="none" stroke="%23343a40" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M2 5l6 6 6-6"/%3e%3c/svg%3e');
    background-size: 10px 7px;
    border: none;
    /* stylelint-disable */
    appearance: none;
    /* stylelint-enable */
  }
}

/**
 * @description: Tabs: many tabs in a row
 */
@media only screen and (max-width: 1079px) {
  .o-tabs {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-tabs {
    margin-top: 190px;
  }
}

/**
 * @description: only stuff for the search results variant
 */
.tabs--search-results {
  position: relative;
}

.tabs--search-results .tab__content {
  position: absolute;
  top: auto;
  left: 0;
  right: 0;
}

@media only screen and (max-width: 1079px) {
  .tabs--search-results .o-tab {
    display: none;
  }
}

/**
 * @description: only stuff for the "normal" 12-col variant, like on the homepage
 */
.tabs--12-col-tabs {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .tabs--12-col-tabs {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs--12-col-tabs {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs--12-col-tabs {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs--12-col-tabs .tabs__content {
    margin-top: 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media only screen and (max-width: 1079px) {
  .tabs--12-col-tabs .tab__label {
    display: none;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs--12-col-tabs .tab__label {
    order: 1;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 0;
    margin-left: 30px;
  }
  .tabs--12-col-tabs .tab__label:first-of-type {
    margin-left: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs--12-col-tabs .tab__content {
    order: 2;
    width: 100%;
  }
}

.o-tabs--box {
  overflow: auto;
  color: #ffffff;
}

.o-tabs--box:not(.tabs--box-quote) {
  background-color: #672779;
}

.o-tabs--box.tabs--box-quote {
  background: transparent linear-gradient(112deg, #5f2b74 0%, #370f48 100%) 0 0 no-repeat padding-box;
}

@media only screen and (max-width: 767px) {
  .tabs__content {
    margin: 70px 20px 40px;
  }
}

@media only screen and (min-width: 768px) {
  .tabs__content {
    display: -ms-grid;
    display: grid;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-tabs--box:not(.tabs--box-quote) .tabs__content {
        grid-template-areas: 'spacer-left caption teasers spacer-right';
    -ms-grid-columns: 1fr 50px minmax(auto, 435px) 50px minmax(auto, 435px) 50px 1fr;
    grid-template-columns: 1fr minmax(auto, 435px) minmax(auto, 435px) 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    grid-column-gap: 50px;
    margin: 110px auto 70px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-tabs--box:not(.tabs--box-quote) .tabs__content {
        grid-template-areas: 'spacer-left caption teasers spacer-right';
    -ms-grid-columns: 1fr 50px minmax(auto, 535px) 50px minmax(auto, 535px) 50px 1fr;
    grid-template-columns: 1fr minmax(auto, 535px) minmax(auto, 535px) 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    grid-column-gap: 50px;
    margin: 170px auto 110px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-tabs--box.tabs--box-quote .tabs__content {
        grid-template-areas: 'spacer-left headline headline spacer-right' 'spacer-left detailtext detailtext spacer-right' 'spacer-left caption teasers spacer-right';
    -ms-grid-columns: 1fr 50px minmax(auto, 395px) 50px minmax(auto, 675px) 50px 1fr;
    grid-template-columns: 1fr minmax(auto, 395px) minmax(auto, 675px) 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    grid-column-gap: 50px;
    margin: 60px auto 65px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-tabs--box.tabs--box-quote .tabs__content {
        grid-template-areas: 'spacer-left headline headline spacer-right' 'spacer-left detailtext detailtext spacer-right' 'spacer-left caption teasers spacer-right';
    -ms-grid-columns: 1fr 50px minmax(auto, 395px) 50px minmax(auto, 675px) 50px 1fr;
    grid-template-columns: 1fr minmax(auto, 395px) minmax(auto, 675px) 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    grid-column-gap: 50px;
    margin: 100px auto 110px;
  }
}

.tabs__content .teaser-collection__headline {
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .tabs__content .teaser-collection__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs__content .teaser-collection__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs__content .teaser-collection__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

.tabs__content .teaser-collection__detailtext {
  margin-top: 45px;
}

@media only screen and (max-width: 767px) {
  .tabs__content .teaser-collection__detailtext {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs__content .teaser-collection__detailtext {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs__content .teaser-collection__detailtext {
    font-size: 23px;
    line-height: 32px;
  }
}

.tabs__content > .teaser-collection__headline {
  grid-area: headline;
}

.tabs__content > .teaser-collection__detailtext {
  grid-area: detailtext;
  margin-top: 15px;
  margin-bottom: 45px;
}

/**
 * @description: Caption of module (left side)
 */
.tabs__caption {
  grid-area: caption;
}

/**
 * @description: Toggles list
 */
.tabs__links {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
}

@media only screen and (max-width: 767px) {
  .tabs__links {
    margin-top: 32px;
  }
}

@media only screen and (min-width: 768px) {
  .tabs__links {
    margin-top: 65px;
  }
}

@media only screen and (min-width: 768px) {
  .tabs--box-quote .tabs__links {
    margin-top: 35px;
  }
}

.tabs__links li + li {
  margin-top: 10px;
}

.tabs__links .tabs__radio {
  display: none;
}

/**
 * @description: Toggle
 */
.tabs__link {
  padding-right: 30px;
  padding-left: 30px;
  box-sizing: border-box;
  color: #672779;
  background-color: #ffffff;
  width: 100%;
  max-width: 344px;
}

@media only screen and (min-width: 768px) {
  .tabs--box-quote .tabs__link {
    max-width: 200px;
  }
}

.tabs__link:hover,
.tabs__radio:checked + .tabs__link {
  color: #ffffff;
  background-color: #6fc3b8;
}

/**
 * @description: Teaser/Module in the tabs (right side)
 */
@media only screen and (max-width: 767px) {
  .tabs__teaser-wrapper {
    margin-top: 60px;
  }
}

@media only screen and (min-width: 768px) {
  .tabs__teaser-wrapper {
    grid-area: teasers;
  }
}

.tabs__teaser-wrapper .o-teaser .teaser__headline {
  color: #ffffff;
}

.tabs__teaser:not(.is-selected) {
  height: 0;
  overflow-y: hidden;
}

.tabs__teaser .teaser__headline {
  margin-top: 8px;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .tabs__teaser .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs__teaser .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs__teaser .teaser__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

@media only screen and (max-width: 767px) {
  .tabs__teaser .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .tabs__teaser .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .tabs__teaser .teaser__text {
    font-size: 23px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .tabs__teaser .teaser__text {
    margin-top: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .tabs__teaser .teaser__text {
    margin-top: 50px;
  }
}

.tabs__teaser .rte--list {
  padding-left: 16px;
}

.tabs__teaser .rte--list li {
  list-style-type: '●';
  padding-left: 20px;
}

.tabs__teaser .rte--list li::marker {
  font-size: 28px;
  line-height: 30px;
  color: #6fc3b8;
}

.tabs__teaser .rte--list li + li {
  margin-top: 1em;
}

@media only screen and (max-width: 767px) {
  .teaser__button-wrapper {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser__button-wrapper {
    margin-top: 50px;
  }
}

.teaser__button-wrapper .a-button, .teaser__button-wrapper .o-download .download__button-wrapper .a-link, .o-download .download__button-wrapper .teaser__button-wrapper .a-link, .teaser__button-wrapper .o-hero:not(.hero--box-slider) .btn, .o-hero:not(.hero--box-slider) .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser--12-col-teaser-alternating .btn, .teaser--12-col-teaser-alternating .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser--12-col-external-link-teaser .btn, .teaser--12-col-external-link-teaser .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser-collection--12-col-teaser-alternating .o-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser--12-col-with-image-and-cta .btn, .teaser--12-col-with-image-and-cta .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser-collection--blog .o-teaser .btn, .teaser-collection--blog .o-teaser .teaser__button-wrapper .btn, .teaser__button-wrapper .teaser-collection__cta-row .a-link, .teaser-collection__cta-row .teaser__button-wrapper .a-link, .teaser__button-wrapper #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .teaser__button-wrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, .teaser__button-wrapper #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelWrapper .teaser__button-wrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  margin-top: 10px;
  margin-right: 10px;
  border: none;
}

@media only screen and (max-width: 1079px) {
  .teaser--12-col-with-image-and-cta .teaser__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-with-image-and-cta .teaser__text {
    font-size: 20px;
    line-height: 36px;
  }
}

a.o-teaser {
  text-decoration: none;
  color: #363936;
}

.o-teaser.is-linked .teaser__headline .a-link {
  text-decoration: none;
  color: var(--primaryColour);
}

.o-teaser.is-linked .teaser__badge,
.o-teaser.is-linked .teaser__image {
  cursor: pointer;
}

.o-teaser .a-image {
  display: block;
  width: 100%;
}

.o-teaser .teaser__headline {
  color: #363936;
}

.teaser--50-50 {
  display: block;
}

@media only screen and (max-width: 767px) {
  .teaser--50-50 {
    margin: 30px 15px 0;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--50-50 {
    box-sizing: border-box;
    width: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    margin-top: 60px;
    color: #363936;
  }
}

@media only screen and (min-width: 768px) and (max-width: 767px) {
  .teaser--50-50 {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1080px) {
  .teaser--50-50 {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 .teaser__image {
    padding-right: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--50-50 .teaser__content {
    position: relative;
  }
  .teaser--50-50 .teaser__content::after {
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    border-right: 4px solid var(--secondaryColour);
    height: 50%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 .teaser__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    -ms-grid-row-align: center;
        align-self: center;
    height: 100%;
    padding: 0 50px 0 15px;
    border-right: 4px solid var(--secondaryColour);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--50-50 .teaser__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    -ms-grid-row-align: center;
        align-self: center;
    height: 100%;
    padding: 0 50px;
    border-right: 4px solid var(--secondaryColour);
  }
}

.teaser--50-50 .teaser__headline {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .teaser--50-50 .teaser__headline {
    margin: 10px 20px 0;
    font-size: 13px;
    line-height: 17px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--50-50 .teaser__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

.teaser--50-50 .teaser__text a:link,
.teaser--50-50 .teaser__text a:visited,
.teaser--50-50 .teaser__text a:hover,
.teaser--50-50 .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser--50-50 .teaser__text p:first-child {
  margin-top: 0;
}

.teaser--50-50 .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser--50-50 .teaser__text ul,
.teaser--50-50 .teaser__text ol,
.teaser--50-50 .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser--50-50 .teaser__text {
    margin: 20px 20px 0;
    font-size: 12px;
    line-height: 16px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--50-50 .teaser__text {
    margin-top: 40px;
    font-size: 12px;
    line-height: 18px;
    font-weight: 400;
  }
}

/**
 * @description: Divider element as colored box with headline + text
 */
.teaser--divider {
  box-sizing: border-box;
  width: 100%;
  margin-top: 75px;
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser--divider {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--divider {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--divider {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.teaser--divider .teaser__content {
  box-sizing: border-box;
  background-color: var(--primaryColour);
}

@media only screen and (max-width: 767px) {
  .teaser--divider .teaser__content {
    padding: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--divider .teaser__content {
    padding: 20px;
  }
}

.teaser--divider .teaser__headline {
  color: #ffffff;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .teaser--divider .teaser__headline {
    font-size: 26px;
    line-height: 33px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--divider .teaser__headline {
    width: calc( 66.6666666667% - 30px);
    font-size: 21px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--divider .teaser__headline {
    font-size: 26px;
    line-height: 33px;
  }
}

.teaser--divider .teaser__text {
  margin-top: 2px;
  font-weight: 400;
}

.teaser--divider .teaser__text a:link,
.teaser--divider .teaser__text a:visited,
.teaser--divider .teaser__text a:hover,
.teaser--divider .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser--divider .teaser__text p:first-child {
  margin-top: 0;
}

.teaser--divider .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser--divider .teaser__text ul,
.teaser--divider .teaser__text ol,
.teaser--divider .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser--divider .teaser__text {
    font-size: 23px;
    line-height: 33px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--divider .teaser__text {
    width: calc( 66.6666666667% - 30px);
    font-size: 18px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--divider .teaser__text {
    font-size: 23px;
    line-height: 33px;
  }
}

/**
 * @description: Page Title, bar @ top of page
 * 1) Generic for both variants (without and with image)
 * 2) variant without image
 * 3) variant with image
 */
.teaser--page-title .teaser__headline {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser--page-title .teaser__headline {
    font-size: 13px;
    line-height: 17px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title .teaser__headline {
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__headline {
    font-size: 40px;
    line-height: 52px;
    font-weight: 500;
  }
}

.teaser--page-title .teaser__headline-pseudo-icon {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--secondaryColour);
}

.teaser--page-title .teaser__text a:link,
.teaser--page-title .teaser__text a:visited,
.teaser--page-title .teaser__text a:hover,
.teaser--page-title .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser--page-title .teaser__text p:first-child {
  margin-top: 0;
}

.teaser--page-title .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser--page-title .teaser__text ul,
.teaser--page-title .teaser__text ol,
.teaser--page-title .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

.teaser--page-title .teaser__headline-wrapper {
  background-color: var(--primaryColour);
}

.teaser--page-title .teaser__headline {
  box-sizing: border-box;
  width: 100%;
  position: relative;
}

@media only screen and (max-width: 767px) {
  .teaser--page-title .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title .teaser__headline {
    padding-top: 16px;
    padding-bottom: 16px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title .teaser__headline {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__headline {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

.teaser--page-title .teaser__headline::after {
  display: inline-block;
  margin-left: 10px;
  content: '';
  border-radius: 50%;
  background-color: var(--secondaryColour);
}

@media only screen and (max-width: 767px) {
  .teaser--page-title .teaser__headline::after {
    width: 8px;
    height: 8px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title .teaser__headline::after {
    width: 6px;
    height: 6px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__headline::after {
    width: 12px;
    height: 12px;
  }
}

.teaser--page-title .teaser__text {
  box-sizing: border-box;
  width: 100%;
  background-color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser--page-title .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser--page-title .teaser__text {
    font-size: 14px;
    line-height: 24px;
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title .teaser__text {
    margin-top: 50px;
    font-size: 20px;
    line-height: 36px;
  }
}

.teaser--page-title-with-image .teaser__headline {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__headline {
    font-size: 13px;
    line-height: 17px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__headline {
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__headline {
    font-size: 40px;
    line-height: 52px;
    font-weight: 500;
  }
}

.teaser--page-title-with-image .teaser__headline-pseudo-icon {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--secondaryColour);
}

.teaser--page-title-with-image .teaser__text a:link,
.teaser--page-title-with-image .teaser__text a:visited,
.teaser--page-title-with-image .teaser__text a:hover,
.teaser--page-title-with-image .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser--page-title-with-image .teaser__text p:first-child {
  margin-top: 0;
}

.teaser--page-title-with-image .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser--page-title-with-image .teaser__text ul,
.teaser--page-title-with-image .teaser__text ol,
.teaser--page-title-with-image .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__headline-wrapper {
    background-color: var(--primaryColour);
  }
}

@media only screen and (min-width: 768px) {
  .teaser--page-title-with-image {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    background-color: var(--primaryColour);
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__image {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__image {
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__image {
    width: calc( 50% - 30px);
    max-width: 540px;
    margin: 0 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--page-title-with-image .m-image__box {
    position: relative;
    overflow: hidden;
  }
  .teaser--page-title-with-image .m-image__box:before {
    display: block;
    padding-top: calc(75%);
    content: "";
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__content {
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__content {
    width: calc( 50% - 30px);
    max-width: 540px;
    margin: 0 30px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__headline {
    box-sizing: border-box;
    width: 100%;
    position: relative;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__headline {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__headline::after {
    display: inline-block;
    content: '';
    width: 8px;
    height: 8px;
    margin-left: 10px;
    border-radius: 50%;
    background-color: var(--secondaryColour);
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__text {
    box-sizing: border-box;
    width: 100%;
    font-size: 14px;
    line-height: 24px;
    margin-top: 30px;
    background-color: #ffffff;
  }
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
  .teaser--page-title-with-image .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (max-width: 767px) and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__text {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title-with-image .teaser__text {
    font-size: 14px;
    line-height: 24px;
    color: #ffffff;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title-with-image .teaser__text {
    font-size: 18px;
    line-height: 28px;
    color: #ffffff;
  }
}

/**
 * @description: Teaser, 12-col, generic styles
 */
@media only screen and (max-width: 767px) {
  .teaser-12-col-video, .teaser-collection--12-col-video-teaser .o-teaser, .teaser-collection--video-collection-promo .o-teaser:first-child, .teaser--12-col-teaser-alternating, .teaser--12-col-external-link-teaser, .teaser-collection--12-col-teaser-alternating .o-teaser {
    display: block;
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-12-col-video, .teaser-collection--12-col-video-teaser .o-teaser, .teaser-collection--video-collection-promo .o-teaser:first-child, .teaser--12-col-teaser-alternating, .teaser--12-col-external-link-teaser, .teaser-collection--12-col-teaser-alternating .o-teaser {
    display: flex;
    margin-top: 50px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-12-col-video .teaser__image, .teaser-collection--12-col-video-teaser .o-teaser .teaser__image, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__image, .teaser--12-col-teaser-alternating .teaser__image, .teaser--12-col-external-link-teaser .teaser__image, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__image {
    width: calc( 50% - 15px);
  }
}

.teaser-12-col-video .teaser__content, .teaser-collection--12-col-video-teaser .o-teaser .teaser__content, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content, .teaser--12-col-teaser-alternating .teaser__content, .teaser--12-col-external-link-teaser .teaser__content, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__content {
  box-sizing: border-box;
}

@media only screen and (min-width: 768px) {
  .teaser-12-col-video .teaser__content, .teaser-collection--12-col-video-teaser .o-teaser .teaser__content, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content, .teaser--12-col-teaser-alternating .teaser__content, .teaser--12-col-external-link-teaser .teaser__content, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 30px;
    padding-right: 30px;
    width: calc( 50% - 15px);
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-12-col-video .teaser__headline, .teaser-collection--12-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__headline, .teaser--12-col-teaser-alternating .teaser__headline, .teaser--12-col-external-link-teaser .teaser__headline, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__headline {
    font-size: 16px;
    line-height: 16px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-12-col-video .teaser__headline, .teaser-collection--12-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__headline, .teaser--12-col-teaser-alternating .teaser__headline, .teaser--12-col-external-link-teaser .teaser__headline, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-12-col-video .teaser__headline + .teaser__text, .teaser-collection--12-col-video-teaser .o-teaser .teaser__headline + .teaser__text, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__headline + .teaser__text, .teaser--12-col-teaser-alternating .teaser__headline + .teaser__text, .teaser--12-col-external-link-teaser .teaser__headline + .teaser__text, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__headline + .teaser__text {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-12-col-video .teaser__headline + .teaser__text, .teaser-collection--12-col-video-teaser .o-teaser .teaser__headline + .teaser__text, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__headline + .teaser__text, .teaser--12-col-teaser-alternating .teaser__headline + .teaser__text, .teaser--12-col-external-link-teaser .teaser__headline + .teaser__text, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__headline + .teaser__text {
    margin-top: 50px;
  }
}

.teaser-12-col-video .teaser__text a:link, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text a:link, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text a:link, .teaser--12-col-teaser-alternating .teaser__text a:link, .teaser--12-col-external-link-teaser .teaser__text a:link, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text a:link,
.teaser-12-col-video .teaser__text a:visited,
.teaser-collection--12-col-video-teaser .o-teaser .teaser__text a:visited,
.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text a:visited,
.teaser--12-col-teaser-alternating .teaser__text a:visited,
.teaser--12-col-external-link-teaser .teaser__text a:visited,
.teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text a:visited,
.teaser-12-col-video .teaser__text a:hover,
.teaser-collection--12-col-video-teaser .o-teaser .teaser__text a:hover,
.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text a:hover,
.teaser--12-col-teaser-alternating .teaser__text a:hover,
.teaser--12-col-external-link-teaser .teaser__text a:hover,
.teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text a:hover,
.teaser-12-col-video .teaser__text a:active,
.teaser-collection--12-col-video-teaser .o-teaser .teaser__text a:active,
.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text a:active,
.teaser--12-col-teaser-alternating .teaser__text a:active,
.teaser--12-col-external-link-teaser .teaser__text a:active,
.teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser-12-col-video .teaser__text p:first-child, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text p:first-child, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text p:first-child, .teaser--12-col-teaser-alternating .teaser__text p:first-child, .teaser--12-col-external-link-teaser .teaser__text p:first-child, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text p:first-child {
  margin-top: 0;
}

.teaser-12-col-video .teaser__text p:last-child, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text p:last-child, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text p:last-child, .teaser--12-col-teaser-alternating .teaser__text p:last-child, .teaser--12-col-external-link-teaser .teaser__text p:last-child, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser-12-col-video .teaser__text ul, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text ul, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text ul, .teaser--12-col-teaser-alternating .teaser__text ul, .teaser--12-col-external-link-teaser .teaser__text ul, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text ul,
.teaser-12-col-video .teaser__text ol,
.teaser-collection--12-col-video-teaser .o-teaser .teaser__text ol,
.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text ol,
.teaser--12-col-teaser-alternating .teaser__text ol,
.teaser--12-col-external-link-teaser .teaser__text ol,
.teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text ol,
.teaser-12-col-video .teaser__text .rte--list,
.teaser-collection--12-col-video-teaser .o-teaser .teaser__text .rte--list,
.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text .rte--list,
.teaser--12-col-teaser-alternating .teaser__text .rte--list,
.teaser--12-col-external-link-teaser .teaser__text .rte--list,
.teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser-12-col-video .teaser__text, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text, .teaser--12-col-teaser-alternating .teaser__text, .teaser--12-col-external-link-teaser .teaser__text, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-12-col-video .teaser__text, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text, .teaser--12-col-teaser-alternating .teaser__text, .teaser--12-col-external-link-teaser .teaser__text, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-12-col-video .teaser__text, .teaser-collection--12-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__text, .teaser--12-col-teaser-alternating .teaser__text, .teaser--12-col-external-link-teaser .teaser__text, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__text {
    font-size: 16px;
    line-height: 25px;
  }
}

/**
 * @description: Teaser, Video
 */
@media only screen and (min-width: 768px) {
  .teaser-12-col-video .teaser__image, .teaser-collection--12-col-video-teaser .o-teaser .teaser__image, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__image {
    margin-right: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-12-col-video .teaser__content, .teaser-collection--12-col-video-teaser .o-teaser .teaser__content, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content {
    margin-top: 50px;
    padding-right: 15px;
    border-right: 4px solid var(--secondaryColour);
  }
}

@media only screen and (min-width: 768px) {
  .teaser-12-col-video .teaser__content, .teaser-collection--12-col-video-teaser .o-teaser .teaser__content, .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content {
    margin-left: 15px;
    border-right: 4px solid var(--secondaryColour);
  }
}

.teaser-4-col-video .teaser__content, .teaser-collection--4-col-video-teaser .o-teaser .teaser__content, .teaser-collection--video-collection-promo .o-teaser .teaser__content {
  position: relative;
}

.teaser-4-col-video .teaser__content::after, .teaser-collection--4-col-video-teaser .o-teaser .teaser__content::after, .teaser-collection--video-collection-promo .o-teaser .teaser__content::after {
  position: absolute;
  content: '';
  bottom: 0;
  right: 0;
  border-right: 4px solid var(--secondaryColour);
  height: 50%;
}

.teaser-4-col-video .teaser__headline, .teaser-collection--4-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser .teaser__headline {
  font-size: 13px;
  line-height: 17px;
}

@media only screen and (max-width: 767px) {
  .teaser-4-col-video .teaser__headline, .teaser-collection--4-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser .teaser__headline {
    margin: 10px 20px 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-4-col-video .teaser__headline, .teaser-collection--4-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser .teaser__headline {
    margin-top: 10px;
    margin-right: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-4-col-video .teaser__headline, .teaser-collection--4-col-video-teaser .o-teaser .teaser__headline, .teaser-collection--video-collection-promo .o-teaser .teaser__headline {
    margin: 10px 20px 0;
  }
}

.teaser-4-col-video .teaser__text, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser .teaser__text {
  font-size: 12px;
  line-height: 16px;
}

.teaser-4-col-video .teaser__text a:link, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text a:link, .teaser-collection--video-collection-promo .o-teaser .teaser__text a:link,
.teaser-4-col-video .teaser__text a:visited,
.teaser-collection--4-col-video-teaser .o-teaser .teaser__text a:visited,
.teaser-collection--video-collection-promo .o-teaser .teaser__text a:visited,
.teaser-4-col-video .teaser__text a:hover,
.teaser-collection--4-col-video-teaser .o-teaser .teaser__text a:hover,
.teaser-collection--video-collection-promo .o-teaser .teaser__text a:hover,
.teaser-4-col-video .teaser__text a:active,
.teaser-collection--4-col-video-teaser .o-teaser .teaser__text a:active,
.teaser-collection--video-collection-promo .o-teaser .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser-4-col-video .teaser__text p:first-child, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text p:first-child, .teaser-collection--video-collection-promo .o-teaser .teaser__text p:first-child {
  margin-top: 0;
}

.teaser-4-col-video .teaser__text p:last-child, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text p:last-child, .teaser-collection--video-collection-promo .o-teaser .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser-4-col-video .teaser__text ul, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text ul, .teaser-collection--video-collection-promo .o-teaser .teaser__text ul,
.teaser-4-col-video .teaser__text ol,
.teaser-collection--4-col-video-teaser .o-teaser .teaser__text ol,
.teaser-collection--video-collection-promo .o-teaser .teaser__text ol,
.teaser-4-col-video .teaser__text .rte--list,
.teaser-collection--4-col-video-teaser .o-teaser .teaser__text .rte--list,
.teaser-collection--video-collection-promo .o-teaser .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser-4-col-video .teaser__text, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser .teaser__text {
    margin: 20px 20px 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-4-col-video .teaser__text, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser .teaser__text {
    margin-top: 20px;
    margin-right: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-4-col-video .teaser__text, .teaser-collection--4-col-video-teaser .o-teaser .teaser__text, .teaser-collection--video-collection-promo .o-teaser .teaser__text {
    margin: 20px 20px 0;
  }
}

.teaser--12-col-external-link-teaser {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-external-link-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--12-col-external-link-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-external-link-teaser {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

/**
 * @description: Teaser, alternating
 */
@media only screen and (max-width: 1079px) {
  .teaser--12-col-teaser-alternating .btn, .teaser--12-col-external-link-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .btn {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-teaser-alternating .btn, .teaser--12-col-external-link-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .btn {
    margin-top: 40px;
  }
}

/**
 * @description: 12-col, image + CTA
 */
.teaser--12-col-with-image-and-cta {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-with-image-and-cta {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--12-col-with-image-and-cta {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-with-image-and-cta {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--12-col-with-image-and-cta {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-with-image-and-cta {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-with-image-and-cta .teaser__headline {
    font-size: 16px;
    line-height: 16px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-with-image-and-cta .teaser__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

.teaser--12-col-with-image-and-cta .teaser__text a:link,
.teaser--12-col-with-image-and-cta .teaser__text a:visited,
.teaser--12-col-with-image-and-cta .teaser__text a:hover,
.teaser--12-col-with-image-and-cta .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser--12-col-with-image-and-cta .teaser__text p:first-child {
  margin-top: 0;
}

.teaser--12-col-with-image-and-cta .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser--12-col-with-image-and-cta .teaser__text ul,
.teaser--12-col-with-image-and-cta .teaser__text ol,
.teaser--12-col-with-image-and-cta .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 1079px) {
  .teaser--12-col-with-image-and-cta .teaser__image {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-with-image-and-cta .teaser__image {
    margin-top: 70px;
  }
}

.teaser--12-col-with-image-and-cta .teaser__button-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.teaser--12-col-with-image-and-cta .a-link {
  margin-top: 20px;
}

.teaser--12-col-with-image-and-cta .a-link:not(.btn) {
  display: inline-block;
  color: var(--secondaryColour);
  font-size: 18px;
  line-height: 24px;
}

/**
 * @description: Search Result
 */
@media only screen and (max-width: 767px) {
  .teaser--search-result {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--search-result {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: calc( 16.6666666667% - 30px) calc( 83.3333333333% - 30px);
    grid-template-columns: calc( 16.6666666667% - 30px) calc( 83.3333333333% - 30px);
  }
}

@media only screen and (max-width: 767px) {
  .teaser--search-result + .teaser--search-result {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--search-result + .teaser--search-result {
    margin-top: 60px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--search-result + .teaser--search-result {
    margin-top: 70px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--search-result .teaser__image {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--search-result .teaser__image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1 / 1 / 2 / 2;
  }
}

.teaser--search-result .m-image__box {
  position: relative;
  overflow: hidden;
  background-size: auto 90%;
}

.teaser--search-result .m-image__box:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.teaser--search-result .m-image__box:empty {
  background: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNTAgNTAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1taXRlcmxpbWl0PSIyIj4KICA8cGF0aCBkPSJNNDMuNDUyIDguOTI1djQuNzE2aC0xLjIyNXYtNC40MWwtLjUwNC0uNDg2aC0xLjc0NnY0Ljg5NmgtMS4yNDJWOC43NDVIMzYuNDV2NC44OTZoLTEuMjQyVjcuNDY3SDQyLjFDMzcuNjkxIDMuMTY0IDMxLjY2MS41IDI1IC41IDExLjQ4LjUuNSAxMS40NjMuNSAyNVMxMS40NjMgNDkuNSAyNSA0OS41IDQ5LjUgMzguNTM3IDQ5LjUgMjVhMjQuNTU1IDI0LjU1NSAwIDAwLTYuMDQ4LTE2LjA3NXptLTguMjQ1IDEwLjAwOUgyMC42NjJsLTEuNjc0IDEuNjc0djguODM4bDEuNjc0IDEuNjU3aDE0LjU0NXY0LjA4NkgxOS4xNWwtNC4zNzUtNC4zNzRWMTkuMjIybDQuMzc1LTQuMzc1aDE2LjA1N3Y0LjA4N3oiIGZpbGw9IiM2NjYiIGZpbGwtcnVsZT0ibm9uemVybyIvPgo8L3N2Zz4K) no-repeat center;
}

@media only screen and (min-width: 768px) {
  .teaser--search-result .teaser__content {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 1 / 2 / 2 / 3;
    padding-left: 30px;
  }
}

.teaser--search-result .teaser__headline {
  font-weight: 700;
  color: #363936;
}

@media only screen and (max-width: 767px) {
  .teaser--search-result .teaser__headline {
    font-size: 16px;
    line-height: 1;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--search-result .teaser__headline {
    font-size: 20px;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--search-result .teaser__headline {
    font-size: 20px;
    line-height: 1.15;
  }
}

.teaser--search-result:hover .teaser__headline {
  text-decoration: underline;
}

.teaser--search-result .teaser__text {
  font-size: 12px;
  color: #363936;
}

@media only screen and (max-width: 1079px) {
  .teaser--search-result .teaser__text {
    margin-top: 10px;
    line-height: 1.333;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--search-result .teaser__text {
    margin-top: 5px;
    line-height: 1.5;
  }
}

.teaser--search-result .teaser__search-result__url {
  font-size: 12px;
  line-height: 1;
  color: var(--primaryColour);
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-tab {
    margin-top: 25px;
  }
}

.teaser--12-col-tab .rte--list {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-tab .rte--list {
    columns: 3 auto;
    column-gap: 30px;
  }
}

.teaser--12-col-tab .rte--list li {
  position: relative;
  padding-left: 25px;
}

.teaser--12-col-tab .rte--list li::before {
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  content: '';
  width: 10px;
  height: 10px;
  background-color: var(--secondaryColour);
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-tab .rte--list li + li {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--12-col-tab .rte--list li + li {
    margin-top: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-tab .teaser__button-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
  }
  .teaser--12-col-tab .teaser__button-wrapper > * + * {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--12-col-tab .teaser__button-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
  }
  .teaser--12-col-tab .teaser__button-wrapper > * {
    margin-left: 15px;
    margin-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--12-col-tab .teaser__button-wrapper {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-tab .teaser__button-wrapper {
    margin-top: 60px;
  }
}

.teaser--blog-author .teaser__image {
  overflow: hidden;
  border-radius: 50%;
  width: 50%;
}

.teaser--blog .teaser__image {
  position: relative;
  overflow: hidden;
}

.teaser--blog .teaser__image:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.teaser--blog .teaser__image .a-image {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  right: 0;
  width: 100%;
}

.teaser--box-opener {
  display: flex;
  background-color: var(--primaryColour);
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener {
    flex-direction: column;
    align-items: center;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-opener {
    justify-content: space-between;
    align-items: flex-start;
  }
}

.teaser--box-opener.is-linked .teaser__headline .a-link {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener {
    padding: 60px 4.1666666667% 120px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-opener {
    padding: 70px 0 140px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__image {
    width: 50%;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-opener .teaser__image {
    width: calc( 41.6666666667% - 30px);
  }
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__content {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-opener .teaser__content {
    width: calc( 58.3333333333% - 30px);
  }
}

.teaser--box-opener .teaser__headline {
  font-weight: 400;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-opener .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-opener .teaser__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__headline {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser--box-opener .teaser__headline + .teaser__text {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-opener .teaser__headline + .teaser__text {
    margin-top: 40px;
  }
}

.teaser--box-opener .teaser__text {
  color: #ffffff;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-opener .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-opener .teaser__text {
    font-size: 23px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--box-opener .teaser__button-wrapper {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-opener .teaser__button-wrapper {
    margin-top: 40px;
  }
}

.teaser--box-video {
  display: -ms-grid;
  display: grid;
}

@media only screen and (max-width: 767px) {
  .teaser--box-video {
        grid-template-areas: "headline" "text" "image" "button";
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-video {
        grid-template-areas: "headline image" "text image" "button image";
    -ms-grid-columns: 5fr 7fr;
    grid-template-columns: 5fr 7fr;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--box-video {
    padding: 60px 0 120px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-video {
    padding: 70px 0 140px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-video {
    padding: 90px 0 180px;
  }
}

.teaser--box-video .teaser__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
}

@media only screen and (max-width: 767px) {
  .teaser--box-video .teaser__image {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-video .teaser__image {
    margin: 0 14.2857142857% 0 7.1428571429%;
  }
}

.teaser--box-video .teaser__headline {
  grid-area: headline;
  font-weight: 400;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .teaser--box-video .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-video .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-video .teaser__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-video .teaser__headline {
    margin: 0 10% 0 20%;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser--box-video .teaser__headline + .teaser__text {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-video .teaser__headline + .teaser__text {
    margin-top: 40px;
  }
}

.teaser--box-video .teaser__text {
  grid-area: text;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .teaser--box-video .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-video .teaser__text {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-video .teaser__text {
    font-size: 23px;
    line-height: 32px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-video .teaser__text {
    margin: 0 10% 0 20%;
  }
}

.teaser--box-video .teaser__button-wrapper {
  grid-area: button;
}

@media only screen and (max-width: 767px) {
  .teaser--box-video .teaser__button-wrapper {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-video .teaser__button-wrapper {
    margin: 40px 10% 0 20%;
  }
}

.teaser--box-card {
  display: -ms-grid;
  display: grid;
      grid-template-areas: "image image image" "content content content";
  -ms-grid-columns: 3fr 1fr 1fr;
  grid-template-columns: 3fr 1fr 1fr;
  padding-top: 20px;
  background-color: #ffffff;
}

.teaser--box-card .teaser__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
  -ms-grid-column: 2;
      grid-column-start: 2;
  -ms-grid-column-span: 2;
  grid-column-end: 4;
  padding: 0;
}

.teaser--box-card .a-image {
  width: 100%;
}

.teaser--box-card .teaser__content {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  display: -ms-grid;
  display: grid;
  grid-area: content;
  padding: 0 10% 10%;
}

@media only screen and (max-width: 767px) {
  .teaser--box-card .teaser__content {
        grid-template-areas: "headline" "text" "button";
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-card .teaser__content {
        grid-template-areas: "headline button" "text button";
    -ms-grid-columns: 3.5fr 0.5fr;
    grid-template-columns: 3.5fr 0.5fr;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}

.teaser--box-card .teaser__headline {
  grid-area: headline;
  padding-right: 15px;
  font-weight: 400;
  font-weight: 300;
}

@media only screen and (max-width: 767px) {
  .teaser--box-card .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--box-card .teaser__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-card .teaser__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

.teaser--box-card .teaser__text {
  grid-area: text;
  padding-right: 15px;
}

.teaser--box-card .teaser__button-wrapper {
  grid-area: button;
  padding-left: 15px;
  -ms-grid-row-align: end;
      align-self: end;
  -ms-grid-column-align: end;
      justify-self: end;
}

.teaser--box-card .teaser__button-wrapper svg {
  fill: var(--primaryColour);
}

.teaser--box-hero .teaser__content {
  position: relative;
  display: -ms-grid;
  display: grid;
}

@media only screen and (max-width: 1079px) {
  .teaser--box-hero .teaser__content {
        grid-template-areas: 'content' 'image';
    -ms-grid-rows: max-content 26px max-content;
    grid-template-rows: max-content max-content;
    row-gap: 26px;
    max-width: 750px;
    margin: 0 auto;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-hero .teaser__content {
        grid-template-areas: 'image content';
    -ms-grid-columns: 1fr 86px 1fr;
    grid-template-columns: 1fr 1fr;
    column-gap: 86px;
  }
}

.teaser--box-hero .teaser__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
}

.teaser--box-hero .teaser__image .a-image {
  box-shadow: 0 3px 6px #0000004d;
}

.teaser--box-hero .teaser__inner-wrapper {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: content;
  display: -ms-grid;
  display: grid;
      grid-template-areas: 'logo' 'headline' 'text' 'actions';
  -ms-grid-rows: max-content max-content max-content;
  grid-template-rows: max-content max-content max-content;
}

.teaser--box-hero .teaser__logo {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: logo;
}

.teaser--box-hero .teaser__logo .a-image {
  display: block;
  width: auto;
  height: auto;
  max-height: 70px;
  max-width: 150px;
}

.teaser--box-hero .teaser__logo + .teaser__headline {
  margin-top: 15px;
}

.teaser--box-hero .teaser__headline {
  grid-area: headline;
  color: inherit;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (max-width: 1079px) {
  .teaser--box-hero .teaser__headline {
    font-size: 46px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-hero .teaser__headline {
    font-size: 60px;
  }
}

.teaser--box-hero .teaser__text {
  grid-area: text;
  font-weight: 400;
  line-height: 1.2;
}

@media only screen and (max-width: 1079px) {
  .teaser--box-hero .teaser__text {
    margin-top: 10px;
    font-size: 22px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--box-hero .teaser__text {
    margin-top: 17px;
    font-size: 20px;
  }
}

.teaser--box-hero .teaser__text > p:first-child {
  margin-top: 0;
}

.teaser--box-hero .teaser__actions {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
  grid-area: actions;
}

.teaser--box-hero .teaser__actions .a-button, .teaser--box-hero .teaser__actions .o-download .download__button-wrapper .a-link, .o-download .download__button-wrapper .teaser--box-hero .teaser__actions .a-link, .teaser--box-hero .teaser__actions .o-hero:not(.hero--box-slider) .btn, .o-hero:not(.hero--box-slider) .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser--12-col-teaser-alternating .btn, .teaser--12-col-teaser-alternating .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser--12-col-external-link-teaser .btn, .teaser--12-col-external-link-teaser .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser-collection--12-col-teaser-alternating .o-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser--12-col-with-image-and-cta .btn, .teaser--12-col-with-image-and-cta .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser-collection--blog .o-teaser .btn, .teaser-collection--blog .o-teaser .teaser--box-hero .teaser__actions .btn, .teaser--box-hero .teaser__actions .teaser-collection__cta-row .a-link, .teaser-collection__cta-row .teaser--box-hero .teaser__actions .a-link, .teaser--box-hero .teaser__actions #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .teaser--box-hero .teaser__actions #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, .teaser--box-hero .teaser__actions #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelWrapper .teaser--box-hero .teaser__actions a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  margin-top: 5px;
  margin-bottom: 5px;
  margin-right: 20px;
}

.teaser--box-hero .teaser__actions svg {
  box-sizing: content-box;
}

.teaser--box-gateway {
  padding: 16px 18px 24px 24px;
  border-radius: 14px;
  background: transparent linear-gradient(102deg, #672779 0%, #6fc3b8 100%) 0 0 no-repeat padding-box;
}

.teaser--box-gateway .teaser__headline {
  font-size: 22px;
  line-height: 28px;
  font-weight: 700;
  color: #ffffff;
}

.teaser--box-gateway .teaser__button-wrapper {
  margin-top: 0;
}

@media only screen and (min-width: 768px) {
  .teaser--box-enumerating {
    display: -ms-grid;
    display: grid;
        grid-template-areas: 'spacer-left headline spacer-middle image spacer-right' 'spacer-left text spacer-middle image spacer-right' 'spacer-left text spacer-middle button spacer-right';
    -ms-grid-columns: 42px 0 calc( 53% - 67px) 0 50px 0 calc( 47% - 67px) 0 42px;
    grid-template-columns: 42px calc( 53% - 67px) 50px calc( 47% - 67px) 42px;
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
    column-gap: 0;
  }
  .teaser--box-enumerating > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .teaser--box-enumerating > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .teaser--box-enumerating > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
}

.teaser--box-enumerating .teaser__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
}

.teaser--box-enumerating .teaser__headline {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-size: 30px;
  line-height: 36px;
  font-weight: 400;
  color: #672779;
}

@media only screen and (max-width: 767px) {
  .teaser--box-enumerating .teaser__headline {
    margin-top: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-enumerating .teaser__headline {
    grid-area: headline;
  }
}

.teaser--box-enumerating .teaser__headline::before {
  counter-increment: teaser-enumerating;
  content: counter(teaser-enumerating);
  display: block;
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  margin-right: 20px;
  font-size: 30px;
  line-height: 50px;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  background-color: #672779;
  border-radius: 50%;
}

.teaser--box-enumerating .teaser__text {
  font-size: 20px;
  line-height: 30px;
}

@media only screen and (max-width: 767px) {
  .teaser--box-enumerating .teaser__text {
    margin-top: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-enumerating .teaser__text {
    grid-area: text;
    margin-top: 30px;
  }
}

.teaser--box-enumerating .teaser__text > *:first-child {
  margin-top: 0;
}

.teaser--box-enumerating .teaser__text > *:last-child {
  margin-bottom: 0;
}

.teaser--box-enumerating .teaser__button-wrapper {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .teaser--box-enumerating .teaser__button-wrapper {
    margin-top: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser--box-enumerating .teaser__button-wrapper {
    grid-area: button;
    margin-top: 30px;
  }
}

@media only screen and (max-width: 767px){
  .o-hero:not(.hero--box-slider) .teaser__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .o-hero:not(.hero--box-slider) .teaser__text {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .o-hero:not(.hero--box-slider) .teaser__button-wrapper {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .tabs__content > .teaser-collection__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-video .teaser__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-video .teaser__button-wrapper {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__button-wrapper {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .teaser--box-hero .teaser__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-enumerating .teaser__headline {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-enumerating .teaser__button-wrapper {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
}

.teaser--box-enumerating .teaser__button-wrapper .a-button, .teaser--box-enumerating .teaser__button-wrapper .o-download .download__button-wrapper .a-link, .o-download .download__button-wrapper .teaser--box-enumerating .teaser__button-wrapper .a-link, .teaser--box-enumerating .teaser__button-wrapper .o-hero:not(.hero--box-slider) .btn, .o-hero:not(.hero--box-slider) .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser--12-col-teaser-alternating .btn, .teaser--12-col-teaser-alternating .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser--12-col-external-link-teaser .btn, .teaser--12-col-external-link-teaser .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser-collection--12-col-teaser-alternating .o-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser--12-col-with-image-and-cta .btn, .teaser--12-col-with-image-and-cta .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser-collection--blog .o-teaser .btn, .teaser-collection--blog .o-teaser .teaser--box-enumerating .teaser__button-wrapper .btn, .teaser--box-enumerating .teaser__button-wrapper .teaser-collection__cta-row .a-link, .teaser-collection__cta-row .teaser--box-enumerating .teaser__button-wrapper .a-link, .teaser--box-enumerating .teaser__button-wrapper #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .teaser--box-enumerating .teaser__button-wrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, .teaser--box-enumerating .teaser__button-wrapper #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelWrapper .teaser--box-enumerating .teaser__button-wrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  margin-top: 0;
}

.teaser-collection--video .teaser__headline {
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
}

.teaser-collection--video .teaser__text {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
}

.blog-article__aside .teaser__headline {
  color: #363936;
  font-size: 13px;
  line-height: 17px;
}

.blog-article__aside .teaser__text {
  color: #363936;
  font-size: 12px;
  line-height: 16px;
}

.teaser-collection--4-col-download-teaser-1x1 .download__title,
.teaser-collection--4-col-download-teaser-16x9 .download__title {
  color: #363936;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__title,
  .teaser-collection--4-col-download-teaser-16x9 .download__title {
    font-size: 16px;
    line-height: 16px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__title,
  .teaser-collection--4-col-download-teaser-16x9 .download__title {
    font-size: 26px;
    line-height: 32px;
  }
}

.teaser-collection__headline, .teaser-collection--logo-wall .teaser-collection__headline, .blog-article__headline {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .teaser-collection__headline, .teaser-collection--logo-wall .teaser-collection__headline, .blog-article__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection__headline, .teaser-collection--logo-wall .teaser-collection__headline, .blog-article__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection__headline, .teaser-collection--logo-wall .teaser-collection__headline, .blog-article__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

.teaser-collection__detailtext {
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .teaser-collection__detailtext {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection__detailtext {
    font-size: 23px;
    line-height: 32px;
  }
}

/**
 * @description: generic styling for ...
 * - 6-col-press-teasercollection
 * - teaser-collection--12-col-teaser-50-50
 */
.teaser-collection--12-col-teaser-50-50 .teaser-collection__teaser-wrapper, .teaser-collection--6-col-press-teaser .teaser-collection__teaser-wrapper, .teaser-collection--blog .teaser-collection__teaser-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser, .teaser-collection--6-col-press-teaser .o-teaser, .teaser-collection--blog .o-teaser {
    position: relative;
    margin-top: 50px;
  }
  .teaser-collection--12-col-teaser-50-50 .o-teaser:first-child, .teaser-collection--6-col-press-teaser .o-teaser:first-child, .teaser-collection--blog .o-teaser:first-child {
    margin-top: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser, .teaser-collection--6-col-press-teaser .o-teaser, .teaser-collection--blog .o-teaser {
    position: relative;
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser, .teaser-collection--6-col-press-teaser .o-teaser, .teaser-collection--blog .o-teaser {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
    position: relative;
    margin-top: 50px;
  }
  .teaser-collection--12-col-teaser-50-50 .o-teaser:nth-child(1), .teaser-collection--6-col-press-teaser .o-teaser:nth-child(1), .teaser-collection--blog .o-teaser:nth-child(1), .teaser-collection--12-col-teaser-50-50 .o-teaser:nth-child(2), .teaser-collection--6-col-press-teaser .o-teaser:nth-child(2), .teaser-collection--blog .o-teaser:nth-child(2) {
    margin-top: 0;
  }
}

.teaser-collection--12-col-teaser-50-50 .o-teaser::after, .teaser-collection--6-col-press-teaser .o-teaser::after, .teaser-collection--blog .o-teaser::after {
  position: absolute;
  content: '';
  bottom: 0;
  border-right: 4px solid var(--secondaryColour);
  height: 25%;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser::after, .teaser-collection--6-col-press-teaser .o-teaser::after, .teaser-collection--blog .o-teaser::after {
    right: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser::after, .teaser-collection--6-col-press-teaser .o-teaser::after, .teaser-collection--blog .o-teaser::after {
    right: 0;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--blog .o-teaser .btn {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--blog .o-teaser .btn {
    margin-top: 40px;
  }
}

.teaser-collection--usp-reel .teaser-collection__cta-row, .teaser-collection--logo-wall .teaser-collection__cta-row, .teaser-collection--6-col-press-teaser .teaser-collection__cta-row {
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--usp-reel .teaser-collection__cta-row, .teaser-collection--logo-wall .teaser-collection__cta-row, .teaser-collection--6-col-press-teaser .teaser-collection__cta-row {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser-collection__cta-row, .teaser-collection--logo-wall .teaser-collection__cta-row, .teaser-collection--6-col-press-teaser .teaser-collection__cta-row {
    margin-top: 35px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser-collection__cta-row, .teaser-collection--logo-wall .teaser-collection__cta-row, .teaser-collection--6-col-press-teaser .teaser-collection__cta-row {
    margin-top: 45px;
  }
}

/**
 *
 */
@media only screen and (max-width: 767px) {
  .o-teaser-collection {
    margin: 20px 15px 0;
  }
}

@media only screen and (min-width: 768px) {
  .o-teaser-collection {
    margin-top: 60px;
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 767px) {
  .o-teaser-collection {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1079px) {
  .o-teaser-collection {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1080px) {
  .o-teaser-collection {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.o-teaser-collection .teaser__text a:link,
.o-teaser-collection .teaser__text a:visited,
.o-teaser-collection .teaser__text a:hover,
.o-teaser-collection .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.o-teaser-collection .teaser__text p:first-child {
  margin-top: 0;
}

.o-teaser-collection .teaser__text p:last-child {
  margin-bottom: 0;
}

.o-teaser-collection .teaser__text ul,
.o-teaser-collection .teaser__text ol,
.o-teaser-collection .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

.teaser-collection__detailtext a:link,
.teaser-collection__detailtext a:visited,
.teaser-collection__detailtext a:hover,
.teaser-collection__detailtext a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser-collection__detailtext p:first-child {
  margin-top: 0;
}

.teaser-collection__detailtext p:last-child {
  margin-bottom: 0;
}

.teaser-collection__detailtext ul,
.teaser-collection__detailtext ol,
.teaser-collection__detailtext .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (min-width: 768px) {
  .teaser-collection__detailtext {
    margin-top: 60px;
  }
}

.teaser-collection__cta-row .a-link {
  padding-right: 60px;
  padding-left: 60px;
}

.teaser-collection--video .teaser-collection__headline {
  padding: 35px 20px;
  color: #ffffff;
  background-color: var(--primaryColour);
}

.teaser-collection--video .teaser-collection__teaser-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: -15px;
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--video .o-teaser {
    position: relative;
    margin-top: 50px;
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 25% - 30px);
  }
  .teaser-collection--video .o-teaser::after {
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    border: 1px solid var(--secondaryColour);
    height: 25%;
  }
}

.teaser-collection--video .teaser__content {
  padding: 8px 20px 10px;
}

.teaser-collection--video .teaser__text {
  margin-top: 15px;
  color: #363936;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--video .teaser__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--video .teaser__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--video .teaser__text {
    font-size: 16px;
    line-height: 25px;
  }
}

/**
 * @description: Teasercollection with USP-Reel teasers
 */
.teaser-collection--usp-reel {
  color: #363936;
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel {
    margin-top: 90px;
  }
}

.teaser-collection--usp-reel .teaser-collection__headline {
  font-weight: 700;
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser-collection__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser-collection__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser-collection__detailtext {
    margin-top: 30px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser-collection__teaser-wrapper {
    display: flex;
    margin: 60px -15px 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser-collection__teaser-wrapper {
    display: flex;
    margin: 120px -15px 0;
  }
}

.teaser-collection--usp-reel .o-teaser {
  display: block;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--usp-reel .o-teaser {
    margin-top: 80px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--usp-reel .o-teaser {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 33.3333333333% - 30px);
    margin: 0 15px;
  }
}

.teaser-collection--usp-reel .teaser__content {
  position: relative;
}

.teaser-collection--usp-reel .teaser__badge {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  background-color: var(--primaryColour);
  border-radius: 50%;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--usp-reel .teaser__badge {
    top: -58px;
    left: 15px;
    width: 115px;
    height: 115px;
    margin-top: 0;
    font-size: 35px;
    line-height: 35px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser__badge {
    top: -50px;
    left: 20px;
    width: 82px;
    height: 82px;
    margin-top: 10px;
    font-size: 24px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser__badge {
    top: -80px;
    left: 20px;
    width: 140px;
    height: 140px;
    margin-top: 10px;
    font-size: 46px;
    line-height: 46px;
  }
}

.teaser-collection--usp-reel .teaser__headline {
  background-color: #6fc3b8;
  color: #363936;
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--usp-reel .teaser__headline {
    padding: 80px 15px 10px;
    font-size: 16px;
    line-height: 16px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser__headline {
    padding: 46px 20px 10px;
    font-size: 16px;
    line-height: 17px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser__headline {
    padding: 95px 20px 10px;
    font-size: 21px;
    line-height: 22px;
  }
}

.teaser-collection--usp-reel .teaser__text {
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--usp-reel .teaser__text {
    margin-top: 20px;
    padding: 0;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--usp-reel .teaser__text {
    margin-top: 15px;
    padding: 0;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--usp-reel .teaser__text {
    margin-top: 15px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 25px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--logo-wall {
    margin-top: 50px;
  }
}

.teaser-collection--logo-wall .teaser-collection__teaser-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  filter: grayscale(100%);
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--logo-wall .teaser-collection__teaser-wrapper {
    margin: 0 -15px 0;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--logo-wall .teaser-collection__headline + .teaser-collection__teaser-wrapper {
    margin-top: 12.5px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--logo-wall .teaser-collection__headline + .teaser-collection__teaser-wrapper {
    margin-top: 12px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--logo-wall .teaser-collection__headline + .teaser-collection__teaser-wrapper {
    margin-top: 45px;
  }
}

.teaser-collection--logo-wall .m-image__box {
  position: relative;
  overflow: hidden;
}

.teaser-collection--logo-wall .m-image__box:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

@media only screen and (max-width: 767px) {
  .teaser-collection--logo-wall .m-image__box {
    margin-top: 12.5px;
    margin-bottom: 12.5px;
    margin-left: 10px;
    width: calc( 33.3333333333% - 10px);
  }
  .teaser-collection--logo-wall .m-image__box:nth-child(3n + 1) {
    margin-left: 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--logo-wall .m-image__box {
    width: calc( 16.6666666667% - 15px);
    margin-left: 15px;
  }
  .teaser-collection--logo-wall .m-image__box:nth-child(6n + 1) {
    margin-left: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--logo-wall .m-image__box {
    width: calc( 16.6666666667% - 30px);
    margin-left: 30px;
  }
  .teaser-collection--logo-wall .m-image__box:nth-child(6n + 1) {
    margin-left: 0;
  }
}

/**
 * @description: Banner with Contacts/Agents
 */
.teaser-collection--contact-invites {
  padding: 25px 0 30px;
  background-color: var(--primaryColour);
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites {
    margin: 75px 0 0;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--contact-invites {
    margin: 75px 0 0;
    max-width: none;
  }
}

.teaser-collection--contact-invites > * {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites > * {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--contact-invites > * {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--contact-invites > * {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites .teaser-collection__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--contact-invites .teaser-collection__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--contact-invites .teaser-collection__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites .teaser-collection__detailtext {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--contact-invites .teaser-collection__detailtext {
    font-size: 14px;
    line-height: 20px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--contact-invites .teaser-collection__detailtext {
    font-size: 23px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites .teaser-collection__detailtext {
    margin-top: 8px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--contact-invites .teaser-collection__detailtext {
    margin-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--contact-invites .teaser-collection__teaser-wrapper {
    display: -ms-grid;
    display: grid;
    grid-column-gap: 30px;
  }
}

.teaser-collection--contact-invites .o-teaser {
  display: block;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites .teaser__image {
    width: 160px;
    height: 160px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--contact-invites .teaser__image {
    width: calc( 33.3333333333% - 30px);
    height: auto;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--contact-invites .teaser__image {
    width: 160px;
    height: 160px;
  }
}

.teaser-collection--contact-invites .teaser__image img {
  border-radius: 50%;
  width: 100%;
}

.teaser-collection--contact-invites .m-image__box {
  position: relative;
  overflow: hidden;
}

.teaser-collection--contact-invites .m-image__box:before {
  display: block;
  padding-top: calc(100%);
  content: "";
}

.teaser-collection--contact-invites .teaser__text a:link,
.teaser-collection--contact-invites .teaser__text a:visited,
.teaser-collection--contact-invites .teaser__text a:hover,
.teaser-collection--contact-invites .teaser__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.teaser-collection--contact-invites .teaser__text p:first-child {
  margin-top: 0;
}

.teaser-collection--contact-invites .teaser__text p:last-child {
  margin-bottom: 0;
}

.teaser-collection--contact-invites .teaser__text ul,
.teaser-collection--contact-invites .teaser__text ol,
.teaser-collection--contact-invites .teaser__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--contact-invites .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--contact-invites .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--contact-invites .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--6-col-contact-invites .teaser-collection__teaser-wrapper {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    margin-top: 30px;
  }
}

.teaser-collection--6-col-contact-invites .o-teaser {
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--6-col-contact-invites .o-teaser {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--6-col-contact-invites .o-teaser {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
  }
}

.teaser-collection--6-col-contact-invites .teaser__content {
  width: 66.6666666667%;
  color: #ffffff;
}

@media only screen and (min-width: 768px) {
  .teaser-collection--6-col-contact-invites .teaser__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--6-col-contact-invites .teaser__image {
    width: 85px;
    height: 85px;
    max-width: 85px;
    max-height: 85px;
    flex: 1 1 0;
    margin-right: 15px;
    margin-bottom: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--4-col-contact-invites {
    padding-bottom: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-contact-invites {
    padding-bottom: 40px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-contact-invites {
    padding-bottom: 50px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-contact-invites .teaser-collection__teaser-wrapper {
    margin-top: 25px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-contact-invites .teaser-collection__teaser-wrapper {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 60px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--4-col-contact-invites .o-teaser {
    *zoom: 1;
    margin-top: 30px;
  }
  .teaser-collection--4-col-contact-invites .o-teaser::before, .teaser-collection--4-col-contact-invites .o-teaser::after {
    content: ' ';
    display: table;
  }
  .teaser-collection--4-col-contact-invites .o-teaser::after {
    clear: both;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-contact-invites .o-teaser {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-contact-invites .o-teaser + .o-teaser {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--4-col-contact-invites .teaser__image {
    width: 85px;
    height: 85px;
    float: left;
    margin-right: 15px;
    margin-bottom: 15px;
  }
}

.teaser-collection--4-col-contact-invites .teaser__content {
  color: #ffffff;
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-contact-invites .teaser__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 30px;
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-contact-invites .teaser__content {
    margin-top: 15px;
  }
}

/**
 * @description: Teaser-Collection 50-50
 */
@media only screen and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 {
    margin-top: 60px;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-50-50 .o-teaser:nth-child(1), .teaser-collection--12-col-teaser-50-50 .o-teaser:nth-child(2) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__image {
    margin: 0 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__content {
    margin: 30px 15px 0;
    padding: 10px 30px 35px 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__content {
    margin-top: 30px;
    padding: 10px 30px 35px 15px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__content {
    padding: 15px 30px 35px;
  }
}

.teaser-collection--12-col-teaser-50-50 .teaser__headline {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__text {
    margin-top: 20px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__text {
    margin-top: 20px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--12-col-teaser-50-50 .teaser__text {
    margin-top: 5px;
    font-size: 16px;
    line-height: 25px;
  }
}

/**
 * @description: Teasercollection, alternating
 */
@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-alternating .o-teaser:nth-child(odd) .teaser__image {
    margin-right: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-alternating .o-teaser:nth-child(odd) .teaser__content {
    border-right: 4px solid var(--secondaryColour);
    margin-left: 15px;
  }
}

.teaser-collection--12-col-teaser-alternating .o-teaser:nth-child(even) {
  flex-direction: row-reverse;
}

@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-alternating .o-teaser:nth-child(even) .teaser__image {
    margin-left: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--12-col-teaser-alternating .o-teaser:nth-child(even) .teaser__content {
    border-left: 4px solid var(--secondaryColour);
    margin-right: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--12-col-teaser-alternating .o-teaser .teaser__content {
    width: calc( 100% - 15px);
    margin-top: 50px;
    margin-left: 15px;
    padding-right: 15px;
    border-right: 4px solid var(--secondaryColour);
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--quote .teaser-collection__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--quote .teaser-collection__headline {
    font-size: 20px;
    line-height: 23px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--quote .teaser-collection__headline {
    font-size: 40px;
    line-height: 46px;
  }
}

.teaser-collection--quote .teaser-collection__detailtext {
  margin-top: 5px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--quote .teaser-collection__detailtext {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--quote .teaser-collection__detailtext {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--quote .teaser-collection__detailtext {
    font-size: 26px;
    line-height: 32px;
  }
}

.teaser-collection--quote .o-quote {
  padding-left: 0;
  padding-right: 0;
}

.teaser-collection--quote .quote__text {
  padding-top: 0;
}

.teaser-collection--4-col-download-teaser-1x1 .teaser-collection__teaser-wrapper,
.teaser-collection--4-col-download-teaser-16x9 .teaser-collection__teaser-wrapper {
  margin: 0 -15px;
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-download-teaser-1x1 .teaser-collection__teaser-wrapper,
  .teaser-collection--4-col-download-teaser-16x9 .teaser-collection__teaser-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
}

.teaser-collection--4-col-download-teaser-1x1 .o-download,
.teaser-collection--4-col-download-teaser-16x9 .o-download {
  display: flex;
  flex-direction: column;
  margin: 50px 15px 0;
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-download-teaser-1x1 .o-download,
  .teaser-collection--4-col-download-teaser-16x9 .o-download {
    width: calc( 33.3333333333% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-download-teaser-1x1 .o-download:nth-child(1), .teaser-collection--4-col-download-teaser-1x1 .o-download:nth-child(2), .teaser-collection--4-col-download-teaser-1x1 .o-download:nth-child(3),
  .teaser-collection--4-col-download-teaser-16x9 .o-download:nth-child(1),
  .teaser-collection--4-col-download-teaser-16x9 .o-download:nth-child(2),
  .teaser-collection--4-col-download-teaser-16x9 .o-download:nth-child(3) {
    margin-top: 0;
  }
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__text,
  .teaser-collection--4-col-download-teaser-1x1 .download__file-size,
  .teaser-collection--4-col-download-teaser-16x9 .download__text,
  .teaser-collection--4-col-download-teaser-16x9 .download__file-size {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__text,
  .teaser-collection--4-col-download-teaser-1x1 .download__file-size,
  .teaser-collection--4-col-download-teaser-16x9 .download__text,
  .teaser-collection--4-col-download-teaser-16x9 .download__file-size {
    color: #363936;
  }
}

@media only screen and (min-width: 1080px) and (max-width: 767px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__text,
  .teaser-collection--4-col-download-teaser-1x1 .download__file-size,
  .teaser-collection--4-col-download-teaser-16x9 .download__text,
  .teaser-collection--4-col-download-teaser-16x9 .download__file-size {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__text,
  .teaser-collection--4-col-download-teaser-1x1 .download__file-size,
  .teaser-collection--4-col-download-teaser-16x9 .download__text,
  .teaser-collection--4-col-download-teaser-16x9 .download__file-size {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) and (min-width: 1080px) {
  .teaser-collection--4-col-download-teaser-1x1 .download__text,
  .teaser-collection--4-col-download-teaser-1x1 .download__file-size,
  .teaser-collection--4-col-download-teaser-16x9 .download__text,
  .teaser-collection--4-col-download-teaser-16x9 .download__file-size {
    font-size: 16px;
    line-height: 25px;
  }
}

.teaser-collection--4-col-download-teaser-1x1 .download__title {
  flex-grow: 1;
  max-height: 64px;
}

/**
 * @description: Download/Factsheet in 4-col variant
 * (according designs for a 3-col variant)
 */
.teaser-collection--4-col-download-teaser-16x9 .download__text {
  flex-grow: 1;
}

/**
 * @description: 6-col-press-teaser, also: "Caption and Copy"
 */
.teaser-collection--6-col-press-teaser .o-teaser {
  padding: 10px 30px;
}

.teaser-collection--6-col-press-teaser .teaser__headline {
  font-size: 20px;
  line-height: 30px;
}

.teaser-collection--6-col-press-teaser .teaser__text {
  margin-top: 5px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--6-col-press-teaser .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--6-col-press-teaser .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--6-col-press-teaser .teaser__text {
    font-size: 12px;
    line-height: 18px;
  }
}

/**
 * @description: 4-col-video-teaser
 * Desktop: 3 in a row
 * Tablet: 2 in a row
 * Mobile: 1 in a row
 */
@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 + .teaser-collection--4-col-video-teaser {
    margin-top: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--50-50 + .teaser-collection--4-col-video-teaser {
    margin-top: 10px;
  }
}

.teaser-collection--4-col-video-teaser .teaser-collection__teaser-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--4-col-video-teaser .o-teaser {
    margin: 30px 15px 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--4-col-video-teaser .o-teaser {
    margin: 30px 15px 0;
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-video-teaser .o-teaser {
    margin: 50px 15px 0;
    width: calc( 33.3333333333% - 30px);
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--4-col-video-teaser .o-teaser:nth-child(1), .teaser-collection--4-col-video-teaser .o-teaser:nth-child(2) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--4-col-video-teaser .o-teaser:nth-child(3) {
    margin-top: 0;
  }
}

.teaser-collection--12-col-video-teaser .o-teaser {
  margin-top: 20px;
  margin-right: 0;
  margin-left: 0;
  padding: 0;
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--50-50 + .teaser-collection--video-collection-promo {
    margin-top: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--50-50 + .teaser-collection--video-collection-promo {
    margin-top: 10px;
  }
}

.teaser-collection--video-collection-promo .teaser-collection__teaser-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

.teaser-collection--video-collection-promo .o-teaser {
  display: block;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--video-collection-promo .o-teaser {
    width: 100%;
    margin: 30px 15px 0;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--video-collection-promo .o-teaser {
    margin: 30px 15px 0;
    width: calc( 50% - 30px);
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--video-collection-promo .o-teaser {
    margin: 50px 15px 0;
    width: calc( 33.3333333333% - 30px);
  }
}

.teaser-collection--video-collection-promo .o-teaser:first-child {
  width: 100%;
  margin: 0 15px;
  padding: 0;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content {
    margin-top: 0;
  }
}

.teaser-collection--video-collection-promo .o-teaser:first-child .teaser__content::after {
  border-right: none;
}

@media only screen and (min-width: 768px) {
  .teaser-collection--video-collection-promo .o-teaser:nth-child(1n+2) {
    display: flex;
    flex-direction: column;
  }
  .teaser-collection--video-collection-promo .o-teaser:nth-child(1n+2) .teaser__content {
    flex: 1 1 0;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--person--6-col .teaser-collection__teaser-wrapper {
    margin-top: -20px;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}

/**
 *
 */
@media only screen and (min-width: 1080px) {
  .teaser-collection--search-results {
    padding-left: 0;
    padding-right: 0;
  }
}

/**
 *
 * @description: Handling of margins between organisms.
 */
@media only screen and (max-width: 767px) {
  .teaser--page-title ~ *:not(.o-footer) {
    margin-top: 60px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title ~ *:not(.o-footer) {
    margin-top: 60px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title ~ *:not(.o-footer) {
    margin-top: 100px;
  }
}

@media only screen and (max-width: 767px) {
  .o-hero ~ *:not(.o-footer) {
    margin-top: 90px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-hero ~ *:not(.o-footer) {
    margin-top: 90px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-hero ~ *:not(.o-footer) {
    margin-top: 190px;
  }
}

.o-hero ~ div[class*=" teaser-collection--box"] {
  margin-top: 0;
}

@media only screen and (max-width: 1079px) {
  .o-hero ~ div[class*=" teaser-collection--box"] {
    margin: 0;
  }
}

div[class*=" teaser-collection--box"] + .teaser-collection--contact-invites {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--quote + div[class*=" teaser-collection--box"] {
    margin-top: 90px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--quote + div[class*=" teaser-collection--box"] {
    margin-top: 90px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--quote + div[class*=" teaser-collection--box"] {
    margin-top: 190px;
  }
}

@media only screen and (max-width: 767px) {
  .page .o-hero + * {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .page .o-hero + * {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .page .o-hero + * {
    margin-top: 220px;
  }
}

@media only screen and (max-width: 767px) {
  .page .o-hero + .teaser-collection--logo-wall {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .page .o-hero + .teaser-collection--logo-wall {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .page .o-hero + .teaser-collection--logo-wall {
    margin-top: 45px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--12-col-with-image-and-cta + .o-teaser-collection,
  .teaser-collection--12-col-video-teaser + .teaser-collection--4-col-video-teaser {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--12-col-with-image-and-cta + .o-teaser-collection,
  .teaser-collection--12-col-video-teaser + .teaser-collection--4-col-video-teaser {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--12-col-with-image-and-cta + .o-teaser-collection,
  .teaser-collection--12-col-video-teaser + .teaser-collection--4-col-video-teaser {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser--page-title + .teaser--12-col-with-image-and-cta {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser--page-title + .teaser--12-col-with-image-and-cta {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser--page-title + .teaser--12-col-with-image-and-cta {
    margin-top: 60px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--blog .o-teaser {
    margin-top: 30px;
  }
}

.teaser-collection--blog .teaser__content {
  padding: 15px 30px 35px;
}

.teaser-collection--blog .teaser__headline {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--blog .teaser__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--blog .teaser__headline {
    font-size: 16px;
    line-height: 18px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--blog .teaser__headline {
    font-size: 26px;
    line-height: 32px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--blog .teaser__text {
    margin-top: 20px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .teaser-collection--blog .teaser__text {
    margin-top: 20px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--blog .teaser__text {
    margin-top: 5px;
    font-size: 16px;
    line-height: 25px;
  }
}

.teaser-collection--blog .m-tag-list {
  margin-top: 30px;
}

.teaser-collection--box-cards {
  padding: 15px 0;
  background-color: #6fc3b8;
  max-width: 100%;
}

.teaser-collection--box-cards .teaser-collection__teaser-wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--box-cards .teaser-collection__teaser-wrapper {
    margin-right: auto;
    margin-left: auto;
    max-width: 1234px;
    padding: 140px 0 95px;
  }
}

.teaser-collection--box-cards .o-teaser {
  margin: 15px;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--box-cards .o-teaser {
    width: calc( 100% - 30px);
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-cards .o-teaser {
    width: calc( 50% - 30px);
  }
}

div[class*=" teaser-collection--box"] {
  margin-top: 0;
}

div[class*=" teaser-collection--box"] + .o-tabs--box {
  margin-top: 0;
}

.teaser-collection--box-opener {
  background-color: var(--primaryColour);
}

.teaser-collection--box-opener .teaser__headline {
  color: #ffffff;
}

.teaser-collection--box-opener .teaser__text a:hover,
.teaser-collection--box-opener .teaser__text a:link,
.teaser-collection--box-opener .teaser__text a:visited,
.teaser-collection--box-opener .teaser__text a:active {
  color: #ffffff;
  text-decoration: underline;
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--box-opener {
    max-width: 100%;
  }
  .teaser-collection--box-opener .teaser-collection__teaser-wrapper {
    margin: 0 auto;
    max-width: 1234px;
    padding: 170px 0 110px;
  }
}

.teaser-collection--box-video {
  background: transparent linear-gradient(121deg, #ffffff 0%, #ffffff 70%, #6fc3b8 100%) 0% 0% no-repeat padding-box;
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .teaser-collection--box-video {
    margin: 0;
    padding: 0 4.1666666667%;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-video {
    padding-right: 0;
    padding-left: 0;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--box-video {
    max-width: 100%;
  }
  .teaser-collection--box-video .teaser-collection__teaser-wrapper {
    margin-right: auto;
    margin-left: auto;
    max-width: 1234px;
  }
}

.teaser-collection--box-video .teaser__image {
  position: relative;
}

.teaser-collection--box-video .teaser__image::after {
  content: ' ';
  position: absolute;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NiIgaGVpZ2h0PSI3NiIgdmlld0JveD0iMCAwIDc2IDc2Ij4KICA8ZyBpZD0iR3JvdXBfMTYiIGRhdGEtbmFtZT0iR3JvdXAgMTYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04NzUgLTE4NzYpIj4KICAgIDxnIGlkPSJFbGxpcHNlXzQiIGRhdGEtbmFtZT0iRWxsaXBzZSA0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4NzUgMTg3NikiIGZpbGw9IiM2NzI3NzkiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxIj4KICAgICAgPGNpcmNsZSBjeD0iMzgiIGN5PSIzOCIgcj0iMzgiIHN0cm9rZT0ibm9uZSIvPgogICAgICA8Y2lyY2xlIGN4PSIzOCIgY3k9IjM4IiByPSIzNy41IiBmaWxsPSJub25lIi8+CiAgICA8L2c+CiAgICA8ZyBpZD0iUG9seWdvbl8xIiBkYXRhLW5hbWU9IlBvbHlnb24gMSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTMyLjU5OCAxODk0KSByb3RhdGUoOTApIiBmaWxsPSIjNjcyNzc5Ij4KICAgICAgPHBhdGggZD0iTSAzOS4wMzAzNzI2MTk2Mjg5MSAyNy41OTc2NTgxNTczNDg2MyBMIDAuOTY5NjI4ODEwODgyNTY4NCAyNy41OTc2NTgxNTczNDg2MyBMIDIwIDAuODYyMjEzMTk0MzcwMjY5OCBMIDM5LjAzMDM3MjYxOTYyODkxIDI3LjU5NzY1ODE1NzM0ODYzIFoiIHN0cm9rZT0ibm9uZSIvPgogICAgICA8cGF0aCBkPSJNIDIwIDEuNzI0NDQxNTI4MzIwMzEyIEwgMS45MzkyNjYyMDQ4MzM5ODQgMjcuMDk3NjU4MTU3MzQ4NjMgTCAzOC4wNjA3MzM3OTUxNjYwMiAyNy4wOTc2NTgxNTczNDg2MyBMIDIwIDEuNzI0NDQxNTI4MzIwMzEyIE0gMjAgLTEuOTA3MzQ4NjMyODEyNWUtMDYgTCA0MCAyOC4wOTc2NTgxNTczNDg2MyBMIDAgMjguMDk3NjU4MTU3MzQ4NjMgTCAyMCAtMS45MDczNDg2MzI4MTI1ZS0wNiBaIiBzdHJva2U9Im5vbmUiIGZpbGw9IiNmZmYiLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  padding-top: calc( 56.25% / 2);
  top: 0;
  left: 50%;
  transform: translate(-50%, 50%);
}

@media only screen and (max-width: 1079px) {
  .teaser-collection--box-video .teaser__image::after {
    width: 50px;
  }
}

@media only screen and (min-width: 1080px) {
  .teaser-collection--box-video .teaser__image::after {
    width: 76px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-gateway {
    display: -ms-grid;
    display: grid;
        grid-template-areas: 'caption caption' 'text teasers';
    column-gap: 94px;
    row-gap: 60px;
  }
  .teaser-collection--box-gateway > .tabs__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .teaser-collection--box-gateway > .tabs__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .teaser-collection--box-gateway > .teaser__text {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .teaser-collection--box-gateway > .teaser__text {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .teaser-collection--box-gateway > .teaser__text {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .teaser-collection--box-gateway > .teaser__text {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--box-gateway .teaser-collection__caption {
    font-size: 18px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-gateway .teaser-collection__caption {
    grid-area: caption;
    font-size: 30px;
    line-height: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--box-gateway .teaser-collection__detailtext {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-gateway .teaser-collection__detailtext {
    grid-area: text;
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .teaser-collection--box-gateway .teaser-collection__teaser-wrapper {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-gateway .teaser-collection__teaser-wrapper {
    grid-area: teasers;
  }
}

.teaser-collection--box-gateway .teaser--box-gateway + .teaser--box-gateway {
  margin-top: 10px;
}

.teaser-collection--box-enumerating {
  counter-reset: teaser-enumerating;
}

.teaser-collection--box-enumerating .teaser--box-enumerating:first-of-type {
  margin-top: 100px;
}

.teaser-collection--box-enumerating .teaser--box-enumerating + .teaser--box-enumerating {
  margin-top: 125px;
}

@media only screen and (min-width: 768px) {
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) {
        grid-template-areas: 'spacer-left image spacer-middle headline spacer-right' 'spacer-left image spacer-middle text spacer-right' 'spacer-left button spacer-middle text spacer-right';
    -ms-grid-columns: 42px calc( 47% - 67px) 50px calc( 53% - 67px) 42px;
    grid-template-columns: 42px calc( 47% - 67px) 50px calc( 53% - 67px) 42px;
  }
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
  .teaser-collection--box-enumerating .teaser--box-enumerating:nth-child(even) > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 4;
  }
}

@media only screen and (max-width: 767px) {
  .o-partner-detail {
    margin: 30px 15px;
  }
}

@media only screen and (min-width: 768px) {
  .o-partner-detail {
    box-sizing: border-box;
    width: 100%;
    margin-top: 40px;
    display: -ms-grid;
    display: grid;
        grid-template-areas: 'image content' 'linklist content';
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: auto 1fr;
    grid-template-rows: auto 1fr;
  }
}

@media only screen and (min-width: 768px) and (max-width: 767px) {
  .o-partner-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1079px) {
  .o-partner-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1080px) {
  .o-partner-detail {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: image;
  }
}

.partner-detail__image .a-image {
  display: block;
  width: 100%;
}

.partner-detail__link-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

@media only screen and (max-width: 767px) {
  .partner-detail__link-list {
    margin-top: 40px;
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__link-list {
    grid-area: linklist;
    font-size: 20px;
    line-height: 36px;
  }
}

.partner-detail__link-list-item {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  .partner-detail__link-list-item {
    margin-top: 10px;
  }
  .partner-detail__link-list-item span {
    padding-left: 10px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__link-list-item {
    margin-top: 20px;
  }
  .partner-detail__link-list-item span {
    padding-left: 30px;
  }
}

@media only screen and (max-width: 767px) {
  .partner-detail__link-list-item--location svg {
    transform: translate(3px, 0);
    height: 20px;
    width: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__link-list-item--location svg {
    height: 40px;
  }
}

.partner-detail__link-list-item--location #icon-location {
  fill: var(--primaryColour);
}

@media only screen and (max-width: 767px) {
  .partner-detail__link-list-item--subject svg {
    height: 20px;
    width: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__link-list-item--subject svg {
    height: 40px;
  }
}

.partner-detail__partner-status--platinum #icon-ribbon {
  fill: #a0b2c6;
}

.partner-detail__partner-status--gold #icon-ribbon {
  fill: #d4af37;
}

.partner-detail__partner-status--silver #icon-ribbon {
  fill: #bec2cb;
}

.partner-detail__partner-status--registered #icon-ribbon {
  fill: #41aa6a;
}

.partner-detail__partner-certified #icon-ribbon {
  fill: #672779;
}

@media only screen and (max-width: 767px) {
  .partner-detail__link-list-item--website svg {
    height: 20px;
    width: 20px;
  }
}

.partner-detail__link-list-item--website .a-link {
  color: #363936;
}

.partner-detail__link-list-item--website #icon-link {
  fill: var(--primaryColour);
}

@media only screen and (max-width: 767px) {
  .partner-detail__content {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__content {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: content;
  }
}

.partner-detail__text {
  overflow: hidden;
}

.partner-detail__text a:link,
.partner-detail__text a:visited,
.partner-detail__text a:hover,
.partner-detail__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.partner-detail__text p:first-child {
  margin-top: 0;
}

.partner-detail__text p:last-child {
  margin-bottom: 0;
}

.partner-detail__text ul,
.partner-detail__text ol,
.partner-detail__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .partner-detail__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__text {
    padding: 0 15px;
    border-right: 4px solid var(--secondaryColour);
    font-size: 20px;
    line-height: 36px;
  }
}

.partner-detail__text[aria-expanded='false'] {
  height: 15em;
}

.partner-detail__toggle-buttons {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .partner-detail__toggle-buttons {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 768px) {
  .partner-detail__toggle-buttons {
    margin-top: 80px;
  }
}

.partner-detail__toggle-buttons[aria-expanded='false'] .partner-detail__read-more {
  display: inline-block;
}

.partner-detail__toggle-buttons[aria-expanded='false'] .partner-detail__read-less {
  display: none;
}

.partner-detail__toggle-buttons[aria-expanded='true'] .partner-detail__read-more {
  display: none;
}

.partner-detail__toggle-buttons[aria-expanded='true'] .partner-detail__read-less {
  display: inline-block;
}

.partner-detail__toggle-buttons .a-button, .partner-detail__toggle-buttons .o-download .download__button-wrapper .a-link, .o-download .download__button-wrapper .partner-detail__toggle-buttons .a-link, .partner-detail__toggle-buttons .o-hero:not(.hero--box-slider) .btn, .o-hero:not(.hero--box-slider) .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser--12-col-teaser-alternating .btn, .teaser--12-col-teaser-alternating .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser--12-col-external-link-teaser .btn, .teaser--12-col-external-link-teaser .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser-collection--12-col-teaser-alternating .o-teaser .btn, .teaser-collection--12-col-teaser-alternating .o-teaser .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser--12-col-with-image-and-cta .btn, .teaser--12-col-with-image-and-cta .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser-collection--12-col-teaser-50-50 .o-teaser .btn, .teaser-collection--12-col-teaser-50-50 .o-teaser .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser-collection--6-col-press-teaser .o-teaser .btn, .teaser-collection--6-col-press-teaser .o-teaser .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser-collection--blog .o-teaser .btn, .teaser-collection--blog .o-teaser .partner-detail__toggle-buttons .btn, .partner-detail__toggle-buttons .teaser-collection__cta-row .a-link, .teaser-collection__cta-row .partner-detail__toggle-buttons .a-link, .partner-detail__toggle-buttons #CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, #CybotCookiebotDialogBodyLevelWrapper .partner-detail__toggle-buttons #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, .partner-detail__toggle-buttons #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelWrapper .partner-detail__toggle-buttons a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  padding-right: 60px;
  padding-left: 60px;
}

.o-video {
  box-sizing: border-box;
  width: 100%;
  margin-top: 30px;
}

@media only screen and (max-width: 767px) {
  .o-video {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .o-video {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .o-video {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.video__content {
  position: relative;
}

.video__consent {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.video__consent .a-image {
  display: block;
  width: 100%;
  height: auto;
}

.video__consent__overlay {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #ffffff;
  background-color: rgba(103, 39, 121, 0.8);
}

.video__consent__overlay a:link,
.video__consent__overlay a:visited,
.video__consent__overlay a:hover,
.video__consent__overlay a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.video__consent__overlay p:first-child {
  margin-top: 0;
}

.video__consent__overlay p:last-child {
  margin-bottom: 0;
}

.video__consent__overlay ul,
.video__consent__overlay ol,
.video__consent__overlay .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 767px) {
  .video__consent__overlay {
    height: calc( 100% - 2 * 15px);
    width: calc( 100% - 2 * 15px);
    padding: 15px;
    font-size: 14px;
    line-height: 17px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .video__consent__overlay {
    height: calc( 100% - 2 * 30px);
    width: calc( 100% - 2 * 30px);
    padding: 30px;
    font-size: 14px;
    line-height: 17px;
  }
}

@media only screen and (min-width: 1080px) {
  .video__consent__overlay {
    height: calc( 100% - 2 * 30px);
    width: calc( 100% - 2 * 30px);
    padding: 30px;
    font-size: 20px;
    line-height: 36px;
  }
}

.video__consent__overlay a {
  color: inherit;
}

.video__consent__overlay p {
  margin: 0.5em 0;
}

.video__consent__overlay label,
.video__consent__overlay [type='checkbox'] {
  cursor: pointer;
}

.video__consent__overlay [type='checkbox'] {
  margin-right: 8px;
  margin-bottom: -1px;
  border: 1px solid var(--primaryColour);
  border-radius: 2px;
  background-color: #ffffff;
  appearance: none;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .video__consent__overlay [type='checkbox'] {
    width: 10px;
    height: 10px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .video__consent__overlay [type='checkbox'] {
    width: 12px;
    height: 12px;
  }
}

@media only screen and (min-width: 1080px) {
  .video__consent__overlay [type='checkbox'] {
    width: 15px;
    height: 15px;
  }
}

.video__consent__overlay a,
.video__consent__overlay a:link,
.video__consent__overlay a:visited,
.video__consent__overlay a:hover,
.video__consent__overlay a:active {
  color: #ffffff;
  text-decoration: underline;
}

.video__text {
  margin-top: 30px;
}

.video__text a:link,
.video__text a:visited,
.video__text a:hover,
.video__text a:active {
  color: var(--primaryColour);
  text-decoration: none;
}

.video__text p:first-child {
  margin-top: 0;
}

.video__text p:last-child {
  margin-bottom: 0;
}

.video__text ul,
.video__text ol,
.video__text .rte--list {
  padding-left: 20px;
  list-style-position: outside;
}

@media only screen and (max-width: 1079px) {
  .video__text {
    font-size: 14px;
    line-height: 24px;
  }
}

@media only screen and (min-width: 1080px) {
  .video__text {
    font-size: 20px;
    line-height: 36px;
  }
}

/* ------------------------------------ *\
	Vendor: After!
\* ------------------------------------ */
/* stylelint-disable */
@media only screen and (max-width: 767px) {
  #CybotCookiebotDialog[ng-non-bindable*='block'] ~ .page {
    margin-bottom: 185px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  #CybotCookiebotDialog[ng-non-bindable*='block'] ~ .page {
    margin-bottom: 180px;
  }
}

@media only screen and (min-width: 1080px) {
  #CybotCookiebotDialog[ng-non-bindable*='block'] ~ .page {
    margin-bottom: 180px;
  }
}

@media only screen and (max-width: 767px) {
  #CybotCookiebotDialog[style*='block'] ~ .page {
    margin-bottom: 214px;
  }
}

@media only screen and (min-width: 768px) {
  #CybotCookiebotDialog[style*='block'] ~ .page {
    margin-bottom: 212px;
  }
}

#CybotCookiebotDialog #CybotCookiebotDialogBody *,
#CybotCookiebotDialog #CybotCookiebotDialogDetail * {
  font-family: "DM Sans", sans-serif;
}

#CybotCookiebotDialogBodyLevelWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
  border: none;
  height: auto;
  box-sizing: border-box;
  min-height: 38px;
  min-width: -moz-fit-content;
  min-width: fit-content;
}

#CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  box-sizing: border-box;
  min-height: 38px;
  min-width: -moz-fit-content;
  min-width: fit-content;
}

#CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:hover, #CybotCookiebotDialogBodyLevelWrapper a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:active {
  color: #672779;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
  display: flex !important;
  margin-bottom: 1rem;
}

/* stylelint-enable */
/* ------------------------------------*\
	Pages
\* ------------------------------------ */
.p-blog-article {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .p-blog-article {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .p-blog-article {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .p-blog-article {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

@media only screen and (min-width: 768px) {
  .p-blog-article {
    display: -ms-grid;
    display: grid;
        grid-template-areas: 'header header' 'content aside';
    -ms-grid-columns: 66.6666666667% 33.3333333333%;
    grid-template-columns: 66.6666666667% 33.3333333333%;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .p-blog-article {
    row-gap: 40px;
  }
}

@media only screen and (min-width: 1080px) {
  .p-blog-article {
    row-gap: 60px;
  }
}

.teaser--page-title + .p-blog-article {
  margin-top: 25px;
}

.blog-article__header {
  grid-area: header;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 40px auto;
      grid-template-areas: 'image image' 'taglist sociallinklist';
  -ms-grid-columns: 66.6666666667% 33.3333333333%;
  grid-template-columns: 66.6666666667% 33.3333333333%;
  row-gap: 40px;
}

.blog-article__header img {
  max-width: 100%;
}

.blog-article__header .m-tag-list {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: taglist;
  margin: 0 15px;
}

.blog-article__header .list--social-icon {
  -ms-grid-row: 3;
  -ms-grid-column: 2;
  margin: 0 15px;
  grid-area: sociallinklist;
}

.blog-article__image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: image;
  max-width: 100%;
  position: relative;
  overflow: hidden;
}

.blog-article__image:before {
  display: block;
  padding-top: calc(37.5%);
  content: "";
}

.blog-article__image .a-image {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  right: 0;
  width: 100%;
}

.blog-article__content {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: content;
  margin: 0 15px;
}

@media only screen and (max-width: 767px) {
  .blog-article__content {
    margin-top: 40px;
  }
}

.blog-article__text {
  margin-top: 40px;
}

.blog-article__aside {
  grid-area: aside;
  margin: 0 15px;
}

@media only screen and (min-width: 768px) and (max-width: 1079px){
  .tabs__content > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
  }
  .tabs__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .tabs__caption {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .tabs__teaser-wrapper {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .tabs__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  .teaser-collection--box-gateway .teaser-collection__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .teaser-collection__caption {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .teaser-collection--box-gateway .teaser-collection__teaser-wrapper {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .teaser-collection__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
}

@media only screen and (min-width: 1080px){
  .o-tabs--box.tabs--box-quote .tabs__content > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
  }
  .tabs__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .tabs__caption {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .tabs__teaser-wrapper {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .tabs__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  .teaser-collection--box-gateway .teaser-collection__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .teaser-collection__caption {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .teaser-collection--box-gateway .teaser-collection__teaser-wrapper {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .o-tabs--box.tabs--box-quote .tabs__content > .teaser-collection__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
}

@media only screen and (min-width: 768px){
  .teaser--box-video > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-video > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-video > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-video > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-enumerating > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .teaser-collection--box-gateway > .teaser-collection__caption {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .teaser--box-video > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-enumerating > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .teaser-collection--box-gateway > .teaser-collection__detailtext {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .teaser-collection--box-gateway > .teaser-collection__teaser-wrapper {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .partner-detail__link-list {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .blog-article__header {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .blog-article__aside {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
}

@media only screen and (max-width: 767px){
  .teaser--box-video .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-hero .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-enumerating .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser-collection--box-gateway .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .teaser--box-card .teaser__content > .teaser-collection__detailtext {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}

@media only screen and (max-width: 767px) {
  .blog-article__aside {
    margin-top: 50px;
  }
}

.blog-article__aside > *:not(:first-child) {
  display: block;
  margin-top: 50px;
}

.blog-article__aside .teaser__content {
  padding: 8px 20px 10px;
}

.blog-article__aside .teaser__image {
  position: relative;
  overflow: hidden;
}

.blog-article__aside .teaser__image:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.blog-article__aside .teaser__image .a-image {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  right: 0;
  width: 100%;
}

.project-documentation__typearea {
  box-sizing: border-box;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .project-documentation__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__typearea {
    margin-left: auto;
    margin-right: auto;
    padding-left: calc( min( 47px, 8% ));
    padding-right: calc( min( 47px, 8% ));
    max-width: 1234px;
  }
}

.project-documentation__headline--typearea {
  box-sizing: border-box;
  margin-left: 15px;
  margin-right: 15px;
  width: calc( 100% - 30px);
  font-weight: 700;
}

.project-documentation__headline:not(.project-documentation__headline--typearea) {
  box-sizing: border-box;
  width: 100%;
  font-weight: 700;
}

.project-documentation__wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 20px 0 20px;
  box-sizing: border-box;
  color: #ffffff;
}

.project-documentation__wrapper--typearea {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 20px 0 20px;
  box-sizing: border-box;
  color: #ffffff;
}

.project-documentation__box {
  background-color: #672779;
}

.project-documentation__box--12of12 {
  padding: 15px;
}

@media only screen and (max-width: 767px) {
  .project-documentation__box--12of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--12of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 100% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--12of12 {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__box--12of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--12of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 100% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--12of12 {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__box--12of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--12of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 100% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--12of12 {
    box-sizing: border-box;
    width: 100%;
  }
}

.project-documentation__box--6of12 {
  padding: 15px;
}

@media only screen and (max-width: 767px) {
  .project-documentation__box--6of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--6of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 100% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--6of12 {
    box-sizing: border-box;
    width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__box--6of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--6of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--6of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__box--6of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--6of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--6of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

.project-documentation__box--3of12 {
  padding: 15px;
  background-color: #006cae;
}

@media only screen and (max-width: 767px) {
  .project-documentation__box--3of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--3of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--3of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__box--3of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--3of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--3of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__box--3of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--3of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 25% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--3of12 {
    box-sizing: border-box;
    width: 25%;
  }
}

.project-documentation__box--2of12 {
  padding: 15px;
  background-color: #dd342b;
}

@media only screen and (max-width: 767px) {
  .project-documentation__box--2of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--2of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--2of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__box--2of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--2of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 16.6666666667% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--2of12 {
    box-sizing: border-box;
    width: 16.6666666667%;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__box--2of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--2of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 16.6666666667% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--2of12 {
    box-sizing: border-box;
    width: 16.6666666667%;
  }
}

.project-documentation__box--1of12 {
  padding: 15px;
  background-color: #dd342b;
}

@media only screen and (max-width: 767px) {
  .project-documentation__box--1of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--1of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 50% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--1of12 {
    box-sizing: border-box;
    width: 50%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1079px) {
  .project-documentation__box--1of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--1of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 16.6666666667% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--1of12 {
    box-sizing: border-box;
    width: 16.6666666667%;
  }
}

@media only screen and (min-width: 1080px) {
  .project-documentation__box--1of12 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .project-documentation__wrapper.project-documentation__wrapper--typearea .project-documentation__box--1of12 {
    box-sizing: border-box;
    margin-left: 15px;
    margin-right: 15px;
    width: calc( 8.3333333333% - 30px);
  }
  .project-documentation__wrapper:not(.project-documentation__wrapper--typearea) .project-documentation__box--1of12 {
    box-sizing: border-box;
    width: 8.3333333333%;
  }
}

.project-documentation__color-swatches {
  padding: 0;
  margin: 0;
  list-style: none;
  text-indent: 0;
  display: flex;
  flex-wrap: wrap;
}

.project-documentation__color-swatches li {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100px;
  margin: 15px;
}

.project-documentation__color-swatch {
  display: block;
  height: 60px;
  width: 60px;
  border: 1px solid #666666;
  border-radius: 50%;
}

.project-documentation__color-swatch--batty-blue {
  background-color: #006cae;
}

.project-documentation__color-swatch--black {
  background-color: #000000;
}

.project-documentation__color-swatch--cool-gray {
  background-color: #666666;
}

.project-documentation__color-swatch--dark-gray {
  background-color: #363936;
}

.project-documentation__color-swatch--gabby-green {
  background-color: #2fac66;
}

.project-documentation__color-swatch--paranoid-purple {
  background-color: #672779;
}

.project-documentation__color-swatch--radical-red {
  background-color: #dd342b;
}

.project-documentation__color-swatch--tangy-turquoise {
  background-color: #6fc3b8;
}

.project-documentation__color-swatch--white {
  background-color: #ffffff;
}

.project-documentation__color-swatch--yelling-yellow {
  background-color: #efdf0f;
}

.project-documentation__color-swatch--gold {
  background-color: #d4af37;
}

.project-documentation__color-swatch--platinum {
  background-color: #a0b2c6;
}

.project-documentation__color-swatch--silver {
  background-color: #bec2cb;
}

.project-documentation__color-label {
  display: block;
  margin-top: 15px;
  width: 100%;
  text-align: center;
  color: #000000;
  background-color: #ffffff;
  border: 1px solid #666666;
}

/* ------------------------------------*\
	INBOX
\* ------------------------------------ */
.missing-organism {
  margin: 30px 0 0;
  padding: 50px 30px;
  font-size: 50px;
  text-align: center;
  color: #ffffff;
  background-color: #dd342b;
}

.aspect-ratio-box-1-1 {
  position: relative;
  overflow: hidden;
}

.aspect-ratio-box-1-1:before {
  display: block;
  padding-top: calc(100%);
  content: "";
}

.aspect-ratio-box-5-3 {
  position: relative;
  overflow: hidden;
}

.aspect-ratio-box-5-3:before {
  display: block;
  padding-top: calc(60%);
  content: "";
}

.aspect-ratio-box-16-9 {
  position: relative;
  overflow: hidden;
}

.aspect-ratio-box-16-9:before {
  display: block;
  padding-top: calc(56.25%);
  content: "";
}

.cmw-image {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  right: 0;
  width: 100%;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vY213LXRoZW1lLWRldi1yZXYtMC5zY3NzIiwid2VicGFjazovLy92YXJpYWJsZXMvX3NldHRpbmdzLnZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy92YXJpYWJsZXMvX3NldHRpbmdzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL2xpYi9icmlja3MvdXRpbHMvc3JjL3Nhc3MvdmFyaWFibGVzL19jb3JlbWVkaWEtcmljaHRleHQtMS4wLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC1uby1mb250LW5vLXBuZy9zbGljay9zbGljay5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwtbm8tZm9udC1uby1wbmcvc2xpY2svc2xpY2stdGhlbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy9zbGljay1jYXJvdXNlbC9zcmMvc2Fzcy92YXJpYWJsZXMvc2xpY2stY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy91dGlscy9zcmMvc2Fzcy9wYXJ0aWFscy9fY29yZW1lZGlhLXJpY2h0ZXh0LTEuMC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL3V0aWxzL3NyYy9zYXNzL3BhcnRpYWxzL19jdGEuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy91dGlscy9zcmMvc2Fzcy9wYXJ0aWFscy9fdGVhc2VyLW92ZXJsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy91dGlscy9zcmMvc2Fzcy92YXJpYWJsZXMvX3RlYXNlci1vdmVybGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL2xpYi9icmlja3MvdXRpbHMvc3JjL3Nhc3MvcGFydGlhbHMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL2R5bmFtaWMtaW5jbHVkZS9zcmMvc2Fzcy9wYXJ0aWFscy9fZnJhZ21lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL2xpYi9icmlja3Mvc2xpY2stY2Fyb3VzZWwvc3JjL3Nhc3MvcGFydGlhbHMvc2xpY2stY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vYnJpY2tzL2Ntdy1kZXRhaWwvc3JjL3Nhc3MvcGFydGlhbHMvX2Ntdy1kZXRhaWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vYnJpY2tzL2Ntdy1kZXRhaWwvc3JjL3Nhc3MvdmFyaWFibGVzL19jbXctZGV0YWlsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL2JyaWNrcy9jbXctbWV0YWRhdGEvc3JjL3Nhc3MvcGFydGlhbHMvX2Ntdy1tZXRhZGF0YS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9icmlja3MvY213LXNlYXJjaC9zcmMvc2Fzcy9wYXJ0aWFscy9fY213LXNlYXJjaC5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9icmlja3MvY213LXRvb2xzL3NyYy9zYXNzL3BhcnRpYWxzL19jbXctdG9vbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vYnJpY2tzL2Ntdy10b29scy9zcmMvc2Fzcy9wYXJ0aWFscy9fYmFzZS1lbGVtZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL21lZGlhL3NyYy9zYXNzL3BhcnRpYWxzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL21lZGlhL3NyYy9zYXNzL3ZhcmlhYmxlcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy9tZWRpYS9zcmMvc2Fzcy9wYXJ0aWFscy9fYXVkaW8uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy9tZWRpYS9zcmMvc2Fzcy9wYXJ0aWFscy9fdmlkZW8uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy9tZWRpYS9zcmMvc2Fzcy9wYXJ0aWFscy9fcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL21lZGlhL3NyYy9zYXNzL3ZhcmlhYmxlcy9fcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL3V0aWxzL3NyYy9zYXNzL3ZhcmlhYmxlcy9fZWFzaW5ncy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL3BhZ2Uvc3JjL3Nhc3MvcGFydGlhbHMvX3BhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy9wYWdlL3NyYy9zYXNzL3ZhcmlhYmxlcy9fcGFnZS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9jbS0yMDIwLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19zZXR0aW5ncy52YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX3NldHRpbmdzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL190b29scy5ub3JtYWxpemUuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX3Rvb2xzLm1peGlucy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fdG9vbHMubWl4aW5zLmNvcmVtZWRpYS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fdG9vbHMubWl4aW5zLnRleHQuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2Jhc2UuZWxlbWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX3ZlbmRvci5nbGlkZS5jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL192ZW5kb3IuZ2xpZGUuaGVyby50aGVtZS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fYXRvbXMudGV4dHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vbGliL2JyaWNrcy91dGlscy9zcmMvc2Fzcy9wYXJ0aWFscy9fYXNwZWN0cmF0aW9ib3guc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2F0b21zLmJ1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2F0b21zLmljb24tYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fYXRvbXMuaWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2F0b21zLmltYWdlcy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fYXRvbXMubGlzdC5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fYXRvbXMubG9nb3Muc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2F0b21zLm1lZ2FtZW51LnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19hdG9tcy52aWRlb3Muc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX21vbGVjdWxlcy5maWx0ZXItYm94LnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19tb2xlY3VsZXMuaGVhZGVyLnNlYXJjaC5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fbW9sZWN1bGVzLmhlYWRlci5tZXRhLXRlYXNlci5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fbW9sZWN1bGVzLmhlYWRlci5tZWdhbWVudS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fbW9sZWN1bGVzLmltYWdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9saWIvYnJpY2tzL3V0aWxzL3NyYy9zYXNzL3BhcnRpYWxzL19zdHJldGNoYWJzb2x1dGUuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX21vbGVjdWxlcy5sYW5ndWFnZS1jaG9vc2VyLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19tb2xlY3VsZXMucGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fbW9sZWN1bGVzLnRhZy1idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19tb2xlY3VsZXMudGFnLWxpc3Quc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy5kb3dubG9hZC5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLmZvb3Rlci5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLmZvcm1zLmh1YnNwb3Quc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy5oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy5oZWFkZXIubWV0YS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLmhlYWRlci5mbHlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy5oZWFkZXIubWVnYW1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy5oZXJvLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19vcmdhbmlzbXMuaW1hZ2UtZGV0YWlscy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLmxvZ293YWxsLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19vcmdhbmlzbXMucGVyc29uLnNjc3MiLCJ3ZWJwYWNrOi8vLzxubyBzb3VyY2U+Iiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLnF1b3RlLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19vcmdhbmlzbXMuc2VhcmNoLXJlc3VsdHMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy50YWJzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19vcmdhbmlzbXMudGFicy1ib3guc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy50ZWFzZXIuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy50ZWFzZXIuYm94LWhlcm8uc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy50ZWFzZXIuZ2F0ZXdheS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLnRlYXNlci5lbnVtZXJhdGluZy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLnRlYXNlci1jb2xsZWN0aW9ucy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fb3JnYW5pc21zLnRlYXNlci1wYXJ0bmVyLWRldGFpbHMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX29yZ2FuaXNtcy52aWRlb3Muc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX3ZlbmRvci1wb3N0LmNvb2tpZWJvdC5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fcGFnZXMuYmxvZy1hcnRpY2xlLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19wYWdlcy5wcm9qZWN0LWRvY3VtZW50YXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvXzAwLnNoYW1lLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19hZGRpdGlvbmFsLXN0eWxpbmcuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUFBaEI7QUNBQTs7RURJRTtBQzRDRjs7RUR6Q0U7QUMyREY7O0VEeERFO0FDa0VGOztFRC9ERTtBQ3FFRjs7RURsRUU7QUVoQkY7QUFDQTtFQUNDLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLHNDQUEwQztFQUFFO0VBQzVDLG9SQUl3RDtBRmV6RDs7QUViQTtBQUNBO0VBQ0Msc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIscUNBQXlDO0VBQUU7RUFDM0MsaVJBSXVEO0FGYXhEOztBRVhBO0FBQ0E7RUFDQyxzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixxQ0FBeUM7RUFBRTtFQUMzQyxpUkFJdUQ7QUZXeEQ7O0FFVEE7QUFDQTtFQUNDLHNCQUFzQjtFQUN0QixrQkFB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TzloQkE7RUEwTUksZUFBZTtBUHdWbkI7O0FPbGlCQTtFQThNSSxlQUFlO0FQd1ZuQjs7QU90aUJBO0VBa05JLGVBQWU7QVB3Vm5COztBTzFpQkE7RUFzTkksZUFBZTtBUHdWbkI7O0FPOWlCQTtFQTBOSSxlQUFlO0FQd1ZuQjs7QU9sakJBO0VBOE5JLGVBQWU7QVB3Vm5COztBT3RqQkE7RUFrT0ksZUFBZTtBUHdWbkI7O0FPMWpCQTtFQXVPSSxZQUFZO0FQdVZoQjs7QU85akJBO0VBMk9JLFlBQVk7QVB1VmhCOztBT2xrQkE7RUErT0ksYUFBYTtBUHVWakI7O0FPdGtCQTtFQW1QSSxXQUFXO0FQdVZmOztBTzFrQkE7RUF1UEksV0FBVztBUHVWZjs7QU85a0JBO0VBMlBJLFlBQVk7QVB1VmhCOztBT2xsQkE7RUErUEksWUFBWTtBUHVWaEI7O0FPdGxCQTtFQW1RSSxhQUFhO0FQdVZqQjs7QU8xbEJBO0VBdVFJLGFBQWE7QVB1VmpCOztBTzlsQkE7RUEyUUksV0FBVztBUHVWZjs7QU9sbUJBO0VBK1FJLFVBQVU7QVB1VmQ7O0FPdG1CQTtFQW1SSSxXQUFXO0FQdVZmOztBTzFtQkE7RUF1UkksYUFBYTtBUHVWakI7O0FPOW1CQTtFQTJSSSxXQUFXO0FQdVZmOztBT2xuQkE7RUErUkksY0FBYztBUHVWbEI7O0FPdG5CQTtFQW1TSSxXQUFXO0FQdVZmOztBTzFuQkE7RUF3U0ksdUJBQXVCO0FQc1YzQjs7QU85bkJBO0VBNFNJLHVCQUF1QjtBUHNWM0I7O0FPbG9CQTtFQWdUSSx3QkFBd0I7QVBzVjVCOztBT3RvQkE7RUFvVEksc0JBQXNCO0FQc1YxQjs7QU8xb0JBO0VBd1RJLHNCQUFzQjtBUHNWMUI7O0FPOW9CQTtFQTRUSSx1QkFBdUI7QVBzVjNCOztBT2xwQkE7RUFnVUksdUJBQXVCO0FQc1YzQjs7QU90cEJBO0VBb1VJLHdCQUF3QjtBUHNWNUI7O0FPMXBCQTtFQXdVSSx3QkFBd0I7QVBzVjVCOztBTzlwQkE7RUE0VUksc0JBQXNCO0FQc1YxQjs7QU9scUJBO0VBZ1ZJLHFCQUFxQjtBUHNWekI7O0FP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QUFpQjtFQUNqQixlQUFlO0FQZ3lCbkI7O0FPMzVCQTtFQStISSxpQkFBaUI7RUFDakIsZUFBZTtBUGd5Qm5COztBT2g2QkE7RUFxSUksOEJBQThCO0FQK3hCbEM7O0FPcDZCQTtFQXlJSSxzQ0FBc0M7QVAreEIxQzs7QU94NkJBO0VBNklJLHVDQUF1QztBUCt4QjNDOztBTzU2QkE7RUFpSkksMkJBQTJCO0FQK3hCL0I7O0FPaDdCQTtFQXFKSSwyQkFBMkI7QVAreEIvQjs7QU9wN0JBO0VBeUpJLG9DQUFvQztBUCt4QnhDOztBT3g3QkE7RUE2SkksOENBQThDO0FQK3hCbEQ7O0FPNTdCQTtFQWlLSSxtQ0FBbUM7QVAreEJ2Qzs7QU9oOEJBO0VBcUtJLGdDQUFnQztBUCt4QnBDOztBT3A4QkE7RUEwS0ksY0FBYztBUDh4QmxCOztBT3g4QkE7RUE4S0ksY0FBYztBUDh4QmxCOztBTzU4QkE7RUFrTEksZUFBZTtBUDh4Qm5COztBT2g5QkE7RUFzTEksZUFBZTtBUDh4Qm5COztBT3A5QkE7RUEwTEksZUFBZTtBUDh4Qm5COztBT3g5QkE7RUE4TEksZUFBZTtBUDh4Qm5COztBTzU5QkE7RUFrTUksZUFBZTtBUDh4Qm5COztBT2grQkE7RUFzTUksZUFBZTtBUDh4Qm5COztBT3ArQkE7RUEwTUksZUFBZTtBUDh4Qm5COztBT3grQkE7RUE4TUksZUFBZTtBUDh4Qm5COztBTzUrQkE7RUFrTkksZUFBZTtBUDh4Qm5COztBT2gvQkE7RUFzTkksZUFBZTtBUDh4Qm5COztBT3AvQkE7RUEwTkksZUFBZTtBUDh4Qm5COztBT3gvQkE7RUE4TkksZUFBZTtBUDh4Qm5COztBTzUvQkE7RUFrT0ksZUFBZTtBUDh4Qm5COztBT2hnQ0E7RUF1T0ksWUFBWTtBUDZ4QmhCOztBT3BnQ0E7RUEyT0ksWUFBWTtBUDZ4QmhCOztBT3hnQ0E7RUErT0ksYUFBYTtBUDZ4QmpCOztBTzVnQ0E7RUFtUEksV0FBVztBUDZ4QmY7O0FPaGhDQTtFQXVQSSxXQUFXO0FQNnhCZjs7QU9waENBO0VBMlBJLFlBQVk7QVA2eEJoQjs7QU94aENBO0VBK1BJLFlBQVk7QVA2eEJoQjs7QU81aENBO0VBbVFJLGFBQWE7QVA2eEJqQjs7QU9oaUNBO0VBdVFJLGFBQWE7QVA2eEJqQjs7QU9waUNBO0VBMlFJLFdBQVc7QVA2eEJmOztBT3hpQ0E7RUErUUksVUFBVTtBUDZ4QmQ7O0FPNWlDQTtFQW1SSSxXQUFXO0FQNnhCZjs7QU9oakNBO0VBdVJJLGFBQWE7QVA2eEJqQjs7QU9wakNBO0VBMlJJLFdBQVc7QVA2eEJmOztBT3hqQ0E7RUErUkksY0FBYztBUDZ4QmxCOztBTzVqQ0E7RUFtU0ksV0FBVztBUDZ4QmY7O0FPaGtDQTtFQXdTSSx1QkFBdUI7QVA0eEIzQjs7QU9wa0NBO0VBNFNJLHVCQUF1QjtBUDR4QjNCOztBT3hrQ0E7RUFnVEksd0JBQXdCO0FQNHhCNUI7O0FPNWtDQTtFQW9USSxzQkFBc0I7QVA0eEIxQjs7QU9obENBO0VBd1RJLHNCQUFzQjtBUDR4QjFCOztBT3BsQ0E7RUE0VEksdUJBQXVCO0FQNHhCM0I7O0FPeGxDQTtFQWdVSSx1QkFBdUI7QVA0eEIzQjs7QU81bENBO0VBb1VJLHdCQUF3QjtBUDR4QjVCOztBT2htQ0E7RUF3VUksd0JBQXdCO0FQNHhCNUI7O0FPcG1DQTtFQTRVSSxzQkFBc0I7QVA0eEIxQjs7QU94bUNBO0VBZ1ZJLHFCQUFxQjtBUDR4QnpCOztBTzVtQ0E7RUFvVkksc0JBQXNCO0FQNHhCMUI7O0FPaG5DQTtFQXdWSSx3QkFBd0I7QVA0eEI1Qjs7QU9wbkNBO0VBNFZJLHNCQUFzQjtBUDR4QjFCOztBT3huQ0E7RUFnV0kseUJBQXlCO0FQNHhCN0I7O0FPNW5DQTtFQW9XSSxzQkFBc0I7QVA0eEIxQjs7QU9ob0NBO0VBeVdJLHFCQUFxQjtBUDJ4QnpCOztBT3BvQ0E7RUE2V0ksdUJBQXVCO0FQMnhCM0I7O0FPeG9DQTtFQWlYSSx1QkFBdUI7QVAyeEIzQjs7QU81b0NBO0VBcVhJLHFCQUFxQjtBUDJ4QnpCOztBT3h4QkU7RUFDRSx5RUp0WG1DO0FIaXBDdkM7O0FPeHhCRTtFQUNFLDZCSnpYb0M7QUhvcEN4Qzs7QVEvcENBO0VBQ0Usb0JBQW9CO0VBQ3BCLHVCQUF1QjtBUmtxQ3pCOztBUWhxQ0U7RUFDRSxnQkFBZ0I7QVJtcUNwQjs7QVEvcENBO0VBQ0UscUJBQXFCO0FSa3FDdkI7O0FTNXFDQTtFQUNFLGtCQUFrQjtFQUNsQixZQ0Q2QjtFREk3QixnQkFBZ0I7RUFFaEIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixnQkFBZ0I7RUFFaEIsb0JBQW9CO0FUMnFDdEI7O0FTenFDRztFQUdHLGFBQWE7QVQwcUNuQjs7QVM3cUNHO0VBUUcsZ0JBQWdCO0FUeXFDdEI7O0FTcnFDRTtFQUNFLGlCQ3hCb0M7RUR5QnBDLGtCQ3hCZ0M7RUR5QmhDLFdBQVc7QVR3cUNmOztBU3JxQ0U7RUFFRSxvQkFBb0I7QVR1cUN4Qjs7QVd4c0NBOzs7RVg2c0NFO0FheHNDRjtFQUVFLFVBQVU7QWJ5c0NaOztBYXRzQ0U7RUFDRSxhQUFhO0FieXNDakI7O0FhMXNDRztFQUlHLGNBQWM7QWIwc0NwQjs7QWFudENBO0VBbUJRLGNBQWM7RUFDZCxZQUFZO0VBQ1osV0FBVztFQUNYLHNCQUFzQjtBYm9zQzlCOztBYTF0Q0E7RUE0QlEscURBQStDO0Fia3NDdkQ7O0FhOXRDQTtFQWtDUSxxREFBK0M7QWJnc0N2RDs7QWEzckNHO0VBRUcsTUFBTTtFQUNOLFNBQVM7RUFDVCxZQUFZO0VBQ1osZUFBZTtFQUNmLFNBQVM7QWI2ckNmOztBYW5zQ0c7RUFTSyxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVM7RUFDVCxnQ0FBZ0M7QWI4ckN4Qzs7QWExc0NHO0VBaUJHLFVBQVU7RUFDVixPQUFPO0FiNnJDYjs7QWEvc0NHO0VBc0JPLHFEQUFxRDtBYjZyQy9EOztBYW50Q0c7RUEwQlMscURBQTJEO0FiNnJDdkU7O0FhdnRDRztFQWlDRyxRQUFRO0FiMHJDZDs7QWEzdENHO0VBcUNPLHFEQUFxRDtBYjByQy9EOztBYS90Q0c7RUF5Q1MscURBQTJEO0FiMHJDdkU7O0FhMXdDQTtFQTJGSSxrQkFBa0I7QWJtckN0Qjs7QWFockNFO0VBQ0UsbUJBQW1CO0FibXJDdkI7O0FjdHhDQTtFQUNFLGNDQXlCO0FmeXhDM0I7O0FjMXhDQTtFRUNFLGNEQXlCO0FmNnhDM0I7O0FjOXhDQTtFR0NFLGNGQXlCO0FmaXlDM0I7O0FrQm55Q0E7Ozs7Ozs7Ozs7RWxCK3lDRTtBa0J0d0NGOzs7Ozs7Ozs7RWxCZ3hDRTtBa0IxdkNGOzs7Ozs7RWxCaXdDRTtBa0IvdUNGOzs7OztFbEJxdkNFO0FrQnJ0Q0Y7Ozs7Ozs7Ozs7O0VsQml1Q0U7QWtCOXNDRjs7Ozs7Ozs7Ozs7RWxCMHRDRTtBa0J2c0NGOzs7RWxCMnNDRTtBa0J6ckNGO0dsQjJyQ0UsT2tCeHNDUTtBbEJ5c0NWOztBa0J2c0NFO0VBRUUsWUFBWTtFQUNaLGNBQWM7QWxCeXNDbEI7O0FrQnRzQ0U7RUFDRSxXQUFXO0FsQnlzQ2Y7O0FrQjNyQ0E7O0VsQityQ0U7QWtCdnFDRjtFQUNFLGFBQWE7QWxCeXFDZjs7QWtCbnFDQTs7Ozs7O0VsQjJxQ0U7QWtCOXBDRjs7Ozs7RWxCb3FDRTtBa0JycENGOzs7RWxCeXBDRTtBa0Jwb0NGOzs7RWxCd29DRTtBbUIzNENGO0VBQ0Msa0NqQjZFOEI7RWlCNUU5QixlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLGNsQllvQjtFa0JYcEIseUJsQkFpQjtFa0JDakIsMEJBQTBCO0FuQjY0QzNCOztBbUJuNUNBO0VBVUUsYUFBYTtFQUNiLGtCQUFrQjtBbkI2NENwQjs7QWtCMzRDSTtFQ2JKO0lBY0csaUJBQWlCO0VuQis0Q2xCO0FBQ0Y7O0FrQjU0Q0k7RUNsQko7SUFpQkcsaUJBQWlCO0VuQms1Q2xCO0FBQ0Y7O0FrQjc0Q0k7RUN2Qko7SUFvQkcsa0JBQWtCO0VuQnE1Q25CO0FBQ0Y7O0FtQmg1Q0E7Ozs7OztFQU1DLFNBQ0Q7QW5CazVDQTs7QW1CaDVDQTs7RUFFQyxhQUFhO0VBQ2IsZ0JBQWdCO0FuQm01Q2pCOztBbUJoNUNBO0VEME1FLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osYUFBYTtFQUNiLGVBQWU7RUFDZiw2QkFBNkI7QWxCMHNDL0I7O0FtQm41Q0E7O0VBRUMsZ0JBQWdCO0FuQnM1Q2pC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QVc7QVB3OENmOztBTzNyREE7RUF1UEksV0FBVztBUHc4Q2Y7O0FPL3JEQTtFQTJQSSxZQUFZO0FQdzhDaEI7O0FPbnNEQTtFQStQSSxZQUFZO0FQdzhDaEI7O0FPdnNEQTtFQW1RSSxhQUFhO0FQdzhDakI7O0FPM3NEQTtFQXVRSSxhQUFhO0FQdzhDakI7O0FPL3NEQTtFQTJRSSxXQUFXO0FQdzhDZjs7QU9udERBO0VBK1FJLFVBQVU7QVB3OENkOztBT3Z0REE7RUFtUkksV0FBVztBUHc4Q2Y7O0FPM3REQTtFQXVSSSxhQUFhO0FQdzhDakI7O0FPL3REQTtFQTJSSSxXQUFXO0FQdzhDZjs7QU9udURBO0VBK1JJLGNBQWM7QVB3OENsQjs7QU92dURBO0VBbVNJLFdBQVc7QVB3OENmOztBTzN1REE7RUF3U0ksdUJBQXVCO0FQdThDM0I7O0FPL3VEQTtFQTRTSSx1QkFBdUI7QVB1OEMzQjs7QU9udkRBO0VBZ1RJLHdCQUF3QjtBUHU4QzVCOztBT3Z2REE7RUFvVEksc0JBQXNCO0FQdThDMUI7O0FPM3ZEQTtFQXdUSSxzQkFBc0I7QVB1OEMxQjs7QU8vdkRBO0VBNFRJLHVCQUF1QjtBUHU4QzNCOztBT253REE7RUFnVUksdUJBQXVCO0FQdThDM0I7O0FPdndEQTtFQW9VSSx3QkFBd0I7QVB1OEM1Qjs7QU8zd0RBO0VBd1VJLHdCQUF3QjtBUHU4QzVCOztBTy93REE7RUE0VUksc0JBQXNCO0FQdThDMUI7O0FPbnhEQTtFQWdWSSxxQkFBcUI7QVB1OEN6Qjs7QU92eERBO0VBb1ZJLHNCQUFzQjtBUHU4QzFCOztBTzN4REE7RUF3Vkksd0JBQXdCO0FQdThDNUI7O0FPL3hEQTtFQTRWSSxzQkFBc0I7QVB1OEMxQjs7QU9ueURBO0VBZ1dJLHlCQUF5QjtBUHU4QzdCOztBT3Z5REE7RUFvV0ksc0JBQXNCO0FQdThDMUI7O0FPM3lEQTtFQXlXSSxxQkFBcUI7QVBzOEN6Qjs7QU8veURBO0VBNldJLHVCQUF1QjtBUHM4QzNCOztBT256REE7RUFpWEksdUJBQXVCO0FQczhDM0I7O0FPdnpEQTtFQXFYSSxxQkFBcUI7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O0FQZzhEbkI7O0FPMXBFQTtFQThOSSxlQUFlO0FQZzhEbkI7O0FPOXBFQTtFQWtPSSxlQUFlO0FQZzhEbkI7O0FPbHFFQTtFQXVPSSxZQUFZO0FQKzdEaEI7O0FPdHFFQTtFQTJPSSxZQUFZO0FQKzdEaEI7O0FPMXFFQTtFQStPSSxhQUFhO0FQKzdEakI7O0FPOXFFQTtFQW1QSSxXQUFXO0FQKzdEZjs7QU9sckVBO0VBdVBJLFdBQVc7QVArN0RmOztBT3RyRUE7RUEyUEksWUFBWTtBUCs3RGhCOztBTzFyRUE7RUErUEksWUFBWTtBUCs3RGhCOztBTzlyRUE7RUFtUUksYUFBYTtBUCs3RGpCOztBT2xzRUE7RUF1UUksYUFBYTtBUCs3RGpCOztBT3RzRUE7RUEyUUksV0FBVztBUCs3RGY7O0FPMXNFQTtFQStRSSxVQUFVO0FQKzdEZDs7QU85c0VBO0VBbVJJLFdBQVc7QVArN0RmOztBT2x0RUE7RUF1UkksYUFBYTtBUCs3RGpCOztBT3R0RUE7RUEyUkksV0FBVztBUCs3RGY7O0FPMXRFQTtFQStSSSxjQUFjO0FQKzdEbEI7O0FPOXRFQTtFQW1TSSxXQUFXO0FQKzdEZjs7QU9sdUVBO0VBd1NJLHVCQUF1QjtBUDg3RDNCOztBT3R1RUE7RUE0U0ksdUJBQXVCO0FQODdEM0I7O0FPMXVFQTtFQWdUSSx3QkFBd0I7QVA4N0Q1Qjs7QU85dUVBO0VBb1RJLHNCQUFzQjtBUDg3RDFCOztBT2x2RUE7RUF3VEksc0JBQXNCO0FQODdEMUI7O0FPdHZFQTtFQTRUSSx1QkFBdUI7QVA4N0QzQjs7QU8xdkVBO0VBZ1VJLHVCQUF1QjtBUDg3RDNCOztBTzl2RUE7RUFvVUksd0JBQXdCO0FQODdENUI7O0FPbHdFQTtFQXdVSSx3QkFBd0I7QVA4N0Q1Qjs7QU90d0VBO0VBNFVJLHNCQUFzQjtBUDg3RDFCOztBTzF3RUE7RUFnVkkscUJBQXFCO0FQODdEekI7O0FPOXdFQTtFQW9WSSxzQkFBc0I7QVA4N0QxQjs7QU9seEVBO0VBd1ZJLHdCQUF3QjtBUDg3RDVCOztBT3R4RUE7RUE0Vkksc0JBQXNCO0FQODdEMUI7O0FPMXhFQTtFQWdXSSx5QkFBeUI7QVA4N0Q3Qjs7QU85eEVBO0VBb1dJLHNCQUFzQjtBUDg3RDFCOztBT2x5RUE7RUF5V0kscUJBQXFCO0FQNjdEekI7O0FPdHlFQTtFQTZXSSx1QkFBdUI7QVA2N0QzQjs7QU8xeUVBO0VBaVhJLHVCQUF1QjtBUDY3RDNCOztBTzl5RUE7RUFxWEkscUJBQXFCO0FQNjdEekI7O0FPMTdERTtFQUNFLHlFSnRYbUM7QUhtekV2Qzs7QU8xN0RFO0VBQ0UsNkJKelhvQztBSHN6RXhDOztBUWowRUE7RUFDRSxvQkFBb0I7RUFDcEIsdUJBQXVCO0FSbzBFekI7O0FRbDBFRTtFQUNFLGdCQUFnQjtBUnEwRXBCOztBUWowRUE7RUFDRSxxQkFBcUI7QVJvMEV2Qjs7QVM5MEVBO0VBQ0Usa0JBQWtCO0VBQ2xCLFlDRDZCO0VESTdCLGdCQUFnQjtFQUVoQixzQkFBc0I7RUFDdEIsZUFBZTtFQUNmLGdCQUFnQjtFQUVoQixvQkFBb0I7QVQ2MEV0Qjs7QVMzMEVHO0VBR0csYUFBYTtBVDQwRW5COztBUy8wRUc7RUFRRyxnQkFBZ0I7QVQyMEV0Qjs7QVN2MEVFO0VBQ0UsaUJDeEJvQztFRHlCcEMsa0JDeEJnQztFRHlCaEMsV0FBVztBVDAwRWY7O0FTdjBFRTtFQUVFLG9CQUFvQjtBVHkwRXhCOztBVzEyRUE7OztFWCsyRUU7QTJCLzJFRjtFQUNFLFlBQVk7RUFDWixzQkFBc0I7RUFDdEIsU0FBUztBM0JpM0VYOztBMkI3MkVBO0VBQ0UsYUFBYTtBM0JnM0VmOztBMkI3MkVBO0VBQ0UsZ0JBQWdCO0EzQmczRWxCOztBMkJqM0VBO0VBSUksY0FBYztFQUNkLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLFFBQVE7RUFDUixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLG1CQ3JCeUI7RURzQnpCLGNDckJvQjtFRHNCcEIsa0JBQWtCO0EzQmkzRXRCOztBT3o0RUE7Ozs7Q1ArNEVDO0FPeDRFRDtFQUVFO0VBc0NBO0VBaUJBO0VBYUE7RUF5QkE7RUFvQ0E7RUFxQ0E7RUE2REE7RUFpRUE7RUFpRUE7QVA2aUVGOztBT3A1RUE7O0VBS0ksMEJBQTBCO0FQbzVFOUI7O0FPejVFQTtFQVNJLDZCQUE2QjtBUG81RWpDOztBTzc1RUE7RUFhSSxtQkFBbUI7QVBvNUV2Qjs7QU9qNkVBO0VBaUJJLHFCQUFxQjtBUG81RXpCOztBT3I2RUE7RUFxQkksa0JBQWtCO0VBQ2xCLGlCQUFpQjtBUG81RXJCOztBTzE2RUE7RUEwQkksa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsZUFBZTtBUG81RW5COztBT2o3RUE7RUFpQ0kscUJBQXFCO0FQbzVFekI7O0FPcjdFQTtFQXFDSSxnQkFBZ0I7QVBvNUVwQjs7QU96N0VBO0VBMENJLGdCQUFnQjtBUG01RXBCOztBTzc3RUE7RUE4Q0ksa0JBQWtCO0FQbTVFdEI7O0FPajhFQTtFQWtESSxpQkFBaUI7QVBtNUVyQjs7QU9yOEVBO0VBc0RJLG1CQUFtQjtBUG01RXZCOztBT3o4RUE7RUEyREksV0FBVztBUGs1RWY7O0FPNzhFQTtFQStESSxZQUFZO0FQazVFaEI7O0FPajlFQTtFQW1FSSxXQUFXO0FQazVFZjs7QU9yOUVBO0VBd0VJLFdBQVc7RUFDWCxzQkFBc0I7RUFDdEIsY0FBOEM7QVBpNUVsRDs7QU8zOUVBO0VBNkVNLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsa0JKOUVvQztFSStFcEMsOEJBQThCO0FQazVFcEM7O0FPbCtFQTtFQW9GTSxpQkpuRm9DO0VJb0ZwQyw4QkFBOEI7QVBrNUVwQzs7QU92K0VBO0VBMEZRLG1CQUFtQjtBUGk1RTNCOztBTzMrRUE7RUFpR0ksbUJBQW1CO0VBQ25CLGVBQWU7QVA4NEVuQjs7QU9oL0VBO0VBc0dJLGlCQUFpQjtFQUNqQixlQUFlO0FQODRFbkI7O0FPci9FQTtFQTJHSSxpQkFBaUI7RUFDakIsZUFBZTtBUDg0RW5COztBTzEvRUE7RUFnSEksaUJBQWlCO0VBQ2pCLGVBQWU7QVA4NEVuQjs7QU8vL0VBO0VBcUhJLGlCQUFpQjtFQUNqQixlQUFlO0FQODRFbkI7O0FPcGdGQTtFQTBISSxpQkFBaUI7RUFDakIsZUFBZTtBUDg0RW5COztBT3pnRkE7RUErSEksaUJBQWlCO0VBQ2pCLGVBQWU7QVA4NEVuQjs7QU85Z0ZBO0VBcUlJLDhCQUE4QjtBUDY0RWxDOztBT2xoRkE7RUF5SUksc0NBQXNDO0FQNjRFMUM7O0FPdGhGQTtFQTZJSSx1Q0FBdUM7QVA2NEUzQzs7QU8xaEZBO0VBaUpJLDJCQUEyQjtBUDY0RS9COztBTzloRkE7RUFxSkksMkJBQTJCO0FQNjRFL0I7O0FPbGlGQTtFQXlKSSxvQ0FBb0M7QVA2NEV4Qzs7QU90aUZBO0VBNkpJLDhDQUE4QztBUDY0RWxEOztBTzFpRkE7RUFpS0ksbUNBQW1DO0FQNjRFdkM7O0FPOWlGQTtFQXFLSSxnQ0FBZ0M7QVA2NEVwQzs7QU9sakZBO0VBMEtJLGNBQWM7QVA0NEVsQjs7QU90akZBO0VBOEtJLGNBQWM7QVA0NEVsQjs7QU8xakZBO0VBa0xJLGVBQWU7QVA0NEVuQjs7QU85akZBO0VBc0xJLGVBQWU7QVA0NEVuQjs7QU9sa0ZBO0VBMExJLGVBQWU7QVA0NEVuQjs7QU90a0ZBO0VBOExJLGVBQWU7QVA0NEVuQjs7QU8xa0ZBO0VBa01JLGVBQWU7QVA0NEVuQjs7QU85a0ZBO0VBc01JLGVBQWU7QVA0NEVuQjs7QU9sbEZBO0VBME1JLGVBQWU7QVA0NEVuQjs7QU90bEZBO0VBOE1JLGVBQWU7QVA0NEVuQjs7QU8xbEZBO0VBa05JLGVBQWU7QVA0NEVuQjs7QU85bEZBO0VBc05JLGVBQWU7QVA0NEVuQjs7QU9sbUZBO0VBME5JLGVBQWU7QVA0NEVuQjs7QU90bUZBO0VBOE5JLGVBQWU7QVA0NEVuQjs7QU8xbUZBO0VBa09JLGVBQWU7QVA0NEVuQjs7QU85bUZBO0VBdU9JLFlBQVk7QVAyNEVoQjs7QU9sbkZBO0VBMk9JLFlBQVk7QVAyNEVoQjs7QU90bkZBO0VBK09JLGFBQWE7QVAyNEVqQjs7QU8xbkZBO0VBbVBJLFdBQVc7QVAyNEVmOztBTzluRkE7RUF1UEksV0FBVztBUDI0RWY7O0FPbG9GQTtFQTJQSSxZQUFZO0FQMjRFaEI7O0FPdG9GQTtFQStQSSxZQUFZO0FQMjRFaEI7O0FPMW9GQTtFQW1RSSxhQUFhO0FQMjRFakI7O0FPOW9GQTtFQXVRSSxhQUFhO0FQMjRFakI7O0FPbHBGQTtFQTJRSSxXQUFXO0FQMjRFZjs7QU90cEZBO0VBK1FJLFVBQVU7QVAyNEVkOztBTzFwRkE7RUFtUkksV0FBVztBUDI0RWY7O0FPOXBGQTtFQXVSSSxhQUFhO0FQMjRFakI7O0FPbHFGQTtFQTJSSSxXQUFXO0FQMjRFZjs7QU90cUZBO0VBK1JJLGNBQWM7QVAyNEVsQjs7QU8xcUZBO0VBbVNJLFdBQVc7QVAyNEVmOztBTzlxRkE7RUF3U0ksdUJBQXVCO0FQMDRFM0I7O0FPbHJGQTtFQTRTSSx1QkFBdUI7QVAwNEUzQjs7QU90ckZBO0VBZ1RJLHdCQUF3QjtBUDA0RTVCOztBTzFyRkE7RUFvVEksc0JBQXNCO0FQMDRFMUI7O0FPOXJGQTtFQXdUSSxzQkFBc0I7QVAwNEUxQjs7QU9sc0ZBO0VBNFRJLHVCQUF1QjtBUDA0RTNCOztBT3RzRkE7RUFnVUksdUJBQXVCO0FQMDRFM0I7O0FPMXNGQTtFQW9VSSx3QkFBd0I7QVAwNEU1Qjs7QU85c0ZBO0VBd1VJLHdCQUF3QjtBUDA0RTVCOztBT2x0RkE7RUE0VUksc0JBQXNCO0FQMDRFMUI7O0FPdHRGQTtFQWdWSSxxQkFBcUI7QVAwNEV6Qjs7QU8xdEZBO0VBb1ZJLHNCQUFzQjtBUDA0RTFCOztBTzl0RkE7RUF3Vkksd0JBQXdCO0FQMDRFNUI7O0FPbHVGQTtFQTRWSSxzQkFBc0I7QVAwNEUxQjs7QU90dUZBO0VBZ1dJLHlCQUF5QjtBUDA0RTdCOztBTzF1RkE7RUFvV0ksc0JBQXNCO0FQMDRFMUI7O0FPOXVGQTtFQXlXSSxxQkFBcUI7QVB5NEV6Qjs7QU9sdkZBO0VBNldJLHVCQUF1QjtBUHk0RTNCOztBT3R2RkE7RUFpWEksdUJBQXVCO0FQeTRFM0I7O0FPMXZGQTtFQXFYSSxxQkFBcUI7QVB5NEV6Qjs7QU90NEVFO0VBQ0UseUVKdFhtQztBSCt2RnZDOztBT3Q0RUU7RUFDRSw2Qkp6WG9DO0FIa3dGeEM7O0FRN3dGQTtFQUNFLG9CQUFvQjtFQUNwQix1QkFBdUI7QVJneEZ6Qjs7QVE5d0ZFO0VBQ0UsZ0JBQWdCO0FSaXhGcEI7O0FRN3dGQTtFQUNFLHFCQUFxQjtBUmd4RnZCOztBUzF4RkE7RUFDRSxrQkFBa0I7RUFDbEIsWUNENkI7RURJN0IsZ0JBQWdCO0VBRWhCLHNCQUFzQjtFQUN0QixlQUFlO0VBQ2YsZ0JBQWdCO0VBRWhCLG9CQUFvQjtBVHl4RnRCOztBU3Z4Rkc7RUFHRyxhQUFhO0FUd3hGbkI7O0FTM3hGRztFQVFHLGdCQUFnQjtBVHV4RnRCOztBU254RkU7RUFDRSxpQkN4Qm9DO0VEeUJwQyxrQkN4QmdDO0VEeUJoQyxXQUFXO0FUc3hGZjs7QVNueEZFO0VBRUUsb0JBQW9CO0FUcXhGeEI7O0FXdHpGQTs7O0VYMnpGRTtBNkIzekZGOzt5QzdCOHpGeUM7QThCOXpGekM7O0U5QmkwRkU7QThCanhGRjs7RTlCb3hGRTtBOEJsd0ZGOztFOUJxd0ZFO0E4QjN2RkY7O0U5Qjh2RkU7QThCeHZGRjs7RTlCMnZGRTtBK0I3MEZGO0FBQ0E7RUFDQyxzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixzQ0FBMEM7RUFBRTtFQUM1QyxvUkFJd0Q7QS9CNDBGekQ7O0ErQjEwRkE7QUFDQTtFQUNDLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLHFDQUF5QztFQUFFO0VBQzNDLGlSQUl1RDtBL0IwMEZ4RDs7QStCeDBGQTtBQUNBO0VBQ0Msc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIscUNBQXlDO0VBQUU7RUFDM0MsaVJBSXVEO0EvQncwRnhEOztBK0J0MEZBO0FBQ0E7RUFDQyxzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQix3Q0FBK0M7RUFBRTtFQUNqRCxtU0FJNkQ7QS9CczBGOUQ7O0ErQnAwRkE7QUFDQTtFQUNDLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG1DQUF1QztFQUFFO0VBQ3pDLHFRQUlxRDtBL0JvMEZ0RDs7QStCbDBGQTtBQUNBO0VBQ0Msc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsd0NBQTZDO0VBQUU7RUFDL0MsK1JBSTJEO0EvQmswRjVEOztBK0I3ekZBOztFL0JpMEZFO0E2QnA0RkY7O3lDN0J1NEZ5QztBZ0MvNEZ6QztBQUVBOytFaENnNUYrRTtBZ0M3NEYvRTs7O0VoQ2k1RkU7QWdDNTRGRjtFQUNDLGlCQUFpQjtFQUFFO0VBQ25CLDhCQUE4QjtFQUFFO0FoQ2c1RmpDOztBZ0M3NEZBOytFaENnNUYrRTtBZ0M3NEYvRTs7RWhDZzVGRTtBbUJsNkZGO0VhdUJDLFNBQVM7QWhDODRGVjs7QWdDMzRGQTs7RWhDKzRGRTtBZ0MzNEZGO0VBQ0MsY0FBYztBaEM2NEZmOztBZ0MxNEZBOzs7RWhDKzRGRTtBZ0MxNEZGO0VBQ0MsY0FBYztFQUNkLGdCQUFnQjtBaEM0NEZqQjs7QWdDejRGQTsrRWhDNDRGK0U7QWdDejRGL0U7OztFaEM2NEZFO0FnQ3g0RkY7RUFDQyx1QkFBdUI7RUFBRTtFQUN6QixTQUFTO0VBQUU7RUFDWCxpQkFBaUI7RUFBRTtBaEM2NEZwQjs7QWdDMTRGQTs7O0VoQys0RkU7QWdDMTRGRjtFQUNDLGlDQUFpQztFQUFFO0VBQ25DLGNBQWM7RUFBRTtBaEM4NEZqQjs7QWdDMzRGQTsrRWhDODRGK0U7QWdDMzRGL0U7O0VoQzg0RkU7QWdDMTRGRjtFQUNDLDZCQUE2QjtBaEM0NEY5Qjs7QWdDejRGQTs7O0VoQzg0RkU7QWdDejRGRjtFQUNDLG1CQUFtQjtFQUFFO0VBQ3JCLDBCQUEwQjtFQUFFO0VBQzVCLGlDQUFpQztFQUFFO0FoQzg0RnBDOztBZ0MzNEZBOztFaEMrNEZFO0FnQzM0RkY7O0VBRUMsbUJBQW1CO0FoQzY0RnBCOztBZ0MxNEZBOzs7RWhDKzRGRTtBZ0MxNEZGOzs7RUFHQyxpQ0FBaUM7RUFBRTtFQUNuQyxjQUFjO0VBQUU7QWhDODRGakI7O0FnQzM0RkE7O0VoQys0RkU7QWdDMzRGRjtFQUNDLGNBQWM7QWhDNjRGZjs7QWdDMTRGQTs7O0VoQys0RkU7QWdDMTRGRjs7RUFFQyxjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQix3QkFBd0I7QWhDNDRGekI7O0FnQ3o0RkE7RUFDQyxlQUFlO0FoQzQ0RmhCOztBZ0N6NEZBO0VBQ0MsV0FBVztBaEM0NEZaOztBZ0N6NEZBOytFaEM0NEYrRTtBZ0N6NEYvRTs7RWhDNDRGRTtBZ0N4NEZGO0VBQ0Msa0JBQWtCO0FoQzA0Rm5COztBZ0N2NEZBOytFaEMwNEYrRTtBZ0N2NEYvRTs7O0VoQzI0RkU7QWdDdDRGRjs7Ozs7RUFLQyxvQkFBb0I7RUFBRTtFQUN0QixlQUFlO0VBQUU7RUFDakIsaUJBQWlCO0VBQUU7RUFDbkIsU0FBUztFQUFFO0FoQzQ0Rlo7O0FnQ3o0RkE7OztFaEM4NEZFO0FnQ3o0RkY7O0VBQ1E7RUFDUCxpQkFBaUI7QWhDNDRGbEI7O0FnQ3o0RkE7OztFaEM4NEZFO0FnQ3o0RkY7O0VBQ1M7RUFDUixvQkFBb0I7QWhDNDRGckI7O0FnQ3o0RkE7O0VoQzY0RkU7QWdDejRGRjs7OztFQUlDLDBCQUEwQjtBaEMyNEYzQjs7QWdDeDRGQTs7RWhDNDRGRTtBZ0N4NEZGOzs7O0VBSUMsa0JBQWtCO0VBQ2xCLFVBQVU7QWhDMDRGWDs7QWdDdjRGQTs7RWhDMjRGRTtBZ0N2NEZGOzs7O0VBSUMsOEJBQThCO0FoQ3k0Ri9COztBZ0N0NEZBOztFaEMwNEZFO0FnQ3Q0RkY7RUFDQyw4QkFBOEI7QWhDdzRGL0I7O0FnQ3I0RkE7Ozs7O0VoQzQ0RkU7QWdDcjRGRjtFQUNDLHNCQUFzQjtFQUFFO0VBQ3hCLGNBQWM7RUFBRTtFQUNoQixjQUFjO0VBQUU7RUFDaEIsZUFBZTtFQUFFO0VBQ2pCLFVBQVU7RUFBRTtFQUNaLG1CQUFtQjtFQUFFO0FoQzY0RnRCOztBZ0MxNEZBOztFaEM4NEZFO0FnQzE0RkY7RUFDQyx3QkFBd0I7QWhDNDRGekI7O0FnQ3o0RkE7O0VoQzY0RkU7QWdDejRGRjtFQUNDLGNBQWM7QWhDMjRGZjs7QWdDeDRGQTs7O0VoQzY0RkU7QUFDRjs7RWdDdjRGQyxzQkFBc0I7RUFBRTtFQUN4QixVQUFVO0VBQUU7QWhDNDRGYjs7QWdDejRGQTs7RWhDNjRGRTtBQUNGOztFZ0N4NEZDLFlBQVk7QWhDMjRGYjs7QWdDeDRGQTs7O0VoQzY0RkU7QUFDRjtFZ0N4NEZDLDZCQUE2QjtFQUFFO0VBQy9CLG9CQUFvQjtFQUFFO0FoQzQ0RnZCOztBZ0N6NEZBOztFaEM2NEZFO0FBQ0Y7RWdDejRGQyx3QkFBd0I7QWhDMjRGekI7O0FnQ3g0RkE7OztFaEM2NEZFO0FnQ3g0RkY7RUFDQywwQkFBMEI7RUFBRTtFQUM1QixhQUFhO0VBQUU7QWhDNDRGaEI7O0FnQ3o0RkE7K0VoQzQ0RitFO0FnQ3o0Ri9FOztFaEM0NEZFO0FnQ3g0RkY7RUFDQyxjQUFjO0FoQzA0RmY7O0FnQ3Y0RkE7O0VoQzI0RkU7QWdDdjRGRjtFQUNDLGtCQUFrQjtBaEN5NEZuQjs7QWdDdDRGQTsrRWhDeTRGK0U7QWdDdDRGL0U7O0VoQ3k0RkU7QWdDcjRGRjtFQUNDLGFBQWE7QWhDdTRGZDs7QWdDcDRGQTs7RWhDdzRGRTtBQUNGO0VnQ3A0RkMsYUFBYTtBaENzNEZkOztBaUNqdUdBOzs7Ozs7Ozs7O0VqQzZ1R0U7QWlDL3JHRjs7Ozs7Ozs7O0VqQ3lzR0U7QWlDbnJHRjs7Ozs7O0VqQzByR0U7QWlDeHFHRjs7Ozs7RWpDOHFHRTtBaUM1b0dGOzs7Ozs7Ozs7OztFakN3cEdFO0FpQ3JvR0Y7Ozs7Ozs7Ozs7O0VqQ2lwR0U7QWlDOW5HRjs7O0VqQ2tvR0U7QWtCdm5HRjtHbEJ5bkdFLE9pQy9uR087QWpDZ29HVDs7QWtCcm9HRTtFZVNBLFlBQVk7RUFDWixjQUFjO0FqQ2dvR2hCOztBa0Jwb0dFO0VlUUEsV0FBVztBakNnb0diOztBaUNsbkdBOztFakNzbkdFO0FrQnJtR0Y7RWVRQyxhQUFhO0FqQ2dtR2Q7O0FpQzdsR0E7RUFDQyxjQUFjO0FqQ2dtR2Y7O0FpQzdsR0E7OztFakNrbUdFO0FpQzlsR0Y7RUFDQyxXQUFXO0FqQ2dtR1o7O0FpQzNsR0E7Ozs7OztFakNtbUdFO0FpQ3RsR0Y7Ozs7O0VqQzRsR0U7QWlDN2tHRjs7O0VqQ2lsR0U7QWlDbmpHRjs7O0VqQ3VqR0U7QWlDL2hHRjs7O0VqQ21pR0U7QWtDejFHRjs7Ozs7Ozs7Ozs7RWxDcTJHRTtBa0NwMUdGOzs7Ozs7Ozs7Ozs7OztFbENtMkdFO0FrQ2owR0Y7Ozs7Ozs7Ozs7Ozs7RWxDKzBHRTtBbUNsNEdGOztFbkNxNEdFOztBbUNockdEOzs7O0VBSUMsMkJBQTZCO0VBQzdCLHFCQUFxQjtBbkNtckd2Qjs7O0FtQ2hyR0M7RUFDQyxhQUFhO0FuQ29yR2Y7OztBbUNqckdDO0VBQ0MsZ0JBQWdCO0FuQ3FyR2xCOzs7QW1DbHJHQzs7O0VBR0Msa0JBQWtCO0VBQ2xCLDRCQUE0QjtBbkNzckc5Qjs7QTZCNzRHQTs7eUM3Qmk1R3lDO0FvQ242R3pDOzs7Ozs7Q3BDMDZHQztBb0NsNkdEO0VBQ0Msd0JBQWdCO0VBQ2hCLDBCQUFrQjtBcENvNkduQjs7QW1COTZHQTtFaUJjQyxrQ0xnRThCO0VLL0Q5QixjTkNvQjtFTUFwQix5Qk5YaUI7RU1ZakIsMEJBQTBCO0FwQ282RzNCOztBaUN4NkdFO0VkYkY7SWlCb0JFLGVBQWU7SUFDZixpQkFBaUI7RXBDczZHakI7QUFDRjs7QWlDMTZHRTtFZGxCRjtJaUJ5QkUsZUFBZTtJQUNmLGlCQUFpQjtFcEN3NkdqQjtBQUNGOztBaUM1NkdFO0VkdkJGO0lpQjhCRSxlQUFlO0lBQ2YsaUJBQWlCO0VwQzA2R2pCO0FBQ0Y7O0FvQzc3R0E7RUFzQkUsd0JBQWdCO0VBQ2hCLDBCQUFrQjtBcEMyNkdwQjs7QW9DbDhHQTtFQTJCRSx3QkFBZ0I7RUFDaEIsMEJBQWtCO0FwQzI2R3BCOztBbUJwOUdBO0VpQjhDRSxhQUFhO0VBQ2Isa0JBQWtCO0FwQzA2R3BCOztBaUM1OEdFO0VkYkY7SWlCa0RHLGlCQUFpQjtFcEM0NkdsQjtBQUNGOztBaUM3OEdFO0VkbEJGO0lpQnFERyxpQkFBaUI7RXBDKzZHbEI7QUFDRjs7QWlDOThHRTtFZHZCRjtJaUJ3REcsa0JBQWtCO0VwQ2s3R25CO0FBQ0Y7O0FpQzk5R0U7RUdBRjtJQWlERyxrQkFBa0I7RXBDazdHbkI7QUFDRjs7QWlDLzlHRTtFR0xGO0lBdURHLGtCQUFrQjtFcENrN0duQjtBQUNGOztBbUI3OUdBOzs7Ozs7RWlCc0RDLFNBQVM7QXBDZzdHVjs7QW9DNzZHQTs7O0VBR0MsYUFBYTtFQUNiLGdCQUFnQjtBcENnN0dqQjs7QW9DNzZHQTtFQUNDLGNBQWM7QXBDZzdHZjs7QW1CbCtHQTtFYzROQyxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGFBQWE7RUFDYixlQUFlO0VBQ2YsNkJBQTZCO0VHeks3QixjQUFjO0FwQ283R2Y7O0FtQnQrR0E7O0VpQndEQyxnQkFBZ0I7QXBDbTdHakI7O0E2QmhnSEE7O3lDN0JvZ0h5QztBcUMzaEh6QztFQU1FLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsc0JBQXNCO0FyQ3doSHhCOztBcUNoaUhBO0VBV0ksbUJBQW1CO0FyQ3loSHZCOztBcUN0aEhFO0VBQ0UsZ0JBQWdCO0FyQ3loSHBCOztBcUN0aEhFO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsMkJBQTJCO0VBQzNCLDRCQUE0QjtFQUM1QixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLGlCQUFpQjtFQUNqQixzQkFBc0I7QXJDeWhIMUI7O0FxQ3ZoSEk7RUFDRSxxQkFBaUI7TUFBakIsaUJBQWlCO0FyQzBoSHZCOztBcUN0aEhFO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixjQUFjO0VBQ2QsbUJBQW1CO0VBQ25CLHFCQUFpQjtNQUFqQixpQkFBaUI7RUFDakIsMkJBQTJCO0VBQzNCLHdDQUF3QztBckN5aEg1Qzs7QXFDaGlIRztFQVVHLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLHFCQUFxQjtBckMwaEgzQjs7QXFDdGhIRTtFQUNFLDJCQUEyQjtFQUMzQixxQkFBaUI7TUFBakIsaUJBQWlCO0FyQ3loSHJCOztBcUN0aEhFO0VBQ0UsMkJBQTJCO0VBQzNCLHFCQUFpQjtNQUFqQixpQkFBaUI7QXJDeWhIckI7O0FxQ3RoSEU7RUFDRSxjQUFjO0FyQ3loSGxCOztBc0M1bEhBOzs7Ozs7OztFdENzbUhFO0FzQzVsSEY7O0V0QytsSEU7QXNDMWxIRjs7RXRDNmxIRTtBcUMxbUhGO0VDaUJDLGtCQUFrQjtBdEM0bEhuQjs7QXNDemxIQTs7RXRDNmxIRTtBc0MxbEhGO0VBQ0MsWUFBWTtBdEM0bEhiOztBc0N6bEhBO0VBQ0MsZ0JBQWdCO0F0QzRsSGpCOztBc0N4bEhBOztFdEM0bEhFO0FxQzFtSEE7RUNrQkQsU0FBUztBdEMybEhWOztBc0N0bEhBOztFdEMwbEhFO0FpQ3huSEE7RUkyQ0E7SUNSQSxhQUFhO0V0Q3lsSGI7QUFDRjs7QWlDcG1IRTtFSWtCQTtJQ0pBLFVBQVU7SUFDVixrQkFBa0I7SUFDbEIsc0JBQXVCO0lBQ3ZCLFVSSGtCO0lRSWxCLFdSSmtCO0lRS2xCLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLDhCQUE4QjtJQUM5QixpQ0FBbUM7RXRDMmxIbkM7QUFDRjs7QWlDbm5IRTtFSzJCRjtJQUVFLFlBQVk7SUFDWixXQUFXO0lBQ1gsMENSaEVnQjtJUWlFaEIsa0JBQWtCO0lBQ2xCLDBDQUE0QztFdEMybEg1QztFc0NqbUhGO0lBU0csY0FBYztJQUNkLGNBQWM7SUFDZCw4QlJ2RWU7SVF3RWYsOEJBQWdDO0V0QzJsSGpDO0VzQ3ZtSEY7SUFnQkcsMENSNUVlO0U5QnNxSGhCO0VzQzFtSEY7SUFtQkksYVIvRWM7RTlCeXFIaEI7QUFDRjs7QXNDamxIQTs7O0V0Q3NsSEU7QXFDdm5IQTtFQ3NDRCxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixXQUFXO0F0Q29sSFo7O0FpQzdxSEU7RUlnREE7SUM0Q0EsWUFBWTtFdENzbEhaO0FBQ0Y7O0FpQzlxSEU7RUkyQ0E7SUNnREEsV0FBVztFdEN3bEhYO0FBQ0Y7O0FpQy9xSEU7RUlzQ0E7SUNvREEsWUFBWTtFdEMwbEhaO0FBQ0Y7O0FzQ3ZsSEE7RUxnSkMsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixhQUFhO0VBQ2IsZUFBZTtFQUNmLDZCQUE2QjtFS2xKN0IsWUFBWTtFQUNaLFdBQVc7RUFDWCxVQUFVO0VBQ1YseUJSckhpQjtFUXNIakIsa0JBQWtCO0VBQ2xCLGlDQUFtQztFQUNuQyxlQUFlO0F0QzhsSGhCOztBc0N0bUhBO0VBV0UsYUFBYTtBdEMrbEhmOztBc0MxbUhBO0VBZUUsZ0JBQWdCO0F0QytsSGxCOztBc0MzbEhBO0VBQ0MseUJScElpQjtBOUJrdUhsQjs7QTZCdHNIQTs7eUM3QjBzSHlDO0F1QzN1SHpDOztFdkM4dUhFO0FtQ3poSEQ7Ozs7RUFJQywyQkFBNkI7RUFDN0IscUJBQXFCO0FuQzJoSHZCOztBbUN4aEhDO0VBQ0MsYUFBYTtBbkMyaEhmOztBbUN4aEhDO0VBQ0MsZ0JBQWdCO0FuQzJoSGxCOztBbUN4aEhDOzs7RUFHQyxrQkFBa0I7RUFDbEIsNEJBQTRCO0FuQzJoSDlCOztBdUNqd0hBO0VBSUUsVUFBVTtBdkNpd0haOztBdUNyd0hBO0VBT0csZUFBZTtBdkNrd0hsQjs7QXVDendIQTs7RUFhRSxnQkFBZ0I7QXZDaXdIbEI7O0FpQ3B3SEU7RU1WRjs7SUoySkUsZUFBZTtJQUNmLGlCQUFpQjtFbkN5bkhqQjtBQUNGOztBaUN2d0hFO0VNZkY7O0lKK0pFLGVBQWU7SUFDZixpQkFBaUI7RW5DNm5IakI7QUFDRjs7QWlDMXdIRTtFTXBCRjs7SUptS0UsZUFBZTtJQUNmLGlCQUFpQjtFbkNpb0hqQjtBQUNGOztBdUN0eUhBO0VBa0JFLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsY0FBYztFQUNkLFVBQVU7QXZDd3hIWjs7QXVDN3lIQTtFQXdCRyxlQUFlO0F2Q3l4SGxCOztBdUNqekhBO0VBNEJHLGdCQUFnQjtBdkN5eEhuQjs7QXVDcHhIQTtFQ3JCRSxrQk5vQnlFO0VNbkJ6RSxnQk5tQm9EO0FsQzB4SHREOztBd0N6eUhFO0VBQ0UsY0FBYztFQUNkLHlCQUFpQztFQUNqQyxXQUFXO0F4QzR5SGY7O0F1Qy94SEE7RUFJRSxXQUFXO0F2Qyt4SGI7O0F5Q3YwSEE7RUFDQyxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixjWEZpQjtFV0dqQixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLHNDQUF3QztFQUN4QyxtQkFBbUI7QXpDMDBIcEI7O0F5Q24wSEE7Ozs7Ozs7O0VBQ0MsMkJBQTZCO0VBQzdCLHlCWGZpQjtFV2dCakIsc0NBQXdDO0F6QzYwSHpDOztBeUMxMEhBO0VBQ0MsY1hwQmlCO0VXcUJqQiw2QkFBNkI7RUFDN0IseUJYdEJpQjtBOUJtMkhsQjs7QXlDejBIQTtFQUNDLGNYbEJvQjtFV21CcEIseUJYNUJpQjtFVzZCakIseUJYcEJvQjtBOUJnMkhyQjs7QXlDejBIQTtFQUNDLGNYaENxQjtFV2lDckIseUJYbENpQjtFV21DakIseUJYbENxQjtBOUI4Mkh0Qjs7QXlDejBIQTtFQUNDLHFCQUFxQjtFQUNyQixlVnlDc0I7RVV4Q3RCLGlCQUFpQjtBekM0MEhsQjs7QXlDejBIQTtFQUNDLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsaUJBQWlCO0F6QzQwSGxCOztBeUN6MEhBO0VBQ0MsZ0JBQWdCO0F6QzQwSGpCOztBeUN6MEhBOzs7Ozs7Ozs7Ozs7Ozs7RUFHQywwQkFBMEI7QXpDdzFIM0I7O0F5QzMxSEE7Ozs7Ozs7Ozs7OztFQU1FLGtCQUFrQjtBekNvMkhwQjs7QXlDMTJIQTs7Ozs7Ozs7Ozs7O0VBVUUsOEJBQThCO0F6QysySGhDOztBeUN6M0hBOzs7Ozs7Ozs7RUFjRSxrQkFBa0I7QXpDdTNIcEI7O0F5Q3I0SEE7Ozs7Ozs7OztFQWtCRSxrQkFBa0I7RUFDbEIsYVh6RWdCO0VXMEVoQixZQUFZO0VBQ1osV0FBVztBekMrM0hiOzs7QXlDbjVIQTs7Ozs7Ozs7RUE2QkUsMEJBQTRCO0F6Q2s0SDlCOztBeUN2NEhBOztFQVNFLGtCQUFrQjtFQUNsQiwwQkFBNEI7RUFDNUIsV0FBVztFQUNYLFlBQVk7QXpDbTRIZDs7QXlDLzNIQTtFQUNDLGNYdEZvQjtFV3VGcEIseUJYNUQ2QjtFVzZEN0IseUJYeEZvQjtBOUIwOUhyQjs7QXlDcjRIQTtFQU1FLGFYM0ZtQjtBOUI4OUhyQjs7QXlDejRIQTtFQVVFLGtCQUFrQjtFQUNsQixhWGhHbUI7RVdpR25CLFlBQVk7RUFDWixXQUFXO0F6Q200SGI7O0EwQ3AvSEE7RUFDQyxjQUFjO0VBQ2QsVUFBVTtFQUNWLGVBQWU7QTFDdS9IaEI7O0EwQzEvSEE7RUFNRSxjQUFjO0ExQ3cvSGhCOztBMkM3L0hDO0VBQ0MsYWJrQm1CO0E5QjgrSHJCOztBMkM3L0hDO0VBQ0MsYWJhZ0I7QTlCbS9IbEI7O0EyQzcvSEM7RUFDQyxhYldpQjtBOUJxL0huQjs7QTJDNy9IQztFQUNDLGFiUW9CO0E5QncvSHRCOztBMkM3L0hDO0VBQ0MsYWJYd0I7QTlCMmdJMUI7O0E0Q2xoSUE7RUFFRSx5QkFBeUI7QTVDb2hJM0I7O0E2Q3RoSUE7RUFDQyxrQkFBa0I7RUFDbEIsaUJBQWE7RUFBYixhQUFhO0VBQ2Isc0RBQXlEO0VBQ3pELGtCQUFrQjtBN0N5aEluQjs7QTZDdGhJQTtFQUNDLGFBQWE7RUFDYixTQUFTO0VBQ1QsVUFBVTtFQUNWLHFCQUFxQjtBN0N5aEl0Qjs7QTZDN2hJQTtFQVFHLGtCQUFrQjtBN0N5aElyQjs7QTZDamlJQTtFQVlHLDBCQUE0QjtFQUM1QixZQUFZO0VBQ1osV0FBVztBN0N5aElkOztBOEM5aUlBO0VBQ0MsY0FBYztFQUNkLFdBQVc7RUFDWCxZQUFZO0VBQ1osYWhCQ2lCO0E5QmdqSWxCOztBOEM3aUlBO0VBQ0MsYUFBYTtBOUNnaklkOztBK0N6aklBOzs7RS9DOGpJRTtBK0MxaklGO0VBQ0MsY2pCQWlCO0VpQkNqQix5QmpCVW9CO0E5QmtqSXJCOztBaUNqaUlFO0VjN0JGO0lkeUZDLHNCQUFzQjtJQUN0QixXQUFXO0ljcEZWLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsOEJBQThCO0lBQzlCLG1CQUFtQjtJQUNuQixlQUFlO0UvQytqSWY7QUFDRjs7QWlDamtJRTtFY1RGO0lkNkZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUJnaUl4QjtBQUNGOztBaUNya0lFO0VjZEY7SWRvR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkhuRHdCO0lHb0R4QixtQkhwRHdCO0U5QndpSXhCO0FBQ0Y7O0FpQ3prSUU7RWNuQkY7SWQyR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixvQ0FBeUQ7SUFDekQscUNBQTBEO0lBQzFELGlCQUEyRTtFakNzL0gzRTtBQUNGOztBaUM3bElFO0VjVEY7SUFjRSxpQkFBaUI7SUFDakIsb0JBQW9CO0UvQzZsSXBCO0FBQ0Y7O0FpQy9sSUU7RWNkRjtJQW1CRSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0UvQytsSW5CO0FBQ0Y7O0FpQ2ptSUU7RWNuQkY7SUF3QkUsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsY0FBYztJQUNkLGdCQUFnQjtFL0NpbUloQjtFK0M3bklGO0lBK0JHLFlBQVM7SUFDVCxxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixrQ0FBa0M7SUFDbEMsZUFBZTtJQUNmLGdCaEJzQ1k7SWdCckNaLGNBQWM7RS9DaW1JZjtBQUNGOztBK0M1bElBOzs7RS9DaW1JRTtBK0M3bElGO0VBQ0MsY0FBYztFQUNkLGNBQWM7QS9DK2xJZjs7QWlDeG9JRTtFY3VDRjtJQUtFLGVoQjJCb0I7SWdCMUJwQixnQmhCdUJVO0UvQjBrSVY7QUFDRjs7QWlDMW9JRTtFY2tDRjtJQVVFLGVoQnVCb0I7SWdCdEJwQixnQmhCa0JVO0UvQmlsSVY7QUFDRjs7QWlDNW9JRTtFYzZCRjtJQWVFLGVoQm1CcUI7SWdCbEJyQixnQmhCV2E7SWdCVmIsa0JBQWtCO0lBQ2xCLG9DQUFvQztJQUNwQyw4Q0FBa0Q7RS9DcW1JbEQ7QUFDRjs7QWlDdHBJRTtFY21ERDtJQUVFLGdDakJ2RWU7RTlCNnFJaEI7QUFDRjs7QWlDdHFJRTtFY21FRDtJQUVFLGVBQWU7RS9Dc21JaEI7QUFDRjs7QWlDbHFJRTtFY3lERDtJQUtFLGdDakJoRmU7RTlCeXJJaEI7QUFDRjs7QStDcG1JQTs7O0UvQ3ltSUU7QWlDdnJJQTtFY2tGRjtJQUVFLGFqQjVGZ0I7RTlCbXNJaEI7QUFDRjs7QWlDdnJJRTtFYzZFRjtJQUtFLHdCQUEwQjtJQUMxQixhakJoR2dCO0U5QjBzSWhCO0FBQ0Y7O0FpQ3pySUU7RWN3RUY7SUFTRSxhQUFhO0UvQzZtSWI7QUFDRjs7QWlDcHNJRTtFY3lGRDtJQUVFLHlDQUE2QztFL0M4bUk5QztBQUNGOztBK0N6bUlBOzs7RS9DOG1JRTtBK0MxbUlGO0VBQ0MsYUFBYTtBL0M0bUlkOztBaUNuc0lFO0VjeUZEO0lBRUUsY0FBYztJQUNkLGVBQWU7SUFDZixNQUFNO0lBQ04sUUFBUTtJQUNSLE9BQU87SUFDUCxZQUFZO0lBQ1osWWpCN0NxQjtFOUIwcEl0QjtBQUNGOztBaUNudUlFO0VjNkdEO0lBWUUseUJqQnRIa0I7RTlCcXVJbkI7QUFDRjs7QWlDcHVJRTtFY3dHRDtJQWdCRSx1Q2pCMUhrQjtFOUIydUluQjtBQUNGOztBZ0Q1dklBO0VBQ0MsV0FBVztFQUNYLFlBQVk7QWhEK3ZJYjs7QWdENXZJQTtFQUNDLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsMkRBQTREO0FoRCt2STdEOztBZ0Rsd0lBO0VBTUUsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7QWhEZ3dJZDs7QTZCaHVJQTs7eUM3Qm91SXlDO0FpRG54SXpDOztFakRzeElFO0FpQ3p3SUE7RWdCVkY7SUFHRyxnQkFBZ0I7RWpEb3hJakI7QUFDRjs7QWlEaHhJQTtFQUNDLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsY25CRW9CO0E5Qml4SXJCOztBaURoeElBO0VoQjRQQyxVQUFVO0VBQ1YsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0VnQjdQZCxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZiwyQkFBMkI7QWpEc3hJNUI7O0FpRG54SUE7RUFDQyxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixrQkFBa0I7QWpEc3hJbkI7O0FpRDd4SUE7RUFVRSxXQUFXO0VBQ1gsWUFBWTtBakR1eElkOztBaURseUlBO0VBZUUsZ0JBQWdCO0FqRHV4SWxCOztBa0QveklBOztFbERtMElFO0FpQ2x5SUE7RWlCOUJGO0lqQjBGQyxzQkFBc0I7SUFDdEIsV0FBVztFakMwdUlWO0FBQ0Y7O0FpQzV6SUU7RWlCVkY7SWpCOEZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUIyeEl4QjtBQUNGOztBaUNoMElFO0VpQmZGO0lqQnFHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSG5Ed0I7SUdvRHhCLG1CSHBEd0I7RTlCbXlJeEI7QUFDRjs7QWlDcDBJRTtFaUJwQkY7SWpCNEdFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsb0NBQXlEO0lBQ3pELHFDQUEwRDtJQUMxRCxpQkFBMkU7RWpDaXZJM0U7QUFDRjs7QWlDOTBJRTtFaUJwQkY7SUFNRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG1CQUFtQjtFbERpMkluQjtBQUNGOztBaUM1MElFO0VpQjlCRjtJQWNHLGFwQkRrQjtFOUJrMkluQjtBQUNGOztBa0Q1MUlBOztFbERnMklFO0FrRDcxSUY7RUFDQyxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQiw4QkFBOEI7RUFDOUIsbUJBQW1CO0VBQ25CLFdBQVc7QWxEKzFJWjs7QWlDOTFJRTtFaUJQRjtJQVNFLDBCQUEwQjtJQUMxQixzQkFBc0I7SUFDdEIseUJwQmhDZ0I7SW9CaUNoQixrQkFBa0I7RWxEaTJJbEI7QUFDRjs7QWlDajNJRTtFaUJHRjtJQWdCRSxhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsc0NBQXdDO0VsRG0ySXhDO0FBQ0Y7O0FpQ2ozSUU7RWlCUEY7SUF5QkcsYUFBYTtFbERvMklkO0FBQ0Y7O0FpQ2o0SUU7RWlCR0Y7SUE2QkksYXBCdkNpQjtFOUI2NEluQjtBQUNGOztBaUM3M0lFO0VpQlBGO0lBb0NHLGFBQWE7RWxEcTJJZDtBQUNGOztBa0QvMUlBOztFbERtMklFO0FrRGgySUY7RUFDQyxjQUFjO0VBQ2QsV0FBVztFQUNYLGNBQWM7RUFDZCxTQUFTO0FsRGsySVY7O0FrRHQySUE7RUFPRSxlQUFlO0VBQ2YsaUJBQWlCO0FsRG0ySW5COztBa0QzMklBO0VBT0UsZUFBZTtFQUNmLGlCQUFpQjtBbERtMkluQjs7QWtEMzJJQTtFQVlFLGFBQWE7QWxEbTJJZjs7QWlDMTZJRTtFaUIyREY7SUFnQkUsZW5CSm9CO0UvQncySXBCO0FBQ0Y7O0FpQzM2SUU7RWlCc0RGO0lBb0JFLGVuQlBvQjtFL0I2MklwQjtBQUNGOztBaUM1NklFO0VpQmlERjtJQXdCRSxnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLGVuQlpxQjtFL0JvM0lyQjtBQUNGOztBa0RwMklBO0VBQ0MsZUFBZTtBbER1MkloQjs7QWlDeDdJRTtFaUJnRkY7SUFJRSxlQUFlO0VsRHkySWY7QUFDRjs7QWtEdjJJQztFQUNDLGFBQWE7QWxEMDJJZjs7QWtEdDJJQTtFQUNDLGFBQWE7RUFDYixlQUFlO0FsRHkySWhCOztBa0R2MklDO0VBQ0MsY0FBYztBbEQwMkloQjs7QWtEdDJJQTtFQUNDLGFBQWE7RUFDYixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixzQ0FBd0M7RUFDeEMseUJwQjdIaUI7RW9COEhqQixtQkFBbUI7QWxEeTJJcEI7O0FrRGgzSUE7RUFXRywyQkFBNkI7RUFDN0IsZ0JuQnZEUztBL0JnNklaOztBa0RyM0lBO0VBZ0JHLDJCQUE2QjtBbER5MkloQzs7QWtEejNJQTtFQXFCRSxlQUFlO0FsRHcySWpCOztBbUR6L0lBOzs7RW5EOC9JRTtBaUNqL0lBO0VrQlRGO0lBRUUsV0FBVztFbkQ0L0lYO0FBQ0Y7O0FpQzc5SUU7RWtCbENGO0lBTUUsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsMkJBQTJCO0lBQzNCLG1CQUFtQjtFbkQ4L0luQjtBQUNGOztBaUNoZ0pFO0VrQlRGO0lBZUcsaUJBQWlCO0lBQ2pCLGdCcEI0RFc7RS9CbThJWjtBQUNGOztBaUM5K0lFO0VrQmxDRjtJQW1CRyxRQUFRO0lBQ1Isa0JyQjRCaUI7SXFCM0JqQixpQnJCMkJpQjtFOUJ1K0lsQjtBQUNGOztBaUMvZ0pFO0VrQlRGO0lBMkJHLGdCQUFnQjtJQUNoQiwwQkFBa0I7UUFBbEIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixzQkFBc0I7SUFDdEIsZUFBZTtJQUNmLHVCQUF1QjtJQUN2QixtQkFBbUI7RW5Ea2dKcEI7QUFDRjs7QWlDbGdKRTtFa0JsQ0Y7SUFvQ0csUUFBUTtFbkRxZ0pUO0FBQ0Y7O0FvRDlpSkE7O0VwRGtqSkU7QW9EL2lKRjtFQUNDLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIsbUJBQW1CO0VBQ25CLFl0QnVENEM7RXNCdEQ1QyxjdEJIaUI7RXNCSWpCLHlCdEJPb0I7RXNCRHBCOztHcEQ2aUpFO0FBQ0g7O0FpQzVoSkU7RW1COUJGO0luQjBGQyxzQkFBc0I7SUFDdEIsV0FBVztFakNxK0lWO0FBQ0Y7O0FpQ3ZqSkU7RW1CVkY7SW5COEZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUJzaEp4QjtBQUNGOztBaUMzakpFO0VtQmZGO0luQnFHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSG5Ed0I7SUdvRHhCLG1CSHBEd0I7RTlCOGhKeEI7QUFDRjs7QWlDL2pKRTtFbUJwQkY7SW5CNEdFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsb0NBQXlEO0lBQ3pELHFDQUEwRDtJQUMxRCxpQkFBMkU7RWpDNCtJM0U7QUFDRjs7QW9EN2xKQTtFQWdCRSxhdEJkZ0I7QTlCK2xKbEI7O0FvRGptSkE7RUFvQkUsYUFBYTtFQUNiLG1CQUFtQjtBcERpbEpyQjs7QW9EdG1KQTtFQXlCRSxpQkFBaUI7RUFDakIsZ0JBQWdCO0FwRGlsSmxCOztBaUM3a0pFO0VtQjlCRjtJQWdDRyxtQkFBbUI7RXBEZ2xKcEI7QUFDRjs7QWlDN2xKRTtFbUJwQkY7SUFtQ0csYUFBYTtFcERtbEpkO0FBQ0Y7O0FvRHZuSkE7RUF5Q0UsYUFBYTtBcERrbEpmOztBaUNqbkpFO0VtQlZGO0lBNENHLDJCQUEyQjtFcERvbEo1QjtBQUNGOztBaUNsbkpFO0VtQmZGO0lBK0NHLG1CQUFtQjtFcER1bEpwQjtBQUNGOztBb0R2b0pBO0VBcURFLGFBQWE7QXBEc2xKZjs7QW9EamxKQTs7RXBEcWxKRTtBb0RsbEpGO0VuQjZNQyxVQUFVO0VBQ1YsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0VtQjlNZCx5QnRCbERvQjtBOUJ5b0pyQjs7QWlDbG9KRTtFbUJ5Q0Y7SUFLRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixpQnRCcEJrQjtFOUI2bUpsQjtFb0RqbUpGOztJQVlHLGFBQWE7RXBEeWxKZDtBQUNGOztBb0RwbEpBOzs7OztFcEQybEpFO0FpQ2hxSkE7RW1CMkVGO0lBRUUsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtFcER1bEpsQjtBQUNGOztBaUNqcUpFO0VtQnNFRjtJQU9FLGVBQWU7SUFDZixrQkFBa0I7RXBEeWxKbEI7QUFDRjs7QWlDN3FKRTtFbUJ1RkY7SUFFRSxnQkFBZ0I7RXBEeWxKaEI7QUFDRjs7QWlDOXFKRTtFbUJrRkY7SUFNRSxnQkFBZ0I7SUFDaEIsa0JBQWtCO0VwRDJsSmxCO0FBQ0Y7O0FvRHRsSkE7O0VwRDBsSkU7QWlDMXFKQTtFbUJtRkY7SUFFRSxXQUFXO0VwRHlsSlg7QUFDRjs7QWlDenJKRTtFbUI2RkY7SW5CeENDLHNCQUFzQjtJQU10QixxQkF6QnVDO0ltQmtFdEMsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixlQUFlO0VwRDRsSmY7QUFDRjs7QW9EcmxKQTs7O0VwRDBsSkU7QW9EdGxKRjtFQUNDLGN0QnJJaUI7RXNCc0lqQixxQkFBcUI7QXBEd2xKdEI7O0FpQzVzSkU7RW1Ca0hGO0luQjdEQyxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix3QkFyQm9EO0ltQmtGbkQsa0JBQWdEO0lBQ2hELGFBQW1GO0lBQ25GLGdCQUFnQjtFcEQ2bEpoQjtBQUNGOztBb0R6bEpBO0VBQ0MsY3RCbEppQjtFc0JtSmpCLHlCdEJ4SW9CO0E5Qm91SnJCOztBaUNudEpFO0VtQnFIRjtJQUtFLGFBQWE7RXBEOGxKYjtBQUNGOztBaUNudUpFO0VtQitIRjtJbkIxRUMsc0JBQXNCO0lBR3JCLGlCSDVCWTtJRzZCWixrQkg3Qlk7SUcrQmIsbUNBckJvRDtJbUJtR25ELFlBQVk7RXBEbW1KWjtBQUNGOztBaUM3dUpFO0VtQitIRjtJQWVHLGN0QmhLZTtJc0JpS2YscUJBQXFCO0VwRG9tSnRCO0FBQ0Y7O0FvRC9sSkE7O0VwRG1tSkU7QWlDbHdKQTtFbUJrS0Y7SUFFRSxXQUFXO0lBQ1gsZUFBZTtFcERrbUpmO0FBQ0Y7O0FpQ253SkU7RW1CNkpGO0lBT0UsV0FBVztJQUNYLGVBQWU7SUFDZixpQkFBaUI7RXBEb21KakI7QUFDRjs7QWlDdHdKRTtFbUJ3SkY7SUFhRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQiwyQkFBMkI7SUFDM0IscUJBQXFCO0VwRHNtSnJCO0FBQ0Y7O0FpQ3R3SkU7RW1COElGO0lBdUJHLGFBQWE7RXBEc21KZDtBQUNGOztBaUN0eEpFO0VtQndKRjtJQTBCRyxjQUFjO0lBQ2QsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixXQUFXO0VwRHltSlo7QUFDRjs7QW9Ecm1KQTs7RXBEeW1KRTtBaUN6eEpBO0VtQm1MRjtJQUVFLGNBQWM7SUFDZCxlQUFlO0lBQ2YsZUFBZTtJQUNmLGdCckJ6SVk7RS9CaXZKWjtBQUNGOztBaUMzeUpFO0VtQjZMRjtJQVFFLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLGdCckIvSVk7RS9CMHZKWjtBQUNGOztBb0R4bUpBOztFcEQ0bUpFO0FpQzl5SkE7RW1CcU1GO0lBRUUsYUFBYTtFcEQybUpiO0FBQ0Y7O0FpQzd6SkU7RW1CK01GO0lBTUUsZUFBZTtJQUNmLGVBQWU7SUFDZixpQkFBaUI7RXBENm1KakI7RW1DdG9KRDs7OztJQUlDLDJCQUE2QjtJQUM3QixxQkFBcUI7RW5Dd29KckI7RW1Dcm9KRDtJQUNDLGFBQWE7RW5DdW9KYjtFbUNwb0pEO0lBQ0MsZ0JBQWdCO0VuQ3NvSmhCO0VtQ25vSkQ7OztJQUdDLGtCQUFrQjtJQUNsQiw0QkFBNEI7RW5DcW9KNUI7QUFDRjs7QWlDeDFKRTtFbUIrTUY7SW5CdUNDLFVBQVU7SUFDVixTQUFTO0lBQ1QsZ0JBQWdCO0lBQ2hCLGNBQWM7SW1CNUJaLGVBQWU7RXBEb29KaEI7QUFDRjs7QWlDbDJKRTtFbUIrTUY7SUFvQkcsZ0JBQWdCO0VwRG9vSmpCO0FBQ0Y7O0FvRGpvSkM7Ozs7RUFLRSxjdEI5UGU7QTlCaTRKbEI7O0FxRHQ0SkE7RWJlRSxrQk5vQnlFO0VNbkJ6RSxnQk5tQm9EO0FsQ3cySnREOztBd0N2M0pFO0VBQ0UsY0FBYztFQUNkLHlCQUFpQztFQUNqQyxXQUFXO0F4QzAzSmY7O0FxRGo1SkE7RUNZRSxrQkFBa0I7RUFFaEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxZQUFZO0VBR1osT0FBTztFQUNQLFFBQVE7RUFDUixXQUFXO0F0RHM0SmY7O0F1RDM1SkE7O0V2RCs1SkU7QXVEdjVKRjs7O0V2RDI1SkU7QXVEdjVKRjtFdEJpUUMsVUFBVTtFQUNWLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsY0FBYztFc0JsUWQsa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsMkJBQTJCO0VBQzNCLHVCQUF1QjtFQUN2QixnQkFBc0U7RUFDdEUsZ0JBQWdCO0F2RDQ1SmpCOztBaUNuNkpFO0VzQkRGO0l0QmlGQyxzQkFBc0I7SUFDdEIsV0FBVztFakN3MUpWO0FBQ0Y7O0FpQzE2SkU7RXNCREY7SXRCcUZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUJ5NEp4QjtBQUNGOztBaUM5NkpFO0VzQk5GO0l0QjRGRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSG5Ed0I7SUdvRHhCLG1CSHBEd0I7RTlCaTVKeEI7QUFDRjs7QWlDbDdKRTtFc0JYRjtJdEJtR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixvQ0FBeUQ7SUFDekQscUNBQTBEO0lBQzFELGlCQUEyRTtFakMrMUozRTtBQUNGOztBaUNqOEpFO0VzQk5GO0l0QmlGQyxzQkFBc0I7SUFDdEIsV0FBVztFakMyM0pWO0FBQ0Y7O0FpQzc4SkU7RXNCREY7SXRCcUZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUI0Nkp4QjtBQUNGOztBaUNqOUpFO0VzQk5GO0l0QjRGRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSG5Ed0I7SUdvRHhCLG1CSHBEd0I7RTlCbzdKeEI7QUFDRjs7QWlDcjlKRTtFc0JYRjtJdEJtR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixvQ0FBeUQ7SUFDekQscUNBQTBEO0lBQzFELGlCQUEyRTtFakNrNEozRTtBQUNGOztBaUMvOUpFO0VzQlhGO0lBbUJFLFlBQWtFO0lBQ2xFLHlCekIzQmdCO0U5QnUvSmhCO0FBQ0Y7O0F1RGovSkE7RUEyQkksWUFBUTtBdkQwOUpaOztBdURyL0pBO0VBMkJJLFlBQVE7QXZEODlKWjs7QXVEei9KQTtFQTJCSSxZQUFRO0F2RGsrSlo7O0F1RDcvSkE7RUEyQkksYUFBUTtBdkRzK0paOztBdURqZ0tBO0VBMkJJLGFBQVE7QXZEMCtKWjs7QXVEcmdLQTtFQTJCSSxhQUFRO0F2RDgrSlo7O0F1RHpnS0E7RUEyQkksYUFBUTtBdkRrL0paOztBdUQxK0pBOztFdkQ4K0pFO0F1RDMrSkY7RUFDQyxjQUFjO0VBQ2QsbUJBL0MwQztBdkQ0aEszQzs7QWlDaGdLRTtFc0JpQkY7SUFLRSxhekJsRGdCO0U5QmlpS2hCO0FBQ0Y7O0FpQ2hoS0U7RXNCMkJGO0lBUUUsYXpCMUNtQjtFOUI0aEtuQjtBQUNGOztBdUQzL0pBO0VBWUUsY0FBYztBdkRtL0poQjs7QXVEOStKQTs7RXZEay9KRTtBdUQvK0pGO0VBQ0MsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QiwyQkFBMkI7RUFDM0IsWUF0RTBCO0VBdUUxQixtQkFBbUI7RUFDbkIsb0N6QklhO0V5QkhiLGtCQUFrQjtBdkRpL0puQjs7QXVENytKQTtFdEI0TEMsVUFBVTtFQUNWLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsY0FBYztBakNxekpmOztBdUQvK0pBOzs7RXZEby9KRTtBdURoL0pGOztFQUVDLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIsZXhCUnNCO0V3QlN0QixpQkFBaUI7RUFDakIscUJBQXFCO0F2RGsvSnRCOztBaUNqaktFO0VzQnlERjs7SUFTRSxnQnhCcEJhO0l3QnFCYixjekIvRmdCO0l5QmdHaEIseUJ6QnJGbUI7RTlCMGtLbkI7QUFDRjs7QWlDcGtLRTtFc0JtRUY7O0lBZUUsZ0J4QnpCWTtJd0IwQlosY3pCMUZtQjtJeUIyRm5CLHlCekJ0R2dCO0U5QjhsS2hCO0FBQ0Y7O0FpQzU4SkM7RXNCOUREOztJQXNCRywwQkFBMEI7RXZEMC9KM0I7QUFDRjs7QXdEM21LQTtFQUNDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0F4RDhtS3hCOztBaUNobEtFO0V1QmpDRjtJQU1FLGdCQUFnQjtFeERnbktoQjtBQUNGOztBaUNobUtFO0V1QnZCRjtJQVNFLGdCQUFnQjtFeERtbktoQjtBQUNGOztBd0RobktBO0V2QmdRQyxVQUFVO0VBQ1YsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0V1QmpRZCxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixjQUFjO0F4RHNuS2Y7O0F3RGxuS0E7RUFFRSxpQkFBaUI7QXhEb25LbkI7O0F3RHRuS0E7RUFNRSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGNBQWM7RUFDZCx1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixnQnpCNkNhO0V5QjVDYixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLDJCQUE2QjtFQUM3Qix5QjFCakNnQjtFMEJrQ2hCLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsK0RBQW1FO0F4RG9uS3JFOztBd0R2b0tBO0VBdUJHLGMxQnhDZTtFMEJ5Q2Ysc0NBQXdDO0F4RG9uSzNDOztBeUQvcEtBO0VBQ0MsYUFBYTtBekRrcUtkOztBeUQvcEtBO0V4QjZRQztFQUNBLDJCQUEyQjtFQUczQixxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCO0V3QmpSQSxjQUFjO0VBQ2QsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQiwyQkFBNkI7RUFDN0IsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixzQ0FBd0M7RUFDeEMseUIzQlhpQjtFMkJZakIsZUFBZTtBekR3cUtoQjs7QXlEdHFLQztFQUNDLGMzQmZnQjtFMkJnQmhCLG1CQUFtQjtFQUNuQixzQ0FBd0M7QXpEeXFLMUM7O0EwRC9yS0E7RUFDQyxzQkFBc0I7QTFEa3NLdkI7O0EwRG5zS0E7RUFJRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFdBQVc7RUFDWCxZQUFZO0ExRG1zS2Q7O0EwRDFzS0E7RUFXRSwwQkFBNEI7QTFEbXNLOUI7O0EwRDlzS0E7RUFlRSwyQkFBNkI7QTFEbXNLL0I7O0EwRGx0S0E7RUFrQkcsbUJBQW1CO0ExRG9zS3RCOztBNkIxcEtBOzt5QzdCOHBLeUM7QTJENXNLekM7O0UzRCtzS0U7QTJENXNLRjtFQUVFLGNBQWM7RUFDZCxXQUFXO0EzRDZzS2I7O0EyRGh0S0E7RUFPRSxnQjVCeURVO0EvQm9wS1o7O0EyRHB0S0E7RUFZRSxnQjVCa0RhO0EvQjBwS2Y7O0FtQ3BoS0M7Ozs7RUFJQywyQkFBNkI7RUFDN0IscUJBQXFCO0FuQ3VoS3ZCOztBbUNwaEtDO0VBQ0MsYUFBYTtBbkN1aEtmOztBbUNwaEtDO0VBQ0MsZ0JBQWdCO0FuQ3VoS2xCOztBbUNwaEtDOzs7RUFHQyxrQkFBa0I7RUFDbEIsNEJBQTRCO0FuQ3VoSzlCOztBMkQvdUtBO0VBZUcsYUFBYTtBM0RvdUtoQjs7QTJEbnZLQTtFQW1CRyxnQkFBZ0I7QTNEb3VLbkI7O0FpQzN2S0U7RTBCSUY7SXhCa0hFLGVBQWU7SUFDZixpQkFBaUI7RW5DMG9LakI7QUFDRjs7QWlDN3ZLRTtFMEJERjtJeEJzSEUsZUFBZTtJQUNmLGlCQUFpQjtFbkM2b0tqQjtBQUNGOztBaUMvdktFO0UwQk5GO0l4QjBIRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQ2dwS2pCO0FBQ0Y7O0EyRDV3S0E7RUFvQ0Usa0JBQWtCO0EzRDR1S3BCOztBMkRoeEtBO0VBd0NHLG1CQUFtQjtFQUNuQixrQkFBa0I7QTNENHVLckI7O0EyRHJ1S0E7OztFM0QwdUtFO0EyRHR1S0Y7RUFFRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFlBQVk7QTNEdXVLZDs7QWlDL3dLRTtFMEJvQ0Y7SUFPRyxnQkFBZ0I7RTNEeXVLakI7QUFDRjs7QWlDL3hLRTtFMEI4Q0Y7SUFwRUMsa0JBQWtCO0lBK0VoQix1QkFBdUI7RTNENHVLeEI7RTJEenpLRDtJQUNDLGtCQUFrQjtJQUNsQixXQUFXO0lBQ1gsU0FBUztJQUNULFFBQVE7SUFDUiw4Q0FBZ0Q7SUFDaEQsV0FBVztFM0QyektYO0FBQ0Y7O0EyRGh3S0E7RUFnQkUsZ0JBQWdCO0VBQ2hCLFFBQVE7QTNEb3ZLVjs7QTJEcndLQTtFQXFCRSxRQUFRO0VBQ1IsV0FBVztFQUNYLGdCQUFnQjtBM0RvdktsQjs7QWlDL3lLRTtFMEJvQ0Y7SUE2QkcsZ0JBQWdCO0lBQ2hCLFFBQVE7SUFDUixnQkFBZ0I7RTNEbXZLakI7QUFDRjs7QWlDajBLRTtFMEI4Q0Y7SUFtQ0csZ0JBQWdCO0lBQ2hCLFFBQVE7SUFDUixrQkFBa0I7RTNEcXZLbkI7QUFDRjs7QWlDL3pLRTtFMEJvQ0Y7SUEyQ0csUUFBUTtFM0RxdktUO0FBQ0Y7O0FpQy8wS0U7RTBCOENGO0lBK0NHLGdCQUFnQjtJQUNoQiwwQkFBa0I7UUFBbEIsa0JBQWtCO0lBQ2xCLFFBQVE7RTNEdXZLVDtBQUNGOztBaUNqMktFO0UwQndERjtJQXdERyxnQkFBZ0I7RTNEc3ZLakI7QUFDRjs7QWlDNzFLRTtFMEI4Q0Y7SUE0REcsZ0JBQWdCO0UzRHd2S2pCO0FBQ0Y7O0EyRHB2S0E7RTFCekNDLHNCQUFzQjtFQUN0QixXQUFXO0UwQjBDWCxnQkFBZ0I7RUFxQ2hCO0VBT0E7QTNEOHNLRDs7QWlDcjNLRTtFMEJ5SEY7STFCckNFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUJvMUt4QjtBQUNGOztBaUN6M0tFO0UwQm9IRjtJMUI5QkUsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkhuRHdCO0lHb0R4QixtQkhwRHdCO0U5QjQxS3hCO0FBQ0Y7O0FpQzczS0U7RTBCK0dGO0kxQnZCRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLG9DQUF5RDtJQUN6RCxxQ0FBMEQ7SUFDMUQsaUJBQTJFO0VqQzB5SzNFO0FBQ0Y7O0FpQ3gzS0U7RTBCZ0dGO0lBS0UsYUFBYTtJQUNiLDhCQUE4QjtFM0R3eEs5QjtBQUNGOztBaUMvM0tFO0UwQmdHRjtJQVdHLHdCQUFrQztFM0R5eEtuQztBQUNGOztBMkRyeUtBO0VBcklDLGtCQUFrQjtFQXNKakIsYUFBYTtFQUNiLGVBQWU7RUFDZixzQkFBc0I7RUFDdEIsbUJBQW1CO0EzRHl4S3JCOztBMkRoN0tDO0VBQ0Msa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxTQUFTO0VBQ1QsUUFBUTtFQUNSLDhDQUFnRDtFQUNoRCxXQUFXO0EzRG03S2I7O0FpQy82S0U7RTBCeUhGO0lBdUJHLHNCQUFzQjtJQUN0Qix5QkFBeUI7RTNEb3lLMUI7QUFDRjs7QWlDajdLRTtFMEJvSEY7SUE0Qkcsc0JBQXNCO0lBQ3RCLHlCQUF5QjtFM0RzeUsxQjtBQUNGOztBaUNuN0tFO0UwQitHRjtJQWdDRyx5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLHdCQUF3QjtFM0R5eUt6QjtBQUNGOztBaUNqN0tFO0UwQnFHRjtJQXlDdUIsUUFBUTtFM0R3eUs3QjtFMkRqMUtGO0lBMEN1QixRQUFRO0UzRDB5SzdCO0UyRHAxS0Y7SUEyQzBCLFFBQVE7RTNENHlLaEM7RTJEdjFLRjtJQTRDOEIsUUFBUTtFM0Q4eUtwQztBQUNGOztBMkQzMUtBO0VBa0RFLFdBQVc7QTNENnlLYjs7QWlDeDlLRTtFMEJ5SEY7SUFxREcsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixpQkFBaUI7RTNEK3lLbEI7QUFDRjs7QWlDMzlLRTtFMEJvSEY7SUEwREcsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixZQUFZO0UzRGt6S2I7QUFDRjs7QWlDOTlLRTtFMEIrR0Y7SUErREcsZUFBZTtJQUNmLGlCQUFpQjtFM0RxektsQjtBQUNGOztBMkR0M0tBO0VBcUVFLFdBQVc7RUFDWCxlQUFlO0VBQ2YsaUJBQWlCO0EzRHF6S25COztBaUNyL0tFO0UwQnlIRjtJQTBFRyxnQkFBZ0I7RTNEdXpLakI7QUFDRjs7QWlDdC9LRTtFMEJvSEY7SUE2RUcsYUFBYTtFM0QwektkO0FBQ0Y7O0FpQ3YvS0U7RTBCK0dGO0lBZ0ZHLGdCQUFnQjtFM0Q2ektqQjtBQUNGOztBaUN2Z0xFO0UwQnlIRjtJQXNGRyxnQkFBZ0I7SUFDaEIsa0JBQWtCO0UzRDZ6S25CO0FBQ0Y7O0FpQ3pnTEU7RTBCb0hGO0lBMEZHLGVBQWU7RTNEZzBLaEI7QUFDRjs7QWlDMWdMRTtFMEIrR0Y7SUE2RkcsZ0JBQWdCO0UzRG0wS2pCO0FBQ0Y7O0FpQzFoTEU7RTBCeUhGO0lBbUdHLGdCQUFnQjtFM0RtMEtqQjtBQUNGOztBaUMzaExFO0UwQm9IRjtJQXNHRyxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0UzRHMwS2pCO0FBQ0Y7O0FpQzdoTEU7RTBCK0dGO0lBMkdHLGdCQUFnQjtJQUNoQixpQkFBaUI7RTNEdzBLbEI7QUFDRjs7QTREM2pMQTtFQUNDLGdCQUFnQjtFQUNoQixjOUJHaUI7RThCRmpCLHlCOUJhb0I7QTlCaWpMckI7O0E0RGprTEE7O0VBT0UsYzlCRmdCO0E5QmlrTGxCOztBaUN6akxFO0UyQmJGOztJQVVHLGVBQWU7SUFDZixnQjdCc0VTO0UvQjQvS1Y7QUFDRjs7QWlDNWpMRTtFMkJsQkY7O0lBY0csZUFBZTtJQUNmLGdCN0JrRVM7RS9Cb2dMVjtBQUNGOztBaUMvakxFO0UyQnZCRjs7SUFrQkcsZUFBZTtJQUNmLGdCN0I4RFM7RS9CNGdMVjtBQUNGOztBNEQ5bExBO0UzQjZGQyxzQkFBc0I7RUFDdEIsV0FBVztFMkJyRVYsYUFBYTtBNUQya0xmOztBaUN2bExFO0UyQmJGO0kzQmlHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSDdDd0I7SUc4Q3hCLG1CSDlDd0I7RTlCc2pMeEI7QUFDRjs7QWlDM2xMRTtFMkJsQkY7STNCd0dFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIbkR3QjtJR29EeEIsbUJIcER3QjtFOUI4akx4QjtBQUNGOztBaUMvbExFO0UyQnZCRjtJM0IrR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixvQ0FBeUQ7SUFDekQscUNBQTBEO0lBQzFELGlCQUEyRTtFakM0Z0wzRTtBQUNGOztBaUNubkxFO0UyQmJGO0lBNEJHLGlCQUFpQjtJQUNqQixvQkFBb0I7RTVEeW1MckI7QUFDRjs7QWlDcm5MRTtFMkJsQkY7SUFnQ0csZ0JBQWdCO0lBQ2hCLG9CQUFvQjtFNUQ0bUxyQjtBQUNGOztBaUN2bkxFO0UyQnZCRjtJQW9DRyxnQkFBZ0I7SUFDaEIsb0JBQW9CO0U1RCttTHJCO0FBQ0Y7O0E0RHJwTEE7RUEwQ0Usa0JBQWtCO0VBQ2xCLGdCN0JvQ2E7RTZCbkNiLGtCQUFrQjtBNUQrbUxwQjs7QWlDOW9MRTtFMkJiRjtJQStDRyxlQUFlO0U1RGluTGhCO0FBQ0Y7O0FpQzNuTEU7RTJCdENGO0lBa0RHLGFBQWE7SUFDYixlQUFlO0U1RG9uTGhCO0FBQ0Y7O0E0RHhxTEE7OztFQXlERyxjOUJwRGU7RThCcURmLGdCN0J1QlM7QS9COGxMWjs7QTREL3FMQTs7RUErREcsMEJBQTBCO0E1RHFuTDdCOztBNERwckxBO0VBb0VFLGtCQUFrQjtBNURvbkxwQjs7QWlDM3FMRTtFMkJiRjtJQXNFRyxnQkFBZ0I7RTVEdW5MakI7QUFDRjs7QWlDNXFMRTtFMkJsQkY7SUF5RUcsZ0JBQWdCO0U1RDBuTGpCO0FBQ0Y7O0FpQzdxTEU7RTJCdkJGO0lBNEVHLGdCQUFnQjtFNUQ2bkxqQjtBQUNGOztBNEQxc0xBO0VBZ0ZHLHFCQUFxQjtBNUQ4bkx4Qjs7QTREOXNMQTtFQW1GSSwwQkFBMEI7QTVEK25MOUI7O0E0RGx0TEE7RUF3RkssWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsZ0I3QlpVO0EvQjBvTGY7O0E0RHp0TEE7RUFrR0Usa0JBQWtCO0VBQ2xCLGdCN0JwQmE7RTZCcUJiLGtCQUFrQjtBNUQybkxwQjs7QWlDbHRMRTtFMkJiRjtJQXVHRyxnQkFBZ0I7SUFDaEIsZUFBZTtFNUQ2bkxoQjtBQUNGOztBaUNoc0xFO0UyQnRDRjtJQTJHRyxnQkFBZ0I7SUFDaEIsY0FBYztFNURnb0xmO0FBQ0Y7O0E0RDduTEM7Ozs7RUFJQyxhQUFhO0E1RGdvTGY7O0E2RHB2TEE7RTVCNkZDLHNCQUFzQjtFQUN0QixXQUFXO0U0QjVGWCxnQkFBZ0I7QTdEd3ZMakI7O0FpQzd1TEU7RTRCYkY7STVCaUdFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIN0N3QjtJRzhDeEIsbUJIOUN3QjtFOUI0c0x4QjtBQUNGOztBaUNqdkxFO0U0QmxCRjtJNUJ3R0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkhuRHdCO0lHb0R4QixtQkhwRHdCO0U5Qm90THhCO0FBQ0Y7O0FpQ3J2TEU7RTRCdkJGO0k1QitHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLG9DQUF5RDtJQUN6RCxxQ0FBMEQ7SUFDMUQsaUJBQTJFO0VqQ2txTDNFO0FBQ0Y7O0E2RGh4TEE7OztFN0RxeExFO0E2RGp4TEY7RUFFRTtFQUNBLHNCQUFzQjtFQUN0QjtBN0RreExGOztBNkQ5d0xBOztFN0RreExFO0E2RC93TEY7Ozs7Ozs7O0VBUUMsc0NBQXdDO0VBQ3hDLG1CQUFtQjtBN0RpeExwQjs7QTZEOXdMQTtFQUNDLHFCQUFxQjtFQUNyQixhQUFhO0VBQ2IsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsYy9CbENpQjtFK0JtQ2pCLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsc0NBQXdDO0VBQ3hDLFlBQVk7RUFDWixtQkFBbUI7QTdEaXhMcEI7O0E2RDl3TEE7O0U3RGt4TEU7QThEajBMRjtFQUNDLGtCQUFrQjtFQUNsQixhaENvRmE7RWdDbkZiLFdBQVc7QTlEbTBMWjs7QWlDL3lMRTtFNkJ2QkY7SUFNRSxnQkFBZ0I7SUFDaEIsTUFBTTtFOURxMExOO0FBQ0Y7O0FpQ3R6TEU7RTZCdkJGO0lBWUcsZ0JBQWdCO0U5RHMwTGpCO0FBQ0Y7O0ErRG4xTEE7O0UvRHUxTEU7QStEcDFMRjtFQUNDLGNqQ1lvQjtFaUNYcEIseUJqQ0FpQjtBOUJzMUxsQjs7QStEbDFMQTtFOUJvRkMsc0JBQXNCO0VBQ3RCLFdBQVc7QWpDa3dMWjs7QWlDbjFMRTtFOEJKRjtJOUJ3RkUsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkg3Q3dCO0lHOEN4QixtQkg5Q3dCO0U5Qmt6THhCO0FBQ0Y7O0FpQ3YxTEU7RThCVEY7STlCK0ZFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsa0JIbkR3QjtJR29EeEIsbUJIcER3QjtFOUIwekx4QjtBQUNGOztBaUMzMUxFO0U4QmRGO0k5QnNHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLG9DQUF5RDtJQUN6RCxxQ0FBMEQ7SUFDMUQsaUJBQTJFO0VqQ3d3TDNFO0FBQ0Y7O0FpQy8yTEU7RThCSkY7SUFJRSxpQkFBaUI7SUFDakIsb0JBQW9CO0UvRG8zTHBCO0FBQ0Y7O0FpQ2ozTEU7RThCVEY7SUFTRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQiw4QkFBOEI7SUFDOUIsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsZ0JqQ29DNEI7RTlCazFMNUI7QUFDRjs7QWlDejNMRTtFOEJkRjtJQW9CRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQiw4QkFBOEI7SUFDOUIsbUJBQW1CO0lBQ25CLFlqQzJCNEI7RTlCNjFMNUI7QUFDRjs7QStEcDNMQTs7O0UvRHkzTEU7QWlDejRMQTtFOEJvQkY7SUFFRSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixtQkFBbUI7RS9EdTNMbkI7QUFDRjs7QWlDMzVMRTtFOEJ3Q0Y7SUFFRSxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLGVBQWU7SUFDZiwyQkFBMkI7SUFDM0IsdUJBQXVCO0UvRHMzTHZCO0FBQ0Y7O0FpQ3I2TEU7RThCbURGO0lBRUUsYUFBYTtFL0RxM0xiO0FBQ0Y7O0FpQ3Q2TEU7RThCOENGO0lBTUUseUJBQXlCO0UvRHUzTHpCO0FBQ0Y7O0FpQ3Y2TEU7RThCeUNGO0lBVUUsWUFBWTtJQUNaLHVCQUF1QjtFL0R5M0x2QjtBQUNGOztBaUNuN0xFO0U4QjhDRjtJQWdCRyxpQmpDNUJpQjtFOUJzNUxsQjtBQUNGOztBaUNwN0xFO0U4QnlDRjtJQW1CRywwQkFBMkI7SUFDM0IsZ0JBQWdCO0lBQ2hCLGlCakNqQ2lCO0lpQ2tDakIsbUJBQW1CO0UvRDYzTHBCO0FBQ0Y7O0FpQ2w4TEU7RThCOENGO0lBNEJHLGlCakN4Q2lCO0U5QnE2TGxCO0FBQ0Y7O0FpQ244TEU7RThCeUNGO0lBK0JHLGlCakM1Q1c7SWlDNkNYLGtCakM3Q1c7RTlCNjZMWjtBQUNGOztBaUMvOExFO0U4QjhDRjtJQXNDRyxpQmpDbERpQjtFOUJrN0xsQjtBQUNGOztBaUNoOUxFO0U4QnlDRjtJQXlDRyxnQkFBZ0I7SUFDaEIsaUJqQ3ZEVztFOUIwN0xaO0FBQ0Y7O0ErRDUzTEE7OztFL0RpNExFO0FpQzU5TEE7RThCK0ZGO0lBR0csYUFBYTtFL0Q4M0xkO0UrRGo0TEY7SUFPRyx5QkFBeUI7SUFDekIsV0FBVztFL0Q2M0xaO0UrRHI0TEY7SUFZRyxXQUFXO0lBQ1gsZ0JBQWdCO0UvRDQzTGpCO0UrRHo0TEY7SUFpQkcsYUFBYTtFL0QyM0xkO0UrRDU0TEY7SUFxQkcsYUFBYTtFL0QwM0xkO0FBQ0Y7O0FnRXRnTUE7O0VoRTBnTUU7QWdFdmdNRjtFQUNDLGNsQ0NpQjtFa0NBakIseUJsQ1dvQjtBOUI4L0xyQjs7QWlDNytMRTtFK0I5QkY7SUFPRyxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsY2xDVGU7SWtDVWYseUJsQ0NrQjtJa0NBbEIsZUFBZTtFaEV5Z01oQjtFZ0V0aE1GO0lBZ0JJLFlBQVk7SUFDWixX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RS83UEE7RUFzQkUsYUFBYTtBMUU2NlBmOztBMEV4NlBBOztFMUU0NlBFO0EwRXo2UEY7RUFFQyxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixjNUMxSXlCO0U0QzJJekIseUI1QzdJaUI7RTRDOElqQixXQUFXO0VBQ1gsZ0JBQWdCO0ExRTA2UGpCOztBaUN4aFFFO0V5Q2lIRDtJQUVFLGdCQUFnQjtFMUUwNlBqQjtBQUNGOztBMEVyNlBBOztFQUVDLGM1QzVKaUI7RTRDNkpqQix5QjVDckp3QjtBOUI2alF6Qjs7QTBFbjZQQTs7RTFFdTZQRTtBaUNqa1FBO0V5QzZKRjtJQUVFLGdCQUFnQjtFMUVzNlBoQjtBQUNGOztBaUM3aVFFO0V5Q29JRjtJQUtFLGtCQUFrQjtFMUV5NlBsQjtBQUNGOztBMEUvNlBBO0VBU0UsYzVDOUtnQjtBOUJ3bFFsQjs7QTBFcjZQQTtFQUVFLFNBQVM7RUFDVCxrQkFBa0I7QTFFdTZQcEI7O0EwRTE2UEE7RUFPRSxlQUFlO0V2QzlKaEIsZ0JBQWdCO0FuQ3NrUWpCOztBaUMxbFFFO0V5QzJLRjtJdkNqTEUsZUFBZTtJQUNmLGlCQUFpQjtFbkNxbVFqQjtBQUNGOztBaUM1bFFFO0V5Q3NLRjtJdkM3S0UsZUFBZTtJQUNmLGlCQUFpQjtFbkN3bVFqQjtBQUNGOztBaUM5bFFFO0V5Q2lLRjtJdkN6S0UsZUFBZTtJQUNmLGlCQUFpQjtFbkMybVFqQjtBQUNGOztBaUMvbVFFO0V5QzJLRjtJdkM5RkUsZUFBZTtJQUNmLGlCQUFpQjtFbkN1aVFqQjtBQUNGOztBaUNqblFFO0V5Q3NLRjtJdkMxRkUsZUFBZTtJQUNmLGlCQUFpQjtFbkMwaVFqQjtBQUNGOztBaUNublFFO0V5Q2lLRjtJdkN0RkUsZUFBZTtJQUNmLGlCQUFpQjtFbkM2aVFqQjtBQUNGOztBaUNwb1FFO0V5QzJLRjtJQW1CRyxnQkFBZ0I7RTFFMjhQakI7QUFDRjs7QWlDam5RRTtFeUNrSkY7SUFzQkcsZ0JBQWdCO0UxRTg4UGpCO0FBQ0Y7O0EwRXIrUEE7RUEyQkUsa0JBQWtCO0ExRTg4UHBC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N1JDO0VBQ0MsZ0JBQWdCO0FuQ283UmxCOztBbUNqN1JDOzs7Ozs7O0VBR0Msa0JBQWtCO0VBQ2xCLDRCQUE0QjtBbkN3N1I5Qjs7QWlDcHBTRTtFMEM4ZUY7SUFvQ00sbUJBQW1CO0UzRXVvUnZCO0FBQ0Y7O0FpQ3JwU0U7RTBDeWVGO0lBdUNNLGdCQUFnQjtJQUNoQixrQkFBa0I7RTNFMG9SdEI7QUFDRjs7QWlDdnBTRTtFMENvZUY7SUEyQ00sbUJBQW1CO0UzRTZvUnZCO0FBQ0Y7O0EyRXpvUkE7RTFDOWNDLHNCQUFzQjtFQUN0QixXQUFXO0FqQzJsU1o7O0FpQzVxU0U7RTBDOGhCRjtJMUMxY0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkg3Q3dCO0lHOEN4QixtQkg5Q3dCO0U5QjJvU3hCO0FBQ0Y7O0FpQ2hyU0U7RTBDeWhCRjtJMUNuY0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkhuRHdCO0lHb0R4QixtQkhwRHdCO0U5Qm1wU3hCO0FBQ0Y7O0FpQ3ByU0U7RTBDb2hCRjtJMUM1YkUsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixvQ0FBeUQ7SUFDekQscUNBQTBEO0lBQzFELGlCQUEyRTtFakNpbVMzRTtBQUNGOztBMkVwcVJBOztFM0V3cVJFO0FpQ3hyU0E7RTBDbWhCRjtJQXdCTSxnQkFBZ0I7RTNFaXBScEI7QUFDRjs7QWlDdnNTRTtFMEM2aEJGO0lBMkJNLGdCQUFnQjtFM0VvcFJwQjtBQUNGOztBMkV6b1JBOztFM0U2b1JFO0EyRTFvUkY7RTFDamdCQyxzQkFBc0I7RUFDdEIsV0FBVztBakM4b1NaOztBaUMvdFNFO0UwQ2lsQkY7SUFFSSxnQkFBZ0I7RTNFaXBSbEI7QUFDRjs7QWlDNXNTRTtFMEN3akJGO0lBTUksZ0JBQWdCO0UzRW1wUmxCO0FBQ0Y7O0FpQzN1U0U7RTBDaWxCRjtJMUM3ZkUsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkg3Q3dCO0lHOEN4QixtQkg5Q3dCO0U5QjBzU3hCO0FBQ0Y7O0FpQy91U0U7RTBDNGtCRjtJMUN0ZkUsaUJBQWlCO0lB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a21UZjs7QWlDcHFURTtFMENnMUJGO0l4Q253QkUsZUFBZTtJQUNmLGlCQUFpQjtFbkM0bFRqQjtBQUNGOztBaUN0cVRFO0UwQzIwQkY7SXhDL3ZCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQytsVGpCO0FBQ0Y7O0FpQ3hxVEU7RTBDczBCRjtJeEMzdkJFLGVBQWU7SUFDZixpQkFBaUI7RW5Da21UakI7QUFDRjs7QWlDenJURTtFMENnMUJGO0lBeUVNLGdCQUFnQjtFM0VxeVJwQjtBQUNGOztBaUN0cVRFO0UwQ3V6QkY7SUE2RU0sZ0JBQWdCO0UzRXV5UnBCO0FBQ0Y7O0EyRW55UkE7RUFDRSxpQkFBYTtFQUFiLGFBQWE7QTNFc3lSZjs7QWlDenNURTtFMENrNkJGO1FBSUksdURBQXVEO0UzRXd5UnpEO0FBQ0Y7O0FpQ3RyVEU7RTBDeTRCRjtRQVFJLGlFQUFpRTtJQUNqRSx5QkFBOEI7SUFBOUIsOEJBQThCO0UzRTB5UmhDO0FBQ0Y7O0FpQ3R0VEU7RTBDazZCRjtJQWdCSSxxQkFBcUI7RTNFeXlSdkI7QUFDRjs7QWlDdnRURTtFMEM2NUJGO0lBb0JJLHFCQUFxQjtFM0UyeVJ2QjtBQUNGOztBaUN4dFRFO0UwQ3c1QkY7SUF3QkkscUJBQXFCO0UzRTZ5UnZCO0FBQ0Y7O0EyRXQwUkE7RUwvNkJBO0VBQUE7RUsyOEJJLGdCQUFnQjtBM0U4eVJwQjs7QWlDNXVURTtFMENrNkJGO0lBK0JNLGdCQUFnQjtFM0VnelJwQjtBQUNGOztBaUN6dFRFO0UwQ3k0QkY7SUFtQ00sd0MxQ3o1QmtDO0VqQzJzVHRDO0FBQ0Y7O0EyRXQxUkE7RUF3Q0ksbUJBQW1CO0VBQ25CLGdCNUN6NEJXO0VJOUNkLGdCQUFnQjtBbkMwdVRqQjs7QWlDOXZURTtFMENrNkJGO0l4Q3g2QkUsZUFBZTtJQUNmLGlCQUFpQjtFbkN5d1RqQjtBQUNGOztBaUNod1RFO0UwQzY1QkY7SXhDcDZCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQzR3VGpCO0FBQ0Y7O0FpQ2x3VEU7RTBDdzVCRjtJeENoNkJFLGVBQWU7SUFDZixpQkFBaUI7RW5DK3dUakI7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QUFBO0V0RW0vTUU7RWtFbi9NRjtJSUFBO0lBQUE7RXRFOGdORTtFMEV6L01GO0lKckJBO0lBQUE7RXRFZ2dRQTtFMkVqbE9BO0lMLzZCQTtJQUFBO0V0RTJ3VEE7RTJFNTFSQTtJTC82QkE7SUFBQTtFdEVzMVRBO0UyRXIxUkE7SUxqZ0NBO0lBQUE7RXRFKzRUQTtFMkU5NFJBO0lMamdDQTtJQUFBO0V0RWc3VEE7RTRFaDdUQTtJTkFBO0lBQUE7RXRFaS9UQTtFOEVqL1RBO0lSQUE7SUFBQTtFdEV1bFVFO0U4RXZsVUY7SVJBQTtJQUFBO0V0RW1wVUU7Q3NFbnBVRjs7QVFBQTtFQXNGRyxhQUFhO0E5RWtrVWhCOztBK0V4cFVBO0VBQ0Usa0NoRDZFNkI7RWdENUU3QixnQmhEK0VVO0EvQjRrVVo7O0ErRXhwVUE7RUFDRSxrQ2hEd0U2QjtFZ0R2RTdCLGdCaER3RWE7QS9CbWxVZjs7QStFeHBVQTtFQUNFLGNqREttQjtFaURKbkIsZUFBZTtFQUNmLGlCQUFpQjtBL0UycFVuQjs7QStFeHBVQTtFQUNFLGNqRERtQjtFaURFbkIsZUFBZTtFQUNmLGlCQUFpQjtBL0UycFVuQjs7QStFdHBVQTs7RUFDRSxjakRUbUI7QTlCbXFVckI7O0FpQ3RxVUU7RThDV0Y7O0lBS0ksZUFBZTtJQUNmLGlCQUFpQjtFL0U0cFVuQjtBQUNGOztBaUNycFVFO0U4Q2RGOztJQVVJLGVBQWU7SUFDZixpQkFBaUI7RS9FK3BVbkI7QUFDRjs7QStFOW9VQTtFQUNFLGdCaEQyQlU7QS9Cc25VWjs7QWlDMXJVRTtFOEN3Q0Y7STVDOUNFLGVBQWU7SUFDZixpQkFBaUI7RW5DcXNVakI7QUFDRjs7QWlDNXJVRTtFOENtQ0Y7STVDMUNFLGVBQWU7SUFDZixpQkFBaUI7RW5Dd3NVakI7QUFDRjs7QWlDOXJVRTtFOEM4QkY7STVDdENFLGVBQWU7SUFDZixpQkFBaUI7RW5DMnNVakI7QUFDRjs7QStFbHFVQTtFQUNFLGdCaERvQmE7QS9CaXBVZjs7QWlDbnRVRTtFOEM2Q0Y7SUFJSSxlQUFlO0lBQ2YsaUJBQWlCO0UvRXVxVW5CO0FBQ0Y7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RS9FZzdVcEI7QUFDRjs7QStFejZVQTs7RS9FNjZVRTtBaUMxaldBO0U4Q2dwQkY7SUFJSSxnQkFBZ0I7RS9FMDZVbEI7QUFDRjs7QWlDemtXRTtFOEMwcEJGO0lBT0ksZ0JBQWdCO0UvRTY2VWxCO0FBQ0Y7O0FpQ3JrV0U7RThDZ3BCRjtJQVlNLGdCQUFnQjtFL0U4NlVwQjtBQUNGOztBaUNybFdFO0U4QzBwQkY7SUFnQk0sZ0JBQWdCO0UvRWc3VXBCO0FBQ0Y7O0FpQzVrV0U7RThDMm9CRjtJQXNCUSxhQUFhO0UvRWc3VW5CO0FBQ0Y7O0FpQzNtV0U7RThDb3FCRjtJQTZCTSxjakQzcEJRO0U5QjBrV1o7QUFDRjs7QWlDam5XRTtFOENvcUJGO0lBbUNNLG1CQUF1QjtJQUN2Qiw0QmpEbHFCUTtFOUJpbFdaO0FBQ0Y7O0FpQ25uV0U7RThDK3BCRjtJQXVDTSxnQkFBZ0I7SUFDaEIsNEJqRHRxQlE7RTlCd2xXWjtBQUNGOztBaUNybldFO0U4QzBwQkY7SUEyQ00sdUJBQXVCO0UvRXE3VTNCO0FBQ0Y7O0ErRWorVUE7RUFnREksZ0JoRGhwQlE7QS9CcWtXWjs7QWlDem9XRTtFOENvcUJGO0k1Q2pvQkUsZUFBZTtJQUNmLGlCQUFpQjtFbkMybVdqQjtBQUNGOztBaUMzb1dFO0U4QytwQkY7STVDN25CRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQzhtV2pCO0FBQ0Y7O0FpQzdvV0U7RThDMHBCRjtJNUN6bkJFLGVBQWU7SUFDZixpQkFBaUI7RW5DaW5XakI7QUFDRjs7QWlDOXBXRTtFOENvcUJGO0lBOERNLGdCQUFnQjtJNUM1bUJwQixlQUFlO0lBQ2YsaUJBQWlCO0VuQzhpV2pCO0FBQ0Y7O0FpQ2pxV0U7RThDK3BCRjtJQWtFTSxnQkFBZ0I7STVDNW1CcEIsZUFBZTtJQUNmLGlCQUFpQjtFbkNraldqQjtBQUNGOztBaUNwcVdFO0U4QzBwQkY7SUFzRU0sZUFBZTtJNUM1bUJuQixlQUFlO0lBQ2YsaUJBQWlCO0VuQ3NqV2pCO0FBQ0Y7O0ErRXA4VUE7O0UvRXc4VUU7QWlDanFXQTtFOEM0dEJGO0lBUVUsa0JqRHZ0Qkk7RTlCd3BXWjtBQUNGOztBaUN0cVdFO0U4QzR0QkY7SUFjVSw4Q0FBZ0Q7SUFDaEQsaUJqRDl0Qkk7RTlCK3BXWjtBQUNGOztBK0VqOVVBO0VBcUJNLDJCQUEyQjtBL0VnOFVqQzs7QWlDanJXRTtFOEM0dEJGO0lBeUJVLGlCakR4dUJJO0U5QnlxV1o7QUFDRjs7QWlDdnJXRTtFOEM0dEJGO0lBK0JVLDZDQUErQztJQUMvQyxrQmpEL3VCSTtFOUJncldaO0FBQ0Y7O0FpQ3Z0V0U7RThDcXZCRjtJQXVDUSx5QkFBaUM7SUFDakMsZ0JBQWdCO0lBQ2hCLGlCakR4dkJNO0lpRHl2Qk4sbUJqRHp2Qk07SWlEMHZCTiw4Q0FBZ0Q7RS9FZzhVdEQ7QUFDRjs7QWlDanVXRTtFOEN3eUJGO0k1Qzl5QkUsZUFBZTtJQUNmLGlCQUFpQjtFbkM0dVdqQjtBQUNGOztBaUNudVdFO0U4Q215QkY7STVDMXlCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQyt1V2pCO0FBQ0Y7O0FpQ3J1V0U7RThDOHhCRjtJNUN0eUJFLGVBQWU7SUFDZixpQkFBaUI7RW5Da3ZXakI7QUFDRjs7QStFOThVQTtFQU9JLGVBQWU7QS9FMjhVbkI7O0FpQzF2V0U7RThDd3lCRjtJNUNyd0JFLGVBQWU7SUFDZixpQkFBaUI7RW5DNHRXakI7QUFDRjs7QWlDNXZXRTtFOENteUJGO0k1Q2p3QkUsZUFBZTtJQUNmLGlCQUFpQjtFbkMrdFdqQjtBQUNGOztBaUM5dldFO0U4Qzh4QkY7STVDN3ZCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQ2t1V2pCO0FBQ0Y7O0ErRXYrVUE7RUFXSSxlQUFlO0VBQ2YsZ0JBQWdCO0EvRWcrVXBCOztBK0U1K1VBO0VBZ0JJLGNBQWM7QS9FZytVbEI7O0ErRTU5VUE7O0VBR0ksZUFBc0I7QS9FODlVMUI7O0FpQ254V0U7RThDa3pCRjs7SUFNTSxhQUFhO0lBQ2IsZUFBZTtFL0VpK1VuQjtBQUNGOztBK0V6K1VBOztFQVlJLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsbUJBQXVCO0EvRWsrVTNCOztBaUNseVdFO0U4Q2t6QkY7O0lBaUJNLG1DOUM3eEIrQztFakNrd1duRDtBQUNGOztBaUN6eVdFO0U4Q2t6QkY7Ozs7SUF3QlEsYUFBYTtFL0V1K1VuQjtBQUNGOztBaUN4eVdFO0U4Q3d5QkY7Ozs7SUFxQ00sZUFBZTtJQUNmLGlCQUFpQjtFL0VtK1VyQjtBQUNGOztBaUM1eldFO0U4Q2t6QkY7Ozs7SUFqeUJFLGNqRHhCbUI7RTlCMjBXbkI7QUFDRjs7QWlDLzBXRTtFOEM0ekJGOzs7O0k1Q3RzQkUsZUFBZTtJQUNmLGlCQUFpQjtFbkNpdVdqQjtBQUNGOztBaUNwMVdFO0U4Q3V6QkY7Ozs7STVDbHNCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQ3V1V2pCO0FBQ0Y7O0FpQ3oxV0U7RThDa3pCRjs7OztJNUM5ckJFLGVBQWU7SUFDZixpQkFBaUI7RW5DNnVXakI7QUFDRjs7QStFbmdWQTtFQUdJLFlBQVk7RUFDWixnQkFBZ0I7QS9Fb2dWcEI7O0ErRTMvVUE7OztFL0VnZ1ZFO0ErRTUvVUY7RUFNSSxZQUFZO0EvRXkvVWhCOztBK0VuL1VBOztFL0V1L1VFO0ErRXAvVUY7RUFJSSxrQkFBa0I7QS9FbS9VdEI7O0ErRXYvVUE7RUFRSSxlQUFlO0VBQ2YsaUJBQWlCO0EvRW0vVXJCOztBK0U1L1VBO0VBYUksZUFBZTtBL0VtL1VuQjs7QWlDMTRXRTtFOEMwNEJGO0k1Qy90QkUsZUFBZTtJQUNmLGlCQUFpQjtFbkNvdVdqQjtBQUNGOztBaUM1NFdFO0U4Q3E0QkY7STVDM3RCRSxlQUFlO0lBQ2YsaUJBQWlCO0VuQ3V1V2pCO0FBQ0Y7O0FpQzk0V0U7RThDZzRCRjtJNUN2dEJFLGVBQWU7SUFDZixpQkFBaUI7RW5DMHVXakI7QUFDRjs7QStFNy9VQTs7Ozs7RS9Fb2dWRTtBaUNqNldBO0U4Q3E2QkE7SUFFSSxhQUFhO0UvRTgvVWpCO0FBQ0Y7O0FpQ2o2V0U7RThDZzZCQTtJQUtJLGdCQUFnQjtFL0VpZ1ZwQjtBQUNGOztBK0V6Z1ZBO0VBWUksYUFBYTtFQUNiLGVBQWU7RUFDZixlQUF3QjtBL0VpZ1Y1Qjs7QWlDdjdXRTtFOEN3NkJGO0lBcUJNLG1CQUF1QjtFL0UrL1UzQjtBQUNGOztBaUN4N1dFO0U4Q202QkY7SUF5Qk0sbUJBQXVCO0lBQ3ZCLHdCOUNsNUIrQztFakNtNVduRDtBQUNGOztBaUMxN1dFO0U4Qzg1QkY7SUE4Qk0sbUJBQXVCO0lBQ3ZCLG1DOUN2NUIrQztFakMwNVduRDtBQUNGOztBaUNsN1dFO0U4Qys0QkY7SUFxQ1EsYUFBYTtFL0VtZ1ZuQjtBQUNGOztBaUN2OFdFO0U4Qzg1QkY7SUEyQ1EsYUFBYTtFL0VtZ1ZuQjtBQUNGOztBK0U5L1VBO0VBR0ksZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixjQUFjO0VBQ2QsVUFBVTtBL0UrL1VkOztBaUN6OVdFO0U4Qys5QkE7SUFFSSxhQUFhO0UvRTYvVWpCO0FBQ0Y7O0FpQzE5V0U7RThDMDlCQTtJQUtJLGdCQUFnQjtFL0VnZ1ZwQjtBQUNGOztBK0V2Z1ZBO0VBV0ksYUFBYTtFQUNiLGVBQWU7RUFDZixlQUF3QjtBL0VnZ1Y1Qjs7QStFN2dWQTtFQWtCSSxjQUFjO0EvRSsvVWxCOztBaUNwL1dFO0U4Q20rQkY7SUFzQk0sV0FBVztJQUNYLG1CQUF1QjtFL0VnZ1YzQjtBQUNGOztBaUN0L1dFO0U4Qzg5QkY7SUEyQk0sbUJBQXVCO0lBQ3ZCLHdCOUMvOEIrQztFakNpOVduRDtBQUNGOztBaUN4L1dFO0U4Q3k5QkY7SUFnQ00sbUJBQXVCO0lBQ3ZCLG1DOUNwOUIrQztFakN3OVduRDtBQUNGOztBK0V0aVZBO0VBc0NNLFdBQVc7RUFDWCxjakRwK0JRO0VpRHErQlIsVUFBVTtBL0VvZ1ZoQjs7QWlDL2dYRTtFOENtK0JGO0lBNENVLGFBQWE7RS9FcWdWckI7QUFDRjs7QStFbGpWQTtFQWdEVSxrQkFBa0I7QS9Fc2dWNUI7O0FpQ2hnWEU7RThDMDhCRjtJQXVEUSxhQUFhO0lBQ2Isc0JBQXNCO0UvRW9nVjVCO0UrRTVqVkY7SUEyRFUsV0FBVztFL0VvZ1ZuQjtBQUNGOztBaUMxZ1hFO0U4QzZnQ0Y7SUFHTSxpQkFBaUI7SUFDakIsaUJBQWE7SUFBYixhQUFhO0lBQ2IseUJBQThCO0lBQTlCLDhCQUE4QjtFL0UrL1VsQztBQUNGOztBK0UxL1VBOztFL0U4L1VFO0FpQ3JpWEE7RThDMGlDRjtJQUVJLGVBQWU7SUFDZixnQkFBZ0I7RS9FNi9VbEI7QUFDRjs7QStFdi9VQTs7O0UvRTQvVUU7QWlDMWpYQTtFOENta0NGO0lBRUksZ0JBQWdCO0UvRXkvVWxCO0FBQ0Y7O0FpQzFqWEU7RThDOGpDRjtJQU1JLGdCQUFnQjtFL0UyL1VsQjtBQUNGOztBaUMzalhFO0U4Q3lqQ0Y7SUFVSSxpQkFBaUI7RS9FNi9VbkI7QUFDRjs7QWlDM2tYRTtFOENrbENGO0lBRUksZ0JBQWdCO0UvRTQvVWxCO0FBQ0Y7O0FpQzVrWEU7RThDNmtDRjtJQU1JLGdCQUFnQjtFL0U4L1VsQjtBQUNGOztBaUM3a1hFO0U4Q3drQ0Y7SUFVSSxpQkFBaUI7RS9FZ2dWbkI7QUFDRjs7QStFNy9VQTtFQUNFLGFBQWE7QS9FZ2dWZjs7QWlDN2tYRTtFOEM0a0NGO0lBSUksU0FBUztFL0VrZ1ZYO0FBQ0Y7O0ErRS8vVUE7RUFDRSxhQUFhO0EvRWtnVmY7O0FpQzNtWEU7RThDNG1DRjtJQUdNLGdCQUFnQjtFL0VpZ1ZwQjtBQUNGOztBaUM1bVhFO0U4Q3VtQ0Y7SUFPTSxnQkFBZ0I7RS9FbWdWcEI7QUFDRjs7QWlDN21YRTtFOENrbUNGO0lBV00saUJBQWlCO0UvRXFnVnJCO0FBQ0Y7O0FpQzduWEU7RThDNm5DQTtJQUVJLGdCQUFnQjtFL0VtZ1ZwQjtBQUNGOztBaUM5blhFO0U4Q3duQ0E7SUFNSSxnQkFBZ0I7RS9FcWdWcEI7QUFDRjs7QWlDL25YRTtFOENtbkNBO0lBVUksaUJBQWlCO0UvRXVnVnJCO0FBQ0Y7O0FpQy9vWEU7RThDNm9DQTtJQUVJLGdCQUFnQjtFL0VxZ1ZwQjtBQUNGOztBaUNocFhFO0U4Q3dvQ0E7SUFNSSxnQkFBZ0I7RS9FdWdWcEI7QUFDRjs7QWlDanBYRTtFOENtb0NBO0lBVUksZ0JBQWdCO0UvRXlnVnBCO0FBQ0Y7O0FpQ2pxWEU7RThDK3BDRjs7SUFHSSxnQkFBZ0I7RS9FcWdWbEI7QUFDRjs7QWlD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QWFFLGdCQUFnQjtFaEZ1Z1loQjtFZ0ZwaFlGO0lBZ0JHLGtCQUFrQjtFaEZ1Z1luQjtBQUNGOztBaUN6allFO0UrQ3NERjtJQUdHLDRCQUE4QjtJQUM5QixZQUFZO0lBQ1osV0FBVztFaEZxZ1laO0FBQ0Y7O0FpQ3hpWUU7RStDNkJGO0lBU0csWUFBWTtFaEZ1Z1liO0FBQ0Y7O0FnRmpoWUE7RUFjRSwwQkFBNEI7QWhGdWdZOUI7O0FpQzNrWUU7RStDd0VGO0lBR0csWUFBWTtJQUNaLFdBQVc7RWhGcWdZWjtBQUNGOztBaUN6allFO0UrQytDRjtJQVFHLFlBQVk7RWhGdWdZYjtBQUNGOztBZ0ZsZ1lBO0VBRUUsYWxEakZtQjtBOUJxbFlyQjs7QWdGaGdZQTtFQUVFLGFsRHhGZ0I7QTlCMGxZbEI7O0FnRjkvWEE7RUFFRSxhbEQ1RmlCO0E5QjRsWW5COztBZ0Y1L1hBO0VBRUUsYWxEakdvQjtBOUIrbFl0Qjs7QWdGMS9YQTtFQUVFLGFsRHRId0I7QTlCa25ZMUI7O0FpQzVtWUU7RStDb0hGO0lBR0csWUFBWTtJQUNaLFdBQVc7RWhGMC9YWjtBQUNGOztBZ0YvL1hBO0VBU0UsY2xEMUhtQjtBOUJvbllyQjs7QWdGbmdZQTtFQWFFLDBCQUE0QjtBaEYwL1g5Qjs7QWlDM25ZRTtFK0NzSUY7SUFFRSxnQkFBZ0I7RWhGdy9YaEI7QUFDRjs7QWlDeG1ZRTtFK0M2R0Y7SVZuSkE7SUFBQTtJVXlKRSxrQkFBa0I7RWhGMC9YbEI7QUFDRjs7QWdGdi9YQTtFQUVDLGdCQUFnQjtBaEZ5L1hqQjs7QW1DbjhYQzs7OztFQUlDLDJCQUE2QjtFQUM3QixxQkFBcUI7QW5DczhYdkI7O0FtQ244WEM7RUFDQyxhQUFhO0FuQ3M4WGY7O0FtQ244WEM7RUFDQyxnQkFBZ0I7QW5DczhYbEI7O0FtQ244WEM7OztFQUdDLGtCQUFrQjtFQUNsQiw0QkFBNEI7QW5DczhYOUI7O0FpQ2xxWUU7RStDZ0pGO0lBS0UsZUFBZTtJQUNmLGlCQUFpQjtFaEZraFlqQjtBQUNGOztBaUNocFlFO0UrQ3VIRjtJQVVFLGVsRHBIWTtJa0RxSFos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REMsa0JBQWtCO0VBQ2xCLGNyRFBhO0E5Qm9qWmQ7O0FpQzFsWkU7RWtEMkNGO0lBS0UsZ0JBQWdCO0VuRitpWmhCO0FBQ0Y7O0FtRnZpWkE7RUFDQyxnQkFBZ0I7QW5GMGlaakI7O0FtRnZpWkE7RUFDQyxnQkFBZ0I7RUFDaEIsY3JEekJhO0E5Qm1rWmQ7O0FzRXRuWkE7RUlxQkE7SUpyQkE7SUFBQTtJQUFBO0V0RXNnUUE7RTBFajZQQTtJSnJHQTtJQUFBO0V0RTZnUUE7RTBFeDZQQTtJSnJHQTtJQUFBO0V0RTZnUUE7RTBFbjJQQTtJSjFLQTtJQUFBO0V0RXdsUUU7RTBFOTZQRjtJSjFLQTtJQUFBO0V0RXdsUUU7RStFMXVORjtJVDkyQ0E7SUFBQTtFdEUrNlhFO0UrRWprVkY7SVQ5MkNBO0lBQUE7RXRFKzZYRTtFK0Vqa1ZGO0lUOTJDQTtJQUFBO0V0RXc4WEU7RStFMWxWRjtJVDkyQ0E7SUFBQTtFdEV3OFhFO0NzRXg4WEY7O0FBQUE7RUlxQkE7SUpyQkE7SUFBQTtJQUFBO0V0RXNnUUE7RTBFajZQQTtJSnJHQTtJQUFBO0V0RTZnUUE7RTBFeDZQQTtJSnJHQTtJQUFBO0V0RTZnUUE7RTBFbjJQQTtJSjFLQTtJQUFBO0V0RXdsUUU7RTBFOTZQRjtJSjFLQTtJQUFBO0V0RXdsUUU7RStFMXVORjtJVDkyQ0E7SUFBQTtFdEUrNlhFO0UrRWprVkY7SVQ5MkNBO0lBQUE7RXRFKzZYRTtFK0Vqa1ZGO0lUOTJDQTtJQUFBO0V0RXc4WEU7RStFMWxWRjtJVDkyQ0E7SUFBQTtFdEV3OFhFO0NzRXg4WEY7O0FBQUE7RUsrNkJBO0lMLzZCQTtJQUFBO0V0RXV6VEE7RTJFdHpSQTtJTGpnQ0E7SUFBQTtFdEV5NlRBO0UyRXg2UkE7SUxqZ0NBO0lBQUE7RXRFeTZUQTtFNEV6NlRBO0lOQUE7SUFBQTtFdEVtZ1VBO0U0RW5nVUE7SU5BQTtJQUFBO0V0RW1nVUE7RThFbmdVQTtJUkFBO0lBQUE7RXRFMG5VRTtFOEUxblVGO0lSQUE7SUFBQTtFdEUwblVFO0U4RTFuVUY7SVJBQTtJQUFBO0lBQUE7RXRFMG5VRTtFK0U1d1JGO0lUOTJDQTtJQUFBO0lBQUE7RXRFKzZYRTtFK0Vqa1ZGO0lUOTJDQTtJQUFBO0V0RTQ3WEU7RStFOWtWRjtJVDkyQ0E7SUFBQTtFdEU0N1hFO0UrRTlrVkY7SVQ5MkNBO0lBQUE7SUFBQTtFdEU0N1hFO0UrRTlrVkY7SVQ5MkNBO0lBQUE7SUFBQTtFdEU0N1hFO0UrRTlrVkY7SVQ5MkNBO0lBQUE7RXRFdzhYRTtFZ0Y1NlhGO0lWNUJBO0lBQUE7RXRFOGlZRTtFbUZ2aFlGO0lidkJBO0lBQUE7SUFBQTtFdEU2alpBO0VtRm4vWUE7SWIxRUE7SUFBQTtFdEVzblpBO0NzRXRuWkE7O0FBQUE7RUsrNkJBO0lMLzZCQTtJQUFBO0V0RXV6VEE7RTJFdHpSQTtJTGpnQ0E7SUFBQTtFdEV5NlRBO0UyRXg2UkE7SUxqZ0NBO0lBQUE7RXRFeTZUQTtFNEV6NlRBO0lOQUE7SUFBQTtFdEVtZ1VBO0U0RW5nVUE7SU5BQTtJQUFBO0V0RW1nVUE7RThFbmdVQTtJUkFBO0lBQUE7RXRFMG5VRTtFOEUxblVGO0lSQUE7SUFBQTtFdEUwblVFO0UrRTV3UkY7SVQ5MkNBO0lBQUE7RXRFNDdYRTtFK0U5a1ZGO0lUOTJDQTtJQUFBO0V0RTQ3WEU7Q3NFNTdYRjs7QXJDYUU7RWtENkRGO0lBS0UsZ0JBQWdCO0VuRjRpWmhCO0FBQ0Y7O0FtRmxqWkE7RUFVRSxjQUFjO0VBQ2QsZ0JBQWdCO0FuRjRpWmxCOztBbUZ2alpBO0VBZUUsc0JBQXNCO0FuRjRpWnhCOztBbUYzalpBO0UzQzNERSxrQk5vQnlFO0VNbkJ6RSxnQk5tQm9EO0FsQ3VtWnREOztBd0N0blpFO0VBQ0UsY0FBYztFQUNkLHlCQUFpQztFQUNqQyxXQUFXO0F4Q3luWmY7O0FtRnRrWkE7RTdCOURFLGtCQUFrQjtFQUVoQixNQUFNO0VBQ04sU0FBUztFQUNULFlBQVk7RUFHWixPQUFPO0VBQ1AsUUFBUTtFQUNSLFdBQVc7QXREcW9aZjs7QW9GMXBaQTtFbkQ2RkMsc0JBQXNCO0VBQ3RCLFdBQVc7QWpDaWtaWjs7QWlDbHBaRTtFbURiRjtJbkRpR0UsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkg3Q3dCO0lHOEN4QixtQkg5Q3dCO0U5QmluWnhCO0FBQ0Y7O0FpQ3RwWkU7RW1EbEJGO0luRHdHRSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGtCSG5Ed0I7SUdvRHhCLG1CSHBEd0I7RTlCeW5aeEI7QUFDRjs7QWlDMXBaRTtFbUR2QkY7SW5EK0dFLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsb0NBQXlEO0lBQ3pELHFDQUEwRDtJQUMxRCxpQkFBMkU7RWpDdWtaM0U7QUFDRjs7QW9GdnJaQTtFbkR3RUMsc0JBQXNCO0VBR3JCLGlCSDVCWTtFRzZCWixrQkg3Qlk7RUcrQmIseUJBckJvRDtFbUR2RHBELGdCQUFnQjtBcEY2clpqQjs7QW9GMXJaQTtFbkRtRUMsc0JBQXNCO0VBTXRCLFdBekJ1QztFbUQ5Q3ZDLGdCQUFnQjtBcEY4clpqQjs7QW9GM3JaQTtFQUNDLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsY3REZmlCO0E5QjZzWmxCOztBb0YzclpBO0VBQ0MsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLHNCQUFzQjtFQUN0QixjdER4QmlCO0E5QnN0WmxCOztBb0YzclpBO0VBQ0MseUJ0RDFCeUI7QTlCd3RaMUI7O0FvRjFyWkE7RUFDQyxhdERhYTtBOUJnclpkOztBaUN0dFpFO0VtRHdCRjtJQUlFLGdCdERVWTtJc0RUWixtQnREU1k7RTlCc3JaWjtFb0Y5clpBO0luRGlDRCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix5QkFyQm9EO0VqQ2tyWm5EO0VvRmpzWkE7SW5EOEJELHNCQUFzQjtJQU10QixXQXpCdUM7RWpDMHJadEM7QUFDRjs7QWlDbHVaRTtFbURtQkY7SUFlRSxnQnRERFk7SXNERVosbUJ0REZZO0U5QnVzWlo7RW9GL3NaQTtJbkRpQ0Qsc0JBQXNCO0lBR3JCLGlCSDVCWTtJRzZCWixrQkg3Qlk7SUcrQmIseUJBckJvRDtFakNtc1puRDtFb0ZsdFpBO0luRDhCRCxzQkFBc0I7SUFNdEIsV0F6QnVDO0VqQzJzWnRDO0FBQ0Y7O0FpQzl1WkU7RW1EY0Y7SUEwQkUsZ0J0RFpZO0lzRGFaLG1CdERiWTtFOUJ3dFpaO0VvRmh1WkE7SW5EaUNELHNCQUFzQjtJQUdyQixpQkg1Qlk7SUc2Qlosa0JIN0JZO0lHK0JiLHlCQXJCb0Q7RWpDb3RabkQ7RW9GbnVaQTtJbkQ4QkQsc0JBQXNCO0lBTXRCLFdBekJ1QztFakM0dFp0QztBQUNGOztBb0Yxc1pBO0VBQ0MsYXREMUJhO0E5QnV1WmQ7O0FpQzd3WkU7RW1EK0RGO0lBSUUsZ0J0RDdCWTtJc0Q4QlosbUJ0RDlCWTtFOUI2dVpaO0VvRjlzWkE7SW5ETkQsc0JBQXNCO0lBR3JCLGlCSDVCWTtJRzZCWixrQkg3Qlk7SUcrQmIseUJBckJvRDtFakN5dVpuRDtFb0ZqdFpBO0luRFRELHNCQUFzQjtJQU10QixXQXpCdUM7RWpDaXZadEM7QUFDRjs7QWlDenhaRTtFbUQwREY7SUFlRSxnQnREeENZO0lzRHlDWixtQnREekNZO0U5Qjh2Wlo7RW9GL3RaQTtJbkRORCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix3QkFyQm9EO0VqQzB2Wm5EO0VvRmx1WkE7SW5EVEQsc0JBQXNCO0lBTXRCLFVBekJ1QztFakNrd1p0QztBQUNGOztBaUNyeVpFO0VtRHFERjtJQTBCRSxnQnREbkRZO0lzRG9EWixtQnREcERZO0U5Qit3Wlo7RW9GaHZaQTtJbkRORCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix3QkFyQm9EO0VqQzJ3Wm5EO0VvRm52WkE7SW5EVEQsc0JBQXNCO0lBTXRCLFVBekJ1QztFakNteFp0QztBQUNGOztBb0YxdFpBO0VBQ0MsYXREakVhO0VzRGtFYix5QnREdkdvQjtBOUJvMFpyQjs7QWlDcjBaRTtFbURzR0Y7SUFLRSxnQnREckVZO0lzRHNFWixtQnREdEVZO0U5QnF5Wlo7RW9GOXRaQTtJbkQ5Q0Qsc0JBQXNCO0lBR3JCLGlCSDVCWTtJRzZCWixrQkg3Qlk7SUcrQmIsd0JBckJvRDtFakNpeVpuRDtFb0ZqdVpBO0luRGpERCxzQkFBc0I7SUFNdEIsVUF6QnVDO0VqQ3l5WnRDO0FBQ0Y7O0FpQ2oxWkU7RW1EaUdGO0lBZ0JFLGdCdERoRlk7SXNEaUZaLG1CdERqRlk7RTlCc3paWjtFb0YvdVpBO0luRDlDRCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix3QkFyQm9EO0VqQ2t6Wm5EO0VvRmx2WkE7SW5EakRELHNCQUFzQjtJQU10QixVQXpCdUM7RWpDMHpadEM7QUFDRjs7QWlDNzFaRTtFbUQ0RkY7SUEyQkUsZ0J0RDNGWTtJc0Q0RlosbUJ0RDVGWTtFOUJ1MFpaO0VvRmh3WkE7SW5EOUNELHNCQUFzQjtJQUdyQixpQkg1Qlk7SUc2Qlosa0JIN0JZO0lHK0JiLHdCQXJCb0Q7RWpDbTBabkQ7RW9GbndaQTtJbkRqREQsc0JBQXNCO0lBTXRCLFVBekJ1QztFakMyMFp0QztBQUNGOztBb0YzdVpBO0VBQ0MsYXREeEdhO0VzRHlHYix5QnREdEpxQjtBOUJvNFp0Qjs7QWlDNzNaRTtFbUQ2SUY7SUFLRSxnQnRENUdZO0lzRDZHWixtQnREN0dZO0U5QjYxWlo7RW9GL3VaQTtJbkRyRkQsc0JBQXNCO0lBR3JCLGlCSDVCWTtJRzZCWixrQkg3Qlk7SUcrQmIsd0JBckJvRDtFakN5MVpuRDtFb0ZsdlpBO0luRHhGRCxzQkFBc0I7SUFNdEIsVUF6QnVDO0VqQ2kyWnRDO0FBQ0Y7O0FpQ3o0WkU7RW1Ed0lGO0lBZ0JFLGdCdER2SFk7SXNEd0haLG1CdER4SFk7RTlCODJaWjtFb0Zod1pBO0luRHJGRCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYixtQ0FyQm9EO0VqQzAyWm5EO0VvRm53WkE7SW5EeEZELHNCQUFzQjtJQU10QixxQkF6QnVDO0VqQ2szWnRDO0FBQ0Y7O0FpQ3I1WkU7RW1EbUlGO0lBMkJFLGdCdERsSVk7SXNEbUlaLG1CdERuSVk7RTlCKzNaWjtFb0ZqeFpBO0luRHJGRCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYixtQ0FyQm9EO0VqQzIzWm5EO0VvRnB4WkE7SW5EeEZELHNCQUFzQjtJQU10QixxQkF6QnVDO0VqQ200WnRDO0FBQ0Y7O0FvRjd2WkE7RUFDQyxhdEQ5SWE7RXNEK0liLHlCdEQ1THFCO0E5QjQ3WnRCOztBaUNyN1pFO0VtRG1MRjtJQUtFLGdCdERsSlk7SXNEbUpaLG1CdERuSlk7RTlCcTVaWjtFb0Zqd1pBO0luRDNIRCxzQkFBc0I7SUFHckIsaUJINUJZO0lHNkJaLGtCSDdCWTtJRytCYix3QkFyQm9EO0VqQ2k1Wm5EO0VvRnB3WkE7SW5EOUhELHNCQUFzQjtJQU10QixVQXpCdUM7RWpDeTVadEM7QUFDRjs7QWlDajhaRTtFbUQ4S0Y7SUFnQkUsZ0J0RDdKWTtJc0Q4SlosbUJ0RDlKWTtFOUJzNlpaO0VvRmx4WkE7SW5EM0hELHNCQUFzQjtJQUdyQixpQkg1Qlk7SUc2Qlosa0JIN0JZO0lHK0JiLG1DQXJCb0Q7RWpDazZabkQ7RW9GcnhaQTtJbkQ5SEQsc0JBQXNCO0lBTXRCLHFCQXpCdUM7RWpDMDZadEM7QUFDRjs7QWlDNzhaRTtFbUR5S0Y7SUEyQkUsZ0J0RHhLWTtJc0R5S1osbUJ0RHpLWTtFOUJ1N1paO0VvRm55WkE7SW5EM0hELHNCQUFzQjtJQUdyQixpQkg1Qlk7SUc2Qlosa0JIN0JZO0lHK0JiLGtDQXJCb0Q7RWpDbTdabkQ7RW9GdHlaQTtJbkQ5SEQsc0JBQXNCO0lBTXRCLG9CQXpCdUM7RWpDMjdadEM7QUFDRjs7QW9GOXdaQTtFbkRzQ0MsVUFBVTtFQUNWLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsY0FBYztFbUR2Q2QsYUFBYTtFQUNiLGVBQWU7QXBGb3haaEI7O0FvRnZ4WkE7RUFNRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixZQUFZO0VBQ1osWXREOUxZO0E5Qm05WmQ7O0FvRmp4WkE7RUFDQyxjQUFjO0VBQ2QsWUFBWTtFQUNaLFdBQVc7RUFDWCx5QnREMU9vQjtFc0QyT3BCLGtCQUFrQjtBcEZveFpuQjs7QW9GbHhaQztFQUNDLHlCdEQvT21CO0E5Qm9nYXJCOztBb0ZseFpDO0VBQ0MseUJ0RHhQZ0I7QTlCNmdhbEI7O0FvRmx4WkM7RUFDQyx5QnREdFBtQjtBOUIyZ2FyQjs7QW9GbHhaQztFQUNDLHlCdER6UG1CO0E5QjhnYXJCOztBb0ZseFpDO0VBQ0MseUJ0RHJRb0I7QTlCMGhhdEI7O0FvRmx4WkM7RUFDQyx5QnREMVF3QjtBOUIraGExQjs7QW9GbHhaQztFQUNDLHlCdEQvUW9CO0E5Qm9pYXRCOztBb0ZseFpDO0VBQ0MseUJ0RDVRdUI7QTlCaWlhekI7O0FvRmx4WkM7RUFDQyx5QnREeFJnQjtBOUI2aWFsQjs7QW9GbHhaQztFQUNDLHlCdERyUnNCO0E5QjBpYXhCOztBb0ZseFpDO0VBQ0MseUJ0RGxSZ0I7QTlCdWlhbEI7O0FvRmx4WkM7RUFDQyx5QnREclJtQjtBOUIwaWFyQjs7QW9GbHhaQztFQUNDLHlCdER4UmlCO0E5QjZpYW5COztBb0ZqeFpBO0VBQ0MsY0FBYztFQUNkLGdCdERoUWE7RXNEaVFiLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsY3REN1NpQjtFc0Q4U2pCLHlCdERsVGlCO0VzRG1UakIseUJ0RHpTb0I7QTlCNmphckI7O0E2QnQrWkE7O3lDN0IwK1p5QztBcUZobGF6QztFQUNDLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixjdkRBaUI7RXVEQ2pCLHlCdkRBcUI7QTlCa2xhdEI7O0FzRnhsYUE7RTlDZUUsa0JBRG9FO0VBRXBFLGdCQUYrQztBeEMra2FqRDs7QXdDemthRTtFQUNFLGNBQWM7RUFDZCx1QkFBaUM7RUFDakMsV0FBVztBeEM0a2FmOztBc0YvbGFBO0U5Q1dFLGtCQURvRTtFQUVwRSxnQkFGK0M7QXhDMGxhakQ7O0F3Q3BsYUU7RUFDRSxjQUFjO0VBQ2Qsc0JBQWlDO0VBQ2pDLFdBQVc7QXhDdWxhZjs7QXNGdG1hQTtFOUNPRSxrQkFEb0U7RUFFcEUsZ0JBRitDO0F4Q3FtYWpEOztBd0MvbGFFO0VBQ0UsY0FBYztFQUNkLHlCQUFpQztFQUNqQyxXQUFXO0F4Q2ttYWY7O0FzRjdtYUE7RWhDQUUsa0JBQWtCO0VBRWhCLE1BQU07RUFDTixTQUFTO0VBQ1QsWUFBWTtFQUdaLE9BQU87RUFDUCxRQUFRO0VBQ1IsV0FBVztBdEQ4bWFmIiwiZmlsZSI6ImNzcy9jbXctdGhlbWUtZGV2LXJldi0wLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBUaGVtZSBjbXctdGhlbWUtZGV2LXJldi0wICovXG4vLyAjIyMgVkFSSUFCTEVTICMjI1xuXG4vLyBPd24gdmFyaWFibGVzIChuZWVkIHRvIGJlIGxvYWRlZCBmaXJzdCwgc28gZGVmYXVsdCB2YWx1ZXMgY2FuIGJlIG92ZXJyaWRkZW4pXG4vLyBAc2VlIGh0dHA6Ly9zYXNzLWxhbmcuY29tL2RvY3VtZW50YXRpb24vZmlsZS5TQVNTX1JFRkVSRU5DRS5odG1sI1ZhcmlhYmxlX0RlZmF1bHRzX19fZGVmYXVsdFxuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5cbi8vICMjIyBQQVJUSUFMUyAjIyNcblxuQGltcG9ydCBcInBhcnRpYWxzXCI7XG4iLCIvKipcbiAqIENPTE9SU1xuICovXG5cbi8vIENvbG9ycywgUHJpbWFyeVxuJGNXaGl0ZTpcdFx0XHQjZmZmZmZmO1xuJGNSYWRpY2FsUmVkOlx0XHQjZGQzNDJiO1xuJGNQYXJhbm9pZFB1cnBsZTogXHQjNjcyNzc5O1xuJGNHYWJieUdyZWVuOlx0XHQjMmZhYzY2O1xuJGNCbGFjazpcdFx0XHQjMDAwMDAwO1xuXG4vLyBDb2xvcnMsIFNlY29uZGFyeVxuJGNZZWxsaW5nWWVsbG93Olx0I2VmZGYwZjtcbiRjVGFuZ3lUdXJxdW9pc2U6XHQjNmZjM2I4O1xuJGNCYXR0eUJsdWU6XHRcdCMwMDZjYWU7XG4kY0Nvb2xHcmF5Olx0XHRcdCM2NjY2NjY7XG4kY0RhcmtHcmF5Olx0XHRcdCMzNjM5MzY7XG5cbi8vIENvbG9ycywgUGFydG5lciBzdGF0dXMsIENlcnRpZmllZFxuJGNHb2xkOlx0XHRcdFx0I2Q0YWYzNztcbiRjUGxhdGludW06XHRcdFx0I2EwYjJjNjtcbiRjU2lsdmVyOlx0XHRcdCNiZWMyY2I7XG4kY1JlZ2lzdGVyZWQ6XHRcdCM0MWFhNmE7XG4kY0NlcnRpZmllZDpcdFx0JGNQYXJhbm9pZFB1cnBsZTtcblxuLy8gQ29sb3JzLCBhZGRpdGlvbmFsXG4kY0dyYXlMaWdodDogXHRcdCNiYmM0YzM7XG4kY0dyYXlNZWRpdW06IFx0XHQjOGU5YzljO1xuXG4vLyBDb2xvcnMsIFByb3hpZXNcbiRjVGV4dDogXHRcdFx0XHRcdCRjRGFya0dyYXk7XG4kY1RleHQtLWludmVyczogXHRcdFx0JGNXaGl0ZTtcbiRjQmdIZWFkZXI6IFx0XHRcdFx0JGNEYXJrR3JheTtcbiRjQmdIZWFkZXJNZXRhOlx0XHRcdFx0JGNXaGl0ZTtcbiRjQmdGb290ZXI6IFx0XHRcdFx0JGNEYXJrR3JheTtcbiRjQnV0dG9uQmc6XHRcdFx0XHRcdCRjUGFyYW5vaWRQdXJwbGU7XG4kY0J1dHRvbkJnLS1pbnZlcnM6XHRcdFx0JGNXaGl0ZTtcbiRjQnV0dG9uVGV4dDpcdFx0XHRcdCRjV2hpdGU7XG4kY0J1dHRvblRleHQtLWludmVyczpcdFx0JGNQYXJhbm9pZFB1cnBsZTtcbiRjQnV0dG9uVGV4dC0taW52ZXJzLWJsdWU6XHQkY0JhdHR5Qmx1ZTtcbiRjQnV0dG9uVGV4dC0taW52ZXJzLXJlZDpcdCRjUmFkaWNhbFJlZDtcblxuJGNCdXR0b25CZy0tdGVydGlhcnk6XHRcdCNlZmVmZWY7XG4kY0J1dHRvblRleHQtLXRlcnRpYXJ5Olx0XHQkY0Nvb2xHcmF5O1xuXG5cblxuXG4vKipcbiAqIFNJWkVTXG4gKi9cbiRzR3V0dGVyOiAxNXB4O1xuJHNHdXR0ZXJEb3VibGU6IDMwcHg7XG5cbiRzT3V0ZXJHdXR0ZXItbW9iaWxlOiAxNXB4O1xuJHNPdXRlckd1dHRlci10YWJsZXQ6IDQ1cHg7XG4kc091dGVyR3V0dGVyLWRlc2t0b3A6IDQ3cHg7XG4kc091dGVyR3V0dGVyLWRlc2t0b3BoZDogMTY1cHg7XG5cbiRzQ29udGVudE1heFdpZHRoOiAxMTEwcHg7IC8vIGFjY29yZGluZyBkZXNpZ24uIE1heCB3aWR0aCBpcyByZWFjaGVkIHdoZW4gdmlld3BvcnQgPSAxNDQwcHhcblxuJHNIZWlnaHRIZWFkZXJNZXRhOlx0XHRcdFx0XHRcdFx0NTBweDtcbiRzSGVpZ2h0SGVhZGVyRmx5b3V0SW5pdGlhbE1vYmlsZVRhYmxldDpcdDUwcHg7XG4kc0hlaWdodEhlYWRlckZseW91dEluaXRpYWxEZXNrdG9wOlx0XHRcdDcwcHg7XG5cblxuLyoqXG4gKiBCUkVBS1BPSU5UU1xuICovXG4kYnJlYWstbW9iaWxlLXN0YXJ0OiAzNzVweDtcbiRicmVhay10YWJsZXQtc3RhcnQ6IDc2OHB4O1xuJGJyZWFrLWRlc2t0b3Atc3RhcnQ6IDEwODBweDtcbiRicmVhay1kZXNrdG9waGQtc3RhcnQ6IDE0NDBweDsgLy8gQFRPRE86IG5vdCBzdXJlIGlmIG5lZWRlZCBhbnltb3JlXG5cblxuXG4vKipcbiAqIERVUkFUSU9OU1xuICovXG4kZERlZmF1bHQ6IDYwMG1zO1xuJGRTaG9ydDogMjAwbXM7XG5cbi8qKlxuICogWi1JTkRFWFxuICovXG4kek5hdmlnYXRpb25PdmVybGF5OiA5OTk7XG4kekhlYWRlcjogMTAwMDtcblxuXG4iLCIvKiBkbS1zYW5zLXJlZ3VsYXIgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1yZWd1bGFyLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG5cdHNyYzogbG9jYWwoJ0RNIFNhbnMgUmVndWxhcicpLCBsb2NhbCgnRE1TYW5zLVJlZ3VsYXInKSxcblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtcmVndWxhci5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLXJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLXJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG59XG4vKiBkbS1zYW5zLWl0YWxpYyAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdETSBTYW5zJztcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRzcmM6IHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWl0YWxpYy5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuXHRzcmM6IGxvY2FsKCdETSBTYW5zIEl0YWxpYycpLCBsb2NhbCgnRE1TYW5zLUl0YWxpYycpLFxuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1pdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1pdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1pdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtaXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xufVxuLyogZG0tc2Fucy1tZWRpdW0gLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW0uZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cblx0c3JjOiBsb2NhbCgnRE0gU2FucyBNZWRpdW0nKSwgbG9jYWwoJ0RNU2Fucy1NZWRpdW0nKSxcblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLW1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJykgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbn1cbi8qIGRtLXNhbnMtbWVkaXVtaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ0RNIFNhbnMnO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdHNyYzogdXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtaXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG5cdHNyYzogbG9jYWwoJ0RNIFNhbnMgTWVkaXVtIEl0YWxpYycpLCBsb2NhbCgnRE1TYW5zLU1lZGl1bUl0YWxpYycpLFxuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW1pdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW1pdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW1pdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtaXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xufVxuLyogZG0tc2Fucy1ib2xkIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ0RNIFNhbnMnO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdHNyYzogdXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZC5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuXHRzcmM6IGxvY2FsKCdETSBTYW5zIEJvbGQnKSwgbG9jYWwoJ0RNU2Fucy1Cb2xkJyksXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xufVxuLyogZG0tc2Fucy1ib2xkaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ0RNIFNhbnMnO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdHNyYzogdXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZGl0YWxpYy5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuXHRzcmM6IGxvY2FsKCdETSBTYW5zIEJvbGQgSXRhbGljJyksIGxvY2FsKCdETVNhbnMtQm9sZEl0YWxpYycpLFxuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkaXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZGl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWJvbGRpdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZGl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJykgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbn1cblxuXG5cbi8qKlxuICogRk9OVFNcbiAqL1xuJGZOb3JtYWw6ICdETSBTYW5zJywgc2Fucy1zZXJpZjtcbiRmd1JlZ3VsYXI6IDQwMDtcbiRmd01lZGl1bTogNTAwO1xuJGZ3Qm9sZDogNzAwO1xuXG5cbiRmc0hlYWRlci1tb2JpbGU6IDE4cHg7XG4kZnNIZWFkZXItdGFibGV0OiAxOHB4O1xuJGZzSGVhZGVyLWRlc2t0b3A6IDE2cHg7XG4iLCIvKlxuICBUaGUgZm9sbG93aW5nIHN0YW5kYXJkIHNldHRpbmcgYW5kIHRoZXNlIHBhcmFncmFwaCBzdHlsZXMgcnVsZXNcbiAgc2hvdWxkIGJlIGxpc3RlZCBiZWZvcmUgdGhlIGFsaWdubWVudCBydWxlcy4gT3RoZXJ3aXNlLFxuICB0aGUgYWxpZ25tZW50IHJ1bGVzIHdvbid0IG92ZXJ3cml0ZSB0aGUgc3RhbmRhcmQgc2V0dGluZy5cbiovXG5cbi8vZGVmYXVsdCB2YXJpYWJsZXNcbiRjbS1yaWNodGV4dC1wcmVmaXg6IFwiY20tcmljaHRleHRcIiAhZGVmYXVsdDtcbiRjbS1yaWNodGV4dC1wYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogMTBweCAhZGVmYXVsdDtcbiRjbS1yaWNodGV4dC1wYWRkaW5nLWJhc2UtdmVydGljYWw6IDEwcHggIWRlZmF1bHQ7XG4kY20tcmljaHRleHQtZGFyay1zaGFkb3ctY29sb3I6ICNmZmZmZmYgIWRlZmF1bHQ7XG4kY20tcmljaHRleHQtbGlnaHQtc2hhZG93LWNvbG9yOiAjMDAwMDAwICFkZWZhdWx0O1xuIiwiLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5zbGljay1saXN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmRyYWdnaW5nIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxyXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbn1cclxuXHJcbi5zbGljay10cmFjayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLmRyYWdnaW5nIGltZyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stdmVydGljYWwgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xyXG5cclxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXHJcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxyXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcclxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXHJcblxyXG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XHJcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXDIxOTBcIiAhZGVmYXVsdDtcclxuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWRvdC1zaXplOiA2cHggIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjI1ICFkZWZhdWx0O1xyXG5cclxuLyogQXJyb3dzICovXHJcblxyXG4uc2xpY2stcHJldixcclxuLnNsaWNrLW5leHQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stcHJldiB7XHJcbiAgICBsZWZ0OiAtMjVweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICByaWdodDogLTI1cHg7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1uZXh0IHtcclxuICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgbGVmdDogLTI1cHg7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIERvdHMgKi9cclxuXHJcbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5zbGljay1kb3RzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogLTI1cHg7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiJGNtLXNsaWNrLWNhcm91c2VsLXByZWZpeDogXCJjbS1zbGljay1jYXJvdXNlbFwiICFkZWZhdWx0O1xuJGNtLXNsaWNrLWNhcm91c2VsLWN1c3RvbS1hcnJvd3MtZW5hYmxlZDogdHJ1ZSAhZGVmYXVsdDtcblxuQGlmICRjbS1zbGljay1jYXJvdXNlbC1jdXN0b20tYXJyb3dzLWVuYWJsZWQge1xuICAkc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXCIgIWdsb2JhbCAhZGVmYXVsdDtcbiAgJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlwiICFnbG9iYWwgIWRlZmF1bHQ7XG59XG4iLCIvKlxuICBUaGUgZm9sbG93aW5nIHN0YW5kYXJkIHNldHRpbmcgYW5kIHRoZXNlIHBhcmFncmFwaCBzdHlsZXMgcnVsZXNcbiAgc2hvdWxkIGJlIGxpc3RlZCBiZWZvcmUgdGhlIGFsaWdubWVudCBydWxlcy4gT3RoZXJ3aXNlLFxuICB0aGUgYWxpZ25tZW50IHJ1bGVzIHdvbid0IG92ZXJ3cml0ZSB0aGUgc3RhbmRhcmQgc2V0dGluZy5cbiovXG5cbi8vc3R5bGVzXG4uI3skY20tcmljaHRleHQtcHJlZml4fSB7XG5cbiAgLyogYmFzaWMgc3R5bGVzICovXG4gIGEsXG4gIC51bmRlcmxpbmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgLnN0cmlrZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIH1cblxuICBzdWIge1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIH1cblxuICBzdXAge1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgfVxuXG4gIC5ydGUtLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgICBxdW90ZXM6IGluaGVyaXQ7XG4gIH1cblxuICBibG9ja3F1b3RlIHAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLyogYWxpZ25tZW50ICovXG4gIC5hbGlnbi0tbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5hbGlnbi0tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuYWxpZ24tLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5hbGlnbi0tanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxuXG4gIC8qIGZsb2F0aW5nIChpbWFnZXMpICovXG4gIC5mbG9hdC0tbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuZmxvYXQtLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuZmxvYXQtLW5vbmUge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLyogZGVmYXVsdCB0YWJsZSBsYXlvdXQgKi9cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgbWFyZ2luOiAkY20tcmljaHRleHQtcGFkZGluZy1iYXNlLWhvcml6b250YWwgMDtcblxuICAgIHRoIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICRjbS1yaWNodGV4dC1wYWRkaW5nLWJhc2UtdmVydGljYWwgJGNtLXJpY2h0ZXh0LXBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjMDAwO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6IDVweCAkY20tcmljaHRleHQtcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNjY2M7XG4gICAgfVxuXG4gICAgdHI6bGFzdC1jaGlsZCB7XG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogaGVhZGluZ3MgZm9yIHBhcmFncmFwaHMgW2RlcHJlY2F0ZWRdICovXG4gIC5wLS1zdGFuZGFyZCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAucC0taGVhZGluZy0xIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAucC0taGVhZGluZy0yIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAucC0taGVhZGluZy0zIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAucC0taGVhZGluZy00IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucC0taGVhZGluZy01IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAucC0taGVhZGluZy02IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAvKiBmb250LWZhbWlsaWVzIFtkZXByZWNhdGVkXSAqL1xuICAuZm9udC1uYW1lLS1hcmlhbCB7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tYXJpYWwtYmxhY2sge1xuICAgIGZvbnQtZmFtaWx5OiBcIkFyaWFsIEJsYWNrXCIsIHNhbnMtc2VyaWY7XG4gIH1cblxuICAuZm9udC1uYW1lLS1hcmlhbC1uYXJyb3cge1xuICAgIGZvbnQtZmFtaWx5OiBcIkFyaWFsIE5hcnJvd1wiLCBzYW5zLXNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tY2VudHVyeSB7XG4gICAgZm9udC1mYW1pbHk6IENlbnR1cnksIHNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tY291cmllciB7XG4gICAgZm9udC1mYW1pbHk6IENvdXJpZXIsIHNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tbHVjaWRhLWNvbnNvbGUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkx1Y2lkYSBDb25zb2xlXCIsIHNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tbHVjaWRhLXNhbnMtdW5pY29kZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTHVjaWRhIFNhbnMgVW5pY29kZVwiLCBzYW5zLXNlcmlmO1xuICB9XG5cbiAgLmZvbnQtbmFtZS0tdGltZXMtbmV3LXJvbWFuIHtcbiAgICBmb250LWZhbWlseTogVGltZXMgTmV3IFJvbWFuLCBzZXJpZjtcbiAgfVxuXG4gIC5mb250LW5hbWUtLXZlcmRhbmEge1xuICAgIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuICB9XG5cbiAgLyogZm9udC1zaXplcyBbZGVwcmVjYXRlZF0gKi9cbiAgLmZvbnQtc2l6ZS0tOCB7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gIH1cblxuICAuZm9udC1zaXplLS05IHtcbiAgICBmb250LXNpemU6IDlweDtcbiAgfVxuXG4gIC5mb250LXNpemUtLTEwIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cblxuICAuZm9udC1zaXplLS0xMSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG5cbiAgLmZvbnQtc2l6ZS0tMTIge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5mb250LXNpemUtLTE0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAuZm9udC1zaXplLS0xNiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLmZvbnQtc2l6ZS0tMTgge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuXG4gIC5mb250LXNpemUtLTIwIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAuZm9udC1zaXplLS0yNCB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG5cbiAgLmZvbnQtc2l6ZS0tMjYge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgfVxuXG4gIC5mb250LXNpemUtLTI4IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cblxuICAuZm9udC1zaXplLS0zNiB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG5cbiAgLmZvbnQtc2l6ZS0tNDgge1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgfVxuXG4gIC5mb250LXNpemUtLTcyIHtcbiAgICBmb250LXNpemU6IDcycHg7XG4gIH1cblxuICAvKiBjb2xvcnMgW2RlcHJlY2F0ZWRdICovXG4gIC5jb2xvci0tYmxhY2sge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxuXG4gIC5jb2xvci0tZ3JlZW4ge1xuICAgIGNvbG9yOiBncmVlbjtcbiAgfVxuXG4gIC5jb2xvci0tc2lsdmVyIHtcbiAgICBjb2xvcjogc2lsdmVyO1xuICB9XG5cbiAgLmNvbG9yLS1saW1lIHtcbiAgICBjb2xvcjogbGltZTtcbiAgfVxuXG4gIC5jb2xvci0tZ3JheSB7XG4gICAgY29sb3I6IGdyYXk7XG4gIH1cblxuICAuY29sb3ItLW9saXZlIHtcbiAgICBjb2xvcjogb2xpdmU7XG4gIH1cblxuICAuY29sb3ItLXdoaXRlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cblxuICAuY29sb3ItLXllbGxvdyB7XG4gICAgY29sb3I6IHllbGxvdztcbiAgfVxuXG4gIC5jb2xvci0tbWFyb29uIHtcbiAgICBjb2xvcjogbWFyb29uO1xuICB9XG5cbiAgLmNvbG9yLS1uYXZ5IHtcbiAgICBjb2xvcjogbmF2eTtcbiAgfVxuXG4gIC5jb2xvci0tcmVkIHtcbiAgICBjb2xvcjogcmVkO1xuICB9XG5cbiAgLmNvbG9yLS1ibHVlIHtcbiAgICBjb2xvcjogYmx1ZTtcbiAgfVxuXG4gIC5jb2xvci0tcHVycGxlIHtcbiAgICBjb2xvcjogcHVycGxlO1xuICB9XG5cbiAgLmNvbG9yLS10ZWFsIHtcbiAgICBjb2xvcjogdGVhbDtcbiAgfVxuXG4gIC5jb2xvci0tZnVjaHNpYSB7XG4gICAgY29sb3I6IGZ1Y2hzaWE7XG4gIH1cblxuICAuY29sb3ItLWFxdWEge1xuICAgIGNvbG9yOiBhcXVhO1xuICB9XG5cbiAgLyogYmFja2dyb3VuZC1jb2xvcnMgW2RlcHJlY2F0ZWRdICovXG4gIC5iYWNrZ3JvdW5kLWNvbG9yLS1ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0tZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLXNpbHZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyO1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLWxpbWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpbWU7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0tZ3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ3JheTtcbiAgfVxuXG4gIC5iYWNrZ3JvdW5kLWNvbG9yLS1vbGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogb2xpdmU7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0td2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLXllbGxvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93O1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLW1hcm9vbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFyb29uO1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLW5hdnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG5hdnk7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0tcmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0tYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcbiAgfVxuXG4gIC5iYWNrZ3JvdW5kLWNvbG9yLS1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTtcbiAgfVxuXG4gIC5iYWNrZ3JvdW5kLWNvbG9yLS10ZWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0ZWFsO1xuICB9XG5cbiAgLmJhY2tncm91bmQtY29sb3ItLWZ1Y2hzaWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGZ1Y2hzaWE7XG4gIH1cblxuICAuYmFja2dyb3VuZC1jb2xvci0tYXF1YSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbiAgfVxuXG4gIC8qIGxpc3QgaXRlbXMgW2RlcHJlY2F0ZWRdICovXG4gIC5saXN0LWl0ZW0tLW5vbmUge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxuXG4gIC5saXN0LWl0ZW0tLXNxdWFyZSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG4gIH1cblxuICAubGlzdC1pdGVtLS1jaXJjbGUge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuICB9XG5cbiAgLmxpc3QtaXRlbS0tZGlzYyB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICB9XG5cbiAgJi0tZGFyay1zaGFkb3cge1xuICAgIHRleHQtc2hhZG93OiAtMXB4IDAgJGNtLXJpY2h0ZXh0LWRhcmstc2hhZG93LWNvbG9yLCAwIDFweCAkY20tcmljaHRleHQtZGFyay1zaGFkb3ctY29sb3IsIDFweCAwICRjbS1yaWNodGV4dC1kYXJrLXNoYWRvdy1jb2xvciwgMCAtMXB4ICRjbS1yaWNodGV4dC1kYXJrLXNoYWRvdy1jb2xvcjtcbiAgfVxuXG4gICYtLWxpZ2h0LXNoYWRvdyB7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAzMHB4ICRjbS1yaWNodGV4dC1saWdodC1zaGFkb3ctY29sb3I7XG4gIH1cbn1cbiIsIi5jbS1jdGEge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgJl9fYnV0dG9uICsgJl9fYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5jbS1jdGEtYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuIiwiLiN7JGNtLXRlYXNlci1vdmVybGF5LXByZWZpeH0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6ICRjbS10ZWFzZXItb3ZlcmxheS1wYWRkaW5nO1xuXG4gIC8vIGhpZGUgb3ZlcmZsb3dcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gbGltaXQgd2lkdGggYW5kIGhlaWdodCB0byAxMDAlXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgLy8gZGlzYWJsZSBhbnkgcG9pbnRlciBldmVudHMsIHNvIGUuZy4gd2hlbiB0aGUgb3ZlcmxheSBpcyBwbGFjZWQgb3ZlciBhIGxpbmssIHRoZSBsaW5rIGNhbiBiZSBjbGlja2VkXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZfX3RleHQge1xuICAgIC8vIHJlbW92ZSB0aGUgbWFyZ2luLXRvcCBvZiB0aGUgZmlyc3QgcmljaHRleHQgaXRlbSwgb3RoZXJ3aXNlIHRoZXJlIHdpbGwgYWx3YXlzIGJlIGEgZ2FwXG4gICAgOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgLy8gcmVtb3ZlIHRoZSBtYXJnaW4tYm90dG9tIG9mIHRoZSBsYXN0IHJpY2h0ZXh0IGl0ZW0sIG90aGVyd2lzZSB0aGVyZSB3aWxsIGFsd2F5cyBiZSBhIGdhcFxuICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fY3RhIHtcbiAgICBtYXJnaW46ICRjbS10ZWFzZXItb3ZlcmxheS1jdGEtbWFyZ2luO1xuICAgIHRleHQtYWxpZ246ICRjbS10ZWFzZXItb3ZlcmxheS1jdGEtYWxpZ247XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmX19jdGEtYnV0dG9uIHtcbiAgICAvLyByZWVuYWJsZSBwb2ludGVyIGV2ZW50cyBmb3IgdGhlIGJ1dHRvbnMsIHNvIHRoZWlyIGxpbmsgY2FuIGJlIGNsaWNrZWRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuIiwiJGNtLXRlYXNlci1vdmVybGF5LXByZWZpeDogXCJjbS10ZWFzZXItb3ZlcmxheVwiICFkZWZhdWx0O1xuJGNtLXRlYXNlci1vdmVybGF5LXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiRjbS10ZWFzZXItb3ZlcmxheS1jdGEtbWFyZ2luOiA1cHggMCAwIDAgIWRlZmF1bHQ7XG4kY20tdGVhc2VyLW92ZXJsYXktY3RhLWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG4iLCIvKlxuICogSGlkZSBvbmx5IHZpc3VhbGx5LCBidXQgaGF2ZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbiByZWFkZXJzOlxuICogaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuICovXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cbiIsIi8qIC0tLSBmcmFnbWVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNtLWZyYWdtZW50IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLS1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGVhc2U7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vXG4vLyBTbGljayBDYXJvdXNlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uI3skY20tc2xpY2stY2Fyb3VzZWwtcHJlZml4fSB7XG4gIC8vcmVzZXQgaW5uZXIgei1pbmRleCBvZiAuc2xpY2stcHJldiB0byB3b3JrIHdpdGggb3V0ZXIgZWxlbWVudHMgbGlrZSBuYXZpZ2F0aW9uXG4gIHotaW5kZXg6IDA7XG5cbiAgLy8gcHJldmVudHMgc2hvd2luZyBhbGwgc2xpZGVyIGNvbnRlbnQgYmVmb3JlIGluaXRpYWxpc2F0aW9uLCBqdXN0IHNob3cgdGhlIGZpcnN0IGl0ZW1cbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cblxuICAvLyBsZWZ0IHJpZ2h0IGFycm93c1xuICBAaWYgJGNtLXNsaWNrLWNhcm91c2VsLWN1c3RvbS1hcnJvd3MtZW5hYmxlZCB7XG4gICAgLy8gc2hvdyBsZWZ0L3JpZ2h0IGljb25zIGFzIGFycm93c1xuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2Fycm93LXByZXYuc3ZnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2Fycm93LW5leHQuc3ZnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1pbm5lci1hcnJvd3Mge1xuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB3aWR0aDogNSU7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICB6LWluZGV4OiAxOyAvLyBvdGhlcndpc2UgdGhlIHByZXYtYXJyb3cgaXMgYmVoaW5kIHRoZSBzbGlkZXNcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIEBpZiAkY20tc2xpY2stY2Fyb3VzZWwtY3VzdG9tLWFycm93cy1lbmFibGVkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvYXJyb3ctcHJldi1pbm5lci5zdmcpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvYXJyb3ctcHJldi1pbm5lci1ob3Zlci5zdmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICBAaWYgJGNtLXNsaWNrLWNhcm91c2VsLWN1c3RvbS1hcnJvd3MtZW5hYmxlZCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2Fycm93LW5leHQtaW5uZXIuc3ZnKTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2Fycm93LW5leHQtaW5uZXItaG92ZXIuc3ZnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBmaXhlcyBmbGlja2VyaW5nIGluIElFMTEgaWYgYSB2aWRlbyBpcyBwbGF5ZWQgaW4gYW4gaW52aXNpYmxlIHNsaWRlXG4gIC8vIGJlY2F1c2Ugc2xpY2stY3VycmVudCBpcyBzZXQgdG9vIGVhcmx5IChiZWZvcmUgdGhlIHRyYW5zaXRpb24gaXMgZmluaXNoZWQpXG4gIC8vIHdlIG5lZWQgdG8gYWRkIGEgdHJhbnNpdGlvbmluZyBjc3MgY2xhc3MgaW4gSmF2YVNjcmlwdFxuICAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KSB2aWRlbyB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJi0tdHJhbnNpdGlvbmluZyAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KSB2aWRlbyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gY3NzIHJ1bGVzIGluIHBhcnRpYWxzIG1heSB1c2UgdmFyaWFibGVzLCBkZWZpbmVkIGluIHRoZSBzYXNzL3ZhcmlhYmxlcyBmb2xkZXJcbi5jdXN0b20tdGV4dCB7XG4gIGNvbG9yOiAkY3VzdG9tLXRleHQtY29sb3I7XG59XG4iLCIvLyBicmljayBzY3NzIHZhcmlhYmxlcyB0byBiZSB1c2VkIGluIHBhcnRpYWxzIGZpbGVzXG4vLyB1c2UgdGhlICFkZWZhdWx0IGZsYWcgdG8gbWFrZSB0aGlzIHZhcmlhYmxlIGNvbmZpZ3VyYWJsZSBpbiB0aGVtZXNcbiRjdXN0b20tdGV4dC1jb2xvcjogI0ZGMDAwMCAhZGVmYXVsdDtcbiIsIi8vIGNzcyBydWxlcyBpbiBwYXJ0aWFscyBtYXkgdXNlIHZhcmlhYmxlcywgZGVmaW5lZCBpbiB0aGUgc2Fzcy92YXJpYWJsZXMgZm9sZGVyXG4uY3VzdG9tLXRleHQge1xuICBjb2xvcjogJGN1c3RvbS10ZXh0LWNvbG9yO1xufVxuIiwiLy8gY3NzIHJ1bGVzIGluIHBhcnRpYWxzIG1heSB1c2UgdmFyaWFibGVzLCBkZWZpbmVkIGluIHRoZSBzYXNzL3ZhcmlhYmxlcyBmb2xkZXJcbi5jdXN0b20tdGV4dCB7XG4gIGNvbG9yOiAkY3VzdG9tLXRleHQtY29sb3I7XG59XG4iLCIvKlxuICogIE1JWElOOiBjbTIwMjAtYnJlYWtwb2ludCgpXG4gKlxuICpcdCRicmVhay10YWJsZXQtc3RhcnQ6IDc2OHB4O1xuICpcdCRicmVhay1kZXNrdG9wLXN0YXJ0OiAxMDI0cHg7XG4gKlx0JGJyZWFrLWRlc2t0b3AtaGQtc3RhcnQ6IDE0NDBweDtcbiAqXG4gKlx0QG1peGluIGNtMjAyMC1icmVha3BvaW50KCRtZWRpYSlcbiAqICBAcGFyYW1zICRtZWRpYTogbW9iaWxlIHwgdGFibGV0IHwgZGVza3RvcCB8IGRlc2t0b3BoZCB8IG1vYmlsZVRhYmxldCB8IHRhYmxldERlc2t0b3BcbiAqXHRAZXhhbXBsZSAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQodGFibGV0T25seSkgeyB3aWR0aDogMTI1cHg7IH1cbiAqL1xuQG1peGluIGNtMjAyMC1icmVha3BvaW50KCRtZWRpYSkge1xuICBAaWYgJG1lZGlhID09IG1vYmlsZU9ubHkge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6ICggJGJyZWFrLXRhYmxldC1zdGFydCAtIDFweCApICkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRtZWRpYSA9PSB0YWJsZXRPbmx5IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWluLXdpZHRoOiAkYnJlYWstdGFibGV0LXN0YXJ0ICkgYW5kICggbWF4LXdpZHRoOiAoICRicmVhay1kZXNrdG9wLXN0YXJ0IC0gMXB4ICkgKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJG1lZGlhID09IGRlc2t0b3BPbmx5IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWluLXdpZHRoOiAkYnJlYWstZGVza3RvcC1zdGFydCApIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkbWVkaWEgPT0gbW9iaWxlVGFibGV0IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAoICRicmVhay1kZXNrdG9wLXN0YXJ0IC0gMXB4ICkgKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJG1lZGlhID09IHRhYmxldERlc2t0b3Age1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtaW4td2lkdGg6ICRicmVhay10YWJsZXQtc3RhcnQgKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEZ1bmN0aW9uIHRvIGNhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBvZiBhIGNvbCB3aWR0aFxuICogV2l0aCBvbmUgcGFyYW1ldGVyIHdpZHRoIDEwMCUgaXMgYmFzZWQgb24gMTIgY29scyBtaW51cyBvdXRlciBndXR0ZXIgLT4gMTAwJSAtIGd1dHRlclxuICogV2l0aCB0d28gcGFyYW1ldGVyIHdpZHRoIDEwMCUgaXMgYmFzZWQgb24gdGhlIHNlY29uZCBwYXJhbWV0ZXIgKCBjb2woMywgNikgLT4gNTAlIC0gZ3V0dGVyICkgbWludXMgb3V0ZXIgZ3V0dGVyXG4gKiBXaXRoIHRoZSB0aGlyZCBwYXJhbWV0ZXIgZmFsc2Ugd2lkdGggaWdub3JlcyBvdXRlciBndXR0ZXIuIDEwMCUgPSAxMDAlXG4gKlxuICogQGV4YW1wbGUgd2lkdGg6IGNvbC13aWR0aCg4KTtcbiAqIEBleGFtcGxlIHdpZHRoOiBjb2wtd2lkdGgoMiwgNik7XG4gKiBAZXhhbXBsZSB3aWR0aDogY29sLXdpZHRoKDIsIDYsIGZhbHNlKTtcbiAqL1xuQGZ1bmN0aW9uIGNvbC13aWR0aCgkY29sLCAkY29sTnVtYmVyOiAxMiwgJHdpdGhHdXR0ZXI6IHRydWUpIHtcbiAgJGZsdWlkV2lkdGg6ICgxMDAlIC8gJGNvbE51bWJlcikgKiAkY29sO1xuICAkcmVzdWx0OiAkZmx1aWRXaWR0aDtcblxuICBAaWYgJHdpdGhHdXR0ZXIgPT0gdHJ1ZSB7XG4gICAgJHJlc3VsdDogY2FsYyggI3skZmx1aWRXaWR0aH0gLSAjeyRzR3V0dGVyRG91YmxlfSApO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgQ1NTIGZvciBhIGdyaWQgYmVoYXZpb3Igb2YgZWxlbWVudHNcbiAqXG4gKiBAZXhhbXBsZSBncmlkKDgpO1xuICogQGV4YW1wbGUgZ3JpZCgyLCA2KTtcbiAqIEBleGFtcGxlIGdyaWQoMiwgNiwgZmFsc2UpO1xuICovXG5AbWl4aW4gZ3JpZCggJGNvbCwgJGNvbE51bWJlcjogMTIsICR3aXRoR3V0dGVyOiB0cnVlKSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgQGlmICR3aXRoR3V0dGVyID09IHRydWUge1xuICAgIG1hcmdpbi1sZWZ0OiAkc0d1dHRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzR3V0dGVyO1xuICB9XG4gIHdpZHRoOiBjb2wtd2lkdGgoICRjb2wsICRjb2xOdW1iZXIsICR3aXRoR3V0dGVyICk7XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFNwYW5zIGEgY29udGFpbmVyIG92ZXIgdGhlIHdob2xlIHR5cGUtYXJlYSAobWF4IDEwMjRweCkgd2l0aFxuICogZ3V0dGVyIGFzIHBhZGRpbmcgYXQgdGhlIGxlZnQgYW5kIHJpZ2h0IHNpZGUuXG4gKlxuICogVGhlcmUgYXJlIHNvbWUgZWRnZSBjYXNlcywgd2hlcmUgeW91IG5lZWQgdGhlIHdob2xlIHNwYW4sIGJ1dCB3aXRob3V0IHBhZGRpbmdcbiAqL1xuQG1peGluIHR5cGUtYXJlYSggJHdpdGhQYWRkaW5nOiB0cnVlICkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMCAoJHNPdXRlckd1dHRlci1tb2JpbGUgLSAkc0d1dHRlcik7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMCAoJHNPdXRlckd1dHRlci10YWJsZXQgLSAkc0d1dHRlcik7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyggbWluKCN7JHNPdXRlckd1dHRlci1kZXNrdG9wfSwgOCUpICk7IC8vIDglOiBtYWdpYyBudW1iZXIsIGNhbGMgbmVlZGVkIGR1ZSB0byB1c2FnZSBvZiBvbGQgbm9kZS1zYXNzXG4gICAgcGFkZGluZy1yaWdodDogY2FsYyggbWluKCN7JHNPdXRlckd1dHRlci1kZXNrdG9wfSwgOCUpICk7IC8vIDglOiBtYWdpYyBudW1iZXIsIGNhbGMgbmVlZGVkIGR1ZSB0byB1c2FnZSBvZiBvbGQgbm9kZS1zYXNzXG4gICAgbWF4LXdpZHRoOiAkc0NvbnRlbnRNYXhXaWR0aCArICgyICogJHNPdXRlckd1dHRlci1kZXNrdG9wKSArICgyICogJHNHdXR0ZXIpIC8vIDEyMzRweDtcbiAgfVxufVxuXG5cbi8qKlxuICogTUlYSU46IHRvdWNoIGRldmljZSBkZXRlY3Rpb25cbiAqIEBkZXNjcmlwdGlvbjogU29tZXdoYXQgcHJvYmxlbWF0aWMgdG9waWMgd2l0aCBtYW55IGVkZ2UgY2FzZXMuIFNvIGRvbid0IHVzZSBpdCBmb3JcbiAqIGltcG9ydGFudCBzdHVmZiB0aGF0IGNhbiBicmVhayB1c2VyIGV4cGVyaWVuY2UhXG4gKiBUaGVyZSBpcyBhbHNvIGFuIHRvdWNoIGRldmljZSBkZXRlY3Rpb24gaW4gSlMuXG4gKlxuICogTW9yZSBpbmZvczpcbiAqIC0gaHR0cDovL3d3dy5zdHVjb3guY29tL2Jsb2cveW91LWNhbnQtZGV0ZWN0LWEtdG91Y2hzY3JlZW4vXG4gKiAtIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzc4Mzg2ODAvZGV0ZWN0aW5nLXRoYXQtdGhlLWJyb3dzZXItaGFzLW5vLW1vdXNlLWFuZC1pcy10b3VjaC1vbmx5LzUyODU0NTg1I2Fuc3dlci01Mjg1NDU4NVxuICogLSBodHRwczovL2Rldi5vcGVyYS5jb20vYXJ0aWNsZXMvbWVkaWEtZmVhdHVyZXMvXG4gKiAtIFRlc3QgZXhhbXBsZSBmb3IgbWF0Y2hNZWRpYTogaHR0cHM6Ly9wYXRyaWNraGxhdWtlLmdpdGh1Yi5pby90b3VjaC9wb2ludGVyLWhvdmVyLWFueS1wb2ludGVyLWFueS1ob3Zlci9cbiAqL1xuQG1peGluIGlzVG91Y2hEZXZpY2Uge1xuICBAbWVkaWEgKCBhbnktcG9pbnRlcjogY29hcnNlICkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cblxuLyoqXG4gKiBNSVhJTjogbmVnYXRpdmUgdG91Y2ggZGV2aWNlIGRldGVjdGlvblxuICogQGRlc2NyaXB0aW9uOiBTb21ld2hhdCBwcm9ibGVtYXRpYyB0b3BpYyB3aXRoIG1hbnkgZWRnZSBjYXNlcy4gU28gZG9uJ3QgdXNlIGl0IGZvclxuICogaW1wb3J0YW50IHN0dWZmIHRoYXQgY2FuIGJyZWFrIHVzZXIgZXhwZXJpZW5jZSFcbiAqIFRoZXJlIGlzIGFsc28gYW4gdG91Y2ggZGV2aWNlIGRldGVjdGlvbiBpbiBKUy5cbiAqXG4gKiBNb3JlIGluZm9zOlxuICogLSBodHRwOi8vd3d3LnN0dWNveC5jb20vYmxvZy95b3UtY2FudC1kZXRlY3QtYS10b3VjaHNjcmVlbi9cbiAqIC0gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNzgzODY4MC9kZXRlY3RpbmctdGhhdC10aGUtYnJvd3Nlci1oYXMtbm8tbW91c2UtYW5kLWlzLXRvdWNoLW9ubHkvNTI4NTQ1ODUjYW5zd2VyLTUyODU0NTg1XG4gKiAtIGh0dHBzOi8vZGV2Lm9wZXJhLmNvbS9hcnRpY2xlcy9tZWRpYS1mZWF0dXJlcy9cbiAqIC0gVGVzdCBleGFtcGxlIGZvciBtYXRjaE1lZGlhOiBodHRwczovL3BhdHJpY2tobGF1a2UuZ2l0aHViLmlvL3RvdWNoL3BvaW50ZXItaG92ZXItYW55LXBvaW50ZXItYW55LWhvdmVyL1xuICovXG5AbWl4aW4gaXNOb1RvdWNoRGV2aWNlIHtcbiAgQG1lZGlhIG5vdCAoIGFueS1wb2ludGVyOiBjb2Fyc2UgKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuXG4vKipcbiAqIE1JWElOOiBDbGVhcmZpeFxuICogQGRlc2NyaXB0aW9uOiBEaWZmZXJlbnQgdmFyaWFudHMgZm9yIGJhc2ljIGNsZWFyZml4IHN0dWZmXG4gKi9cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgKnpvb206IDE7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbiVjbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cblxuXG4vKipcbiAqIE1JWElOOiBBY2Nlc3NpYmlsaXR5IHN0dWZmXG4gKi9cbkBtaXhpbiBzY3JlZW5yZWFkZXItb25seSB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCggMCwgMCwgMCwgMCApICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoIDEwMCUgKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG59XG5cbiVzY3JlZW5yZWFkZXItb25seSB7XG4gIEBpbmNsdWRlIHNjcmVlbnJlYWRlci1vbmx5O1xufVxuXG5cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuXG5cbi8qKlxuICogIE1JWElOOiBDZW50ZXJpbmcgc3R1ZmZcbiAqICBAZGVzY3JpcHRpb246IGNlbnRlcmluZyB2ZXJ0aWNhbGx5XG4gKlxuICpcdEBtaXhpbiBhbGlnbi1taWRkbGVcbiAqXHRAZXhhbXBsZSBAaW5jbHVkZSBhbGlnbi1taWRkbGUoKTtcbiAqL1xuQG1peGluIGFsaWduLW1pZGRsZSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoIDAsIC01MCUgKTtcbn1cblxuLyoqXG4gKiAgQGRlc2NyaXB0aW9uOiBjZW50ZXJpbmcgdmVydGljYWxseSBBTkQgaG9yaXpvbnRhbGx5XG4gKlxuICpcdEBtaXhpbiBhbGlnbi1jZW50ZXItbWlkZGxlXG4gKlx0QGV4YW1wbGUgQGluY2x1ZGUgYWxpZ24tY2VudGVyLW1pZGRsZSgpO1xuICovXG5AbWl4aW4gYWxpZ24tY2VudGVyLW1pZGRsZSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSggLTUwJSwgLTUwJSApO1xufVxuXG5cblxuLyoqXG4gKiBNSVhJTjogUmVzZXR0aW5nIHN0dWZmXG4gKiBAZGVzY3JpcHRpb246IHNldHMgdGhlIGVsZW1lbnQgdG8gYW4gbmV1dHJhbCBhcHBlYXJhbmNlXG4gKi9cbkBtaXhpbiByZXNldC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiByZXNldC1saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWluZGVudDogMDtcbn1cblxuXG5cbi8qKlxuICogTUlYSU46IEdyaWQtQ1NTIHN0dWZmXG4gKiBAZGVzY3JpcHRpb246IElFMTEtXCJQb2x5ZmlsbFwiIGZvciBkaWZmZXJlbnQgaGFuZGxpbmcgb2YgZ3JpZC1hcmVhIGNvbW1hbmRcbiAqL1xuQG1peGluIGdyaWQtYXJlYSAoICRyb3dTdGFydCwgJGNvbFN0YXJ0LCAkcm93RW5kLCAkY29sRW5kICkge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuICAkcm93U3BhbjogJHJvd0VuZCAtICRyb3dTdGFydDtcbiAgJGNvbFNwYW46ICRjb2xFbmQgLSAkY29sU3RhcnQ7XG5cbiAgQGlmICRjb2xTcGFuID09IDAgb3IgJHJvd1NwYW4gPT0gMCB7XG4gICAgQGRlYnVnICdQYXJhbWV0ZXI6ICN7JHJvd1N0YXJ0fSAvICN7JGNvbFN0YXJ0fSAvICN7JHJvd0VuZH0gLyAjeyRjb2xFbmR9JztcbiAgICBAZXJyb3IgJ1dyb25nIGdyaWQgYXJlYSBzeW50YXg6IHJvdy1lbmQvY29sdW1uLWVuZCBtdXN0IGJlIGF0IGxlYXN0IGJpZ2dlciB0aGFuIHJvdy1zdGFydC9jb2x1bW4tc3RhcnQhJztcbiAgfVxuXG4gIC1tcy1ncmlkLXJvdzogJHJvd1N0YXJ0O1xuICAtbXMtZ3JpZC1jb2x1bW46ICRjb2xTdGFydDtcbiAgLW1zLWdyaWQtcm93LXNwYW46ICRyb3dTcGFuO1xuICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogJGNvbFNwYW47XG4gIGdyaWQtYXJlYTogI3skcm93U3RhcnR9IC8gI3skY29sU3RhcnR9IC8gI3skcm93RW5kfSAvICN7JGNvbEVuZH07XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbn1cbiIsImJvZHkge1xuXHRmb250LWZhbWlseTogJGZOb3JtYWw7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdGNvbG9yOiAkY1RleHQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXG5cdC8vIEJpbmRpbmcgb2Ygdmlld3BvcnQgaW5mb3JtYXRpb24gQ1NTIC0tPiBKU1xuXHQmOjpiZWZvcmUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQobW9iaWxlT25seSkge1xuXHRcdFx0Y29udGVudDogJ21vYmlsZSc7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KHRhYmxldE9ubHkpIHtcblx0XHRcdGNvbnRlbnQ6ICd0YWJsZXQnO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludChkZXNrdG9wT25seSkge1xuXHRcdFx0Y29udGVudDogJ2Rlc2t0b3AnO1xuXHRcdH1cblx0fVxufVxuXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG5cdG1hcmdpbjogMFxufVxuXG51bCxcbm9sIHtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYnV0dG9uIHtcblx0QGluY2x1ZGUgcmVzZXQtYnV0dG9uO1xufVxuXG5cbnN0cm9uZyxcbmIge1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuIiwiLy9kZWZhdWx0IHN0eWxlc1xuLiN7JGNtLW1lZGlhLXByZWZpeH0ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgJi0tcmVzcG9uc2l2ZSB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBoaWRlIGFsdCB0ZXh0XG4gIH1cblxuICAmLS11bmNyb3BwZWQge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vIGZvciBvYmplY3QgZml0LCB0aGUgdmlkZW8gYWN0dWFsbHkgbmVlZHMgYSBzcGVjaWZpZWQgd2lkdGgvaGVpZ2h0ICh0b3AsIGxlZnQsIHJpZ2h0IGFuZCBib3R0b20gaXMgbm90IHN1ZmZpY2llbnQpLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC8vIGxhenkgbG9hZGluZywgc2hvdyBzcGlubmVyXG4gICYtLWxvYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbS1tZWRpYS1sb2FkaW5nLWJhY2tncm91bmQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL2xvYWRlcl9iaWcuZ2lmXCIpO1xuICB9XG5cbiAgLy8gYWx0ZXJuYXRpdmUgaW1hZ2VcbiAgJi0tbWlzc2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNtLW1lZGlhLW1pc3NpbmctYmFja2dyb3VuZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgfVxufVxuIiwiLy9kZWZhdWx0IHZhcmlhYmxlc1xuJGNtLW1lZGlhLXByZWZpeDogXCJjbS1tZWRpYVwiICFkZWZhdWx0O1xuJGNtLW1lZGlhLW1pc3NpbmctYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhZGVmYXVsdDtcbiRjbS1tZWRpYS1sb2FkaW5nLWJhY2tncm91bmQtY29sb3I6ICNlZWVlZWUgIWRlZmF1bHQ7XG5cbiRjbS12aWRlby1wcmVmaXg6IFwiY20tdmlkZW9cIiAhZGVmYXVsdDtcbiRjbS1hdWRpby1wcmVmaXg6IFwiY20tYXVkaW9cIiAhZGVmYXVsdDtcbiIsIi8vIGF1ZGlvXG4uI3skY20tYXVkaW8tcHJlZml4fSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIHNob3cgYmxhY2sgYm94IGlmIGF1ZGlvIGlzIG1pc3NpbmdcbiAgJi0tbWlzc2luZyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG4iLCIvLyB2aWRlb1xuLiN7JGNtLXZpZGVvLXByZWZpeH0ge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gIC8vIHNob3cgYmxhY2sgYm94IGlmIHZpZGVvIGlzIG1pc3NpbmdcbiAgJi0tbWlzc2luZyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG4iLCIvLyB2aWRlbyBwbGF5IGJ1dHRvblxuQGZ1bmN0aW9uIHBsYXlpY29uKCRjaXJjbGUtYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjUpLCAkY2lyY2xlLWNvbG9yOiAnI0ZGRkZGRicsICRjb2xvcjogJyNGRkZGRkYnKSB7XG4gIEByZXR1cm4gdXJsKFwiLi4vLi4vaW1nL3BsYXlpY29uLnBhcmFtLnN2Zz9jaXJjbGVCYWNrZ3JvdW5kQ29sb3I9I3tlbmNvZGVDb2xvcigkY2lyY2xlLWJhY2tncm91bmQtY29sb3IpfSZjaXJjbGVDb2xvcj0je2VuY29kZUNvbG9yKCRjaXJjbGUtY29sb3IpfSZjb2xvcj0je2VuY29kZUNvbG9yKCRjb2xvcil9XCIpO1xufVxuXG4uI3skY20tcGxheS1idXR0b259IHtcbiAgd2lkdGg6ICRjbS1wbGF5LWJ1dHRvbi1vdmVybGF5LXNpemU7XG4gIGhlaWdodDogJGNtLXBsYXktYnV0dG9uLW92ZXJsYXktc2l6ZTtcbiAgLy9hdm9pZCBpY29uIGxhcmdlciB0aGFuIGNvbnRhaW5lciwgZS5nLiBpbiBwZHBcbiAgbWF4LXdpZHRoOiA3NSU7XG4gIG1heC1oZWlnaHQ6IDc1JTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgcGxheWljb24oJGNtLXBsYXktYnV0dG9uLWNvbG9yKSBuby1yZXBlYXQ7XG4gIHRyYW5zaXRpb246IGFsbCAkY20tcGxheS1idXR0b24tdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlKGluLW91dC1xdWFkKTtcblxuICAvLyB3aGVuIHBhcmVudCBpcyBob3ZlcmVkIG9yIGZvY3VzZWQgYnV0dG9uIGNoYW5nZXMgY29sb3IgYW5kIGZpbGxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgcGxheWljb24oJGNtLXBsYXktYnV0dG9uLWhvdmVyLWNvbG9yLCAkY20tcGxheS1idXR0b24taG92ZXItZmlsbCwgJGNtLXBsYXktYnV0dG9uLWhvdmVyLWZpbGwpIG5vLXJlcGVhdDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGNtLXBsYXktYnV0dG9uLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZShpbi1vdXQtcXVhZCk7IC8vIGZpcmVmb3ggNDMgbmVlZHMgaXQgdHdpY2VcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBwbGF5aWNvbigkY20tcGxheS1idXR0b24tZm9jdXMtY29sb3IsICRjbS1wbGF5LWJ1dHRvbi1mb2N1cy1maWxsLCAkY20tcGxheS1idXR0b24tZm9jdXMtZmlsbCkgbm8tcmVwZWF0O1xuICB9XG59XG4iLCIvL2RlZmF1bHQgdmFyaWFibGVzXG4kY20tcGxheS1idXR0b246IFwiY20tcGxheS1idXR0b25cIiAhZGVmYXVsdDtcbiRjbS1wbGF5LWJ1dHRvbi1vdmVybGF5LXNpemU6IDkwcHggIWRlZmF1bHQ7XG4kY20tcGxheS1idXR0b24tY29sb3I6IHJnYmEoMCwwLDAsMC41KSAhZGVmYXVsdDtcbiRjbS1wbGF5LWJ1dHRvbi1maWxsOiAjRkZGRkZGO1xuJGNtLXBsYXktYnV0dG9uLWhvdmVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuNikgIWRlZmF1bHQ7XG4kY20tcGxheS1idXR0b24taG92ZXItZmlsbDogI0ZGRkZGRiAhZGVmYXVsdDtcbiRjbS1wbGF5LWJ1dHRvbi1mb2N1cy1jb2xvcjogcmdiYSgwLDAsMCwwLjYpICFkZWZhdWx0O1xuJGNtLXBsYXktYnV0dG9uLWZvY3VzLWZpbGw6ICNGRkZGRkYgIWRlZmF1bHQ7XG4kY20tcGxheS1idXR0b24tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXMgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gRWFzaW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBAc2VlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvc2Fzcy9lYXNpbmctbWFwLWdldC1mdW5jdGlvbi9cbi8vXG4kZWFzZTogKFxuICAgIGxpbmVhciAgICAgICA6IGN1YmljLWJlemllcigwLjI1MCwgMC4yNTAsIDAuNzUwLCAwLjc1MCksXG4gICAgZWFzZSAgICAgICAgIDogY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjEwMCwgMC4yNTAsIDEuMDAwKSxcbiAgICBpbi1lYXNlICAgICAgOiBjdWJpYy1iZXppZXIoMC40MjAsIDAuMDAwLCAxLjAwMCwgMS4wMDApLFxuICAgIGluLXF1YWQgICAgICA6IGN1YmljLWJlemllcigwLjU1MCwgIDAuMDg1LCAwLjY4MCwgMC41MzApLFxuICAgIGluLWN1YmljICAgICA6IGN1YmljLWJlemllcigwLjU1MCwgIDAuMDU1LCAwLjY3NSwgMC4xOTApLFxuICAgIGluLXF1YXJ0ICAgICA6IGN1YmljLWJlemllcigwLjg5NSwgIDAuMDMwLCAwLjY4NSwgMC4yMjApLFxuICAgIGluLXF1aW50ICAgICA6IGN1YmljLWJlemllcigwLjc1NSwgIDAuMDUwLCAwLjg1NSwgMC4wNjApLFxuICAgIGluLXNpbmUgICAgICA6IGN1YmljLWJlemllcigwLjQ3MCwgIDAuMDAwLCAwLjc0NSwgMC43MTUpLFxuICAgIGluLWV4cG8gICAgICA6IGN1YmljLWJlemllcigwLjk1MCwgIDAuMDUwLCAwLjc5NSwgMC4wMzUpLFxuICAgIGluLWNpcmMgICAgICA6IGN1YmljLWJlemllcigwLjYwMCwgIDAuMDQwLCAwLjk4MCwgMC4zMzUpLFxuICAgIGluLWJhY2sgICAgICA6IGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpLFxuICAgIG91dC1lYXNlICAgICA6IGN1YmljLWJlemllcigwLjAwMCwgMC4wMDAsIDAuNTgwLCAxLjAwMCksXG4gICAgb3V0LXF1YWQgICAgIDogY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCksXG4gICAgb3V0LWN1YmljICAgIDogY3ViaWMtYmV6aWVyKDAuMjE1LCAgMC42MTAsIDAuMzU1LCAxLjAwMCksXG4gICAgb3V0LXF1YXJ0ICAgIDogY3ViaWMtYmV6aWVyKDAuMTY1LCAgMC44NDAsIDAuNDQwLCAxLjAwMCksXG4gICAgb3V0LXF1aW50ICAgIDogY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCksXG4gICAgb3V0LXNpbmUgICAgIDogY3ViaWMtYmV6aWVyKDAuMzkwLCAgMC41NzUsIDAuNTY1LCAxLjAwMCksXG4gICAgb3V0LWV4cG8gICAgIDogY3ViaWMtYmV6aWVyKDAuMTkwLCAgMS4wMDAsIDAuMjIwLCAxLjAwMCksXG4gICAgb3V0LWNpcmMgICAgIDogY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCksXG4gICAgb3V0LWJhY2sgICAgIDogY3ViaWMtYmV6aWVyKDAuMTc1LCAgMC44ODUsIDAuMzIwLCAxLjI3NSksXG4gICAgaW4tb3V0LWVhc2UgIDogY3ViaWMtYmV6aWVyKDAuNDIwLCAwLjAwMCwgMC41ODAsIDEuMDAwKSxcbiAgICBpbi1vdXQtcXVhZCAgOiBjdWJpYy1iZXppZXIoMC40NTUsICAwLjAzMCwgMC41MTUsIDAuOTU1KSxcbiAgICBpbi1vdXQtY3ViaWMgOiBjdWJpYy1iZXppZXIoMC42NDUsICAwLjA0NSwgMC4zNTUsIDEuMDAwKSxcbiAgICBpbi1vdXQtcXVhcnQgOiBjdWJpYy1iZXppZXIoMC43NzAsICAwLjAwMCwgMC4xNzUsIDEuMDAwKSxcbiAgICBpbi1vdXQtcXVpbnQgOiBjdWJpYy1iZXppZXIoMC44NjAsICAwLjAwMCwgMC4wNzAsIDEuMDAwKSxcbiAgICBpbi1vdXQtc2luZSAgOiBjdWJpYy1iZXppZXIoMC40NDUsICAwLjA1MCwgMC41NTAsIDAuOTUwKSxcbiAgICBpbi1vdXQtZXhwbyAgOiBjdWJpYy1iZXppZXIoMS4wMDAsICAwLjAwMCwgMC4wMDAsIDEuMDAwKSxcbiAgICBpbi1vdXQtY2lyYyAgOiBjdWJpYy1iZXppZXIoMC43ODUsICAwLjEzNSwgMC4xNTAsIDAuODYwKSxcbiAgICBpbi1vdXQtYmFjayAgOiBjdWJpYy1iZXppZXIoMC42ODAsIC0wLjU1MCwgMC4yNjUsIDEuNTUwKVxuKTsiLCIuY20tcGFnZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBuby1qcyBpbmZvYm94XG4uY20tamF2YXNjcmlwdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uby1qcyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgLmNtLWphdmFzY3JpcHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZDogJGNtLW5vLWpzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjbS1uby1qcy1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiIsIi8vZGVmYXVsdCB2YXJpYWJsZXNcbiRjbS1uby1qcy1iYWNrZ3JvdW5kOiAjMDAwMDAwICFkZWZhdWx0O1xuJGNtLW5vLWpzLWNvbG9yOiAjRkZGRkZGICFkZWZhdWx0OyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcblx0U2V0dGluZ3NcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCAnc2V0dGluZ3MudmFyaWFibGVzJztcbkBpbXBvcnQgJ3NldHRpbmdzLmZvbnRzJztcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG5cdFRvb2xzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgJ3Rvb2xzLm5vcm1hbGl6ZSc7XG5AaW1wb3J0ICd0b29scy5taXhpbnMnO1xuQGltcG9ydCAndG9vbHMubWl4aW5zLmNvcmVtZWRpYSc7XG5AaW1wb3J0ICd0b29scy5taXhpbnMudGV4dCc7XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuXHRCYXNlc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0ICdiYXNlLmVsZW1lbnRzJztcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG5cdFZlbmRvclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAndmVuZG9yLmdsaWRlLnZhcmlhYmxlcyc7XG5AaW1wb3J0ICd2ZW5kb3IuZ2xpZGUuY29yZSc7XG5AaW1wb3J0ICd2ZW5kb3IuZ2xpZGUuaGVyby50aGVtZSc7XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuXHRBdG9tc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnYXRvbXMudGV4dHMnOyAvLyBQb3NpdGlvbmVkIGF0IHRoZSB0b3AgZHVlIHRvIHNvbWUgYmFzaWMgdGV4dCBzdHlsaW5nc1xuQGltcG9ydCAnYXRvbXMuYnV0dG9ucyc7XG5AaW1wb3J0ICdhdG9tcy5pY29uLWJ1dHRvbnMnO1xuQGltcG9ydCAnYXRvbXMuaWNvbnMnO1xuQGltcG9ydCAnYXRvbXMuaW1hZ2VzJztcbkBpbXBvcnQgJ2F0b21zLmxpc3QnO1xuQGltcG9ydCAnYXRvbXMubG9nb3MnO1xuQGltcG9ydCAnYXRvbXMubWVnYW1lbnUnO1xuQGltcG9ydCAnYXRvbXMudmlkZW9zJztcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG5cdE1vbGVjdWxlc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnbW9sZWN1bGVzLmZpbHRlci1ib3gnO1xuQGltcG9ydCAnbW9sZWN1bGVzLmhlYWRlci5zZWFyY2gnO1xuQGltcG9ydCAnbW9sZWN1bGVzLmhlYWRlci5tZXRhLXRlYXNlcic7XG5AaW1wb3J0ICdtb2xlY3VsZXMuaGVhZGVyLm1lZ2FtZW51JztcbkBpbXBvcnQgJ21vbGVjdWxlcy5pbWFnZXMnO1xuQGltcG9ydCAnbW9sZWN1bGVzLmxhbmd1YWdlLWNob29zZXInO1xuQGltcG9ydCAnbW9sZWN1bGVzLnBhZ2luYXRpb24nO1xuQGltcG9ydCAnbW9sZWN1bGVzLnRhZy1idXR0b25zJztcbkBpbXBvcnQgJ21vbGVjdWxlcy50YWctbGlzdCc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcblx0T3JnYW5pc21zXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgJ29yZ2FuaXNtcy5kb3dubG9hZCc7XG5AaW1wb3J0ICdvcmdhbmlzbXMuZm9vdGVyJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5mb3Jtcy5odWJzcG90JztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5oZWFkZXInO1xuQGltcG9ydCAnb3JnYW5pc21zLmhlYWRlci5tZXRhJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5oZWFkZXIuZmx5b3V0JztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5oZWFkZXIubWVnYW1lbnUnO1xuQGltcG9ydCAnb3JnYW5pc21zLmhlcm8nO1xuQGltcG9ydCAnb3JnYW5pc21zLmltYWdlLWRldGFpbHMnO1xuQGltcG9ydCAnb3JnYW5pc21zLmxvZ293YWxsJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5wZXJzb24nO1xuQGltcG9ydCAnb3JnYW5pc21zLnF1b3RlJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy5zZWFyY2gtcmVzdWx0cyc7XG5AaW1wb3J0ICdvcmdhbmlzbXMudGFicyc7XG5AaW1wb3J0ICdvcmdhbmlzbXMudGFicy1ib3gnO1xuQGltcG9ydCAnb3JnYW5pc21zLnRlYXNlcic7XG5AaW1wb3J0ICdvcmdhbmlzbXMudGVhc2VyLmJveC1oZXJvJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy50ZWFzZXIuZ2F0ZXdheSc7XG5AaW1wb3J0ICdvcmdhbmlzbXMudGVhc2VyLmVudW1lcmF0aW5nJztcbkBpbXBvcnQgJ29yZ2FuaXNtcy50ZWFzZXItY29sbGVjdGlvbnMnO1xuQGltcG9ydCAnb3JnYW5pc21zLnRlYXNlci1wYXJ0bmVyLWRldGFpbHMnO1xuQGltcG9ydCAnb3JnYW5pc21zLnZpZGVvcyc7XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuXHRWZW5kb3I6IEFmdGVyIVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAndmVuZG9yLXBvc3QuY29va2llYm90JztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdFBhZ2VzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdwYWdlcy5ibG9nLWFydGljbGUnO1xuQGltcG9ydCAncGFnZXMucHJvamVjdC1kb2N1bWVudGF0aW9uJztcblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdElOQk9YXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICcwMC5zaGFtZSc7XG4iLCIvKipcbiAqIENPTE9SU1xuICovXG5cbi8vIENvbG9ycywgUHJpbWFyeVxuJGNXaGl0ZTpcdFx0XHQjZmZmZmZmO1xuJGNSYWRpY2FsUmVkOlx0XHQjZGQzNDJiO1xuJGNQYXJhbm9pZFB1cnBsZTogXHQjNjcyNzc5O1xuJGNHYWJieUdyZWVuOlx0XHQjMmZhYzY2O1xuJGNCbGFjazpcdFx0XHQjMDAwMDAwO1xuXG4vLyBDb2xvcnMsIFNlY29uZGFyeVxuJGNZZWxsaW5nWWVsbG93Olx0I2VmZGYwZjtcbiRjVGFuZ3lUdXJxdW9pc2U6XHQjNmZjM2I4O1xuJGNCYXR0eUJsdWU6XHRcdCMwMDZjYWU7XG4kY0Nvb2xHcmF5Olx0XHRcdCM2NjY2NjY7XG4kY0RhcmtHcmF5Olx0XHRcdCMzNjM5MzY7XG5cbi8vIENvbG9ycywgUGFydG5lciBzdGF0dXMsIENlcnRpZmllZFxuJGNHb2xkOlx0XHRcdFx0I2Q0YWYzNztcbiRjUGxhdGludW06XHRcdFx0I2EwYjJjNjtcbiRjU2lsdmVyOlx0XHRcdCNiZWMyY2I7XG4kY1JlZ2lzdGVyZWQ6XHRcdCM0MWFhNmE7XG4kY0NlcnRpZmllZDpcdFx0JGNQYXJhbm9pZFB1cnBsZTtcblxuLy8gQ29sb3JzLCBhZGRpdGlvbmFsXG4kY0dyYXlMaWdodDogXHRcdCNiYmM0YzM7XG4kY0dyYXlNZWRpdW06IFx0XHQjOGU5YzljO1xuXG4vLyBDb2xvcnMsIFByb3hpZXNcbiRjVGV4dDogXHRcdFx0XHRcdCRjRGFya0dyYXk7XG4kY1RleHQtLWludmVyczogXHRcdFx0JGNXaGl0ZTtcbiRjQmdIZWFkZXI6IFx0XHRcdFx0JGNEYXJrR3JheTtcbiRjQmdIZWFkZXJNZXRhOlx0XHRcdFx0JGNXaGl0ZTtcbiRjQmdGb290ZXI6IFx0XHRcdFx0JGNEYXJrR3JheTtcbiRjQnV0dG9uQmc6XHRcdFx0XHRcdCRjUGFyYW5vaWRQdXJwbGU7XG4kY0J1dHRvbkJnLS1pbnZlcnM6XHRcdFx0JGNXaGl0ZTtcbiRjQnV0dG9uVGV4dDpcdFx0XHRcdCRjV2hpdGU7XG4kY0J1dHRvblRleHQtLWludmVyczpcdFx0JGNQYXJhbm9pZFB1cnBsZTtcbiRjQnV0dG9uVGV4dC0taW52ZXJzLWJsdWU6XHQkY0JhdHR5Qmx1ZTtcbiRjQnV0dG9uVGV4dC0taW52ZXJzLXJlZDpcdCRjUmFkaWNhbFJlZDtcblxuJGNCdXR0b25CZy0tdGVydGlhcnk6XHRcdCNlZmVmZWY7XG4kY0J1dHRvblRleHQtLXRlcnRpYXJ5Olx0XHQkY0Nvb2xHcmF5O1xuXG5cblxuXG4vKipcbiAqIFNJWkVTXG4gKi9cbiRzR3V0dGVyOiAxNXB4O1xuJHNHdXR0ZXJEb3VibGU6IDMwcHg7XG5cbiRzT3V0ZXJHdXR0ZXItbW9iaWxlOiAxNXB4O1xuJHNPdXRlckd1dHRlci10YWJsZXQ6IDQ1cHg7XG4kc091dGVyR3V0dGVyLWRlc2t0b3A6IDQ3cHg7XG4kc091dGVyR3V0dGVyLWRlc2t0b3BoZDogMTY1cHg7XG5cbiRzQ29udGVudE1heFdpZHRoOiAxMTEwcHg7IC8vIGFjY29yZGluZyBkZXNpZ24uIE1heCB3aWR0aCBpcyByZWFjaGVkIHdoZW4gdmlld3BvcnQgPSAxNDQwcHhcblxuJHNIZWlnaHRIZWFkZXJNZXRhOlx0XHRcdFx0XHRcdFx0NTBweDtcbiRzSGVpZ2h0SGVhZGVyRmx5b3V0SW5pdGlhbE1vYmlsZVRhYmxldDpcdDUwcHg7XG4kc0hlaWdodEhlYWRlckZseW91dEluaXRpYWxEZXNrdG9wOlx0XHRcdDcwcHg7XG5cblxuLyoqXG4gKiBCUkVBS1BPSU5UU1xuICovXG4kYnJlYWstbW9iaWxlLXN0YXJ0OiAzNzVweDtcbiRicmVhay10YWJsZXQtc3RhcnQ6IDc2OHB4O1xuJGJyZWFrLWRlc2t0b3Atc3RhcnQ6IDEwODBweDtcbiRicmVhay1kZXNrdG9waGQtc3RhcnQ6IDE0NzJweDtcblxuXG5cbi8qKlxuICogRFVSQVRJT05TXG4gKi9cbiRkRGVmYXVsdDogNjAwbXM7XG4kZFNob3J0OiAyMDBtcztcblxuLyoqXG4gKiBaLUlOREVYXG4gKi9cbiR6TmF2aWdhdGlvbk92ZXJsYXk6IDk5OTtcbiR6SGVhZGVyOiAxMDAwO1xuXG5cbiIsIi8qIGRtLXNhbnMtcmVndWxhciAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdETSBTYW5zJztcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRzcmM6IHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLXJlZ3VsYXIuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cblx0c3JjOiBsb2NhbCgnRE0gU2FucyBSZWd1bGFyJyksIGxvY2FsKCdETVNhbnMtUmVndWxhcicpLFxuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1yZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLXJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtcmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJykgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbn1cbi8qIGRtLXNhbnMtaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ0RNIFNhbnMnO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdHNyYzogdXJsKCcuLi8uLi9mb250cy9kbXNhbnMtaXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG5cdHNyYzogbG9jYWwoJ0RNIFNhbnMgSXRhbGljJyksIGxvY2FsKCdETVNhbnMtSXRhbGljJyksXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1pdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG59XG4vKiBkbS1zYW5zLW1lZGl1bSAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdETSBTYW5zJztcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRzcmM6IHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLW1lZGl1bS5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuXHRzcmM6IGxvY2FsKCdETSBTYW5zIE1lZGl1bScpLCBsb2NhbCgnRE1TYW5zLU1lZGl1bScpLFxuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW0uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtbWVkaXVtLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xufVxuLyogZG0tc2Fucy1tZWRpdW1pdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW1pdGFsaWMuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cblx0c3JjOiBsb2NhbCgnRE0gU2FucyBNZWRpdW0gSXRhbGljJyksIGxvY2FsKCdETVNhbnMtTWVkaXVtSXRhbGljJyksXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLW1lZGl1bWl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLW1lZGl1bWl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLW1lZGl1bWl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1tZWRpdW1pdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG59XG4vKiBkbS1zYW5zLWJvbGQgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG5cdHNyYzogbG9jYWwoJ0RNIFNhbnMgQm9sZCcpLCBsb2NhbCgnRE1TYW5zLUJvbGQnKSxcblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG59XG4vKiBkbS1zYW5zLWJvbGRpdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkaXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG5cdHNyYzogbG9jYWwoJ0RNIFNhbnMgQm9sZCBJdGFsaWMnKSwgbG9jYWwoJ0RNU2Fucy1Cb2xkSXRhbGljJyksXG5cdHVybCgnLi4vLi4vZm9udHMvZG1zYW5zLWJvbGRpdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkaXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cblx0dXJsKCcuLi8uLi9mb250cy9kbXNhbnMtYm9sZGl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuXHR1cmwoJy4uLy4uL2ZvbnRzL2Rtc2Fucy1ib2xkaXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xufVxuXG5cblxuLyoqXG4gKiBGT05UU1xuICovXG4kZk5vcm1hbDogJ0RNIFNhbnMnLCBzYW5zLXNlcmlmO1xuJGZ3UmVndWxhcjogNDAwO1xuJGZ3TWVkaXVtOiA1MDA7XG4kZndCb2xkOiA3MDA7XG5cblxuJGZzSGVhZGVyLW1vYmlsZTogMThweDtcbiRmc0hlYWRlci10YWJsZXQ6IDE4cHg7XG4kZnNIZWFkZXItZGVza3RvcDogMTZweDtcbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG5cdGZvbnQtc2l6ZTogMmVtO1xuXHRtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG5cdGhlaWdodDogMDsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcblx0Zm9udC1zaXplOiA3NSU7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcblx0cGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG5cdGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAzICovXG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cblx0b3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cblx0Zm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKlxuICogIE1JWElOOiBjbTIwMjAtYnJlYWtwb2ludCgpXG4gKlxuICpcdCRicmVhay10YWJsZXQtc3RhcnQ6IDc2OHB4O1xuICpcdCRicmVhay1kZXNrdG9wLXN0YXJ0OiAxMDI0cHg7XG4gKlx0JGJyZWFrLWRlc2t0b3AtaGQtc3RhcnQ6IDE0NDBweDtcbiAqXG4gKlx0QG1peGluIGNtMjAyMC1icmVha3BvaW50KCRtZWRpYSlcbiAqICBAcGFyYW1zICRtZWRpYTogbW9iaWxlIHwgdGFibGV0IHwgZGVza3RvcCB8IGRlc2t0b3BoZCB8IG1vYmlsZVRhYmxldCB8IHRhYmxldERlc2t0b3BcbiAqXHRAZXhhbXBsZSAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQodGFibGV0T25seSkgeyB3aWR0aDogMTI1cHg7IH1cbiAqL1xuQG1peGluIGNtMjAyMC1icmVha3BvaW50KCRtZWRpYSkge1xuXHRAaWYgJG1lZGlhID09IG1vYmlsZU9ubHkge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtYXgtd2lkdGg6ICggJGJyZWFrLXRhYmxldC1zdGFydCAtIDFweCApICkge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXHR9XG5cdEBlbHNlIGlmICRtZWRpYSA9PSB0YWJsZXRPbmx5IHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWluLXdpZHRoOiAkYnJlYWstdGFibGV0LXN0YXJ0ICkgYW5kICggbWF4LXdpZHRoOiAoICRicmVhay1kZXNrdG9wLXN0YXJ0IC0gMXB4ICkgKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cblx0QGVsc2UgaWYgJG1lZGlhID09IGRlc2t0b3BPbmx5IHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWluLXdpZHRoOiAkYnJlYWstZGVza3RvcC1zdGFydCApIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxuXHRAZWxzZSBpZiAkbWVkaWEgPT0gZGVza3RvcEhkT25seSB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi13aWR0aDogJGJyZWFrLWRlc2t0b3BoZC1zdGFydCApIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxuXHRAZWxzZSBpZiAkbWVkaWEgPT0gbW9iaWxlVGFibGV0IHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kICggbWF4LXdpZHRoOiAoICRicmVhay1kZXNrdG9wLXN0YXJ0IC0gMXB4ICkgKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cblx0QGVsc2UgaWYgJG1lZGlhID09IHRhYmxldERlc2t0b3Age1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCBtaW4td2lkdGg6ICRicmVhay10YWJsZXQtc3RhcnQgKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEZ1bmN0aW9uIHRvIGNhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBvZiBhIGNvbCB3aWR0aFxuICogV2l0aCBvbmUgcGFyYW1ldGVyIHdpZHRoIDEwMCUgaXMgYmFzZWQgb24gMTIgY29scyBtaW51cyBvdXRlciBndXR0ZXIgLT4gMTAwJSAtIGd1dHRlclxuICogV2l0aCB0d28gcGFyYW1ldGVyIHdpZHRoIDEwMCUgaXMgYmFzZWQgb24gdGhlIHNlY29uZCBwYXJhbWV0ZXIgKCBjb2woMywgNikgLT4gNTAlIC0gZ3V0dGVyICkgbWludXMgb3V0ZXIgZ3V0dGVyXG4gKiBXaXRoIHRoZSB0aGlyZCBwYXJhbWV0ZXIgZmFsc2Ugd2lkdGggaWdub3JlcyBvdXRlciBndXR0ZXIuIDEwMCUgPSAxMDAlXG4gKlxuICogQGV4YW1wbGUgd2lkdGg6IGNvbC13aWR0aCg4KTtcbiAqIEBleGFtcGxlIHdpZHRoOiBjb2wtd2lkdGgoMiwgNik7XG4gKiBAZXhhbXBsZSB3aWR0aDogY29sLXdpZHRoKDIsIDYsIGZhbHNlKTtcbiAqL1xuQGZ1bmN0aW9uIGNvbC13aWR0aCgkY29sLCAkY29sTnVtYmVyOiAxMiwgJHdpdGhHdXR0ZXI6IHRydWUpIHtcblx0JGZsdWlkV2lkdGg6ICgxMDAlIC8gJGNvbE51bWJlcikgKiAkY29sO1xuXHQkcmVzdWx0OiAkZmx1aWRXaWR0aDtcblxuXHRAaWYgJHdpdGhHdXR0ZXIgPT0gdHJ1ZSB7XG5cdFx0JHJlc3VsdDogY2FsYyggI3skZmx1aWRXaWR0aH0gLSAjeyRzR3V0dGVyRG91YmxlfSApO1xuXHR9XG5cblx0QHJldHVybiAkcmVzdWx0O1xufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgQ1NTIGZvciBhIGdyaWQgYmVoYXZpb3Igb2YgZWxlbWVudHNcbiAqXG4gKiBAZXhhbXBsZSBncmlkKDgpO1xuICogQGV4YW1wbGUgZ3JpZCgyLCA2KTtcbiAqIEBleGFtcGxlIGdyaWQoMiwgNiwgZmFsc2UpO1xuICovXG5AbWl4aW4gZ3JpZCggJGNvbCwgJGNvbE51bWJlcjogMTIsICR3aXRoR3V0dGVyOiB0cnVlKSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cblx0QGlmICR3aXRoR3V0dGVyID09IHRydWUge1xuXHRcdG1hcmdpbi1sZWZ0OiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tcmlnaHQ6ICRzR3V0dGVyO1xuXHR9XG5cdHdpZHRoOiBjb2wtd2lkdGgoICRjb2wsICRjb2xOdW1iZXIsICR3aXRoR3V0dGVyICk7XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFNwYW5zIGEgY29udGFpbmVyIG92ZXIgdGhlIHdob2xlIHR5cGUtYXJlYSAobWF4IDEwMjRweCkgd2l0aFxuICogZ3V0dGVyIGFzIHBhZGRpbmcgYXQgdGhlIGxlZnQgYW5kIHJpZ2h0IHNpZGUuXG4gKlxuICogVGhlcmUgYXJlIHNvbWUgZWRnZSBjYXNlcywgd2hlcmUgeW91IG5lZWQgdGhlIHdob2xlIHNwYW4sIGJ1dCB3aXRob3V0IHBhZGRpbmdcbiAqL1xuQG1peGluIHR5cGUtYXJlYSggJHdpdGhQYWRkaW5nOiB0cnVlICkge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogMTAwJTtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0cGFkZGluZy1sZWZ0OiAkc091dGVyR3V0dGVyLW1vYmlsZTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAkc091dGVyR3V0dGVyLW1vYmlsZTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRwYWRkaW5nLWxlZnQ6ICRzT3V0ZXJHdXR0ZXItdGFibGV0O1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRzT3V0ZXJHdXR0ZXItdGFibGV0O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRwYWRkaW5nLWxlZnQ6IGNhbGMoIG1pbiggI3skc091dGVyR3V0dGVyLWRlc2t0b3B9LCA4JSApICk7IC8vIDglOiBtYWdpYyBudW1iZXIsIGNhbGMgbmVlZGVkIGR1ZSB0byB1c2FnZSBvZiBvbGQgbm9kZS1zYXNzXG5cdFx0cGFkZGluZy1yaWdodDogY2FsYyggbWluKCAjeyRzT3V0ZXJHdXR0ZXItZGVza3RvcH0sIDglICkgKTsgLy8gOCU6IG1hZ2ljIG51bWJlciwgY2FsYyBuZWVkZWQgZHVlIHRvIHVzYWdlIG9mIG9sZCBub2RlLXNhc3Ncblx0XHRtYXgtd2lkdGg6ICRzQ29udGVudE1heFdpZHRoICsgKDIgKiAkc091dGVyR3V0dGVyLWRlc2t0b3ApICsgKDIgKiAkc0d1dHRlcikgLy8gMTIzNHB4O1xuXHR9XG59XG5cblxuLyoqXG4gKiBNSVhJTjogdG91Y2ggZGV2aWNlIGRldGVjdGlvblxuICogQGRlc2NyaXB0aW9uOiBTb21ld2hhdCBwcm9ibGVtYXRpYyB0b3BpYyB3aXRoIG1hbnkgZWRnZSBjYXNlcy4gU28gZG9uJ3QgdXNlIGl0IGZvclxuICogaW1wb3J0YW50IHN0dWZmIHRoYXQgY2FuIGJyZWFrIHVzZXIgZXhwZXJpZW5jZSFcbiAqIFRoZXJlIGlzIGFsc28gYW4gdG91Y2ggZGV2aWNlIGRldGVjdGlvbiBpbiBKUy5cbiAqXG4gKiBNb3JlIGluZm9zOlxuICogLSBodHRwOi8vd3d3LnN0dWNveC5jb20vYmxvZy95b3UtY2FudC1kZXRlY3QtYS10b3VjaHNjcmVlbi9cbiAqIC0gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNzgzODY4MC9kZXRlY3RpbmctdGhhdC10aGUtYnJvd3Nlci1oYXMtbm8tbW91c2UtYW5kLWlzLXRvdWNoLW9ubHkvNTI4NTQ1ODUjYW5zd2VyLTUyODU0NTg1XG4gKiAtIGh0dHBzOi8vZGV2Lm9wZXJhLmNvbS9hcnRpY2xlcy9tZWRpYS1mZWF0dXJlcy9cbiAqIC0gVGVzdCBleGFtcGxlIGZvciBtYXRjaE1lZGlhOiBodHRwczovL3BhdHJpY2tobGF1a2UuZ2l0aHViLmlvL3RvdWNoL3BvaW50ZXItaG92ZXItYW55LXBvaW50ZXItYW55LWhvdmVyL1xuICovXG5AbWl4aW4gaXNUb3VjaERldmljZSB7XG5cdEBtZWRpYSAoIGFueS1wb2ludGVyOiBjb2Fyc2UgKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuXG4vKipcbiAqIE1JWElOOiBuZWdhdGl2ZSB0b3VjaCBkZXZpY2UgZGV0ZWN0aW9uXG4gKiBAZGVzY3JpcHRpb246IFNvbWV3aGF0IHByb2JsZW1hdGljIHRvcGljIHdpdGggbWFueSBlZGdlIGNhc2VzLiBTbyBkb24ndCB1c2UgaXQgZm9yXG4gKiBpbXBvcnRhbnQgc3R1ZmYgdGhhdCBjYW4gYnJlYWsgdXNlciBleHBlcmllbmNlIVxuICogVGhlcmUgaXMgYWxzbyBhbiB0b3VjaCBkZXZpY2UgZGV0ZWN0aW9uIGluIEpTLlxuICpcbiAqIE1vcmUgaW5mb3M6XG4gKiAtIGh0dHA6Ly93d3cuc3R1Y294LmNvbS9ibG9nL3lvdS1jYW50LWRldGVjdC1hLXRvdWNoc2NyZWVuL1xuICogLSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy83ODM4NjgwL2RldGVjdGluZy10aGF0LXRoZS1icm93c2VyLWhhcy1uby1tb3VzZS1hbmQtaXMtdG91Y2gtb25seS81Mjg1NDU4NSNhbnN3ZXItNTI4NTQ1ODVcbiAqIC0gaHR0cHM6Ly9kZXYub3BlcmEuY29tL2FydGljbGVzL21lZGlhLWZlYXR1cmVzL1xuICogLSBUZXN0IGV4YW1wbGUgZm9yIG1hdGNoTWVkaWE6IGh0dHBzOi8vcGF0cmlja2hsYXVrZS5naXRodWIuaW8vdG91Y2gvcG9pbnRlci1ob3Zlci1hbnktcG9pbnRlci1hbnktaG92ZXIvXG4gKi9cbkBtaXhpbiBpc05vVG91Y2hEZXZpY2Uge1xuXHRAbWVkaWEgbm90ICggYW55LXBvaW50ZXI6IGNvYXJzZSApIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5cbi8qKlxuICogTUlYSU46IENsZWFyZml4XG4gKiBAZGVzY3JpcHRpb246IERpZmZlcmVudCB2YXJpYW50cyBmb3IgYmFzaWMgY2xlYXJmaXggc3R1ZmZcbiAqL1xuQG1peGluIGNsZWFyZml4KCkge1xuXHQqem9vbTogMTtcblxuXHQmOjpiZWZvcmUsXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiAnICc7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdH1cblxuXHQmOjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdH1cbn1cblxuLmNsZWFyZml4IHtcblx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuJWNsZWFyZml4IHtcblx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuXG5cbi8qKlxuICogTUlYSU46IEFjY2Vzc2liaWxpdHkgc3R1ZmZcbiAqL1xuQG1peGluIHNjcmVlbnJlYWRlci1vbmx5IHtcblx0Lyogc3R5bGVsaW50LWRpc2FibGUgKi9cblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHggIWltcG9ydGFudDtcblx0aGVpZ2h0OiAxcHggIWltcG9ydGFudDtcblx0bWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuXHRjbGlwOiByZWN0KCAwLCAwLCAwLCAwICkgIWltcG9ydGFudDtcblx0Y2xpcC1wYXRoOiBpbnNldCggMTAwJSApICFpbXBvcnRhbnQ7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcblx0Ym9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cdC8qIHN0eWxlbGludC1lbmFibGUgKi9cbn1cblxuJXNjcmVlbnJlYWRlci1vbmx5IHtcblx0QGluY2x1ZGUgc2NyZWVucmVhZGVyLW9ubHk7XG59XG5cblxuXG4uaXMtaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmlzLXZpc2libGUge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBOb3QgaGlkaW5nLCBidXQgcHVzaGluZyBiZWhpbmQsIGFzIHZpc3VhbCBmYWxsYmFjayBhcyBsb25nIGFzIHNvbWUgRE9NIHN0dWZmXG4gKiBnZXRzIGJ1aWx0IG9yIGxvYWRlZC5cbiAqL1xuLmlzLWZhbGxiYWNrLWJnIHtcblx0ei1pbmRleDogLTE7XG59XG5cblxuXG4vKipcbiAqICBNSVhJTjogQ2VudGVyaW5nIHN0dWZmXG4gKiAgQGRlc2NyaXB0aW9uOiBjZW50ZXJpbmcgdmVydGljYWxseVxuICpcbiAqXHRAbWl4aW4gYWxpZ24tbWlkZGxlXG4gKlx0QGV4YW1wbGUgQGluY2x1ZGUgYWxpZ24tbWlkZGxlKCk7XG4gKi9cbkBtaXhpbiBhbGlnbi1taWRkbGUoKSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKCAwLCAtNTAlICk7XG59XG5cbi8qKlxuICogIEBkZXNjcmlwdGlvbjogY2VudGVyaW5nIHZlcnRpY2FsbHkgQU5EIGhvcml6b250YWxseVxuICpcbiAqXHRAbWl4aW4gYWxpZ24tY2VudGVyLW1pZGRsZVxuICpcdEBleGFtcGxlIEBpbmNsdWRlIGFsaWduLWNlbnRlci1taWRkbGUoKTtcbiAqL1xuQG1peGluIGFsaWduLWNlbnRlci1taWRkbGUoKSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIC01MCUsIC01MCUgKTtcbn1cblxuXG5cbi8qKlxuICogTUlYSU46IFJlc2V0dGluZyBzdHVmZlxuICogQGRlc2NyaXB0aW9uOiBzZXRzIHRoZSBlbGVtZW50IHRvIGFuIG5ldXRyYWwgYXBwZWFyYW5jZVxuICovXG5AbWl4aW4gcmVzZXQtYnV0dG9uIHtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gcmVzZXQtbGlzdCB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0dGV4dC1pbmRlbnQ6IDA7XG59XG5cbkBtaXhpbiBkaXNhYmxlLXRleHQtc2VsZWN0aW9uIHtcblx0Lyogc3R5bGVsaW50LWRpc2FibGUgKi9cblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHQvKiBzdHlsZWxpbnQtZW5hYmxlICovXG59XG5cblxuLyoqXG4gKiBNSVhJTjogR3JpZC1DU1Mgc3R1ZmZcbiAqIEBkZXNjcmlwdGlvbjogSUUxMS1cIlBvbHlmaWxsXCIgZm9yIGRpZmZlcmVudCBoYW5kbGluZyBvZiBncmlkLWFyZWEgY29tbWFuZFxuICovXG5AbWl4aW4gZ3JpZC1hcmVhICggJHJvd1N0YXJ0LCAkY29sU3RhcnQsICRyb3dFbmQsICRjb2xFbmQgKSB7XG5cdC8qIHN0eWxlbGludC1kaXNhYmxlICovXG5cdCRyb3dTcGFuOiAkcm93RW5kIC0gJHJvd1N0YXJ0O1xuXHQkY29sU3BhbjogJGNvbEVuZCAtICRjb2xTdGFydDtcblxuXHRAaWYgJGNvbFNwYW4gPT0gMCBvciAkcm93U3BhbiA9PSAwIHtcblx0XHRAZGVidWcgJ1BhcmFtZXRlcjogI3skcm93U3RhcnR9IC8gI3skY29sU3RhcnR9IC8gI3skcm93RW5kfSAvICN7JGNvbEVuZH0nO1xuXHRcdEBlcnJvciAnV3JvbmcgZ3JpZCBhcmVhIHN5bnRheDogcm93LWVuZC9jb2x1bW4tZW5kIG11c3QgYmUgYXQgbGVhc3QgYmlnZ2VyIHRoYW4gcm93LXN0YXJ0L2NvbHVtbi1zdGFydCEnO1xuXHR9XG5cblx0LW1zLWdyaWQtcm93OiAkcm93U3RhcnQ7XG5cdC1tcy1ncmlkLWNvbHVtbjogJGNvbFN0YXJ0O1xuXHQtbXMtZ3JpZC1yb3ctc3BhbjogJHJvd1NwYW47XG5cdC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAkY29sU3Bhbjtcblx0Z3JpZC1hcmVhOiAjeyRyb3dTdGFydH0gLyAjeyRjb2xTdGFydH0gLyAjeyRyb3dFbmR9IC8gI3skY29sRW5kfTtcblx0Lyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuXG5cblxuLyoqXG4qIE1JWElOOiBhZGQgcHJvcGVydHkgd2l0aCB2YWx1ZSBhcyB2YXJpYWJsZSBhbmQgZmFsbGJhY2sgdmFsdWVcbiogZS5nLiB1c2VkIGZvciB0aGVtaW5nIHdpdGggY3VzdG9tIHByb3BlcnRpZXMgdG91Z2ggc2Fzc1xuICovXG5AbWl4aW4gdmFyaWFibGUoICRwcm9wZXJ0eSwgJHZhcmlhYmxlLCAkZmFsbGJhY2sgKSB7XG5cdCN7JHByb3BlcnR5fTogJGZhbGxiYWNrO1xuXHQjeyRwcm9wZXJ0eX06IHZhciggJHZhcmlhYmxlICk7XG59XG4iLCIvKipcbiAqIEBkZXNjcmlwdGlvbjogVGhpcyBmaWxlIGNvbnRhaW5zIG1peGlucyBtYWRlIGJ5IENvcmVNZWRpYS4gVGhlc2UgbWl4aW5zIGFyZVxuICogaW5jbHVkZWQgaW4gc3RhbmRhcmQgQ29yZU1lZGlhIGluc3RhbGxhdGlvbnMgYW5kIG5lZWRlZCBmb3Igc29tZSB3b3JrIGZsb3dzLFxuICogaS5lLiBhc3BlY3QtcmF0aW8tYm94KCkgZm9yIHJlc3BvbnNpdmUgaW1hZ2VzLlxuXG4gKiBBcyBDb3JlTWVkaWEgaXMgc3RpbGwgdXNpbmcgbm9kZS1zYXNzL0xpYlNhc3MgaW5zdGVhZCBvZiB0aGUgbmV3ZXIgRGFydCBTYXNzXG4gKiBpbXBsZW1lbnRhdGlvbiwgdGhlcmUgaXMgbm8gd2F5IGZvciBjb25kaXRpb25hbCBpbXBvcnRzIGZvciBtaXhpbnMuXG4gKiBTbyBpbnN0ZWFkIGVhY2ggbmVlZGVkIENvcmVNZWRpYSBtaXhpbiBpcyBjb3BpZWQgbWFudWFsbHkgaW50byB0aGlzIGZpbGUuXG5cbiAqIFRoZSBleGlzdGVuY2Ugb2YgdGhlIG1peGluIGlzIGNoZWNrZWQgKHdhcyBpdCBhbHJlYWR5IGltcG9ydGVkIGJ5IHNvbWVcbiAqIENvcmVNZWRpYSBicmljayBtYWdpYz8pIGFuZCBpZiBuZWVkZWQsIGluaXRpYWxpemVkIGJ5IHRoZSB2ZXJzaW9uIGhlcmVcbiAqL1xuXG5cbiRncmlkLWd1dHRlci13aWR0aDogJHNHdXR0ZXIgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFdyYXBwZXIgZm9yIGJyaWNrLXV0aWxzOmFzcGVjdC1yYXRpby1ib3goKVxuICpcbiAqIEdlbmVyYXRlcyBhbiBhc3BlY3QgcmF0aW8gYm94LiBFbGVtZW50cyB3aXRoaW4gdGhlIGFzcGVjdCByYXRpbyBib3ggbmVlZCB0byBiZSBwb3NpdGlvbmVkIGFic29sdXRlIG90aGVyd2lzZVxuICogdGhleSB3aWxsIGV4dGVuZCB0aGUgYm94LlxuICpcbiAqIEBwYXJhbToge3h9IFRoZSB4LWNvb3JkaW5hdGUgZm9yIHRoZSBhc3BlY3QgcmF0aW9cbiAqIEBwYXJhbToge3l9IFRoZSB5LWNvb3JkaW5hdGUgZm9yIHRoZSBhc3BlY3QgcmF0aW9cbiAqIEBwYXJhbToge292ZXJmbG93fSBCeSBkZWZhdWx0IG92ZXJmbG93IGlzIGhpZGRlbiwgdGhpcyBjYW4gYmUgYWRqdXN0ZWQgaWYgbm90IHdhbnRlZFxuICogQGV4YW1wbGU6XG4gKlxuICogQGluY2x1ZGUgYXNwZWN0LXJhdGlvLWJveCg0LCAzKSB7XG4gKiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gKiB9XG4gKi9cbkBtaXhpbiBjbTIwMjAtYXNwZWN0LXJhdGlvLWJveCgkeCwgJHksICRvdmVyZmxvdzogaGlkZGVuLCAkcG9zaXRpb246IHJlbGF0aXZlKSB7XG5cblx0QGlmIG1peGluLWV4aXN0cyggYXNwZWN0LXJhdGlvLWJveCApIHtcblx0XHRAaW5jbHVkZSBhc3BlY3QtcmF0aW8tYm94KCAkeCwgJHksICRvdmVyZmxvdzogaGlkZGVuLCAkcG9zaXRpb246IHJlbGF0aXZlICk7XG5cdH1cblx0QGVsc2Uge1xuXHRcdHBvc2l0aW9uOiAkcG9zaXRpb247XG5cdFx0b3ZlcmZsb3c6ICRvdmVyZmxvdztcblxuXHRcdCRwZXJjZW50YWdlOiBwZXJjZW50YWdlKCAkeSAvICR4ICk7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwYWRkaW5nLXRvcDogY2FsYyggI3skcGVyY2VudGFnZX0gKTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdH1cblx0fVxufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogV3JhcHBlciBmb3IgYnJpY2stdXRpbHM6c3RyZXRjaC1hYnNvbHV0ZSgpXG4gKlxuICogQXBwbGllcyBzdHlsZXMgdG8gc3RyZXRjaCB0byBwYXJlbnQgY29udGFpbmVyIHVzaW5nIHBvc2l0aW9uIGFic29sdXRlLlxuICpcbiAqIEBwYXJhbToge2Jvb2xlYW59IHZlcnRpY2FsbHkgc3RyZXRjaGVkPyBkZWZhdWx0OiB0cnVlXG4gKiBAcGFyYW06IHtib29sZWFufSBob3Jpem9udGFsbHkgc3RyZXRjaGVkPyBkZWZhdWx0OiB0cnVlXG4gKlxuICogQGV4YW1wbGU6XG4gKiBpbWcge1xuICogICBAaW5jbHVkZSBzdHJldGNoLWFic29sdXRlKCk7XG4gKiB9XG4gKlxuICovXG5AbWl4aW4gY20yMDIwLXN0cmV0Y2gtYWJzb2x1dGUoJHZlcnRpY2FsOiB0cnVlLCAkaG9yaXpvbnRhbDogdHJ1ZSkge1xuXHRAaWYgbWl4aW4tZXhpc3RzKCBzdHJldGNoLWFic29sdXRlICkge1xuXHRcdEBpbmNsdWRlIHN0cmV0Y2gtYWJzb2x1dGUoICR2ZXJ0aWNhbCwgJGhvcml6b250YWwgKTtcblx0fVxuXHRAZWxzZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdEBpZiAkdmVydGljYWwge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0XHRAaWYgJGhvcml6b250YWwge1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG5cbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBNaXhpbnMgZsO8ciB0ZXh0IHN0eWxpbmdzXG4gKi9cblxuLy8gSGVhZGxpbmVzXG5AbWl4aW4gZm9udC1oZWFkbGluZS1iaWdnZXN0KCAkdmlld3BvcnQ6IGRlc2t0b3AgKSB7XG5cdEBpZiAkdmlld3BvcnQgPT0gbW9iaWxlIHtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDIzcHg7XG5cdH1cblx0QGVsc2UgaWYgJHZpZXdwb3J0ID09IHRhYmxldCB7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyM3B4O1xuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSBkZXNrdG9wIHtcblx0XHRmb250LXNpemU6IDQwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDQ2cHg7IC8vIDEuMTVcblx0fVxufVxuXG5AbWl4aW4gZm9udC1oZWFkbGluZS1iaWdnZXN0LWFsbCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtYmlnZ2VzdCggbW9iaWxlICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0KCB0YWJsZXQgKTtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0KCBkZXNrdG9wICk7XG5cdH1cbn1cblxuQG1peGluIGZvbnQtaGVhZGxpbmUtYmlnZ2VzdC1hbGwtbGlnaHQtd2VpZ2h0IHtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QoIG1vYmlsZSApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtYmlnZ2VzdCggdGFibGV0ICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtYmlnZ2VzdCggZGVza3RvcCApO1xuXHR9XG59XG5cbkBtaXhpbiBmb250LWhlYWRsaW5lLWRlZmF1bHQoICR2aWV3cG9ydDogZGVza3RvcCApIHtcblx0QGlmICR2aWV3cG9ydCA9PSBtb2JpbGUge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRsaW5lLWhlaWdodDogMThweDtcblx0fVxuXHRAZWxzZSBpZiAkdmlld3BvcnQgPT0gdGFibGV0IHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE4cHg7XG5cdH1cblx0QGVsc2UgaWYgJHZpZXdwb3J0ID09IGRlc2t0b3Age1xuXHRcdGZvbnQtc2l6ZTogMjZweDtcblx0XHRsaW5lLWhlaWdodDogMzJweDtcblx0fVxufVxuQG1peGluIGZvbnQtaGVhZGxpbmUtZGVmYXVsdC1hbGwge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWRlZmF1bHQoIG1vYmlsZSApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdCggdGFibGV0ICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdCggZGVza3RvcCApO1xuXHR9XG59XG5cbkBtaXhpbiBmb250LWhlYWRsaW5lLXNtYWxsKCAkdmlld3BvcnQ6IGRlc2t0b3AgKSB7XG5cdEBpZiAkdmlld3BvcnQgPT0gbW9iaWxlIHtcblxuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSB0YWJsZXQge1xuXG5cdH1cblx0QGVsc2UgaWYgJHZpZXdwb3J0ID09IGRlc2t0b3Age1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRsaW5lLWhlaWdodDogMjZweDtcblx0fVxufVxuXG5cblxuLy8gQ29weVxuQG1peGluIGZvbnQtY29weS1iaWdnZXN0KCAkdmlld3BvcnQ6IGRlc2t0b3AgKSB7XG5cdEBpZiAkdmlld3BvcnQgPT0gbW9iaWxlIHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDIwcHg7IC8vIDEuNFxuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSB0YWJsZXQge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjBweDsgLy8gMS40XG5cdH1cblx0QGVsc2UgaWYgJHZpZXdwb3J0ID09IGRlc2t0b3Age1xuXHRcdGZvbnQtc2l6ZTogMjNweDtcblx0XHRsaW5lLWhlaWdodDogMzJweDsgLy8gMS40XG5cdH1cbn1cbkBtaXhpbiBmb250LWNvcHktYmlnZ2VzdC1hbGwge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktYmlnZ2VzdCggbW9iaWxlICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LWJpZ2dlc3QoIHRhYmxldCApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktYmlnZ2VzdCggZGVza3RvcCApO1xuXHR9XG59XG5cbkBtaXhpbiBmb250LWNvcHktcGFnZWludHJvKCAkdmlld3BvcnQ6IGRlc2t0b3AgKSB7XG5cdEBpZiAkdmlld3BvcnQgPT0gbW9iaWxlIHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7IC8vIDEuNzFcblx0fVxuXHRAZWxzZSBpZiAkdmlld3BvcnQgPT0gdGFibGV0IHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7IC8vIDEuNzFcblx0fVxuXHRAZWxzZSBpZiAkdmlld3BvcnQgPT0gZGVza3RvcCB7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAzNnB4OyAvLyAxLjhcblx0fVxufVxuXG5AbWl4aW4gZm9udC1jb3B5LWRlZmF1bHQoICR2aWV3cG9ydDogZGVza3RvcCApIHtcblx0QGlmICR2aWV3cG9ydCA9PSBtb2JpbGUge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjRweDsgLy8gMS43MVxuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSB0YWJsZXQge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjRweDsgLy8gMS43MVxuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSBkZXNrdG9wIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI1cHg7IC8vIDEuNTZcblx0fVxufVxuQG1peGluIGZvbnQtY29weS1kZWZhdWx0LWFsbCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCBtb2JpbGUgKTtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggdGFibGV0ICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCBkZXNrdG9wICk7XG5cdH1cbn1cblxuXG5AbWl4aW4gZm9udC1jb3B5LXNtYWxsZXIoICR2aWV3cG9ydDogZGVza3RvcCApIHtcblx0QGlmICR2aWV3cG9ydCA9PSBtb2JpbGUge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMTlweDtcblx0fVxuXHRAZWxzZSBpZiAkdmlld3BvcnQgPT0gdGFibGV0IHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE5cHg7XG5cdH1cblx0QGVsc2UgaWYgJHZpZXdwb3J0ID09IGRlc2t0b3Age1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMTlweDtcblx0fVxufVxuXG5AbWl4aW4gZm9udC1jb3B5LXNtYWxsZXItYWxsIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXIoIG1vYmlsZSApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdEBpbmNsdWRlIGZvbnQtY29weS1zbWFsbGVyKCB0YWJsZXQgKTtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXIoIGRlc2t0b3AgKTtcblx0fX1cblxuQG1peGluIGZvbnQtY29weS1zbWFsbGVzdCggJHZpZXdwb3J0OiBkZXNrdG9wICkge1xuXHRAaWYgJHZpZXdwb3J0ID09IG1vYmlsZSB7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXHR9XG5cdEBlbHNlIGlmICR2aWV3cG9ydCA9PSB0YWJsZXQge1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRsaW5lLWhlaWdodDogMThweDtcblx0fVxuXHRAZWxzZSBpZiAkdmlld3BvcnQgPT0gZGVza3RvcCB7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXHR9XG59XG5cbkBtaXhpbiBmb250LWNvcHktc21hbGxlc3QtYWxsIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXN0KCBtb2JpbGUgKTtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktc21hbGxlc3QoIHRhYmxldCApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktc21hbGxlc3QoIGRlc2t0b3AgKTtcblx0fVxufVxuXG5cblxuXG5AbWl4aW4gcmljaHRleHQoKSB7XG5cdGE6bGluayxcblx0YTp2aXNpdGVkLFxuXHRhOmhvdmVyLFxuXHRhOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0cDpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXG5cdHA6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdHVsLFxuXHRvbCxcblx0LnJ0ZS0tbGlzdCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG5cdH1cbn1cblxuJXJpY2h0ZXh0LXdyYXBwZXIsXG4ucmljaHRleHQtd3JhcHBlciB7XG5cdEBpbmNsdWRlIHJpY2h0ZXh0O1xufVxuIiwiLyoqXG4qIENPTE9VUiBTQ0hFTUVcbiogU2V0dGluZyBhIGJvZHktY2xhc3MgZGlmZmVyZW50IGNvbG91ci1zY2hlbWVzIGNhbiBiZSB1c2VkLlxuKiBUaGUgZGVmYXVsdCBzY2hlbWUgaXMgUGFyYW5vaWRQdXJsZSB3aXRoIFRhbmd5VHVycW9pc2UuXG4qIFNlY29uZDogcmVkLXB1cnBsZVxuKiBUaGlyZDogZ3JlZW4tcHVycGxlXG4qL1xuXG46cm9vdCB7XG5cdC0tcHJpbWFyeUNvbG91cjogI3skY1BhcmFub2lkUHVycGxlfTtcblx0LS1zZWNvbmRhcnlDb2xvdXI6ICN7JGNUYW5neVR1cnF1b2lzZX07XG59XG5cbmJvZHkge1xuXHRmb250LWZhbWlseTogJGZOb3JtYWw7XG5cdGNvbG9yOiAkY1RleHQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdH1cblxuXHQmLnJlZC1wdXJwbGUge1xuXHRcdC0tcHJpbWFyeUNvbG91cjogI3sgJGNSYWRpY2FsUmVkIH07XG5cdFx0LS1zZWNvbmRhcnlDb2xvdXI6ICN7ICRjUGFyYW5vaWRQdXJwbGUgfTtcblx0fVxuXG5cdCYuZ3JlZW4tcHVycGxlIHtcblx0XHQtLXByaW1hcnlDb2xvdXI6ICN7ICRjR2FiYnlHcmVlbiB9O1xuXHRcdC0tc2Vjb25kYXJ5Q29sb3VyOiAjeyRjUGFyYW5vaWRQdXJwbGV9O1xuXHR9XG5cblx0Ly8gQmluZGluZyBvZiB2aWV3cG9ydCBpbmZvcm1hdGlvbiBDU1MgLS0+IEpTXG5cdCY6OmJlZm9yZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludChtb2JpbGVPbmx5KSB7XG5cdFx0XHRjb250ZW50OiAnbW9iaWxlJztcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQodGFibGV0T25seSkge1xuXHRcdFx0Y29udGVudDogJ3RhYmxldCc7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KGRlc2t0b3BPbmx5KSB7XG5cdFx0XHRjb250ZW50OiAnZGVza3RvcCc7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0Ji5oYXMtbWVnYW1lbnUtb3ZlcmxheS12aXNpYmxlIHtcblx0XHRcdG92ZXJmbG93LXk6IGhpZGRlbjtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHQmLmhhcy1tZWdhbWVudS1vdmVybGF5LXZpc2libGUge1xuXHRcdFx0b3ZlcmZsb3cteTogaGlkZGVuO1xuXHRcdH1cblx0fVxufVxuXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG5cdG1hcmdpbjogMDtcbn1cblxudWwsXG5vbCxcbmRsIHtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZGQge1xuXHRtYXJnaW4tbGVmdDogMDtcbn1cblxuYnV0dG9uIHtcblx0QGluY2x1ZGUgcmVzZXQtYnV0dG9uO1xuXHRjb2xvcjogaW5oZXJpdDtcbn1cblxuXG5zdHJvbmcsXG5iIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cbiIsIi8vIEBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcblxuLiN7JGdsaWRlLWNsYXNzfSB7XG4gICR0aGlzOiAmO1xuXG4gICRzZTogJGdsaWRlLWVsZW1lbnQtc2VwYXJhdG9yO1xuICAkc206ICRnbGlkZS1tb2RpZmllci1zZXBhcmF0b3I7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAqIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgJiN7JHNlfXRyYWNrIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgJiN7JHNlfXNsaWRlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4tWTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG5cbiAgICAmI3skZ2xpZGUtbW9kaWZpZXItc2VwYXJhdG9yfWRyYWdnaW5nIHtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYjeyRzZX1zbGlkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBhIHtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLXdlYmtpdC11c2VyLWRyYWc6IG5vbmU7XG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYjeyRzZX1hcnJvd3Mge1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gICYjeyRzZX1idWxsZXRzIHtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAmI3skc219cnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxufVxuIiwiLyoqXG4gKiBAZGVzY3JpcHRpb246IFNDU1MgVGhlbWUgZm9yIHRoZSBHbGlkZUpTIHNsaWRlclxuICpcbiAqIEJhc2ljIHN0eWxpbmcgdG8gYmUgZm91bmQgaW4gX3ZlbmRvci5nbGlkZS5jb3JlLnNjc3NcbiAqXG4gKiBfdmVuZG9yLmdsaWRlLnZhcmlhYmxlcy5zY3NzIGFuZCBfdmVuZG9yLmdsaWRlLmNvcmUuc2NzcyBhcmUgY29waWVkIGZyb20gdGhlXG4gKiBvcmlnaW5hbCBwYWNrYWdlLiBPbmx5IGZpbGUgbmFtZSB3YXMgY2hhbmdlZCBhbmQgdGhlIEBpbXBvcnQgb2YgdmFyaWFibGVzIGluXG4gKiB0aGUgY29yZSBTQ1NTIGZpbGUgd2FzIGNvbW1lbnRlZCBvdXQuXG4gKi9cblxuLyoqXG4gKiBMb2NhbCB2YXJpYWJsZXMsIG9ubHkgdXNlZCBpbiB0aGlzIGZpbGVcbiAqL1xuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBPdXRlciB3cmFwcGVyIG9mIHRoZSBzbGlkZXJcbiAqL1xuLmdsaWRlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogVmFyaWFudHMgb2YgdGhlIHNsaWRlclxuICovXG4uZ2xpZGUtLXN3aXBlYWJsZSB7XG5cdGN1cnNvcjogZ3JhYjtcbn1cblxuLmdsaWRlLS1kcmFnZ2luZyB7XG5cdGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IExpc3Qgb2Ygc2xpZGVzLCBpbnNpZGUgdGhlIHRyYWNrXG4gKi9cbi5nbGlkZV9fc2xpZGVzIHtcblx0bWFyZ2luOiAwO1xufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IEFycm93cyBsZWZ0L3JpZ2h0XG4gKi9cbi5nbGlkZV9fYXJyb3dzIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogY2FsYyggNTAlIC0gMTdweCApO1xuXHRcdGxlZnQ6ICRzR3V0dGVyRG91YmxlO1xuXHRcdHJpZ2h0OiAkc0d1dHRlckRvdWJsZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgJGRTaG9ydCBlYXNlLWluO1xuXHR9XG59XG5cbi5nbGlkZV9fYXJyb3cge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRoZWlnaHQ6IDM1cHg7XG5cdFx0d2lkdGg6IDM1cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGNXaGl0ZSwgMC4xICk7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGRTaG9ydCBlYXNlLWluO1xuXG5cdFx0c3ZnIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRmaWxsOiByZ2JhKCAkY1doaXRlLCAwLjUgKTtcblx0XHRcdHRyYW5zaXRpb246IGZpbGwgJGRTaG9ydCBlYXNlLWluO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGNXaGl0ZSwgMC41ICk7XG5cblx0XHRcdHN2ZyB7XG5cdFx0XHRcdGZpbGw6ICRjV2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFdyYXBwZXIgZm9yIEJ1bGxldCBwb2ludHMuXG4gKiBCdWxsZXQgcG9pbnRzIGFyZSBjbGlja2FibGUgdG8ganVtcCB0byBhIHNwZWNpZmljIHNsaWRlXG4gKi9cbi5nbGlkZV9fYnVsbGV0cyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdGJvdHRvbTogMTZweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdGJvdHRvbTogOHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGJvdHRvbTogNDBweDtcblx0fVxufVxuXG4uZ2xpZGVfX2J1bGxldCB7XG5cdEBpbmNsdWRlIHJlc2V0LWJ1dHRvbjtcblx0aGVpZ2h0OiAxMnB4O1xuXHR3aWR0aDogMTJweDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAycHggc29saWQgJGNXaGl0ZTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHR0cmFuc2l0aW9uOiBhbGwgJGRTaG9ydCBlYXNlLWluLW91dDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cblxuXHQmICsgLmdsaWRlX19idWxsZXQge1xuXHRcdG1hcmdpbi1sZWZ0OiA4cHg7XG5cdH1cbn1cblxuLmdsaWRlX19idWxsZXQtLWFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG59XG4iLCIvKipcbiAqIEBkZXNjcmlwdGlvbjogR2VuZXJpYyByaWNoIHRleHQgc3R5bGluZ1xuICovXG4uYS1yaWNodGV4dCB7XG5cdEBpbmNsdWRlIHJpY2h0ZXh0O1xuXG5cdC5vLXZpZGVvIHtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0JiArIHAge1xuXHRcdFx0bWFyZ2luLXRvcDogMmVtO1xuXHRcdH1cblx0fVxuXG5cdC52aWRlb19fdGV4dCxcblx0ZmlnY2FwdGlvbi5kZXRhaWxfX3RleHQge1xuXHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXItYWxsO1xuXHR9XG5cblx0Lm8taW1hZ2UtZGV0YWlsIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0JiArIHAge1xuXHRcdFx0bWFyZ2luLXRvcDogMmVtO1xuXHRcdH1cblxuXHRcdGZpZ2NhcHRpb24uZGV0YWlsX190ZXh0IHtcblx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0fVxuXHR9XG59XG5cbi5yaWNodGV4dF9faW1hZ2Uge1xuXHRAaW5jbHVkZSBjbTIwMjAtYXNwZWN0LXJhdGlvLWJveCggMTYsIDkgKTtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4iLCIvL1xuLy8gR2VuZXJhdGVzIGFuIGFzcGVjdCByYXRpbyBib3guIEVsZW1lbnRzIHdpdGhpbiB0aGUgYXNwZWN0IHJhdGlvIGJveCBuZWVkIHRvIGJlIHBvc2l0aW9uZWQgYWJzb2x1dGUgb3RoZXJ3aXNlXG4vLyB0aGV5IHdpbGwgZXh0ZW5kIHRoZSBib3guXG4vL1xuLy8gQHBhcmFtOiB7eH0gVGhlIHgtY29vcmRpbmF0ZSBmb3IgdGhlIGFzcGVjdCByYXRpb1xuLy8gQHBhcmFtOiB7eX0gVGhlIHktY29vcmRpbmF0ZSBmb3IgdGhlIGFzcGVjdCByYXRpb1xuLy8gQHBhcmFtOiB7b3ZlcmZsb3d9IEJ5IGRlZmF1bHQgb3ZlcmZsb3cgaXMgaGlkZGVuLCB0aGlzIGNhbiBiZSBhZGp1c3RlZCBpZiBub3Qgd2FudGVkXG4vLyBAcGFyYW06IHtwb3NpdGlvbn0gQnkgZGVmYXVsdCBwb3NpdGlvbiBpcyByZWxhdGl2ZSwgdGhpcyBjYW4gYmUgYWRqdXN0ZWQgaWYgbm90IHdhbnRlZFxuLy8gQGV4YW1wbGU6XG4vL1xuLy8gQGluY2x1ZGUgYXNwZWN0LXJhdGlvLWJveCg0LCAzKSB7XG4vLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4vLyB9XG4vL1xuQG1peGluIGFzcGVjdC1yYXRpby1ib3goJHgsICR5LCAkb3ZlcmZsb3c6IGhpZGRlbiwgJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICBvdmVyZmxvdzogJG92ZXJmbG93O1xuXG4gICRwZXJjZW50YWdlOiBwZXJjZW50YWdlKCR5LyR4KTtcblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoI3skcGVyY2VudGFnZX0pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIiVhLWJ1dHRvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nOiAxM3B4O1xuXHRmb250LXNpemU6IDE4cHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHRjb2xvcjogJGNCdXR0b25UZXh0O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0Ym9yZGVyLXJhZGl1czogOTlweDsgLy8gSGlnaCBudW1iZXIgdG8gYmUgc3VyZSB0aGF0IHJhZGl1cyBjb3ZlcnMgdGhlIHdob2xlIGhlaWdodCBvZiB0aGUgYnV0dG9uXG59XG5cbi5hLWJ1dHRvbiB7XG5cdEBleHRlbmQgJWEtYnV0dG9uO1xufVxuXG4uYnV0dG9uLS1pbnZlcnMge1xuXHRjb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNCdXR0b25CZy0taW52ZXJzO1xuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xufVxuXG4uYnV0dG9uLS1naG9zdCB7XG5cdGNvbG9yOiAkY1doaXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAycHggc29saWQgJGNXaGl0ZTtcbn1cblxuLy9AdG9kbyB3ZXJkZW4gZGllIHdpcmtsaWNoIGJlbsO2dGlndD9cbi5idXR0b24tLWludmVycy1ibHVlIHtcblx0Y29sb3I6ICRjQnV0dG9uVGV4dC0taW52ZXJzLWJsdWU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQnV0dG9uQmctLWludmVycztcblx0Ym9yZGVyOiAycHggc29saWQgJGNCdXR0b25UZXh0LS1pbnZlcnMtYmx1ZTtcbn1cblxuLmJ1dHRvbi0taW52ZXJzLXJlZCB7XG5cdGNvbG9yOiAkY0J1dHRvblRleHQtLWludmVycy1yZWQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQnV0dG9uQmctLWludmVycztcblx0Ym9yZGVyOiAycHggc29saWQgJGNCdXR0b25UZXh0LS1pbnZlcnMtcmVkO1xufVxuXG4uYnV0dG9uLS1zbWFsbCB7XG5cdHBhZGRpbmc6IDNweCAxM3B4IDJweDtcblx0Zm9udC1zaXplOiAkZnNIZWFkZXItZGVza3RvcDsgLy8gPC0tIEBUT0RPIEFtIG5vdCBzdXJlIGlmIHRoZSBmb250LXNpemVzIHZzIEJFTS1zcGVjaWZpZXJzIHdvbid0IG5lZWQgYSByZWZhY3RvcmluZ1xuXHRsaW5lLWhlaWdodDogMTdweDtcbn1cblxuLmJ1dHRvbi0tbWVkaXVtIHtcblx0cGFkZGluZzogOHB4IDEzcHggN3B4O1xuXHRmb250LXNpemU6IDE1cHg7IC8vIDwtLSBAVE9ETyBBbSBub3Qgc3VyZSBpZiB0aGUgZm9udC1zaXplcyB2cyBCRU0tc3BlY2lmaWVycyB3b24ndCBuZWVkIGEgcmVmYWN0b3Jpbmdcblx0bGluZS1oZWlnaHQ6IDIwcHg7XG59XG5cbi5idXR0b24tLWZpeGVkIHtcblx0bWluLXdpZHRoOiAyNTVweDtcbn1cblxuLmJ1dHRvbi0tcHJpbWFyeSxcbi5idXR0b24tLXNlY29uZGFyeSxcbi5idXR0b24tLXRlcnRpYXJ5IHtcblx0cGFkZGluZzogNXB4IDEwcHggNXB4IDMwcHg7XG5cblx0Ji5idXR0b24tLWFycm93LXJpZ2h0IHtcblx0XHRwYWRkaW5nOiAxMHB4IDMwcHg7XG5cdH1cblxuXHQmLmJ1dHRvbi0tZml4ZWQge1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxuXG5cdCNpY29uLWFycm93LXJpZ2h0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdH1cblxuXHQjaWNvbi1hcnJvdy1yaWdodC1jaXJjbGUge1xuXHRcdHBhZGRpbmctbGVmdDogMzBweDtcblx0XHRmaWxsOiAkY1doaXRlO1xuXHRcdGhlaWdodDogNDBweDtcblx0XHR3aWR0aDogNDBweDtcblx0fVxufVxuXG4uYnV0dG9uLS1zZWNvbmRhcnksXG4uYnRuLS1zZWNvbmRhcnkge1xuXHRAZXh0ZW5kIC5idXR0b24tLWludmVycztcblxuXHQjaWNvbi1hcnJvdy1yaWdodCB7XG5cdFx0ZmlsbDogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0fVxuXG5cdCNpY29uLWJ1dHRvbi1hcnJvdy1yaWdodCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAzMHB4O1xuXHRcdGZpbGw6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG5cdFx0d2lkdGg6IDM2cHg7XG5cdFx0aGVpZ2h0OiAzNnB4O1xuXHR9XG59XG5cbi5idXR0b24tLXRlcnRpYXJ5IHtcblx0Y29sb3I6ICRjQnV0dG9uVGV4dC0tdGVydGlhcnk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQnV0dG9uQmctLXRlcnRpYXJ5O1xuXHRib3JkZXI6IDJweCBzb2xpZCAkY0J1dHRvblRleHQtLXRlcnRpYXJ5O1xuXG5cdCNpY29uLWFycm93LXJpZ2h0IHtcblx0XHRmaWxsOiAkY0J1dHRvblRleHQtLXRlcnRpYXJ5O1xuXHR9XG5cblx0I2ljb24tYnV0dG9uLWFycm93LXJpZ2h0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cdFx0ZmlsbDogJGNCdXR0b25UZXh0LS10ZXJ0aWFyeTtcblx0XHRoZWlnaHQ6IDM2cHg7XG5cdFx0d2lkdGg6IDM2cHg7XG5cdH1cbn1cbiIsIi5hLWljb24tYnV0dG9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHRzdmcge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG4iLCIjaWNvbi1yaWJib24ge1xuXHQuaXMtcGxhdGludW0gJiB7XG5cdFx0ZmlsbDogJGNQbGF0aW51bTtcblx0fVxuXG5cdC5pcy1nb2xkICYge1xuXHRcdGZpbGw6ICRjR29sZDtcblx0fVxuXG5cdC5pcy1zaWx2ZXIgJiB7XG5cdFx0ZmlsbDogJGNTaWx2ZXI7XG5cdH1cblxuXHQuaXMtcmVnaXN0ZXJlZCAmIHtcblx0XHRmaWxsOiAkY1JlZ2lzdGVyZWQ7XG5cdH1cblxuXHQuaXMtY2VydGlmaWVkICYge1xuXHRcdGZpbGw6ICRjQ2VydGlmaWVkO1xuXHR9XG59XG4iLCIuYS1pbWFnZSB7XG5cdCYuY20tbWVkaWEtLWxvYWRpbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmMWYyZjQ7XG5cdH1cbn1cbiIsIi5hLWxpc3Qge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCAje3B4VG9SZW0oMzJweCl9KTtcblx0Z2FwOiBweFRvUmVtKDE0cHgpO1xufVxuXG4ubGlzdC0tc29jaWFsLWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuXHQubGlzdF9faXRlbSB7XG5cdFx0Jjpub3QoIDpsYXN0LWNoaWxkICkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHRmaWxsOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0fVxuXHR9XG59XG4iLCIuYS1sb2dvLWNvcmVtZWRpYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiAxMDAlO1xuXHRmaWxsOiAkY1RleHQtLWludmVycztcblxufVxuXG4uYS1sb2dvLWNvcmVtZWRpYS0tc3F1YXJlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBtZW51IGl0ZW0gbGV2ZWwgMFxuICogQHN0YXRlczogLmlzLWFjdGl2ZSBhbmQgOmhvdmVyXG4gKi9cbi5hLW1lZ2FtZW51X19pdGVtIHtcblx0Y29sb3I6ICRjV2hpdGU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQmdIZWFkZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0cGFkZGluZy10b3A6IDEzcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDEzcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRwYWRkaW5nLXRvcDogOHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiA4cHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdG1hcmdpbjogMTBweCAwO1xuXHRcdHBhZGRpbmc6IDhweCAwIDA7XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAn4oyEJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi10b3A6IDJweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiA5cHg7XG5cdFx0XHRmb250LWZhbWlseTogJ0RNIFNhbnMnLCBzYW5zLXNlcmlmO1xuXHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogTGFiZWwvSGVhZGxpbmUgb2YgbWVudSBpdGVtIGluIGxldmVsIDBcbiAqIEBzdGF0ZXM6IHBhcmVudC5hY3RpdmUgYW5kIHBhcmVudDpob3ZlclxuICovXG4uYS1tZWdhbWVudV9faXRlbV9faGVhZGxpbmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bGluZS1oZWlnaHQ6IDE7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAkZnNIZWFkZXItbW9iaWxlO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAkZnNIZWFkZXItdGFibGV0O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGZvbnQtc2l6ZTogJGZzSGVhZGVyLWRlc2t0b3A7XG5cdFx0Zm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG5cdFx0cGFkZGluZzogNHB4IDAgN3B4O1xuXHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHR0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tLWNvbG9yICRkRGVmYXVsdCBlYXNlLW91dDtcblx0fVxuXG5cdC5hLW1lZ2FtZW51X19pdGVtOmhvdmVyICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY1doaXRlO1xuXHRcdH1cblx0fVxuXG5cdC5hLW1lZ2FtZW51X19pdGVtLmlzLWFjdGl2ZSAmIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRjV2hpdGU7XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IENhcmV0IGljb24gaW4gbWVnYW1lbnUgaW4gbGV2ZWwgMFxuICogQHN0YXRlczogcGFyZW50LmFjdGl2ZVxuICovXG4uYS1tZWdhbWVudV9faXRlbV9fYWZ0ZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRmaWxsOiAkY1RleHQtLWludmVycztcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSggOTBkZWcgKTtcblx0XHRmaWxsOiAkY1RleHQtLWludmVycztcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5pcy1hY3RpdmUgJiB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSggLTkwZGVnICkgdHJhbnNsYXRlWSggM3B4ICk7XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IE92ZXJsYXkgYXBwZWFyaW5nIHdoZW4gbWVudSBpcyBvcGVuXG4gKiBAc3RhdGVzOiBCT0RZLmhhcy1tZWdhbWVudS1vdmVybGF5LXZpc2libGVcbiAqL1xuLmEtbWVnYW1lbnVfX292ZXJsYXkge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdC5oYXMtbWVnYW1lbnUtb3ZlcmxheS12aXNpYmxlICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHotaW5kZXg6ICR6TmF2aWdhdGlvbk92ZXJsYXk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0JnSGVhZGVyO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGNCZ0hlYWRlciwgMC41ICk7XG5cdFx0fVxuXHR9XG59XG4iLCIuYS12aWRlbyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbi5hLXZpZGVvX193cmFwcGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IDA7XG5cdHBhZGRpbmctYm90dG9tOiBjYWxjKCB2YXIoIC0tYXNwZWN0LXJhdGlvLCAwLjU2MjUgKSAqIDEwMCUgKTtcblxuXHQuYS12aWRlbyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxufVxuIiwiLyoqXG4gKiBAZGVzY3JpcHRpb246IFdyYXBwZXIgZm9yIGEgbGlzdCBvZiBmaWx0ZXJzL3RhZ3NcbiAqL1xuLm0tZmlsdGVyLWJveCB7XG5cdCsgLm0tZmlsdGVyLWJveCB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0NXB4O1xuXHRcdH1cblx0fVxufVxuXG4uZmlsdGVyLWJveF9fbGFiZWwge1xuXHRmb250LXNpemU6IDEzcHg7XG5cdGxpbmUtaGVpZ2h0OiAxN3B4O1xuXHRjb2xvcjogJGNUZXh0O1xufVxuXG4uZmlsdGVyLWJveF9fZmlsdGVybGlzdCB7XG5cdEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uZmlsdGVyLWJveF9fZmlsdGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiBub3dyYXA7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLXRvcDogOHB4O1xuXHRtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cblx0c3ZnIHtcblx0XHR3aWR0aDogMTdweDtcblx0XHRoZWlnaHQ6IDI0cHg7XG5cdH1cblxuXHRzdmcgKyAubS10YWctYnV0dG9uIHtcblx0XHRtYXJnaW4tbGVmdDogN3B4O1xuXHR9XG59XG4iLCIvKipcbiAqIEBkZXNjcmlwdGlvbjogU2VhcmNoIGNvbXBvbmVudCBpbiB0aGUgaGVhZGVyXG4gKi9cbi5tLWhlYWRlcl9fc2VhcmNoIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdC8vIFNlYXJjaCBpY29uIGluIElOUFVUICYgc2VhcmNoIGljb24gYXMgYnV0dG9uXG5cdHN2ZyB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdGZpbGw6ICRjVGV4dDtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogRk9STSBlbGVtZW50IHdpdGggaW5wdXQgZmllbGQgb2Ygc2VhcmNoIGluIHRoZSBoZWFkZXJcbiAqL1xuLmhlYWRlcl9fc2VhcmNoX19mb3JtIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiBub3dyYXA7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDEwMCU7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRwYWRkaW5nOiA3cHggMTJweCA3cHggMTVweDtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cGFkZGluZy1sZWZ0OiAxM3B4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDEzcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogOTlweDsgLy8gSGlnaCBudW1iZXIgdG8gYmUgc3VyZSB0aGF0IHJhZGl1cyBjb3ZlcnMgdGhlIHdob2xlIGhlaWdodCBvZiB0aGUgYnV0dG9uXG5cdFx0Ym9yZGVyOiAycHggc29saWQgdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0fVxuXG5cdC5pY29uLWJ1dHRvbi0tc2VhcmNoIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0c3ZnIHtcblx0XHRcdFx0ZmlsbDogJGNUZXh0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5pY29uLS1jbG9zZSB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogSU5QVVQgZmllbGQgd2l0aCBzZWFyY2ggdGVybVxuICovXG4uaGVhZGVyX19zZWFyY2hfX2ZpZWxkIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Ym9yZGVyOiAwO1xuXG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE3cHg7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAkZnNIZWFkZXItbW9iaWxlO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAkZnNIZWFkZXItdGFibGV0O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdHBhZGRpbmctdG9wOiAycHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDJweDtcblx0XHRmb250LXNpemU6ICRmc0hlYWRlci1kZXNrdG9wO1xuXHR9XG59XG5cblxuLmhlYWRlcl9fc2VhcmNoX19hY3Rpb24tLXNlYXJjaCB7XG5cdG1hcmdpbi10b3A6IDNweDsgLy8gQFRPRE86IHdpbGwgY2hhbmdlIGFmdGVyIHJlZmFjdG9yaW5nIFNWRyBpY29uc1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQuaXMtYWN0aXZlICYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLmhlYWRlcl9fc2VhcmNoX19hY3Rpb24tLWNsb3NlIHtcblx0ZGlzcGxheTogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdC5pcy1hY3RpdmUgJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLmhlYWRlcl9fc2VhcmNoX19hdXRvc3VnZ2VzdGlvbnMge1xuXHR6LWluZGV4OiAxMDAwO1xuXHRtYXJnaW4tdG9wOiA2cHg7XG5cdG1hcmdpbi1sZWZ0OiAtMTVweDtcblx0cGFkZGluZy1sZWZ0OiAxNXB4O1xuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1doaXRlO1xuXHRib3JkZXItcmFkaXVzOiAxOXB4O1xuXG5cdC5zZWxlY3RlZCB7XG5cdFx0LmxhYmVsIHtcblx0XHRcdGNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmd0JvbGQ7XG5cdFx0fVxuXG5cdFx0LmNvdW50IHtcblx0XHRcdGNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRcdH1cblx0fVxuXG5cdD4gZGl2IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBUZWFzZXIgdGhhdCBjYW4gYmUgcGxhY2VkIGluc2lkZSB0aGUgbWV0YSBoZWFkZXIsIHZpc2libGVcbiAqIGluIGFsbCB2aWV3cG9ydHNcbiAqL1xuLm0taGVhZGVyX19tZXRhX190ZWFzZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdC50ZWFzZXJfX2hlYWRsaW5lIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmd01lZGl1bTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0XHRvcmRlcjogMjtcblx0XHRcdG1hcmdpbi1yaWdodDogJHNHdXR0ZXJEb3VibGU7XG5cdFx0XHRtYXJnaW4tbGVmdDogJHNHdXR0ZXJEb3VibGU7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlcl9fYWN0aW9ucyB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0b3JkZXI6IDE7XG5cdFx0fVxuXHR9XG5cbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBNZWdhbWVudSBoZWFkZXIuIENvbnRhaW5zIGxvZ28gYW5kIGFjdGlvbnMgYnV0dG9ucyBsaWtlIE1lbnUsIEV4aXQgYW5kIEJhY2suXG4gKi9cbi5tLW1lZ2FtZW51X19oZWFkZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGhlaWdodDogJHNIZWlnaHRIZWFkZXJGbHlvdXRJbml0aWFsTW9iaWxlVGFibGV0O1xuXHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQmdIZWFkZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBJY29ucywgaW5pdGlhbFxuXHQgKi9cblx0c3ZnIHtcblx0XHRmaWxsOiAkY1RleHQtLWludmVycztcblx0fVxuXG5cdC5hLWljb24tYnV0dG9uIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cblxuXHQuaWNvbi1idXR0b25fX2xhYmVsIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHR9XG5cblx0Ly8gTWVudVxuXHQuaWNvbi1idXR0b24tLW1lbnUge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC8vIEV4aXRcblx0Lmljb24tYnV0dG9uLS1jbG9zZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQmFja1xuXHQuaWNvbi1idXR0b24tLWFycm93LWxlZnQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogd3JhcHBlciBmb3IgYWxsIG1lbnVpdGVtcyAobGV2ZWwtMCkgYW5kIHNlYXJjaC9sYW5ndWFnZSBjaG9vc2VyXG4gKi9cbi5tLW1lZ2FtZW51X19jb250ZW50IHtcblx0QGluY2x1ZGUgcmVzZXQtbGlzdDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdG1hcmdpbi1sZWZ0OiAkc0d1dHRlckRvdWJsZTtcblxuXHRcdC5tLWhlYWRlcl9fc2VhcmNoLFxuXHRcdC5tLWxhbmd1YWdlLWNob29zZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogY29udGVudCBoZWFkZXIgYW5kIGNvbnRlbnQgZm9vdGVyIGFyZSBib3RoIGluaXRpYWxseSBlbXB0eVxuICogYW5kIGFyZSBmaWxsZWQgd2l0aCBzZWFyY2ggJiBsYW5ndWFnZSBjaG9vc2VyIGlmIHVzaW5nIG1vYmlsZSAmIHRhYmxldFxuICogdmlld3BvcnQuIEpTIGlzIHVzZWQgdG8gbW92ZSB0aGUgRE9NIGNvbXBvbmVudHMgZnJvbSB0aGUgbWV0YSBoZWFkZXIgaW50b1xuICogdGhlc2UgdHdvIHNsb3RzLlxuICovXG4ubWVnYW1lbnVfX2NvbnRlbnRfX2hlYWRlciB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogOHB4OyAvLyBOZWVkIG1hcmdpbi1ib3R0b20gZm9yIHZlcnRpY2FsIHNwYWNpbmcgYXMgdGhlcmUgaXMgbm8gZ29vZCBzZWxlY3RvciBmb3IgdGhlIGZvbGxvd2luZyBlbGVtZW50XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogOHB4OyAvLyBOZWVkIG1hcmdpbi1ib3R0b20gZm9yIHZlcnRpY2FsIHNwYWNpbmcgYXMgdGhlcmUgaXMgbm8gZ29vZCBzZWxlY3RvciBmb3IgdGhlIGZvbGxvd2luZyBlbGVtZW50XG5cdH1cbn1cblxuLm1lZ2FtZW51X19jb250ZW50X19mb290ZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7IC8vIE5lZWQgbWFyZ2luLWJvdHRvbSBmb3IgdmVydGljYWwgc3BhY2luZyBvZiB3cmFwcGVyIOKAkyBubyBmb2xsb3dpbmcgZWxlbWVudCBhdmFpbGFibGVcblx0fVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IENvbGxlY3Rpb24gb2YgbWVnYW1lbnUgdGVhc2VycyA9IGFsbCBsZXZlbC0xIGl0ZW1zXG4gKi9cbi5tZWdhbWVudV9fdGVhc2VyX19jb2xsZWN0aW9uIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBncmlkKCA4LCAxMiwgZmFsc2UgKTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG59XG5cblxuJGxvY2FsLW1lZ2FtZW51VGVhc2VyQmFzZUhlaWdodDogMTUwcHg7XG4kbG9jYWwtbWVnYW1lbnVUZWFzZXJQYWRkaW5nSGVpZ2h0OiAzNXB4O1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogVGVhc2VyIGNvbXBvbmVudCBpbiBNZWdhbWVudSA9IGFsbCBsZXZlbC0xIGl0ZW1zXG4gKiBAdmFyaWFudHM6IC0tcXVpY2tsaW5rcywgY29udGFpbnMgbGlua2xpc3RcbiAqL1xuLm0tbWVnYW1lbnVfX3RlYXNlciB7XG5cdGNvbG9yOiAkY1RleHQtLWludmVycztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBncmlkKCA0LCA4ICk7XG5cdFx0cGFkZGluZzogJGxvY2FsLW1lZ2FtZW51VGVhc2VyUGFkZGluZ0hlaWdodCAyMnB4O1xuXHRcdGhlaWdodDogJGxvY2FsLW1lZ2FtZW51VGVhc2VyQmFzZUhlaWdodCArKCAyICogJGxvY2FsLW1lZ2FtZW51VGVhc2VyUGFkZGluZ0hlaWdodCApO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cbn1cblxuXG4ubS1tZWdhbWVudV9fdGVhc2VyLS1xdWlja2xpbmtzIHtcblx0Y29sb3I6ICRjVGV4dC0taW52ZXJzO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0JnSGVhZGVyO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBncmlkKCA0ICk7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cblx0Lm1lZ2FtZW51X19ub2RlIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRjb2xvcjogJGNXaGl0ZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogV3JhcHBlciBpbiBtZWdhbWVudS10ZWFzZXIgZm9yIGljb24gYW5kIGhlYWRsaW5lXG4gKi9cbi5tZWdhbWVudV9fdGVhc2VyX19oZWFkZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdH1cblxuXHQvLyBJY29uXG5cdC5hLWltYWdlIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXgtd2lkdGg6IDUwcHg7XG5cdFx0XHRtYXgtaGVpZ2h0OiA1MHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBIZWFkbGluZSBpbiBtZWdhbWVudS10ZWFzZXJcbiAqL1xuLm1lZ2FtZW51X190ZWFzZXJfX2hlYWRsaW5lIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAxM3B4IDA7XG5cdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndNZWRpdW07XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdG1hcmdpbjogMCAwIC02cHggMHB4O1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRsaW5lLWhlaWdodDogMjZweDtcblx0XHRmb250LXdlaWdodDogJGZ3TWVkaXVtO1xuXHR9XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBUZXh0L0NvcHkgaW4gbWVnYW1lbnUtdGVhc2VyXG4gKi9cbi5tZWdhbWVudV9fdGVhc2VyX190ZXh0IHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSByaWNodGV4dDtcblx0XHRtYXJnaW4tdG9wOiA3cHg7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxNnB4O1xuXHR9XG5cblx0dWwge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0fVxuXHR9XG5cblx0bGkge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDEzcHg7XG5cdFx0fVxuXHR9XG5cblx0Lm0tbWVnYW1lbnVfX2NvbnRlbnQgJiB7XG5cdFx0YTpsaW5rLFxuXHRcdGE6dmlzaXRlZCxcblx0XHRhOmhvdmVyLFxuXHRcdGE6YWN0aXZlIHtcblx0XHRcdGNvbG9yOiAkY1doaXRlO1xuXHRcdH1cblx0fVxufVxuXG4iLCIubS1pbWFnZV9fYm94IHtcblx0QGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goIDE2LCA5ICk7XG5cblx0LmltYWdlLS1yZXNwb25zaXZlIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtc3RyZXRjaC1hYnNvbHV0ZSgpO1xuXHR9XG59XG4iLCIvL1xuLy8gQXBwbGllcyBzdHlsZXMgdG8gc3RyZXRjaCB0byBwYXJlbnQgY29udGFpbmVyIHVzaW5nIHBvc2l0aW9uIGFic29sdXRlLlxuLy9cbi8vIEBwYXJhbToge2Jvb2xlYW59IHZlcnRpY2FsbHkgc3RyZXRjaGVkPyBkZWZhdWx0OiB0cnVlXG4vLyBAcGFyYW06IHtib29sZWFufSBob3Jpem9udGFsbHkgc3RyZXRjaGVkPyBkZWZhdWx0OiB0cnVlXG4vL1xuLy8gQGV4YW1wbGU6XG4vLyBpbWcge1xuLy8gICBAaW5jbHVkZSBzdHJldGNoLWFic29sdXRlKCk7XG4vLyB9XG4vL1xuQG1peGluIHN0cmV0Y2gtYWJzb2x1dGUoJHZlcnRpY2FsOiB0cnVlLCAkaG9yaXpvbnRhbDogdHJ1ZSkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBpZiAkdmVydGljYWwge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIEBpZiAkaG9yaXpvbnRhbCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufSIsIi8qKlxuICogY29uZmlndXJhdGlvblxuICovXG4kbG9jYWwtbnVtYmVyT2ZMYW5ndWFnZXM6IDg7XG4kbG9jYWwtbGFuZ3VhZ2VIZWlnaHQ6IDMwcHg7XG4kbG9jYWwtbGFuZ3VhZ2VDaG9vc2VyUGFkZGluZ1ZlcnRpY2FsOiAxMHB4O1xuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBMYW5ndWFnZSBjaG9vc2VyIGNvbXBvbmVudCBpbiB0aGUgaGVhZGVyXG4gKiBAc3RhdGVzOiBpcy1vcGVuXG4gKi9cbi5tLWxhbmd1YWdlLWNob29zZXIge1xuXHRAaW5jbHVkZSByZXNldC1saXN0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdG1pbi1oZWlnaHQ6ICRzSGVpZ2h0SGVhZGVyTWV0YSAtICRsb2NhbC1sYW5ndWFnZUNob29zZXJQYWRkaW5nVmVydGljYWw7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRoZWlnaHQ6ICRzSGVpZ2h0SGVhZGVyTWV0YSAtICRsb2NhbC1sYW5ndWFnZUNob29zZXJQYWRkaW5nVmVydGljYWw7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlck1ldGE7XG5cdH1cblxuXHQmLmlzLW9wZW4ge1xuXHRcdC8vIG51bWJlciBvZiBsYW5ndWFnZXMgLS0+IGhlaWdodFxuXHRcdEBmb3IgJGkgZnJvbSAxIHRvICRsb2NhbC1udW1iZXJPZkxhbmd1YWdlcyB7XG5cdFx0XHQmW2RhdGEtbnVtYmVyLW9mLWxhbmd1YWdlcz0nI3skaX0nXSAubGFuZ3VhZ2UtY2hvb3Nlcl9fbGFuZ3VhZ2VzIHtcblx0XHRcdFx0aGVpZ2h0OiAjeyRpICogJGxvY2FsLWxhbmd1YWdlSGVpZ2h0fTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBJY29uIGZvciBsYW5ndWFnZSBjaG9vc2VyLCB2aXNpYmxlIG9ubHkgaW4gc29tZSB2aWV3cG9ydHNcbiAqL1xuLmxhbmd1YWdlLWNob29zZXJfX2ljb24ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLWJvdHRvbTogJGxvY2FsLWxhbmd1YWdlQ2hvb3NlclBhZGRpbmdWZXJ0aWNhbDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdGZpbGw6ICRjVGV4dC0taW52ZXJzO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRmaWxsOiAkY1RleHQ7XG5cdH1cblxuXHQ+ICoge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFdyYXBwZXIgZm9yIGFsbCBsYW5ndWFnZXMsIHNlbGVjdGVkIG9yIG5vdFxuICovXG4ubGFuZ3VhZ2UtY2hvb3Nlcl9fbGFuZ3VhZ2VzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRoZWlnaHQ6ICRsb2NhbC1sYW5ndWFnZUhlaWdodDtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0dHJhbnNpdGlvbjogaGVpZ2h0IGVhc2UtaW4tb3V0ICRkU2hvcnQ7XG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuXG4ubGFuZ3VhZ2UtY2hvb3Nlcl9faXRlbXMge1xuXHRAaW5jbHVkZSByZXNldC1saXN0O1xufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBMaW5rIHRvIHRoZSB3ZWJzaXRlIGluIHRoZSBzcGVjaWZpZWQgbGFuZ3VhZ2VcbiAqIEBzdGF0ZXM6IDpob3ZlclxuICovXG4ubGFuZ3VhZ2UtY2hvb3Nlcl9fbGluayxcbi5sYW5ndWFnZS1jaG9vc2VyX19zZWxlY3RlZC1sYW5ndWFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiA3cHggMTBweCA2cHg7XG5cdGZvbnQtc2l6ZTogJGZzSGVhZGVyLWRlc2t0b3A7XG5cdGxpbmUtaGVpZ2h0OiAxN3B4O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRmb250LXdlaWdodDogJGZ3UmVndWxhcjtcblx0XHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlcjtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRmb250LXdlaWdodDogJGZ3TWVkaXVtO1xuXHRcdGNvbG9yOiAkY1RleHQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlck1ldGE7XG5cdH1cblxuXHRAaW5jbHVkZSBpc05vVG91Y2hEZXZpY2UoKSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHR9XG5cdH1cblxufVxuXG4iLCIubS1wYWdpbmF0aW9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG59XG5cbi5wYWdpbmF0aW9uX19pdGVtcyB7XG5cdEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luOiAwIGF1dG87XG59XG5cblxuLnBhZ2luYXRpb25fX2l0ZW0ge1xuXHQrIC5wYWdpbmF0aW9uX19pdGVtIHtcblx0XHRtYXJnaW4tbGVmdDogMjJweDtcblx0fVxuXG5cdC5hLWxpbmsge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1pbi13aWR0aDogMThweDtcblx0XHRwYWRkaW5nOiAwIDNweDtcblx0XHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdFx0Zm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRjb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0J1dHRvbkJnLS1pbnZlcnM7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTJweDtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGRTaG9ydCBlYXNlLWluLCBjb2xvciAkZFNob3J0IGVhc2UtaW47XG5cblx0XHQmOmhvdmVyLFxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdGNvbG9yOiAkY0J1dHRvblRleHQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRcdH1cblx0fVxuXG59XG4iLCIubS10YWctYnV0dG9uIHtcbn1cblxuLnRhZy1idXR0b25fX3VpIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnRhZy1idXR0b25fX2xhYmVsIHtcblx0QGluY2x1ZGUgZGlzYWJsZS10ZXh0LXNlbGVjdGlvbjtcblx0cGFkZGluZzogMCA1cHg7XG5cdGZvbnQtc2l6ZTogMTNweDtcblx0bGluZS1oZWlnaHQ6IDE3cHg7XG5cdGNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4OyAvLyBkaWZmZXJzIGZyb20gZGVzaWduLiA4cHggd2FzIGluIENocm9tZSBcImJsb2NreVwiXG5cdGJvcmRlcjogMnB4IHNvbGlkIHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQ6Y2hlY2tlZCB+ICYge1xuXHRcdGNvbG9yOiAkY1doaXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0fVxufVxuIiwiLm0tdGFnLWxpc3Qge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdHN2ZyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRvcDogNXB4O1xuXHRcdHdpZHRoOiAyMHB4O1xuXHRcdGhlaWdodDogMjBweDtcblx0fVxuXG5cdCNpY29uLXRhZyB7XG5cdFx0ZmlsbDogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0fVxuXG5cdC5hLWxpbmsge1xuXHRcdGNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXG5cdFx0Jjpub3QoIGxhc3QtY2hpbGQgKSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdH1cblx0fVxufVxuIiwiQG1peGluIGRvd25sb2FkLXRlYXNlci1ib3JkZXItcmlnaHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jjo6YWZ0ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRjb250ZW50OiAnJztcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuXHRcdGhlaWdodDogNTAlO1xuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRlYXNlciBEb3dubG9hZCAmIEZhY3RzaGVldFxuICovXG4uby1kb3dubG9hZCB7XG5cdC5hLWltYWdlIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5kb3dubG9hZF9fdGl0bGUge1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHR9XG5cblx0LmRvd25sb2FkX190ZXh0IHtcblx0XHRAaW5jbHVkZSByaWNodGV4dDtcblx0XHRmb250LXdlaWdodDogJGZ3UmVndWxhcjtcblxuXHRcdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cblx0XHQmID4gOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQuZG93bmxvYWRfX2ZpbGUtc2l6ZSB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggbW9iaWxlICk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0QGluY2x1ZGUgZm9udC1jb3B5LWRlZmF1bHQoIHRhYmxldCApO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggZGVza3RvcCApO1xuXHRcdH1cblx0fVxuXG5cdC5kb3dubG9hZF9fYnV0dG9uLXdyYXBwZXIge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdC5hLWxpbmsge1xuXHRcdFx0QGV4dGVuZCAuYS1idXR0b247XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA2MHB4O1xuXHRcdH1cblx0fVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IERvd25sb2FkL0ZhY3RzaGVldCA0LWNvbCB2YXJpYW50XG4gKiBGb3IgMXgxIGFuZCAxNng5IGltYWdlc1xuICovXG4uZG93bmxvYWQtNC1jb2wtZG93bmxvYWQtdGVhc2VyLTF4MSB7XG5cdC5kb3dubG9hZF9fY29udGVudCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGZsZXgtZ3JvdzogMTtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRAaW5jbHVkZSBkb3dubG9hZC10ZWFzZXItYm9yZGVyLXJpZ2h0KCk7XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDMwcHggMjVweDtcblx0XHR9XG5cdH1cblxuXHQuZG93bmxvYWRfX3RpdGxlIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG9yZGVyOiAxO1xuXHR9XG5cblx0LmRvd25sb2FkX190ZXh0IHtcblx0XHRvcmRlcjogMjtcblx0XHRmbGV4OiAxIDEgMDtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHR9XG5cblx0LmRvd25sb2FkX19maWxlLXNpemUge1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRvcmRlcjogMztcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdG9yZGVyOiA0O1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblx0fVxuXG5cdC5kb3dubG9hZF9fYnV0dG9uLXdyYXBwZXIge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRvcmRlcjogNDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0b3JkZXI6IDM7XG5cdFx0fVxuXHR9XG5cblx0LmEtbGluayB7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHR9XG5cdH1cbn1cblxuLmRvd25sb2FkLS0xMi1jb2wtZG93bmxvYWQtdGVhc2VyIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdG1hcmdpbi10b3A6IDUwcHg7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdH1cblxuXHQmID4gZGl2IHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRcdHdpZHRoOiBjYWxjKCA1MCUgLSAjeyAkc0d1dHRlciB9ICk7XG5cdFx0fVxuXHR9XG5cblx0LmRvd25sb2FkX19jb250ZW50IHtcblx0XHRAaW5jbHVkZSBkb3dubG9hZC10ZWFzZXItYm9yZGVyLXJpZ2h0KCk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0cGFkZGluZzogMTVweCAxNXB4IDE1cHggMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDE1cHggMTBweCAwO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDMwcHggNXB4IDA7XG5cdFx0fVxuXHR9XG5cblxuXHQvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdC5kb3dubG9hZF9fdGl0bGVcdFx0XHR7IG9yZGVyOiAxOyB9XG5cdFx0LmRvd25sb2FkX190ZXh0IFx0XHRcdHsgb3JkZXI6IDI7IH1cblx0XHQuZG93bmxvYWRfX2ZpbGUtc2l6ZVx0XHR7IG9yZGVyOiA0OyB9XG5cdFx0LmRvd25sb2FkX19idXR0b24td3JhcHBlclx0eyBvcmRlcjogMzsgfVxuXHR9XG5cdC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuXG5cdC5kb3dubG9hZF9fdGl0bGUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIzcHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIzcHg7XG5cdFx0XHRmbGV4LWdyb3c6IDE7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGZvbnQtc2l6ZTogNDBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA0NnB4O1xuXHRcdH1cblx0fVxuXG5cdC5kb3dubG9hZF9fdGV4dCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxNnB4O1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmRvd25sb2FkX19maWxlLXNpemUge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTNweDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDIzcHg7XG5cdFx0fVxuXHR9XG5cblx0LmRvd25sb2FkX19idXR0b24td3JhcHBlciB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHR9XG5cdH1cbn1cblxuIiwiLm8tZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogNjBweDtcblx0Y29sb3I6ICRjV2hpdGU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQmdGb290ZXI7XG5cblx0LmEtbGluayxcblx0LmEtbGluazp2aXNpdGVkIHtcblx0XHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0XHRmb250LXdlaWdodDogJGZ3Qm9sZDtcblx0XHR9XG5cdH1cblxuXHQuby10ZWFzZXItY29sbGVjdGlvbi50ZWFzZXItY29sbGVjdGlvbi0tZm9vdGVyIHsgLy8gc3BlY2lmaXR5IGJ1bXBpbmdcblx0XHRAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdHBhZGRpbmctdG9wOiA4cHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0cGFkZGluZy10b3A6IDhweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXItY29sbGVjdGlvbl9fZGV0YWlsdGV4dCB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMzMzO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0fVxuXG5cdFx0YSxcblx0XHRhOmxpbmssXG5cdFx0YTp2aXNpdGVkIHtcblx0XHRcdGNvbG9yOiAkY1RleHQtLWludmVycztcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRcdH1cblxuXHRcdGE6aG92ZXIsXG5cdFx0YTphY3RpdmUge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogNDVweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzNXB4O1xuXHRcdH1cblxuXHRcdC5hLWxpbmsge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHR9XG5cblx0XHRcdCsgLmEtbGluayB7XG5cdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJ3wnO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwLjRlbTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDAuNGVtO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlci1jb2xsZWN0aW9uX19mb290ZXIge1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjMzMztcblx0XHRmb250LXdlaWdodDogJGZ3UmVndWxhcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRcdGZvbnQtc2l6ZTogOHB4O1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXItY29sbGVjdGlvbi0tY29udGFjdC1pbnZpdGVzICsgJixcblx0LnRlYXNlci1jb2xsZWN0aW9uLS1jb250YWN0LWludml0ZXMgKyAuYS1tZWdhbWVudV9fb3ZlcmxheSArICYsXG5cdC5jbS1wbGFjZW1lbnQtLWZvb3Rlck5hdmlnYXRpb24gKyAuY20tcGxhY2VtZW50LS1mb290ZXIgPiAmLFxuXHQudHlwZS1hcmVhICsgLmEtbWVnYW1lbnVfX292ZXJsYXkgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59XG4iLCIuby1mb3JtIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdG1hcmdpbi10b3A6IDYwcHg7XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IHJlZHVjZWQgc3R5bGluZyBwb3NzaWJpbGl0aWVzIGR1ZSB0byBleHRlcm5hbCBjb2RlXG4gKiAoZnJvbSBIdWJzcG90KVxuICovXG4uZm9ybS1odWJzcG90IHtcblx0LmhzLWZvcm0taWZyYW1lIHtcblx0XHQvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0Lyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXHR9XG59XG5cbi8qKlxuICogU1RBUlQgQ29weS1QYXN0ZSBBcmVhIGluIC0tPiBDU1MgPC0tIGZvciBKUyBtb2R1bGUgZm9ybS1odWJzcG90XG4gKi9cbmlucHV0W3R5cGU9J2RhdGUnXS5ocy1pbnB1dCxcbmlucHV0W3R5cGU9J2VtYWlsJ10uaHMtaW5wdXQsXG5pbnB1dFt0eXBlPSdudW1iZXInXS5ocy1pbnB1dCxcbmlucHV0W3R5cGU9J3Bhc3N3b3JkJ10uaHMtaW5wdXQsXG5pbnB1dFt0eXBlPSd0ZWwnXS5ocy1pbnB1dCxcbmlucHV0W3R5cGU9J3RleHQnXS5ocy1pbnB1dCxcbmlucHV0W3R5cGU9J3VybCddLmhzLWlucHV0LFxudGV4dGFyZWEuaHMtaW5wdXQge1xuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uaHMtYnV0dG9uLnByaW1hcnkubGFyZ2Uge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmc6IDEzcHg7XG5cdGZvbnQtc2l6ZTogMThweDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdGNvbG9yOiAkY0J1dHRvblRleHQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDk5cHg7IC8vIEhpZ2ggbnVtYmVyIHRvIGJlIHN1cmUgdGhhdCByYWRpdXMgY292ZXJzIHRoZSB3aG9sZSBoZWlnaHQgb2YgdGhlIGJ1dHRvblxufVxuXG4vKipcbiAqIEVORCBDb3B5LVBhc3RlIEFyZWFcbiAqL1xuIiwiLm8taGVhZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAkekhlYWRlcjtcblx0d2lkdGg6IDEwMCU7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0dG9wOiAwO1xuXHR9XG5cblx0LmEtbG9nby1jb3JlbWVkaWEge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG1heC13aWR0aDogMTk3cHg7XG5cdFx0fVxuXHR9XG59XG4iLCIvKipcbiAqIEBkZXNjcmlwdGlvbjogVGhlIFwid2hpdGUgYmFyXCIgYWJvdmUgdGhlIG1lZ2FtZW51XG4gKi9cbi5vLWhlYWRlcl9fbWV0YSB7XG5cdGNvbG9yOiAkY1RleHQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQmdIZWFkZXJNZXRhO1xufVxuXG5cbi5oZWFkZXJfX21ldGFfX3R5cGVhcmVhIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdFx0bWluLWhlaWdodDogJHNIZWlnaHRIZWFkZXJNZXRhO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRoZWlnaHQ6ICRzSGVpZ2h0SGVhZGVyTWV0YTtcblx0fVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBTbG90cyBmb3Igc29tZSBjb250ZW50L21vZHVsZXMgaW4gdGhlIE1ldGFoZWFkZXIgKHRlYXNlciwgc2VhcmNoLCBsYW5ndWFnZSBjaG9vc2VyKVxuICogQHZhcmlhbnRzOiAtLXRlYXNlciwgLS1hY3Rpb25zXG4gKi9cbi5oZWFkZXJfX21ldGFfX3BsYWNlbWVudCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxufVxuXG5cbi5oZWFkZXJfX21ldGFfX3BsYWNlbWVudC0tdGVhc2VyIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdH1cbn1cblxuXG4uaGVhZGVyX19tZXRhX19wbGFjZW1lbnQtLWFjdGlvbnMge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdH1cblxuXHQubS1oZWFkZXJfX3NlYXJjaCB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogJHNHdXR0ZXJEb3VibGU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGhlaWdodDogY2FsYyggMTAwJSAtIDIwcHggKTtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogJHNHdXR0ZXJEb3VibGU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5tLWxhbmd1YWdlLWNob29zZXIge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6ICRzR3V0dGVyRG91YmxlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogJHNHdXR0ZXI7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICRzR3V0dGVyO1xuXHRcdH1cblx0fVxuXG5cdD4gLmEtYnV0dG9uIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAkc0d1dHRlckRvdWJsZTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAkc0d1dHRlcjtcblx0XHR9XG5cdH1cblxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRoZSBcIndoaXRlIGJhclwiIGluIHRoZSBzdGF0ZSBvZiBvcGVuZWQgc2VhcmNoIGJhclxuICogRXhpc3RzIG9ubHkgaW4gZGVza3RvcCB2aWV3IVxuICovXG4uby1oZWFkZXJfX21ldGEuaGFzLXNlYXJjaC1vcGVuZWQge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0LmhlYWRlcl9fbWV0YV9fcGxhY2VtZW50LS10ZWFzZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQuaGVhZGVyX19tZXRhX19wbGFjZW1lbnQtLWFjdGlvbnMge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdC5tLWhlYWRlcl9fc2VhcmNoIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWF4LXdpZHRoOiA1MDBweDsgLy8gTWFnaWMgbnVtYmVyIGR1ZSB0byBkZXNpZ25cblx0XHR9XG5cblx0XHQuaGVhZGVyX19zZWFyY2hfX2Zvcm0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHR9XG5cblx0XHQuaWNvbi1idXR0b24tLXNlYXJjaCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBAZGVzY3JpcHRpb246IFRoZSB3cmFwcGVyIGZvciB0aGUgbWVnYW1lbnVcbiAqL1xuLm8taGVhZGVyX19mbHlvdXQge1xuXHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQmdIZWFkZXI7XG5cblx0Ly8gQnV0dG9ucyB3aXRoIGxhYmVsXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0LmEtaWNvbi1ia2FjaGV1dHRvbiB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY0JnSGVhZGVyO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0XHRzdmcge1xuXHRcdFx0XHRoZWlnaHQ6IDI3cHg7XG5cdFx0XHRcdHdpZHRoOiAyN3B4O1xuXHRcdFx0XHRmaWxsOiAkY1RleHQtLWludmVycztcblx0XHRcdH1cblxuXHRcdFx0Lmljb24tYnV0dG9uX19sYWJlbCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiA4cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lmljb24tYnV0dG9uLS1zZWFyY2gge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0LmEtaWNvbi1idXR0b24ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuXG4uaGVhZGVyX19mbHlvdXRfX3R5cGVhcmVhIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRoZWlnaHQ6ICRzSGVpZ2h0SGVhZGVyRmx5b3V0SW5pdGlhbERlc2t0b3A7XG5cdH1cbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBNZWdhbWVudSBjb21wb25lbnRcbiAqIEBzdGF0ZXM6IC5pcy1vcGVuLCAuaXMtbHZsLTAsIC5pcy1sdmwtMVxuICovXG4uby1oZWFkZXJfX21lZ2FtZW51IHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWF4LWhlaWdodDogMTAwdmg7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXgtaGVpZ2h0OiAxMDB2aDtcblx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdC5saW5rLS1ob21lIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0aGVpZ2h0OiAyOXB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGhlaWdodDogMzNweDtcblx0XHR9XG5cdH1cblxuXG5cdC8qKlxuXHQgKiBTdGF0ZXMgTWVnYW1lbnUgSGVhZGVyLCBub24taW5pdGlhbFxuXHQgKi9cblx0Ly8gTWVnYW1lbnUgaXMgb3BlbiAoc2hvd3MgbGV2ZWwgMCBvciBsZXZlbCAxKVxuXHQmLmlzLW9wZW4ge1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdC8vIE1lbnVcblx0XHQuaWNvbi1idXR0b24tLW1lbnUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBFeGl0XG5cdFx0Lmljb24tYnV0dG9uLS1jbG9zZSB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm0tbWVnYW1lbnVfX2NvbnRlbnQge1xuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHQubGluay0taG9tZSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC8vIE1lZ2FtZW51IGlzIG5vdCBvcGVuXG5cdCY6bm90KCAuaXMtb3BlbiApIHtcblx0XHQubS1tZWdhbWVudV9fY29udGVudCB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIE1lZ2FtZW51IHNob3dzIGxldmVsIDBcblx0Ji5pcy1sdmwtMCB7XG5cdFx0Lm0tbWVnYW1lbnVfX2hlYWRlciB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaWNvbi1idXR0b24tLWFycm93LWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBNZWdhbWVudSBzaG93cyBsZXZlbCAxXG5cdCYuaXMtbHZsLTEge1xuXHRcdC5tLW1lZ2FtZW51X19oZWFkZXIge1xuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEJhY2tcblx0XHQuaWNvbi1idXR0b24tLWFycm93LWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmEtbWVnYW1lbnVfX2l0ZW06bm90KCAuaXMtYWN0aXZlICksXG5cdFx0LmEtbWVnYW1lbnVfX2l0ZW1fX2FmdGVyIHtcblx0XHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIExhbmd1YWdlXG5cdFx0Lm0tbGFuZ3VhZ2UtY2hvb3NlciB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogTWVnYW1lbnUgYnJhbmNoIChnZW5lcmljLCBhcyBsdmwtMCBhbmQgYXMgbHZsLTEpXG4gKi9cbi5tZWdhbWVudV9fYnJhbmNoIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi5tZWdhbWVudV9fYnJhbmNoLS1sdmwtMCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHQrIC5tZWdhbWVudV9fYnJhbmNoLS1sdmwtMCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHR9XG5cdH1cbn1cblxuLm1lZ2FtZW51X19icmFuY2gtLWx2bC0xIHtcblx0ZGlzcGxheTogbm9uZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNCZ0hlYWRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdH1cblxuXHQuaXMtYWN0aXZlIH4gJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogbHZsLTEgY29udGVudFxuICovXG4ubWVnYW1lbnVfX2JyYW5jaF9fY29udGVudCB7XG5cdEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbiIsIi5vLWhlcm86bm90KC5oZXJvLS1ib3gtc2xpZGVyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG4gIGNvbG9yOiAkY1doaXRlO1xuXG4gICY6aG92ZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgLmdsaWRlX19hcnJvd3Mge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAuZ2xpZGVfX2Fycm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlcm9fX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIC8vIEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BIZE9ubHkgKSB7XG4gICAgICAvLyBtYXgtd2lkdGg6IGNhbGMoIDEwMCUgLSAjeyggMiAqICRzT3V0ZXJHdXR0ZXItZGVza3RvcCApICsgKCAyICogJHNHdXR0ZXIgKX0gKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm8tdGVhc2VyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubS1pbWFnZV9fYm94IHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1hc3BlY3QtcmF0aW8tYm94KCAzLCA0ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgQGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goIDE2LCA5ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1hc3BlY3QtcmF0aW8tYm94KCAxNiwgOSApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcEhkT25seSApIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1hc3BlY3QtcmF0aW8tYm94KCA4LCAzICk7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC50ZWFzZXJfX2lubmVyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdtYXJnaW50b3AnICdoZWFkbGluZScgJ3RlYXNlcnRleHQnICdzcGFjZXInICdidXR0b24nICdzcGFjZXIyJztcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAzMHB4IGF1dG8gYXV0byAxZnIgYXV0byA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgY29sb3I6ICRjV2hpdGU7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIGdyaWQtYXJlYTogaGVhZGxpbmU7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCAzLCAzLCBmYWxzZSApO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBmb250LXdlaWdodDogJGZ3Qm9sZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDMsIDYsIGZhbHNlICk7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDQsIDEyLCBmYWxzZSApO1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICBmb250LXdlaWdodDogJGZ3Qm9sZDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSByaWNodGV4dDtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZ3JpZC1hcmVhOiB0ZWFzZXJ0ZXh0O1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMywgMywgZmFsc2UgKTtcbiAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCAzLCA2LCBmYWxzZSApO1xuICAgICAgbWFyZ2luLXRvcDogMjhweDtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDQsIDEyLCBmYWxzZSApO1xuICAgICAgbWFyZ2luLXRvcDogMjhweDtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2J1dHRvbi13cmFwcGVyIHtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZ3JpZC1hcmVhOiBidXR0b247XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCAzLCAzLCBmYWxzZSApO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDMsIDYsIGZhbHNlICk7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCA0LCAxMiwgZmFsc2UgKTtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgIEBleHRlbmQgLmEtYnV0dG9uO1xuICAgIEBleHRlbmQgLmJ1dHRvbi0tZ2hvc3Q7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCggXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSd4TWluWU1pbiBtZWV0JyUzRSUzQ3BhdGggZmlsbD0nJTIzZmZmZmZmJyBkPSdNMTMuNDk1IDIyLjU3Nmw2LjA1Ni02LjAyOGMuMDA3LS4wMDYuMDE3LS4wMDguMDIzLS4wMTUuMjg1LS4yODQuNDI3LS42NTkuNDI2LTEuMDMzYTEuNDQ3IDEuNDQ3IDAgMDAtLjQyNi0xLjAzM2MtLjAwNi0uMDA3LS4wMTYtLjAwOC0uMDIzLS4wMTVsLTYuMDU2LTYuMDI4YTEuNDcyIDEuNDcyIDAgMDAtMi4wNjggMCAxLjQ1NSAxLjQ1NSAwIDAwMCAyLjA1OWw1LjA0MSA1LjAxNy01LjA0MSA1LjAxN2ExLjQ1NSAxLjQ1NSAwIDAwMCAyLjA1OWMuNTY4LjU2NSAxLjUuNTY2IDIuMDY4IDAnIGZpbGwtcnVsZT0nZXZlbm9kZCcvJTNFJTNDL3N2ZyUzRVwiICk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi5oZXJvLS1zbGlkZXIge1xuICAuaGVyb19fd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5cbi5oZXJvLS1ib3gtc2xpZGVyIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDkwJSAzMCUsICM2MmQ2Y2QgMjAlLCAjM2UyOGExIDExMCUpIDAgMCBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgMzAlLCAjNjJkNmNkIDIwJSwgIzNlMjhhMSAxMTAlKSAwIDAgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICB9XG5cbiAgLmdsaWRlX19idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBwYWRkaW5nOiAzOHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNXaGl0ZTtcbiAgICB9XG4gIH1cblxuICAuZ2xpZGVfX2Fycm93cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5nbGlkZV9fYnVsbGV0IHtcblx0XHRtYXJnaW46IDAgMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdHdpZHRoOiAxMDBweDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHR9XG5cbiAgICAuYS1pbWFnZSB7XG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgNTAwbXMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLmdsaWRlX19idWxsZXQtLWFjdGl2ZSkge1xuICAgICAgLmEtaW1hZ2U6bm90KDpob3Zlcikge1xuICAgICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm8tdGVhc2VyIHtcbiAgICBtYXgtd2lkdGg6IDEyMzJweDtcbiAgICBjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgbWFyZ2luOiA2NXB4IDQwcHggMTEwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLm8taW1hZ2UtZGV0YWlsIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG5cblx0LmRldGFpbF9fd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQuZGV0YWlsX190ZXh0IHtcblx0XHRAaW5jbHVkZSByaWNodGV4dDtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDM2cHg7XG5cdFx0fVxuXHR9XG5cblx0Ji5pbWFnZS1kZXRhaWwtLXRvcCB7XG5cdFx0LmRldGFpbF9fd3JhcHBlciB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cdFx0fVxuXG5cdFx0Lm0taW1hZ2VfX2JveCB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCY6bm90KCAuaW1hZ2UtZGV0YWlsLS10b3AgKSB7XG5cdFx0LmRldGFpbF9fd3JhcHBlciB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdH1cblxuXHRcdC5kZXRhaWxfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMzBweDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogNjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5vLWxvZ293YWxsLWZpbHRlcmVkIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG5cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogb3B0aW9uYWwgZGV0YWlsIHRleHRcbiAqL1xuLmxvZ293YWxsLWZpbHRlcmVkX19kZXRhaWx0ZXh0IHtcblx0Y29sb3I6ICRjVGV4dDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDM2cHg7XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogaGVhZCBhcmVhIHdpdGggZmlsdGVycyBhbmQgZmlsdGVyIGFjdGlvbnNcbiAqL1xuLmxvZ293YWxsLWZpbHRlcmVkX19tZXRhIHtcblx0bWFyZ2luLXRvcDogMzBweDtcbn1cblxuLmxvZ293YWxsLWZpbHRlcmVkX19tZXRhX19oZWFkIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY0Nvb2xHcmF5O1xufVxuXG4vLyBUb2dnbGUgZmlsdGVyIHdyYXBwZXJcbi5sb2dvd2FsbC1maWx0ZXJlZF9fbGFiZWwge1xuXHRAaW5jbHVkZSByZXNldC1idXR0b247XG5cdHBhZGRpbmctbGVmdDogMDtcblx0cGFkZGluZy1yaWdodDogMTVweDtcblx0Zm9udC1zaXplOiAxM3B4O1xuXHRsaW5lLWhlaWdodDogMTdweDtcblx0Y29sb3I6ICRjVGV4dDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICdkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIlM2UlM2NwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiJTIzMzQzYTQwXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMiA1bDYgNiA2LTZcIi8lM2UlM2Mvc3ZnJTNlJyApO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEwcHggN3B4O1xuXG5cdCYuaXMtY2xvc2VkIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICdkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM2UlM2NwYXRoIHRyYW5zZm9ybT1cInJvdGF0ZSgtMTgwIDggOClcIiBpZD1cInN2Z18xXCIgZD1cIm0yLDVsNiw2bDYsLTZcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlPVwiJTIzMzQzYTQwXCIgZmlsbD1cIm5vbmVcIi8lM2UlM2Mvc3ZnJTNlJyApO1xuXHR9XG59XG5cbi8vIFJlbW92ZSBhbGwgdGFnIHNlbGVjdGlvblxuLmxvZ293YWxsLWZpbHRlcmVkX190YWcge1xuXHRAaW5jbHVkZSByZXNldC1idXR0b247XG5cdHBhZGRpbmc6IDAgMjRweCAwIDEwcHg7XG5cdGZvbnQtc2l6ZTogMTNweDtcblx0bGluZS1oZWlnaHQ6IDE3cHg7XG5cdGNvbG9yOiAkY1doaXRlO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4OyAvLyBkaWZmZXJzIGZyb20gZGVzaWduLiA4cHggd2FzIGluIENocm9tZSBcImJsb2NreVwiXG5cdGJhY2tncm91bmQtY29sb3I6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCggJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD1cIjAgMCAzMCAzMFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwieE1pbllNaW4gbWVldFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiJTNlJTNjZyBmaWxsLXJ1bGU9XCJub256ZXJvXCIlM2UlM2NwYXRoIGQ9XCJNMjEuMjUgOC43NWEuNjI4LjYyOCAwIDAwLS44ODQgMEwxNSAxNC4xMTYgOS42MzQgOC43NDhhLjYyNi42MjYgMCAwMC0uODg1Ljg4NUwxNC4xMTYgMTUgOC43NSAyMC4zNjZhLjYyNi42MjYgMCAwMC44ODUuODg0TDE1IDE1Ljg4M2w1LjM2NiA1LjM2N2EuNjI2LjYyNiAwIDAwLjg4NC0uODg0TDE1Ljg4MyAxNWw1LjM2Ny01LjM2NmEuNjI5LjYyOSAwIDAwMC0uODg1elwiICBzdHJva2U9XCIlMjNmZmZmZmZcIiBmaWxsPVwibm9uZVwiLyUzZSUzY3BhdGggZD1cIk0xNSAwQzYuNzE2IDAgMCA2LjcxNiAwIDE1YzAgOC4yODQgNi43MTYgMTUgMTUgMTUgOC4yODQgMCAxNS02LjcxNiAxNS0xNUExNSAxNSAwIDAwMTUgMHptOS43MjMgMjQuNzIzQTEzLjc1IDEzLjc1IDAgMTE1LjI3NyA1LjI3N2ExMy43NSAxMy43NSAwIDExMTkuNDQ2IDE5LjQ0NnpcIiBzdHJva2U9XCIlMjNmZmZmZmZcIiBmaWxsPVwibm9uZVwiLyUzZSUzYy9nJTNlJTNjL3N2ZyUzZScgKTtcblx0YmFja2dyb3VuZC1zaXplOiAyMHB4IDE0cHg7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBXcmFwcGVyIGZvciB0aGUgYXJlYSB3aXRoIGZpbHRlciB0YWdzXG4gKi9cbi5sb2dvd2FsbC1maWx0ZXJlZF9fbWV0YV9fZmlsdGVycyB7XG5cdG1hcmdpbi10b3A6IDE1cHg7XG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcblx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZFNob3J0IGVhc2U7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdH1cblxuXHQubS1maWx0ZXItYm94IHtcblx0XHRmbGV4OiAxIDEgMDtcblx0fVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFdyYXBwZXIgZm9yIHRoZSBsb2dvc1xuICovXG4ubG9nb3dhbGwtZmlsdGVyZWRfX3RlYXNlcmNvbGxlY3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdG1hcmdpbi1sZWZ0OiAtMTVweDsgLy8gbm8gb3RoZXIgd2F5IHRvIHJlbmRlciBjb3JyZWN0IG1hcmdpbnMgb2YgdGVhc2VyIGluZGVwZW5kZW50IG9iIGhpZGRlbiBvciBub3Rcblx0bWFyZ2luLXJpZ2h0OiAtMTVweDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdH1cblxuXHQudGVhc2VyLS1sb2dvOm5vdCggLmlzLWhpZGRlbiApIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0XHRtYXJnaW4tbGVmdDogMTVweDsgLy8gR2FwIGluIGRlc2lnbiBkaWZmZXJlcyBiZXR3ZWVuIDMwIGFuZCA0MHB4LCBidXQgZHVlIHRvIHRoZSBjYWxjdWxhdGlvbnMgZm9yIGdyaWQvZ3V0dGVyIHdlIGhhdmUgdG8gdGFrZSAzMHB4IVxuXHRcdG1hcmdpbi1yaWdodDogMTVweDtcblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0d2lkdGg6IGNvbC13aWR0aCggMywgNiApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0d2lkdGg6IGNvbC13aWR0aCggMiwgNiApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdHdpZHRoOiBjb2wtd2lkdGgoIDMsIDEyICk7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlci0tbm90LWZvdW5kIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQmOm5vdCggLmlzLXZpc2libGUgKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXJfX2JhZGdlLS1wYXJ0bmVyLFxuXHQudGVhc2VyX19iYWRnZS0tY2VydGlmaWNhdGlvbiB7XG5cdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IDE3cHg7XG5cdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlcl9fYmFkZ2UtbGlzdCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdH1cblxufVxuXG5cblxuIiwiLyoqXG4gKiBAZGVzY3JpcHRpb246IFBlcnNvbiBTQ1NTIC0tIGV4aXN0aW5nIGluIGFuIDEyLWNvbCBhbmQgNi1jb2wgdmFyaWFudCB3aXRoXG4gKiBkaWZmZXJlbnQgbGF5b3V0cyFcbiAqIDEyLWNvbC12YXJpYW50OiBwZXJzb24tLWRlZmF1bHQgd3JhcHBlclxuICogMTItY29sLXZhcmlhbnQgd2l0aCBzb2NpYWwgbWVkaWE6IHBlcnNvbi0tZXh0XG4gKiA2LWNvbC12YXJpYW50OiBwZXJzb24tLTYtY29sIHdyYXBwZXJcbiAqL1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogUGVyc29uIHdyYXBwZXIgKG91dGVyIGxheW91dCB3cmFwcGVyKVxuICovXG4ucGVyc29uLS1kZWZhdWx0LFxuLnBlcnNvbi0tZXh0IHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG59XG5cbi5wZXJzb24tLTYtY29sIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMzBweCAxZnI7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG59XG5cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogcGVyc29uIGNvbnRlbnQgZWxlbWVudHNcbiAqL1xuXG4ucGVyc29uX19pbWFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAkc0d1dHRlciAkc0d1dHRlciAkc0d1dHRlciAwO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0Lm0taW1hZ2VfX2JveCB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goMSwgMSk7XG5cdH1cblxuXHQuYS1pbWFnZSB7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxuXG5cdC5wZXJzb24tLWRlZmF1bHQgJixcblx0LnBlcnNvbi0tZXh0ICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogY29sLXdpZHRoKCAxLCAzLCBmYWxzZSApO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdHdpZHRoOiBjb2wtd2lkdGgoIDIsIDYsIGZhbHNlICk7XG5cdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHR3aWR0aDogY29sLXdpZHRoKCA0LCAxMiwgZmFsc2UgKTtcblx0XHRcdG1heC13aWR0aDogMzAwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnBlcnNvbi0tNi1jb2wgJiB7XG5cdFx0cGFkZGluZzogJHNHdXR0ZXIgJHNHdXR0ZXIgMDtcblx0fVxufVxuXG5cbi5wZXJzb25fX2NvbnRlbnQge1xuXHRwYWRkaW5nOiAkc0d1dHRlciAwICRzR3V0dGVyICRzR3V0dGVyO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG5cdC5wZXJzb24tLWRlZmF1bHQgJixcblx0LnBlcnNvbi0tZXh0ICYge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG5cdFx0XHRoZWlnaHQ6IDc1JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0XHR3aWR0aDogY29sLXdpZHRoKCA0LCA2LCBmYWxzZSApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcblx0XHRcdHdpZHRoOiBjb2wtd2lkdGgoIDgsIDEyLCBmYWxzZSApO1xuXHRcdH1cblx0fVxuXG5cdC5wZXJzb24tLTYtY29sICYge1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRzR3V0dGVyO1xuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFBlcnNvbiBuYW1lIGFuZCB0aXRsZVxuICovXG5cbmEucGVyc29uX19uYW1lIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogJGNUZXh0O1xufVxuXG4ucGVyc29uX19uYW1lIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0KCBtb2JpbGUgKTtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QoIHRhYmxldCApO1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QoIGRlc2t0b3AgKTtcblx0fVxufVxuXG5cbi5wZXJzb25fX3RpdGxlIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdH1cblxuXHQucGVyc29uLS1kZWZhdWx0ICYsXG5cdC5wZXJzb24tLWV4dCAmIHtcblx0XHRwbGFjZS1zZWxmOiBjZW50ZXIgc3RyZXRjaDtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDgwcHg7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMThweDtcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdH1cblx0fVxuXG5cdC5wZXJzb24tLTYtY29sICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAzNnB4O1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBQZXJzb24gYmlvXG4gKi9cbi5wZXJzb25fX3ZpdGEge1xuXHRAaW5jbHVkZSByaWNodGV4dDtcblx0bWFyZ2luLXRvcDogOXB4O1xuXG5cdC5wZXJzb24tLWRlZmF1bHQgJixcblx0LnBlcnNvbi0tZXh0ICYge1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRzR3V0dGVyRG91YmxlO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRAaW5jbHVkZSBmb250LWNvcHktc21hbGxlciggbW9iaWxlICk7IC8vIGRpZmZlcnMgZnJvbSBkZXNpZ24gLS0+IElucHV0IGJ5IENLXG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXIoIHRhYmxldCApOyAvLyBkaWZmZXJzIGZyb20gZGVzaWduIC0tPiBJbnB1dCBieSBDS1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRncmlkLWFyZWE6IDIgLyAxIC8gMyAvIDM7XG5cdFx0XHRAaW5jbHVkZSBmb250LWNvcHktc21hbGxlciggZGVza3RvcCApOyAvLyBkaWZmZXJzIGZyb20gZGVzaWduIC0tPiBJbnB1dCBieSBDS1xuXHRcdH1cblx0fVxuXG5cdC5wZXJzb24tLTYtY29sICYge1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRsaW5lLWhlaWdodDogMTZweDtcblx0fVxufVxuXG5cblxuLnBlcnNvbl9fbmFtZS1saW5rbGlzdC13cmFwcGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBlcnNvbl9fc29jaWFsLWxpbmtsaXN0IHtcblx0ZGlzcGxheTogZmxleDtcbn1cblxuLnBlcnNvbl9fc29jaWFsLWl0ZW0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW4tbGVmdDogMTBweDtcblx0d2lkdGg6IDMwcHg7XG5cdGhlaWdodDogMzBweDtcblx0dGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG5cdGxpbmUtaGVpZ2h0OiAzMHB4O1xuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHR9XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGNvbnRlbnQ6ICcgJztcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0fVxufVxuXG4ucGVyc29uX19zb2NpYWwtaXRlbS0tbGlua2VkaW4ge1xuXHQmOjpiZWZvcmUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCggJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNDc3ZnIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZD1cIk0xOC45MzMgMEMyMC4wNiAwIDIxIC45NCAyMSAyLjA2N3YxNi44MTlDMjEgMjAuMDYgMjAuMDYgMjEgMTguODg2IDIxSDIuMTE0QTIuMTA1IDIuMTA1IDAgMDEwIDE4Ljg4NlYyLjExNEMwIC45NC45NCAwIDIuMTE0IDBoMTYuODE5ek00LjkyMiAzQzMuODkgMyAzIDMuODc0IDMgNC45OWMwIDEuMTE3Ljg5IDEuOTkgMS45MjIgMS45OSAxLjAzMSAwIDEuOTIyLS44NzMgMS45MjItMS45OSAwLTEuMTE2LS44OS0xLjk5LTEuOTIyLTEuOTl6TTMuMzc1IDE3Ljk1MWgzLjE0VjguMTk0aC0zLjE0djkuNzU3em0xMS4wMTYtOS44NTRjLTEuMjY2IDAtMi4yNS41ODMtMi43MiAxLjM2VjguMjQySDguNTc5VjE4aDMuMTR2LTQuMDc4YzAtMS41MDUuNTE2LTIuNDI3IDEuNjQxLTIuNDI3Ljg0NCAwIDEuNS41ODMgMS41IDIuMTM2VjE4SDE4di01LjkyMmMwLTIuODE2LTEuMjE5LTMuOTgtMy42MS0zLjk4elwiIGZpbGw9XCIlMjMwQTY2QzJcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIvJTNFJTNDL3N2ZyUzRScgKTtcblx0fVxufVxuXG4ucGVyc29uX19zb2NpYWwtaXRlbS0tdHdpdHRlciB7XG5cdCY6OmJlZm9yZSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCAnZGF0YTppbWFnZS9zdmcreG1sLCAlM0Nzdmcgdmlld0JveD1cIjAgMCAyMSAyMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZmlsbD1cIiUyMzFEQTFGMlwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS1taXRlcmxpbWl0PVwiMlwiJTNFJTNDcGF0aCBkPVwiTTIxIDIuMjA3QTIuMjA4IDIuMjA4IDAgMDAxOC43OTMgMEgyLjIwN0EyLjIwOCAyLjIwOCAwIDAwMCAyLjIwN3YxNi41ODZDMCAyMC4wMTEuOTg5IDIxIDIuMjA3IDIxaDE2LjU4NkEyLjIwOCAyLjIwOCAwIDAwMjEgMTguNzkzVjIuMjA3ek03LjcxNyAxNi44NTVjNS42NjEgMCA4Ljc1Ny00LjY1NSA4Ljc1Ny04LjY5MSAwLS4xMzIgMC0uMjY0LS4wMDktLjM5NUE2LjIxOCA2LjIxOCAwIDAwMTggNi4xODhhNi4yIDYuMiAwIDAxLTEuNzY4LjQ4MSAzLjA2NSAzLjA2NSAwIDAwMS4zNTMtMS42ODkgNi4yMTcgNi4yMTcgMCAwMS0xLjk1NC43NDEgMy4wOTcgMy4wOTcgMCAwMC0zLjY5Ny0uNjAxIDMuMDQ4IDMuMDQ4IDAgMDAtMS41NDcgMy4zODcgOC43NTcgOC43NTcgMCAwMS02LjM0My0zLjE5MiAzLjA0MyAzLjA0MyAwIDAwLjk1MyA0LjA3OEEzLjA3OCAzLjA3OCAwIDAxMy42IDkuMDF2LjAzOWEzLjA2IDMuMDYgMCAwMDIuNDY5IDIuOTk0IDMuMDk0IDMuMDk0IDAgMDEtMS4zOS4wNTMgMy4wOCAzLjA4IDAgMDAyLjg3NiAyLjEyMUE2LjIwOCA2LjIwOCAwIDAxMyAxNS40ODNhOC43NTYgOC43NTYgMCAwMDQuNzE3IDEuMzY5di4wMDN6XCIvJTNFJTNDL3N2ZyUzRScgKTtcblx0fVxufVxuXG4ucGVyc29uLS1ibG9nIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpbWFnZSBjb250ZW50XCI7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogNjBweCBhdXRvO1xuXHRncmlkLWNvbHVtbi1nYXA6IDE1cHg7XG5cdC8vanVzdGlmeS1pdGVtczogZW5kO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXG5cblx0LnBlcnNvbl9faW1hZ2Uge1xuXHRcdGdyaWQtYXJlYTogaW1hZ2U7XG5cdFx0cGFkZGluZzogMDtcblx0XHR3aWR0aDogNTBweDtcblx0XHRoZWlnaHQ6IDUwcHg7XG5cdH1cblxuXHQucGVyc29uX19jb250ZW50IHtcblx0XHRncmlkLWFyZWE6IGNvbnRlbnQ7XG5cdFx0cGFkZGluZzogMDtcblx0fVxuXG5cdC5wZXJzb25fX25hbWUge1xuXHRcdEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCBkZXNrdG9wICk7XG5cdH1cblxuXHQucGVyc29uX190aXRsZSB7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXIoIGRlc2t0b3AgKTtcblx0fVxufVxuIixudWxsLCIuby1xdW90ZTpub3QoLnF1b3RlLS1ib3gtdGFiKSB7XG5cdEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDUwcHg7XG5cdH1cblxuXHQucXVvdGVfX3RleHQge1xuXHRcdEBpbmNsdWRlIHJpY2h0ZXh0O1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0Ym9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRwYWRkaW5nOiAxNHB4IDI1cHg7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjNweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdHBhZGRpbmc6IDYwcHg7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjNweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRwYWRkaW5nOiA0MHB4IDQwcHggMDtcblx0XHRcdGZvbnQtc2l6ZTogMzBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAzOXB4O1xuXHRcdH1cblx0fVxuXG5cdC5xdW90ZV9fY2l0ZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAn4oCUJztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0cGFkZGluZzogMTRweCAwIDMwcHggNDBweDtcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDQwcHggMzBweDtcblx0XHRcdGZvbnQtc2l6ZTogMjNweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAzMHB4O1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKlxuICpcbiAqL1xuLnF1b3RlLS1ib3gtdGFiIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCA2cHg7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cIjYycHhcIiBoZWlnaHQ9XCI0NXB4XCIgdmlld0JveD1cIjAgMCA2MiA0NVwiIHZlcnNpb249XCIxLjFcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCIlM0UlM0NnIGlkPVwiUGFnZS0xXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjFcIiBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiUzRSUzQ2cgaWQ9XCLigJwt4oCdXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDAuMzAwMDAwLCAwLjAwMDAwMClcIiBmaWxsPVwiJTIzRkZGRkZGXCIgZmlsbC1ydWxlPVwibm9uemVyb1wiJTNFJTNDcGF0aCBkPVwiTTAsNDQuNiBMMTgsMCBMMzAsMCBMMTguOCw0NC42IEwwLDQ0LjYgWiBNMzEuMiw0NC42IEw0OS40LDAgTDYxLjQsMCBMNTAsNDQuNiBMMzEuMiw0NC42IFpcIiBpZD1cIlNoYXBlXCIlM0UlM0MvcGF0aCUzRSUzQy9nJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJyk7XG5cblx0W2xhbmdePVwiZGVcIl0gJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTBBJTNDc3ZnIHdpZHRoPVwiNjJweFwiIGhlaWdodD1cIjQ1cHhcIiB2aWV3Qm94PVwiMCAwIDYyIDQ1XCIgdmVyc2lvbj1cIjEuMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiUzRSUzQ2cgaWQ9XCJQYWdlLTFcIiBzdHJva2U9XCJub25lXCIgc3Ryb2tlLXdpZHRoPVwiMVwiIGZpbGw9XCJub25lXCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiJTNFJTNDZyBpZD1cIuKAnC3igJ1cIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTEyNy43MDAwMDAsIDAuMDAwMDAwKVwiIGZpbGw9XCIlMjNGRkZGRkZcIiBmaWxsLXJ1bGU9XCJub256ZXJvXCIlM0UlM0NwYXRoIGQ9XCJNMTU5LjIsNDQuNiBMMTcwLjYsMCBMMTg5LjQsMCBMMTcxLjIsNDQuNiBMMTU5LjIsNDQuNiBaIE0xMjcuOCw0NC42IEwxMzkuNCwwIEwxNTguMiwwIEwxMzkuOCw0NC42IEwxMjcuOCw0NC42IFpcIiBpZD1cIlNoYXBlXCIlM0UlM0MvcGF0aCUzRSUzQy9nJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJyk7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdGJhY2tncm91bmQtc2l6ZTogNDBweDtcblx0fVxuXG5cblx0LnF1b3RlX190ZXh0IHtcblx0XHRtYXJnaW46IDA7XG5cdFx0Ly9mb250LXNpemU6IDM2cHg7XG5cdFx0Ly9saW5lLWhlaWdodDogNDBweDtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QtYWxsLWxpZ2h0LXdlaWdodCgpO1xuXG5cblx0XHQ+ICo6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cdFx0PiAqOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQucXVvdGVfX2NpdGUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjogMjJweCAwIDA7XG5cdFx0Ly9mb250LXNpemU6IDIwcHg7XG5cdFx0Ly9saW5lLWhlaWdodDogMzBweDtcblx0XHQvL2ZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRAaW5jbHVkZSBmb250LWNvcHktYmlnZ2VzdC1hbGwoKTtcblx0fVxuXG5cdC5xdW90ZV9fdGV4dCxcblx0LnF1b3RlX19jaXRlIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDYwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDk0cHg7XG5cdFx0fVxuXHR9XG5cbn1cbiIsIi5vLXNlYXJjaC1yZXN1bHRzIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5zZWFyY2gtcmVzdWx0c19faGVhZCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGZsZXgtd3JhcDogbm93cmFwO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjR3JheU1lZGl1bTsgLy8gU2xpZ2h0bHMgZGlmZmVyZW50IGdyYXkgdGhhbiBpbiBkZXNpZ24gdG8gYXZvaWQgaW50cm9kdWN0aW9uIG9mIGFuIGFkZGl0aW9uYWwgZ3JheSBjb2xvclxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDNweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0fVxufVxuXG4uc2VhcmNoX3Jlc3VsdHNfX3RpdGxlIHtcblx0bGluZS1oZWlnaHQ6IDEuMTU7XG5cdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRjb2xvcjogJGNUZXh0O1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHR3aWR0aDogY29sLXdpZHRoKCAyLCAzICk7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRmb250LXNpemU6IDQwcHg7XG5cdH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzX19tZXRhIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRsaW5lLWhlaWdodDogMS4zO1xuXHRjb2xvcjogJGNCbGFjaztcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0d2lkdGg6IGNvbC13aWR0aCggMSwgMyApO1xuXHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0bWFyZ2luLXRvcDogM3B4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogM3B4O1xuXHR9XG59XG5cblxuLnNlYXJjaC1yZXN1bHRzX19mYWNldCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0fVxuXG5cdGJhY2tncm91bmQtY29sb3I6IGNvcm5zaWxrO1xufVxuXG5cbi5zZWFyY2gtcmVzdWx0cy1jb2xsZWN0aW9uIHtcbn1cblxuLnNlYXJjaC1yZXN1bHRzX19mb290ZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdH1cbn1cbiIsIi8qKlxuICogQGRlc2NyaXB0aW9uOiBvbmUgc2luZ2xlIHRhYlxuICovXG4uby10YWIge1xufVxuXG4udGFiX19yYWRpbyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi50YWJfX2xhYmVsIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtaW4td2lkdGg6IDE5OHB4O1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdEBpbmNsdWRlIGZvbnQtY29weS1iaWdnZXN0KCBkZXNrdG9wICk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0QGF0LXJvb3QgLnRhYl9fcmFkaW86Y2hlY2tlZCArICYge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuXG5cdFx0XHQucmVkLXB1cnBsZSAmLFxuXHRcdFx0LmdyZWVuLXB1cnBsZSAmIHtcblx0XHRcdFx0Y29sb3I6ICRjV2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi50YWJfX2NvbnRlbnQge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBhdC1yb290IC50YWJfX3JhZGlvOmNoZWNrZWQgKyAudGFiX19sYWJlbCArICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFN0eWxlZCBTRUxFQ1QgYXMgdGFicyBhbHRlcm5hdGl2ZSBmb3IgbW9iaWxlIGFuZCB0YWJsZXQgdmlld1xuICovXG4udGFic19fc2VsZWN0LXdyYXBwZXIge1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogMjVweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbjogU0VMRUNUIHN0eWxlXG5cdCAqL1xuXHQuZm9ybV9fdWktLXNlbGVjdCB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0cGFkZGluZzogNXB4IDEycHggNXB4IDJweDtcblx0XHRcdGZvbnQtc2l6ZTogMTZweDsgLy8gZGlmZmVycyBmcm9tIGRlc2lnbiBhcyBpT1MgZ29lcyBtYWQsIHdoZW4gc21hbGxlciB0aGFuIDE2cHhcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjcxO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmd0JvbGQ7XG5cdFx0XHRjb2xvcjogJGNUZXh0O1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNXaGl0ZTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoICdkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIlM2UlM2NwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiJTIzMzQzYTQwXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMiA1bDYgNiA2LTZcIi8lM2UlM2Mvc3ZnJTNlJyApO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMHB4IDdweDtcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdC8qIHN0eWxlbGludC1kaXNhYmxlICovXG5cdFx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0XHQtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0XHRhcHBlYXJhbmNlOiBub25lO1xuXHRcdFx0Lyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXHRcdH1cblx0fVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRhYnM6IG1hbnkgdGFicyBpbiBhIHJvd1xuICovXG4uby10YWJzIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAxOTBweDtcblx0fVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBvbmx5IHN0dWZmIGZvciB0aGUgc2VhcmNoIHJlc3VsdHMgdmFyaWFudFxuICovXG4udGFicy0tc2VhcmNoLXJlc3VsdHMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0LnRhYl9fY29udGVudCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogYXV0bztcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHR9XG5cblx0Lm8tdGFiIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogb25seSBzdHVmZiBmb3IgdGhlIFwibm9ybWFsXCIgMTItY29sIHZhcmlhbnQsIGxpa2Ugb24gdGhlIGhvbWVwYWdlXG4gKi9cbi50YWJzLS0xMi1jb2wtdGFicyB7XG5cdEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuXG5cdC50YWJzX19jb250ZW50IHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXHR9XG5cblx0LnRhYl9fbGFiZWwge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdG9yZGVyOiAxO1xuXHRcdFx0ZmxleC1ncm93OiAxO1xuXHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRmbGV4LWJhc2lzOiAwO1xuXHRcdFx0bWFyZ2luLWxlZnQ6ICRzR3V0dGVyRG91YmxlO1xuXG5cdFx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQudGFiX19jb250ZW50IHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRvcmRlcjogMjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuIiwiJWxvY2FsLXRhYnMtYm94LS10ZXh0IHtcblx0Zm9udC1zaXplOiAyMHB4O1xuXHRsaW5lLWhlaWdodDogMzBweDtcbn1cblxuLm8tdGFicy0tYm94IHtcblx0b3ZlcmZsb3c6IGF1dG87IC8vIE5lZWRlZCB0byBnZXQgYmcgY29sb3Igd29yayBpbiBib3ggbW9kZWxcblx0Y29sb3I6ICRjVGV4dC0taW52ZXJzO1xuXG5cdC8vIERlZmF1bHQgdmFyaWFudFxuXHQmOm5vdCgudGFicy0tYm94LXF1b3RlKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNQYXJhbm9pZFB1cnBsZTtcblx0fVxuXG5cdC8vIFF1b3RlIHZhcmlhbnRcblx0Ji50YWJzLS1ib3gtcXVvdGUge1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgxMTJkZWcsICM1ZjJiNzQgMCUsICMzNzBmNDggMTAwJSkgMCAwIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcblx0fVxufVxuXG5cbi50YWJzX19jb250ZW50IHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luOiA3MHB4IDIwcHggNDBweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdH1cblxuXHQvLyBEZWZhdWx0IHZhcmlhbnRcblx0Lm8tdGFicy0tYm94Om5vdCgudGFicy0tYm94LXF1b3RlKSAmIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdzcGFjZXItbGVmdCBjYXB0aW9uIHRlYXNlcnMgc3BhY2VyLXJpZ2h0Jztcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIG1pbm1heCggYXV0bywgNDM1cHggKSBtaW5tYXgoIGF1dG8sIDQzNXB4ICkgMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZ2FwOiA1MHB4O1xuXHRcdFx0bWFyZ2luOiAxMTBweCBhdXRvIDcwcHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdzcGFjZXItbGVmdCBjYXB0aW9uIHRlYXNlcnMgc3BhY2VyLXJpZ2h0Jztcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIG1pbm1heCggYXV0bywgNTM1cHggKSBtaW5tYXgoIGF1dG8sIDUzNXB4ICkgMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZ2FwOiA1MHB4O1xuXHRcdFx0bWFyZ2luOiAxNzBweCBhdXRvIDExMHB4O1xuXHRcdH1cblx0fVxuXG5cblx0Ly8gUXVvdGUgdmFyaWFudFxuXHQuby10YWJzLS1ib3gudGFicy0tYm94LXF1b3RlICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ3NwYWNlci1sZWZ0IGhlYWRsaW5lIGhlYWRsaW5lIHNwYWNlci1yaWdodCdcblx0XHRcdFx0J3NwYWNlci1sZWZ0IGRldGFpbHRleHQgZGV0YWlsdGV4dCBzcGFjZXItcmlnaHQnXG5cdFx0XHRcdCdzcGFjZXItbGVmdCBjYXB0aW9uIHRlYXNlcnMgc3BhY2VyLXJpZ2h0Jztcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIG1pbm1heCggYXV0bywgMzk1cHggKSBtaW5tYXgoIGF1dG8sIDY3NXB4ICkgMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZ2FwOiA1MHB4O1xuXHRcdFx0bWFyZ2luOiA2MHB4IGF1dG8gNjVweDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ3NwYWNlci1sZWZ0IGhlYWRsaW5lIGhlYWRsaW5lIHNwYWNlci1yaWdodCdcblx0XHRcdFx0J3NwYWNlci1sZWZ0IGRldGFpbHRleHQgZGV0YWlsdGV4dCBzcGFjZXItcmlnaHQnXG5cdFx0XHRcdCdzcGFjZXItbGVmdCBjYXB0aW9uIHRlYXNlcnMgc3BhY2VyLXJpZ2h0Jztcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIG1pbm1heCggYXV0bywgMzk1cHggKSBtaW5tYXgoIGF1dG8sIDY3NXB4ICkgMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRcdFx0Z3JpZC1jb2x1bW4tZ2FwOiA1MHB4O1xuXHRcdFx0bWFyZ2luOiAxMDBweCBhdXRvIDExMHB4O1xuXHRcdH1cblx0fVxuXG5cblx0LnRlYXNlci1jb2xsZWN0aW9uX19oZWFkbGluZSB7XG5cdFx0Ly9mb250LXNpemU6IDQwcHg7XG5cdFx0Ly9saW5lLWhlaWdodDogNDZweDtcblx0XHRAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QtYWxsLWxpZ2h0LXdlaWdodCgpO1xuXHR9XG5cblx0LnRlYXNlci1jb2xsZWN0aW9uX19kZXRhaWx0ZXh0IHtcblx0XHQvL0BleHRlbmQgJWxvY2FsLXRhYnMtYm94LS10ZXh0O1xuXHRcdG1hcmdpbi10b3A6IDQ1cHg7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LWJpZ2dlc3QtYWxsKCk7XG5cdH1cblxuXHQvLyBPdXRzaWRlIHZhcmlhbnQgKGUuZy4gZm9yIFF1b3RlKVxuXHQ+IC50ZWFzZXItY29sbGVjdGlvbl9faGVhZGxpbmUge1xuXHRcdGdyaWQtYXJlYTogaGVhZGxpbmU7XG5cdH1cblxuXHQ+IC50ZWFzZXItY29sbGVjdGlvbl9fZGV0YWlsdGV4dCB7XG5cdFx0Z3JpZC1hcmVhOiBkZXRhaWx0ZXh0O1xuXHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDVweDtcblx0fVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IENhcHRpb24gb2YgbW9kdWxlIChsZWZ0IHNpZGUpXG4gKi9cbi50YWJzX19jYXB0aW9uIHtcblx0Z3JpZC1hcmVhOiBjYXB0aW9uO1xufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRvZ2dsZXMgbGlzdFxuICovXG4udGFic19fbGlua3Mge1xuXHRAaW5jbHVkZSByZXNldC1saXN0O1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDMycHg7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0bWFyZ2luLXRvcDogNjVweDtcblx0fVxuXG5cdC8vIFF1b3RlIHZhcmlhbnRcblx0LnRhYnMtLWJveC1xdW90ZSAmIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRcdG1hcmdpbi10b3A6IDM1cHg7XG5cdFx0fVxuXHR9XG5cblx0bGkgKyBsaSB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0fVxuXG5cdC50YWJzX19yYWRpbyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBUb2dnbGVcbiAqL1xuLnRhYnNfX2xpbmsge1xuXHRAZXh0ZW5kICVhLWJ1dHRvbjtcblx0cGFkZGluZy1yaWdodDogMzBweDtcblx0cGFkZGluZy1sZWZ0OiAzMHB4O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRjb2xvcjogJGNCdXR0b25UZXh0LS1pbnZlcnM7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjQnV0dG9uQmctLWludmVycztcblx0d2lkdGg6IDEwMCU7XG5cdG1heC13aWR0aDogMzQ0cHg7XG5cblx0Ly8gUXVvdGUgdmFyaWFudFxuXHQudGFicy0tYm94LXF1b3RlICYge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0bWF4LXdpZHRoOiAyMDBweDtcblx0XHR9XG5cdH1cbn1cblxuXG4udGFic19fbGluazpob3Zlcixcbi50YWJzX19yYWRpbzpjaGVja2VkICsgLnRhYnNfX2xpbmsge1xuXHRjb2xvcjogJGNCdXR0b25UZXh0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1Rhbmd5VHVycXVvaXNlO1xufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRlYXNlci9Nb2R1bGUgaW4gdGhlIHRhYnMgKHJpZ2h0IHNpZGUpXG4gKi9cbi50YWJzX190ZWFzZXItd3JhcHBlciB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDYwcHg7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0Z3JpZC1hcmVhOiB0ZWFzZXJzO1xuXHR9XG5cblx0Lm8tdGVhc2VyIC50ZWFzZXJfX2hlYWRsaW5lIHtcblx0XHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG5cdH1cbn1cblxuXG4udGFic19fdGVhc2VyIHtcblx0Jjpub3QoIC5pcy1zZWxlY3RlZCApIHtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0b3ZlcmZsb3cteTogaGlkZGVuO1xuXHR9XG5cblx0LnRlYXNlcl9faGVhZGxpbmUge1xuXHRcdG1hcmdpbi10b3A6IDhweDtcblx0XHQvL2ZvbnQtc2l6ZTogMzBweDtcblx0XHQvL2xpbmUtaGVpZ2h0OiAzNnB4O1xuXHRcdC8vZm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG5cdFx0QGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0LWFsbC1saWdodC13ZWlnaHQoKTtcblx0fVxuXG5cdC50ZWFzZXJfX3RleHQge1xuXHRcdC8vQGV4dGVuZCAlbG9jYWwtdGFicy1ib3gtLXRleHQ7XG5cdFx0QGluY2x1ZGUgZm9udC1jb3B5LWJpZ2dlc3QtYWxsKCk7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDI1cHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0bWFyZ2luLXRvcDogNTBweDtcblx0XHR9XG5cdH1cblxuXHQucnRlLS1saXN0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDE2cHg7XG5cblx0XHRsaSB7XG5cdFx0XHRsaXN0LXN0eWxlLXR5cGU6ICfil48nO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXG5cdFx0XHQmOjptYXJrZXIge1xuXHRcdFx0XHRmb250LXNpemU6IDI4cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAzMHB4O1xuXHRcdFx0XHRjb2xvcjogJGNUYW5neVR1cnF1b2lzZTtcblx0XHRcdH1cblxuXHRcdFx0KyBsaSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRcdH1cblx0XHR9XG5cblx0fVxufVxuXG5cblxuLnRlYXNlcl9fYnV0dG9uLXdyYXBwZXIge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdG1hcmdpbi10b3A6IDUwcHg7XG5cdH1cblxuXHQuYS1idXR0b24ge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4OyAvLyBZZWFoISwgbWFyZ2luLXJpZ2h0IGR1ZSB0byBzaWRlLWJ5LXNpZGUtcG9zaXRpb24gaW4gbW9iaWxlXG5cdFx0Ym9yZGVyOiBub25lO1xuXHR9XG59XG4iLCIldGVhc2VyX190ZXh0LS1kZXRhaWxwYWdlIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICB9XG59XG5cbmEuby10ZWFzZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkY1RleHQ7XG59XG5cbi5vLXRlYXNlciB7XG4gICYuaXMtbGlua2VkIHtcbiAgICAudGVhc2VyX19oZWFkbGluZSAuYS1saW5rIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuICAgIH1cblxuICAgIC50ZWFzZXJfX2JhZGdlLFxuICAgIC50ZWFzZXJfX2ltYWdlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAuYS1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgY29sb3I6ICRjVGV4dDtcbiAgfVxufVxuXG4udGVhc2VyLS01MC01MCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIG1hcmdpbjogMzBweCAkc0d1dHRlciAwO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgQGluY2x1ZGUgdHlwZS1hcmVhKCB0cnVlICk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBjb2xvcjogJGNUZXh0O1xuICB9XG5cbiAgLnRlYXNlcl9faW1hZ2Uge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNHdXR0ZXI7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDUwcHggMCAkc0d1dHRlcjtcbiAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHZhciggLS1zZWNvbmRhcnlDb2xvdXIgKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMCA1MHB4O1xuICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuICAgIH1cblxuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luOiAxMHB4IDIwcHggMDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSByaWNodGV4dDtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KG1vYmlsZU9ubHkpIHtcbiAgICAgIG1hcmdpbjogMjBweCAyMHB4IDA7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogJGZ3UmVndWxhcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogRGl2aWRlciBlbGVtZW50IGFzIGNvbG9yZWQgYm94IHdpdGggaGVhZGxpbmUgKyB0ZXh0XG4gKi9cbi50ZWFzZXItLWRpdmlkZXIge1xuICBAaW5jbHVkZSB0eXBlLWFyZWEoKTtcbiAgbWFyZ2luLXRvcDogNzVweDtcbiAgY29sb3I6ICRjV2hpdGU7XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgY29sb3I6ICRjV2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6ICRmd0JvbGQ7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggNCwgNiApO1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgcmljaHRleHQ7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDQsIDYgKTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBQYWdlIFRpdGxlLCBiYXIgQCB0b3Agb2YgcGFnZVxuICogMSkgR2VuZXJpYyBmb3IgYm90aCB2YXJpYW50cyAod2l0aG91dCBhbmQgd2l0aCBpbWFnZSlcbiAqIDIpIHZhcmlhbnQgd2l0aG91dCBpbWFnZVxuICogMykgdmFyaWFudCB3aXRoIGltYWdlXG4gKi9cbi8vIDEpIEdlbmVyaWMgcGFnZSB0aXRsZSBtaXhpbiBmb3IgdXNhZ2UgYWxzbyBpbnNpZGUgbWVkaWEgcXVlcmllc1xuQG1peGluIHRlYXNlci0tcGFnZS10aXRsZS1nZW5lcmljIHtcbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGNvbG9yOiAkY1doaXRlO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZndNZWRpdW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZndNZWRpdW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUycHg7XG4gICAgICBmb250LXdlaWdodDogJGZ3TWVkaXVtO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2hlYWRsaW5lLXBzZXVkby1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSByaWNodGV4dDtcbiAgfVxufVxuXG5AbWl4aW4gdGVhc2VyLS1wYWdlLXRpdGxlLWhlYWRsaW5lLXdyYXBwZXItYmctY29sb3JlZCB7XG4gIC50ZWFzZXJfX2hlYWRsaW5lLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG4gIH1cbn1cblxuQG1peGluIHRlYXNlci0tcGFnZS10aXRsZS10ZWFzZXItdGV4dC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG59XG5cblxuLy8gMikgUGFnZSB0aXRsZSB2YXJpYW50IHdpdGhvdXQgaW1hZ2Vcbi50ZWFzZXItLXBhZ2UtdGl0bGUge1xuICBAaW5jbHVkZSB0ZWFzZXItLXBhZ2UtdGl0bGUtZ2VuZXJpYztcbiAgQGluY2x1ZGUgdGVhc2VyLS1wYWdlLXRpdGxlLWhlYWRsaW5lLXdyYXBwZXItYmctY29sb3JlZDtcblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1hcmVhKCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG5cbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIEBpbmNsdWRlIHR5cGUtYXJlYSgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgQGluY2x1ZGUgdGVhc2VyLS1wYWdlLXRpdGxlLXRlYXNlci10ZXh0LXNtYWxsO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIDMpIFBhZ2UgdGl0bGUgdmFyaWFudCB3aXRoIGltYWdlXG4udGVhc2VyLS1wYWdlLXRpdGxlLXdpdGgtaW1hZ2Uge1xuICBAaW5jbHVkZSB0ZWFzZXItLXBhZ2UtdGl0bGUtZ2VuZXJpYztcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBAaW5jbHVkZSB0ZWFzZXItLXBhZ2UtdGl0bGUtaGVhZGxpbmUtd3JhcHBlci1iZy1jb2xvcmVkO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuICB9XG5cbiAgLnRlYXNlcl9faW1hZ2Uge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCAzLCA2ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDYsIDEyICk7XG4gICAgICBtYXgtd2lkdGg6IDU0MHB4O1xuICAgICAgbWFyZ2luOiAwICRzR3V0dGVyRG91YmxlO1xuICAgIH1cbiAgfVxuXG4gIC5tLWltYWdlX19ib3gge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgQGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goIDQsMyApO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMywgNiApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCA2LCAxMiApO1xuICAgICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgICAgIG1hcmdpbjogMCAkc0d1dHRlckRvdWJsZTtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBAaW5jbHVkZSB0eXBlLWFyZWEoKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zZWNvbmRhcnlDb2xvdXIgKTtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgQGluY2x1ZGUgdHlwZS1hcmVhKCk7XG4gICAgICBAaW5jbHVkZSB0ZWFzZXItLXBhZ2UtdGl0bGUtdGVhc2VyLXRleHQtc21hbGw7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNXaGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgY29sb3I6ICRjVGV4dC0taW52ZXJzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgY29sb3I6ICRjVGV4dC0taW52ZXJzO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRlYXNlciwgMTItY29sLCBnZW5lcmljIHN0eWxlc1xuICovXG4ldHdlbHZlLWNvbF9fdGVhc2VyIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuJXR3ZWx2ZS1jb2xfX3RlYXNlcl9faW1hZ2Uge1xuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICB3aWR0aDogY2FsYyggI3tjb2wtd2lkdGgoIDYsIDEyLCBmYWxzZSApfSAtICN7JHNHdXR0ZXJ9ICk7XG4gIH1cbn1cblxuJXR3ZWx2ZS1jb2xfX3RlYXNlcl9fY29udGVudCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogJHNHdXR0ZXJEb3VibGU7XG4gICAgcGFkZGluZy1yaWdodDogJHNHdXR0ZXJEb3VibGU7XG4gICAgd2lkdGg6IGNhbGMoICN7Y29sLXdpZHRoKCA2LCAxMiwgZmFsc2UgKX0gLSAjeyRzR3V0dGVyfSApO1xuICB9XG59XG5cbiV0d2VsdmUtY29sX190ZWFzZXJfX2hlYWRsaW5lIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuXG4gICYgKyAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICB9XG4gIH1cbn1cblxuJXR3ZWx2ZS1jb2xfX3RlYXNlcl9fdGV4dCB7XG4gIEBpbmNsdWRlIHJpY2h0ZXh0O1xuICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdC1hbGw7XG59XG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRlYXNlciwgVmlkZW9cbiAqL1xuLnRlYXNlci0xMi1jb2wtdmlkZW8ge1xuICBAZXh0ZW5kICV0d2VsdmUtY29sX190ZWFzZXI7XG5cbiAgLnRlYXNlcl9faW1hZ2Uge1xuICAgIEBleHRlbmQgJXR3ZWx2ZS1jb2xfX3RlYXNlcl9faW1hZ2U7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNHdXR0ZXI7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgQGV4dGVuZCAldHdlbHZlLWNvbF9fdGVhc2VyX19jb250ZW50O1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogJHNHdXR0ZXI7XG4gICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzR3V0dGVyO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2hlYWRsaW5lIHtcbiAgICBAZXh0ZW5kICV0d2VsdmUtY29sX190ZWFzZXJfX2hlYWRsaW5lO1xuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgQGV4dGVuZCAldHdlbHZlLWNvbF9fdGVhc2VyX190ZXh0O1xuICB9XG59XG5cblxuXG4udGVhc2VyLTQtY29sLXZpZGVvIHtcbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHZhciggLS1zZWNvbmRhcnlDb2xvdXIgKTtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2hlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE3cHg7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbjogMTBweCAyMHB4IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luOiAxMHB4IDIwcHggMDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSByaWNodGV4dDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbjogMjBweCAyMHB4IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luOiAyMHB4IDIwcHggMDtcbiAgICB9XG4gIH1cbn1cblxuLnRlYXNlci0tMTItY29sLWV4dGVybmFsLWxpbmstdGVhc2VyIHtcbiAgQGluY2x1ZGUgdHlwZS1hcmVhKCk7XG4gIEBleHRlbmQgLnRlYXNlci0tMTItY29sLXRlYXNlci1hbHRlcm5hdGluZztcbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogVGVhc2VyLCBhbHRlcm5hdGluZ1xuICovXG4udGVhc2VyLS0xMi1jb2wtdGVhc2VyLWFsdGVybmF0aW5nIHtcbiAgQGV4dGVuZCAldHdlbHZlLWNvbF9fdGVhc2VyO1xuXG4gIC50ZWFzZXJfX2ltYWdlIHtcbiAgICBAZXh0ZW5kICV0d2VsdmUtY29sX190ZWFzZXJfX2ltYWdlO1xuICB9XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgQGV4dGVuZCAldHdlbHZlLWNvbF9fdGVhc2VyX19jb250ZW50O1xuICB9XG5cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgQGV4dGVuZCAldHdlbHZlLWNvbF9fdGVhc2VyX19oZWFkbGluZTtcbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIEBleHRlbmQgJXR3ZWx2ZS1jb2xfX3RlYXNlcl9fdGV4dDtcbiAgfVxuXG4gIC5idG4ge1xuICAgIEBleHRlbmQgLmEtYnV0dG9uO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbi0tc2Vjb25kYXJ5LFxuICAuYnRuLS1zZWNvbmRhcnkge1xuICAgIEBleHRlbmQgLmJ1dHRvbi0tc2Vjb25kYXJ5O1xuICB9XG59XG5cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogMTItY29sLCBpbWFnZSArIENUQVxuICovXG4udGVhc2VyLS0xMi1jb2wtd2l0aC1pbWFnZS1hbmQtY3RhIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cblxuICBAaW5jbHVkZSB0eXBlLWFyZWEoKTtcblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSByaWNodGV4dDtcbiAgICBAZXh0ZW5kICV0ZWFzZXJfX3RleHQtLWRldGFpbHBhZ2U7XG4gIH1cblxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogNzBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19idXR0b24td3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuYnRuIHtcbiAgICBAZXh0ZW5kIC5hLWJ1dHRvbjtcbiAgfVxuXG4gIC5hLWxpbmsge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAmOm5vdCggLmJ0biApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogU2VhcmNoIFJlc3VsdFxuICovXG4udGVhc2VyLS1zZWFyY2gtcmVzdWx0IHtcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBjb2wtd2lkdGgoIDIsIDEyICkgY29sLXdpZHRoKCAxMCwgMTIgKTtcbiAgfVxuXG5cbiAgJiArICYge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgZ3JpZC1hcmVhOiAxIC8gMSAvIDIgLyAyO1xuICAgIH1cbiAgfVxuXG4gIC5tLWltYWdlX19ib3gge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1hc3BlY3QtcmF0aW8tYm94KCAxNiwgOSApO1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA5MCU7XG5cbiAgICAmOmVtcHR5IHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCggJy4uLy4uL2ltZy9sb2dvLWNtLWdyZXkuc3ZnJyApIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBncmlkLWFyZWE6IDEgLyAyIC8gMiAvIDM7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzR3V0dGVyRG91YmxlO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2hlYWRsaW5lIHtcbiAgICBmb250LXdlaWdodDogJGZ3Qm9sZDtcbiAgICBjb2xvcjogJGNUZXh0O1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiAkY1RleHQ7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMztcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19zZWFyY2gtcmVzdWx0X191cmwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcbiAgfVxufVxuXG5cbi50ZWFzZXItLTEyLWNvbC10YWIge1xuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxuXG4gIC5ydGUtLWxpc3Qge1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBjb2x1bW5zOiAzIGF1dG87XG4gICAgICBjb2x1bW4tZ2FwOiAkc0d1dHRlckRvdWJsZTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuICAgICAgfVxuXG4gICAgICArIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19idXR0b24td3JhcHBlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgID4gKiArICoge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgPiAqIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXItLWJsb2ctYXV0aG9yIHtcbiAgLnRlYXNlcl9faW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLnRlYXNlci0tYmxvZyB7XG4gIC50ZWFzZXJfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYXNwZWN0LXJhdGlvLWJveCggMTYsIDkgKTtcblxuICAgIC5hLWltYWdlIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1zdHJldGNoLWFic29sdXRlKCk7XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXItLWJveC1vcGVuZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gICYuaXMtbGlua2VkIC50ZWFzZXJfX2hlYWRsaW5lIC5hLWxpbmsge1xuICAgIGNvbG9yOiAkY1doaXRlO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgcGFkZGluZzogNjBweCBjb2wtd2lkdGgoIDAuNSwgMTIsIGZhbHNlICkgMTIwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBwYWRkaW5nOiA3MHB4IDAgMTQwcHg7XG4gIH1cblxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCA2LCAxMiwgZmFsc2UgKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIHdpZHRoOiBjYWxjKCAje2NvbC13aWR0aCggNSwgMTIsIGZhbHNlICl9IC0gMzBweCApO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMTIsIDEyLCBmYWxzZSApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgd2lkdGg6IGNhbGMoICN7Y29sLXdpZHRoKCA3LCAxMiwgZmFsc2UgKX0gLSAzMHB4ICk7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuICAgIEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtYmlnZ2VzdC1hbGwtbGlnaHQtd2VpZ2h0KCk7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuXG4gICAgJiArIC50ZWFzZXJfX3RleHQge1xuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIGNvbG9yOiAkY1doaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuICAgIEBpbmNsdWRlIGZvbnQtY29weS1iaWdnZXN0LWFsbCgpO1xuICB9XG5cbiAgLnRlYXNlcl9fYnV0dG9uLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXItLWJveC12aWRlbyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJoZWFkbGluZVwiIFwidGV4dFwiIFwiaW1hZ2VcIiBcImJ1dHRvblwiO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJoZWFkbGluZSBpbWFnZVwiIFwidGV4dCBpbWFnZVwiIFwiYnV0dG9uIGltYWdlXCI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1ZnIgN2ZyO1xuICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDEyMWRlZywgI3skY1doaXRlfSAwJSwgI3skY1doaXRlfSA3MCUsICN7JGNUYW5neVR1cnF1b2lzZX0gMTAwJSkgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIC8vb3BhY2l0eTogMTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgcGFkZGluZzogNjBweCAwIDEyMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgcGFkZGluZzogNzBweCAwIDE0MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIHBhZGRpbmc6IDkwcHggMCAxODBweDtcbiAgfVxuXG4gIC50ZWFzZXJfX2ltYWdlIHtcbiAgICBncmlkLWFyZWE6IGltYWdlO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgbWFyZ2luOiAwIGNvbC13aWR0aCgxLCA3LCBmYWxzZSkgMCBjb2wtd2lkdGgoMC41LCA3LCBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGdyaWQtYXJlYTogaGVhZGxpbmU7XG4gICAgZm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG4gICAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0LWFsbC1saWdodC13ZWlnaHQoKTtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgbWFyZ2luOiAwIGNvbC13aWR0aCggMC41LCA1LCBmYWxzZSApIDAgY29sLXdpZHRoKCAxLCA1LCBmYWxzZSApO1xuICAgIH1cblxuICAgICYgKyAudGVhc2VyX190ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgZm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG4gICAgQGluY2x1ZGUgZm9udC1jb3B5LWJpZ2dlc3QtYWxsKCk7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIG1hcmdpbjogMCBjb2wtd2lkdGgoIDAuNSwgNSwgZmFsc2UgKSAwIGNvbC13aWR0aCggMSwgNSwgZmFsc2UgKTtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19idXR0b24td3JhcHBlciB7XG4gICAgZ3JpZC1hcmVhOiBidXR0b247XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBtYXJnaW46IDQwcHggY29sLXdpZHRoKCAwLjUsIDUsIGZhbHNlICkgMCBjb2wtd2lkdGgoIDEsIDUsIGZhbHNlICk7XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXItLWJveC1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpbWFnZSBpbWFnZSBpbWFnZVwiIFwiY29udGVudCBjb250ZW50IGNvbnRlbnRcIjtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzZnIgMWZyIDFmcjtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cbiAgLnRlYXNlcl9faW1hZ2Uge1xuICAgIGdyaWQtYXJlYTogaW1hZ2U7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDI7XG4gICAgZ3JpZC1jb2x1bW4tZW5kOiA0O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuYS1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudGVhc2VyX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtYXJlYTogY29udGVudDtcbiAgICBwYWRkaW5nOiAwIGNvbC13aWR0aCggMC41LCA1LCBmYWxzZSApIGNvbC13aWR0aCggMC41LCA1LCBmYWxzZSApO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImhlYWRsaW5lXCIgXCJ0ZXh0XCIgXCJidXR0b25cIjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiaGVhZGxpbmUgYnV0dG9uXCIgXCJ0ZXh0IGJ1dHRvblwiO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzLjVmciAwLjVmcjtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgZ3JpZC1hcmVhOiBoZWFkbGluZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc0d1dHRlcjtcbiAgICBmb250LXdlaWdodDogJGZ3UmVndWxhcjtcbiAgICBAaW5jbHVkZSBmb250LWhlYWRsaW5lLWJpZ2dlc3QtYWxsLWxpZ2h0LXdlaWdodCgpO1xuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzR3V0dGVyO1xuICB9XG5cbiAgLnRlYXNlcl9fYnV0dG9uLXdyYXBwZXIge1xuICAgIGdyaWQtYXJlYTogYnV0dG9uO1xuICAgIHBhZGRpbmctbGVmdDogJHNHdXR0ZXI7XG4gICAgYWxpZ24tc2VsZjogZW5kO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuXG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG4gICAgfVxuICB9XG59XG4iLCIudGVhc2VyLS1ib3gtaGVybyB7XG5cblx0LnRlYXNlcl9fY29udGVudCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlOyAvLyBPdmVyd3JpdGluZyBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgLm8taGVybyAudGVhc2VyLWNvbnRlbnRcblx0XHRkaXNwbGF5OiBncmlkO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdjb250ZW50J1xuXHRcdFx0XHQnaW1hZ2UnO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBtYXgtY29udGVudCBtYXgtY29udGVudDtcblx0XHRcdHJvdy1nYXA6IDI2cHg7XG5cdFx0XHRtYXgtd2lkdGg6IDc1MHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ2ltYWdlIGNvbnRlbnQnO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXHRcdFx0Y29sdW1uLWdhcDogODZweDtcblx0XHR9XG5cdH1cblxuXHQudGVhc2VyX19pbWFnZSB7XG5cdFx0Z3JpZC1hcmVhOiBpbWFnZTtcblxuXHRcdC5hLWltYWdlIHtcblx0XHRcdGJveC1zaGFkb3c6IDAgM3B4IDZweCAjMDAwMDAwNGQ7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlcl9faW5uZXItd3JhcHBlciB7XG5cdFx0Z3JpZC1hcmVhOiBjb250ZW50O1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ2xvZ28nXG5cdFx0XHQnaGVhZGxpbmUnXG5cdFx0XHQndGV4dCdcblx0XHRcdCdhY3Rpb25zJztcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IG1heC1jb250ZW50IG1heC1jb250ZW50IG1heC1jb250ZW50O1xuXHR9XG5cblx0LnRlYXNlcl9fbG9nbyB7XG5cdFx0Z3JpZC1hcmVhOiBsb2dvO1xuXG5cdFx0LmEtaW1hZ2Uge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdG1heC1oZWlnaHQ6IDcwcHg7XG5cdFx0XHRtYXgtd2lkdGg6IDE1MHB4O1xuXHRcdH1cblxuXHRcdCYgKyAudGVhc2VyX19oZWFkbGluZSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXJfX2hlYWRsaW5lIHtcblx0XHRncmlkLWFyZWE6IGhlYWRsaW5lO1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRcdGZvbnQtc2l6ZTogNDZweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRmb250LXNpemU6IDYwcHg7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlcl9fdGV4dCB7XG5cdFx0Z3JpZC1hcmVhOiB0ZXh0O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdGZvbnQtc2l6ZTogMjJweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxN3B4O1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdH1cblxuXHRcdD4gcDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXJfX2FjdGlvbnMge1xuXHRcdGdyaWQtYXJlYTogYWN0aW9ucztcblxuXHRcdC5hLWJ1dHRvbiB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0fVxuXG5cdFx0c3ZnIHtcblx0XHRcdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyBPdmVyd3JpdGluZyBHbGlkZSB2ZW5kb3IgQ1NTXG5cdFx0fVxuXHR9XG59XG4iLCIudGVhc2VyLS1ib3gtZ2F0ZXdheSB7XG5cdHBhZGRpbmc6IDE2cHggMThweCAyNHB4IDI0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDE0cHg7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgxMDJkZWcsICM2NzI3NzkgMCUsICM2ZmMzYjggMTAwJSkgMCAwIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcblxuXHQudGVhc2VyX19oZWFkbGluZSB7XG5cdFx0Zm9udC1zaXplOiAyMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyOHB4O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXHRcdGNvbG9yOiAkY1RleHQtLWludmVycztcblx0fVxuXG5cdC50ZWFzZXJfX2J1dHRvbi13cmFwcGVyIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59XG4iLCIudGVhc2VyLS1ib3gtZW51bWVyYXRpbmcge1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ3NwYWNlci1sZWZ0IGhlYWRsaW5lIHNwYWNlci1taWRkbGUgaW1hZ2Ugc3BhY2VyLXJpZ2h0J1xuXHRcdFx0J3NwYWNlci1sZWZ0IHRleHQgc3BhY2VyLW1pZGRsZSBpbWFnZSBzcGFjZXItcmlnaHQnXG5cdFx0XHQnc3BhY2VyLWxlZnQgdGV4dCBzcGFjZXItbWlkZGxlIGJ1dHRvbiBzcGFjZXItcmlnaHQnO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCBjYWxjKCA1MyUgLSA2N3B4ICkgNTBweCBjYWxjKCA0NyUgLSA2N3B4ICkgNDJweDtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvOyAvLyA4MHB4ID0gYnV0dG9uLWhlaWdodCArIG1hcmdpbi10b3Bcblx0XHRjb2x1bW4tZ2FwOiAwO1xuXHR9XG5cblx0LnRlYXNlcl9faW1hZ2Uge1xuXHRcdGdyaWQtYXJlYTogaW1hZ2U7XG5cdH1cblxuXHQudGVhc2VyX19oZWFkbGluZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Zm9udC1zaXplOiAzMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAzNnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXHRcdGNvbG9yOiAkY1BhcmFub2lkUHVycGxlO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyNXB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0Z3JpZC1hcmVhOiBoZWFkbGluZTtcblx0XHR9XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IHRlYXNlci1lbnVtZXJhdGluZztcblx0XHRcdGNvbnRlbnQ6IGNvdW50ZXIoIHRlYXNlci1lbnVtZXJhdGluZyApO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0Zm9udC1zaXplOiAzMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDUwcHg7XG5cdFx0XHRmb250LXdlaWdodDogJGZ3Qm9sZDtcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNQYXJhbm9pZFB1cnBsZTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHR9XG5cdH1cblxuXHQudGVhc2VyX190ZXh0IHtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDMwcHg7XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0XHRncmlkLWFyZWE6IHRleHQ7XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblxuXHRcdD4gKjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblxuXHRcdD4gKjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0LnRlYXNlcl9fYnV0dG9uLXdyYXBwZXIge1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyNXB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdFx0Z3JpZC1hcmVhOiBidXR0b247XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdH1cblxuXHRcdC5hLWJ1dHRvbiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxufVxuIiwiJXRlYXNlci1oZWFkbGluZSB7XG4gIGZvbnQtZmFtaWx5OiAkZk5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmd0JvbGQ7XG59XG5cbiV0ZWFzZXItdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZk5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmd1JlZ3VsYXI7XG59XG5cbiV0ZWFzZXItaGVhZGxpbmUtNC1pbi1hLXJvdyB7XG4gIGNvbG9yOiAkY1RleHQ7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG59XG5cbiV0ZWFzZXItdGV4dC00LWluLWEtcm93IHtcbiAgY29sb3I6ICRjVGV4dDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbn1cblxuLy8gc2FtZSBmb3IgJXRlYXNlci1oZWFkbGluZS00LWNvbC10ZWFzZXItZG93bmxvYWRcbi8vIHNhbWUgZm9yICV0ZWFzZXItaGVhZGxpbmUtMTItY29sLXRlYXNlci1hbHRlcm5hdGluZ1xuJXRlYXNlci1oZWFkbGluZS0xMi1jb2wtdGVhc2VyLTUwLTUwIHtcbiAgY29sb3I6ICRjVGV4dDtcblxuICAvLyBtb2JpbGUgenVyIFplaXQgdm9tIERvd25sb2FkLUdlbmVyaWMgYWJnZW5vbW1lblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cblxuQG1peGluIHRlYXNlci10ZXh0LTEyLWNvbC10ZWFzZXItNTAtNTAge1xuICBjb2xvcjogJGNUZXh0O1xuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggbW9iaWxlICk7XG4gIH1cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgQGluY2x1ZGUgZm9udC1jb3B5LWRlZmF1bHQoIHRhYmxldCApO1xuICB9XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggZGVza3RvcCApO1xuICB9XG59XG5cblxuJXRlYXNlci1jb2xsZWN0aW9uLWhlYWRsaW5lLW1haW4taDEge1xuICBmb250LXdlaWdodDogJGZ3Qm9sZDtcbiAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0LWFsbCgpO1xufVxuXG4ldGVhc2VyLWNvbGxlY3Rpb24tZGV0YWlsdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiAkZndSZWd1bGFyO1xuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogZ2VuZXJpYyBzdHlsaW5nIGZvciAuLi5cbiAqIC0gNi1jb2wtcHJlc3MtdGVhc2VyY29sbGVjdGlvblxuICogLSB0ZWFzZXItY29sbGVjdGlvbi0tMTItY29sLXRlYXNlci01MC01MFxuICovXG4lcmVuZGVyLTUwLTUwLXRlYXNlci1pbi10ZWFzZXItY29sbGVjdGlvbiB7XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0jeyRzR3V0dGVyfTtcbiAgfVxuXG4gIC5vLXRlYXNlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBncmlkKCAzICwgNiApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBAaW5jbHVkZSBncmlkKCA2ICwgMTIgKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgICAgICY6bnRoLWNoaWxkKCAxICksXG4gICAgICAmOm50aC1jaGlsZCggMiApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHZhciggLS1zZWNvbmRhcnlDb2xvdXIgKTtcbiAgICAgIGhlaWdodDogMjUlO1xuXG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgICAgcmlnaHQ6ICRzR3V0dGVyO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgLmJ0biB7XG4gICAgICBAZXh0ZW5kIC5hLWJ1dHRvbjtcblxuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLS1zZWNvbmRhcnksXG4gICAgLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICAgIEBleHRlbmQgLmJ1dHRvbi0tc2Vjb25kYXJ5O1xuICAgIH1cblxuXG4gIH1cbn1cblxuXG4ldGVhc2VyLWNvbGxlY3Rpb25fX2N0YS1yb3ctLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgfVxufVxuXG5cblxuLyoqXG4gKlxuICovXG4uby10ZWFzZXItY29sbGVjdGlvbiB7XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIG1hcmdpbjogMjBweCAkc0d1dHRlciAwO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBAaW5jbHVkZSB0eXBlLWFyZWEoKTtcbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIEBpbmNsdWRlIHJpY2h0ZXh0O1xuICB9XG59XG5cblxuLnRlYXNlci1jb2xsZWN0aW9uX19oZWFkbGluZSB7XG4gIEBleHRlbmQgJXRlYXNlci1jb2xsZWN0aW9uLWhlYWRsaW5lLW1haW4taDE7XG59XG5cblxuLnRlYXNlci1jb2xsZWN0aW9uX19kZXRhaWx0ZXh0IHtcbiAgQGluY2x1ZGUgcmljaHRleHQ7XG4gIEBleHRlbmQgJXRlYXNlci1jb2xsZWN0aW9uLWRldGFpbHRleHQ7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQodGFibGV0RGVza3RvcCkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuLnRlYXNlci1jb2xsZWN0aW9uX19jdGEtcm93IHtcbiAgLmEtbGluayB7XG4gICAgQGV4dGVuZCAuYS1idXR0b247XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cblxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLXZpZGVvIHtcbiAgLnRlYXNlci1jb2xsZWN0aW9uX19oZWFkbGluZSB7XG4gICAgcGFkZGluZzogMzVweCAyMHB4O1xuICAgIGNvbG9yOiAkY1doaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLSRzR3V0dGVyO1xuICB9XG5cbiAgLm8tdGVhc2VyIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgQGluY2x1ZGUgZ3JpZCggMyAsIDEyICk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKCAtLXNlY29uZGFyeUNvbG91ciApO1xuICAgICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiA4cHggMjBweCAxMHB4O1xuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIEBleHRlbmQgJXRlYXNlci1oZWFkbGluZTtcbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgQGV4dGVuZCAldGVhc2VyLXRleHQ7XG4gICAgQGluY2x1ZGUgdGVhc2VyLXRleHQtMTItY29sLXRlYXNlci01MC01MCgpO1xuICB9XG59XG5cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogVGVhc2VyY29sbGVjdGlvbiB3aXRoIFVTUC1SZWVsIHRlYXNlcnNcbiAqL1xuLnRlYXNlci1jb2xsZWN0aW9uLS11c3AtcmVlbCB7XG4gIGNvbG9yOiAkY1RleHQ7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogOTBweDtcbiAgfVxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9faGVhZGxpbmUge1xuICAgIGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9fZGV0YWlsdGV4dCB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG4gIH1cblxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9fdGVhc2VyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogNjBweCAtI3skc0d1dHRlcn0gMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMTIwcHggLSN7JHNHdXR0ZXJ9IDA7XG4gICAgfVxuICB9XG5cbiAgLm8tdGVhc2VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBAaW5jbHVkZSBncmlkKCA0LCAxMiApO1xuICAgICAgbWFyZ2luOiAwICRzR3V0dGVyO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC50ZWFzZXJfX2JhZGdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAkY1doaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZndCb2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgdG9wOiAtNThweDtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTE1cHg7XG4gICAgICBoZWlnaHQ6IDExNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgdG9wOiAtNTBweDtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogODJweDtcbiAgICAgIGhlaWdodDogODJweDtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICB0b3A6IC04MHB4O1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiA0NnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjVGFuZ3lUdXJxdW9pc2U7XG4gICAgY29sb3I6ICRjVGV4dDtcbiAgICBmb250LXdlaWdodDogJGZ3UmVndWxhcjtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgcGFkZGluZzogODBweCAxNXB4IDEwcHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIHBhZGRpbmc6IDQ2cHggMjBweCAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgcGFkZGluZzogOTVweCAyMHB4IDEwcHg7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBmb250LXdlaWdodDogJGZ3UmVndWxhcjtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggbW9iaWxlICk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCB0YWJsZXQgKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9udC1jb3B5LWRlZmF1bHQoIGRlc2t0b3AgKTtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX2N0YS1yb3cge1xuICAgIEBleHRlbmQgJXRlYXNlci1jb2xsZWN0aW9uX19jdGEtcm93LS1jZW50ZXJlZDtcbiAgfVxufVxuXG5cbi50ZWFzZXItY29sbGVjdGlvbi0tbG9nby13YWxsIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9faGVhZGxpbmUge1xuICAgIEBleHRlbmQgJXRlYXNlci1jb2xsZWN0aW9uLWhlYWRsaW5lLW1haW4taDE7XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSggMTAwJSApO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luOiAwIC0jeyRzR3V0dGVyfSAwO1xuICAgIH1cblxuICB9XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX19oZWFkbGluZSArIC50ZWFzZXItY29sbGVjdGlvbl9fdGVhc2VyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTIuNXB4OyAvLyAyNXB4IC0gbWFyZ2luLXRvcCBvZiBlYWNoIHRlYXNlclxuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIH1cbiAgfVxuXG5cbiAgLm0taW1hZ2VfX2JveCB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goIDE2LCA5ICk7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDEyLjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEyLjVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoICN7Y29sLXdpZHRoKCAxLCAzLCBmYWxzZSApfSAtIDEwcHggKTtcblxuICAgICAgJjpudGgtY2hpbGQoIDNuICsgMSApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICB3aWR0aDogY2FsYyggI3tjb2wtd2lkdGgoIDEsIDYsIGZhbHNlICl9IC0gI3skc0d1dHRlcn0gKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc0d1dHRlcjtcblxuICAgICAgJjpudGgtY2hpbGQoIDZuICsgMSApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMiwgMTIgKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc0d1dHRlckRvdWJsZTtcblxuICAgICAgJjpudGgtY2hpbGQoIDZuICsgMSApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmEtaW1hZ2Uge1xuICAgIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX2N0YS1yb3cge1xuICAgIEBleHRlbmQgJXRlYXNlci1jb2xsZWN0aW9uX19jdGEtcm93LS1jZW50ZXJlZDtcbiAgfVxufVxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiBCYW5uZXIgd2l0aCBDb250YWN0cy9BZ2VudHNcbiAqL1xuLnRlYXNlci1jb2xsZWN0aW9uLS1jb250YWN0LWludml0ZXMge1xuICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcbiAgY29sb3I6ICRjV2hpdGU7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luOiA3NXB4IDAgMDtcbiAgfVxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICBtYXJnaW46IDc1cHggMCAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gICYgPiAqIHtcbiAgICBAaW5jbHVkZSB0eXBlLWFyZWEoKTtcbiAgfVxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9faGVhZGxpbmUge1xuICAgIEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdC1hbGw7XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX2RldGFpbHRleHQge1xuICAgIEBpbmNsdWRlIGZvbnQtY29weS1iaWdnZXN0LWFsbDtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5vLXRlYXNlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMiwgNiApOyAvLyBEdWUgdG8gcHJvYmxlbXMgaW4gdGhlIGxvd2VyIHRhYmV0IHdpZHRoIHJhbmdlc1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubS1pbWFnZV9fYm94IHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYXNwZWN0LXJhdGlvLWJveCggMSwgMSApO1xuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgcmljaHRleHQ7XG4gICAgQGluY2x1ZGUgZm9udC1jb3B5LXNtYWxsZXN0LWFsbDtcbiAgfVxufVxuXG4vLyBFeHBsaWNpdCA2LWNvbCB2YXJpYW50XG4udGVhc2VyLWNvbGxlY3Rpb24tLTYtY29sLWNvbnRhY3QtaW52aXRlcyB7XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5vLXRlYXNlciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiBjb2wtd2lkdGgoIDQsIDYsIGZhbHNlICk7XG4gICAgY29sb3I6ICRjV2hpdGU7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIgKiAkc0d1dHRlcjtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICB3aWR0aDogODVweDtcbiAgICAgIGhlaWdodDogODVweDtcbiAgICAgIG1heC13aWR0aDogODVweDtcbiAgICAgIG1heC1oZWlnaHQ6IDg1cHg7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNHdXR0ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRXhwbGljaXQgNC1jb2wgdmFyaWFudFxuLnRlYXNlci1jb2xsZWN0aW9uLS00LWNvbC1jb250YWN0LWludml0ZXMge1xuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5vLXRlYXNlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICArIC5vLXRlYXNlciB7XG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICB3aWR0aDogODVweDtcbiAgICAgIGhlaWdodDogODVweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkc0d1dHRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzR3V0dGVyO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIGNvbG9yOiAkY1doaXRlO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzR3V0dGVyRG91YmxlO1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggMywgNiApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogVGVhc2VyLUNvbGxlY3Rpb24gNTAtNTBcbiAqL1xuLnRlYXNlci1jb2xsZWN0aW9uLS0xMi1jb2wtdGVhc2VyLTUwLTUwIHtcbiAgQGV4dGVuZCAlcmVuZGVyLTUwLTUwLXRlYXNlci1pbi10ZWFzZXItY29sbGVjdGlvbjtcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlVGFibGV0ICkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cblxuICAuby10ZWFzZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoIDEgKSxcbiAgICAmOm50aC1jaGlsZCggMiApIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbjogMCAkc0d1dHRlcjtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbjogMzBweCAkc0d1dHRlciAwO1xuICAgICAgcGFkZGluZzogMTBweCAzMHB4IDM1cHggJHNHdXR0ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMzBweCAzNXB4ICRzR3V0dGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMzVweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgZm9udC13ZWlnaHQ6ICRmd0JvbGQ7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBAaW5jbHVkZSBmb250LWhlYWRsaW5lLWRlZmF1bHQoIG1vYmlsZSApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdCggdGFibGV0ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdCggZGVza3RvcCApO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCBtb2JpbGUgKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9udC1jb3B5LWRlZmF1bHQoIHRhYmxldCApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggZGVza3RvcCApO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IFRlYXNlcmNvbGxlY3Rpb24sIGFsdGVybmF0aW5nXG4gKi9cbi50ZWFzZXItY29sbGVjdGlvbi0tMTItY29sLXRlYXNlci1hbHRlcm5hdGluZyB7XG5cbiAgLm8tdGVhc2VyIHtcbiAgICBAZXh0ZW5kIC50ZWFzZXItLTEyLWNvbC10ZWFzZXItYWx0ZXJuYXRpbmc7XG5cbiAgICAmOm50aC1jaGlsZCggb2RkICkge1xuICAgICAgLnRlYXNlcl9faW1hZ2Uge1xuICAgICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzR3V0dGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzR3V0dGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoIGV2ZW4gKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgIC50ZWFzZXJfX2ltYWdlIHtcbiAgICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzR3V0dGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhciggLS1zZWNvbmRhcnlDb2xvdXIgKTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzR3V0dGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoIDEwMCUgLSAjeyRzR3V0dGVyfSApO1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogJHNHdXR0ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzR3V0dGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLXF1b3RlIHtcbiAgLnRlYXNlci1jb2xsZWN0aW9uX19oZWFkbGluZSB7XG4gICAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1iaWdnZXN0LWFsbDtcbiAgfVxuXG4gIC50ZWFzZXItY29sbGVjdGlvbl9fZGV0YWlsdGV4dCB7XG4gICAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1kZWZhdWx0LWFsbDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cblxuICAuby1xdW90ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAucXVvdGVfX3RleHQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi50ZWFzZXItY29sbGVjdGlvbi0tNC1jb2wtZG93bmxvYWQtdGVhc2VyLTF4MSxcbi50ZWFzZXItY29sbGVjdGlvbi0tNC1jb2wtZG93bmxvYWQtdGVhc2VyLTE2eDkge1xuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgLSN7JHNHdXR0ZXJ9O1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gIH1cblxuICAuby1kb3dubG9hZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogNTBweCAkc0d1dHRlciAwO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggNCwgMTIsIHRydWUgKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCggMSApLFxuICAgICY6bnRoLWNoaWxkKCAyICksXG4gICAgJjpudGgtY2hpbGQoIDMgKSB7XG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAuZG93bmxvYWRfX3RpdGxlIHtcbiAgICBAZXh0ZW5kICV0ZWFzZXItaGVhZGxpbmUtMTItY29sLXRlYXNlci01MC01MDtcbiAgfVxuXG4gIC5kb3dubG9hZF9fdGV4dCxcbiAgLmRvd25sb2FkX19maWxlLXNpemUge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgQGluY2x1ZGUgdGVhc2VyLXRleHQtMTItY29sLXRlYXNlci01MC01MCgpO1xuICAgIH1cbiAgfVxufVxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLTQtY29sLWRvd25sb2FkLXRlYXNlci0xeDEge1xuXG4gIC5kb3dubG9hZF9fdGl0bGUge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtaGVpZ2h0OiA2NHB4OyAvLyAyICogbGluZS1oZWlnaHQgw6EgMzJweCBAdG9kb1xuICB9XG5cbiAgLm8tZG93bmxvYWQge1xuICAgIEBleHRlbmQgLmRvd25sb2FkLTQtY29sLWRvd25sb2FkLXRlYXNlci0xeDE7XG4gIH1cbn1cblxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbjogRG93bmxvYWQvRmFjdHNoZWV0IGluIDQtY29sIHZhcmlhbnRcbiAqIChhY2NvcmRpbmcgZGVzaWducyBmb3IgYSAzLWNvbCB2YXJpYW50KVxuICovXG4udGVhc2VyLWNvbGxlY3Rpb24tLTQtY29sLWRvd25sb2FkLXRlYXNlci0xNng5IHtcbiAgLm8tZG93bmxvYWQge1xuICAgIEBleHRlbmQgLmRvd25sb2FkLTQtY29sLWRvd25sb2FkLXRlYXNlci0xeDE7XG4gIH1cblxuICAuZG93bmxvYWRfX3RleHQge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxufVxuXG5cblxuLyoqXG4gKiBAZGVzY3JpcHRpb246IDYtY29sLXByZXNzLXRlYXNlciwgYWxzbzogXCJDYXB0aW9uIGFuZCBDb3B5XCJcbiAqL1xuLnRlYXNlci1jb2xsZWN0aW9uLS02LWNvbC1wcmVzcy10ZWFzZXIge1xuICBAZXh0ZW5kICVyZW5kZXItNTAtNTAtdGVhc2VyLWluLXRlYXNlci1jb2xsZWN0aW9uO1xuXG4gIC5vLXRlYXNlciB7XG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xuICB9XG5cbiAgLnRlYXNlcl9faGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxuXG4gIC50ZWFzZXJfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBAaW5jbHVkZSBmb250LWNvcHktc21hbGxlc3QtYWxsO1xuICB9XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX19jdGEtcm93IHtcbiAgICBAZXh0ZW5kICV0ZWFzZXItY29sbGVjdGlvbl9fY3RhLXJvdy0tY2VudGVyZWQ7XG4gIH1cbn1cblxuXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uOiA0LWNvbC12aWRlby10ZWFzZXJcbiAqIERlc2t0b3A6IDMgaW4gYSByb3dcbiAqIFRhYmxldDogMiBpbiBhIHJvd1xuICogTW9iaWxlOiAxIGluIGEgcm93XG4gKi9cbi50ZWFzZXItY29sbGVjdGlvbi0tNC1jb2wtdmlkZW8tdGVhc2VyIHtcblxuICAudGVhc2VyLS01MC01MCArICYge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLSN7ICRzR3V0dGVyIH07XG4gIH1cblxuICAuby10ZWFzZXIge1xuICAgIEBleHRlbmQgLnRlYXNlci00LWNvbC12aWRlbztcblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luOiAzMHB4ICRzR3V0dGVyIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBtYXJnaW46IDMwcHggJHNHdXR0ZXIgMDtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDMsIDYsIHRydWUgKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW46IDUwcHggJHNHdXR0ZXIgMDtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDQsIDEyLCB0cnVlICk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoIDEgKSxcbiAgICAmOm50aC1jaGlsZCggMiApIHtcbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKCAzICkge1xuICAgICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLTEyLWNvbC12aWRlby10ZWFzZXIge1xuICAuby10ZWFzZXIge1xuICAgIEBleHRlbmQgLnRlYXNlci0xMi1jb2wtdmlkZW87XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLXZpZGVvLWNvbGxlY3Rpb24tcHJvbW8ge1xuICAudGVhc2VyLS01MC01MCArICYge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX3RlYXNlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLSN7ICRzR3V0dGVyIH07XG4gIH1cblxuICAuby10ZWFzZXIge1xuICAgIEBleHRlbmQgLnRlYXNlci00LWNvbC12aWRlbztcbiAgICBkaXNwbGF5OiBibG9jaztcblxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMzBweCAkc0d1dHRlciAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luOiAzMHB4ICRzR3V0dGVyIDA7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCAzLCA2LCB0cnVlICk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luOiA1MHB4ICRzR3V0dGVyIDA7XG4gICAgICB3aWR0aDogY29sLXdpZHRoKCA0LCAxMiwgdHJ1ZSApO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGV4dGVuZCAudGVhc2VyLTEyLWNvbC12aWRlbztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwICRzR3V0dGVyO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoIDFuKzIgKSB7XG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAudGVhc2VyX19jb250ZW50IHtcbiAgICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi50ZWFzZXItY29sbGVjdGlvbi0tcGVyc29uLS02LWNvbCB7XG4gIC50ZWFzZXItY29sbGVjdGlvbl9fdGVhc2VyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICpcbiAqL1xuLnRlYXNlci1jb2xsZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyB7XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cblxuXG4vKipcbiAqXG4gKiBAZGVzY3JpcHRpb246IEhhbmRsaW5nIG9mIG1hcmdpbnMgYmV0d2VlbiBvcmdhbmlzbXMuXG4gKi9cblxuLnRlYXNlci0tcGFnZS10aXRsZSB+ICo6bm90KCAuby1mb290ZXIgKSB7XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICB9XG59XG5cbi8vIEZvciB0aGUgc3RhcnQgcGFnZVxuLm8taGVybyB+ICo6bm90KCAuby1mb290ZXIgKSB7XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDE5MHB4O1xuICB9XG59XG5cbi5vLWhlcm8gfiBkaXZbY2xhc3MqPVwiIHRlYXNlci1jb2xsZWN0aW9uLS1ib3hcIl0ge1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmRpdltjbGFzcyo9XCIgdGVhc2VyLWNvbGxlY3Rpb24tLWJveFwiXSArIC50ZWFzZXItY29sbGVjdGlvbi0tY29udGFjdC1pbnZpdGVzIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1xdW90ZSArIHtcbiAgZGl2W2NsYXNzKj1cIiB0ZWFzZXItY29sbGVjdGlvbi0tYm94XCJdIHtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDE5MHB4O1xuICAgIH1cbiAgfVxufVxuXG4uby1oZXJvICsgKiB7XG4gIC5wYWdlICYgeyAvLyBTcGVjaWZpY2l0eSBidW1waW5nXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLm8taGVybyArIC50ZWFzZXItY29sbGVjdGlvbi0tbG9nby13YWxsIHtcbiAgLnBhZ2UgJiB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEV4Y2VwdGlvbiBmb3IgbW9kdWxlIHRoYXQgaXMgdXNlZCB0byBzaG93IG9ubHkgdGV4dCBhYm92ZSBjb2xsZWN0aW9uXG4vLyAoYW5kIGZvciBzb21lIHJlYXNvbiBkb2Vzbid0IHVzZSB0aGUgdGVhc2VyLWNvbGxlY3Rpb24gZGV0YWlsdGV4dOKApilcbi50ZWFzZXItLTEyLWNvbC13aXRoLWltYWdlLWFuZC1jdGEgKyAuby10ZWFzZXItY29sbGVjdGlvbixcbi50ZWFzZXItY29sbGVjdGlvbi0tMTItY29sLXZpZGVvLXRlYXNlciArIC50ZWFzZXItY29sbGVjdGlvbi0tNC1jb2wtdmlkZW8tdGVhc2VyIHtcbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuXG4udGVhc2VyLS1wYWdlLXRpdGxlICsgLnRlYXNlci0tMTItY29sLXdpdGgtaW1hZ2UtYW5kLWN0YSB7XG4gIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1ibG9nIHtcbiAgQGV4dGVuZCAlcmVuZGVyLTUwLTUwLXRlYXNlci1pbi10ZWFzZXItY29sbGVjdGlvbjtcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAuby10ZWFzZXIge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHggMzVweDtcbiAgfVxuXG4gIC50ZWFzZXJfX2hlYWRsaW5lIHtcbiAgICBmb250LXdlaWdodDogJGZ3Qm9sZDtcbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaGVhZGxpbmUtZGVmYXVsdCggbW9iaWxlICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXRPbmx5ICkge1xuICAgICAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1kZWZhdWx0KCB0YWJsZXQgKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgQGluY2x1ZGUgZm9udC1oZWFkbGluZS1kZWZhdWx0KCBkZXNrdG9wICk7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlcl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9udC1jb3B5LWRlZmF1bHQoIG1vYmlsZSApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBAaW5jbHVkZSBmb250LWNvcHktZGVmYXVsdCggdGFibGV0ICk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtY29weS1kZWZhdWx0KCBkZXNrdG9wICk7XG4gICAgfVxuICB9XG5cbiAgLm0tdGFnLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1ib3gtY2FyZHMge1xuICBwYWRkaW5nOiAkc0d1dHRlciAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY1Rhbmd5VHVycXVvaXNlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEyMzRweDtcbiAgICAgIHBhZGRpbmc6IDE0MHB4IDAgOTVweDtcbiAgICB9XG4gIH1cblxuICAuby10ZWFzZXIge1xuICAgIG1hcmdpbjogJHNHdXR0ZXI7XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcbiAgICAgIHdpZHRoOiBjb2wtd2lkdGgoIDEyLCAxMiwgdHJ1ZSApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgd2lkdGg6IGNvbC13aWR0aCggNiwgMTIsIHRydWUgKTtcbiAgICB9XG4gIH1cbn1cblxuZGl2W2NsYXNzKj1cIiB0ZWFzZXItY29sbGVjdGlvbi0tYm94XCJdIHtcbiAgbWFyZ2luLXRvcDogMDtcblxuICAmICsgLm8tdGFicy0tYm94IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1ib3gtb3BlbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblxuICAudGVhc2VyX19oZWFkbGluZSB7XG4gICAgY29sb3I6ICRjV2hpdGU7XG4gIH1cblxuICAudGVhc2VyX190ZXh0IHtcbiAgICBhOmhvdmVyLFxuICAgIGE6bGluayxcbiAgICBhOnZpc2l0ZWQsXG4gICAgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICRjV2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIC8vcGFkZGluZzogMTcwcHggMCAxMTBweDtcbiAgICAgIG1heC13aWR0aDogMTIzNHB4O1xuICAgICAgcGFkZGluZzogMTcwcHggMCAxMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1ib3gtdmlkZW8ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMTIxZGVnLCAjeyRjV2hpdGV9IDAlLCAjeyRjV2hpdGV9IDcwJSwgI3skY1Rhbmd5VHVycXVvaXNlfSAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gIG9wYWNpdHk6IDE7XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgY29sLXdpZHRoKCAwLjUsIDEyLCBmYWxzZSApO1xuICB9XG5cbiAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTIzNHB4O1xuICAgIH1cbiAgfVxuICAudGVhc2VyX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWcvaWNvbi1wbGF5LXB1cnBsZS5zdmcnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyggNTYuMjUlIC8gMiApO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoIC01MCUsIDUwJSk7XG5cbiAgICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVUYWJsZXQgKSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG4gICAgICAgIHdpZHRoOiA3NnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGVhc2VyLWNvbGxlY3Rpb24tLWJveC1nYXRld2F5IHtcblxuICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdjYXB0aW9uIGNhcHRpb24nXG5cdFx0XHQndGV4dCB0ZWFzZXJzJztcbiAgICBjb2x1bW4tZ2FwOiA5NHB4O1xuICAgIHJvdy1nYXA6IDYwcHg7XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX2NhcHRpb24ge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICBncmlkLWFyZWE6IGNhcHRpb247XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB9XG4gIH1cblxuICAudGVhc2VyLWNvbGxlY3Rpb25fX2RldGFpbHRleHQge1xuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcbiAgICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLnRlYXNlci1jb2xsZWN0aW9uX190ZWFzZXItd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuICAgICAgZ3JpZC1hcmVhOiB0ZWFzZXJzO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXItLWJveC1nYXRld2F5IHtcbiAgICArIC50ZWFzZXItLWJveC1nYXRld2F5IHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLnRlYXNlci1jb2xsZWN0aW9uLS1ib3gtZW51bWVyYXRpbmcge1xuICBjb3VudGVyLXJlc2V0OiB0ZWFzZXItZW51bWVyYXRpbmc7XG5cbiAgLnRlYXNlci0tYm94LWVudW1lcmF0aW5nIHtcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgfVxuXG4gICAgKyAudGVhc2VyLS1ib3gtZW51bWVyYXRpbmcge1xuICAgICAgbWFyZ2luLXRvcDogMTI1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG4gICAgICAmOm50aC1jaGlsZCggZXZlbiApIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogJ3NwYWNlci1sZWZ0IGltYWdlIHNwYWNlci1taWRkbGUgaGVhZGxpbmUgc3BhY2VyLXJpZ2h0J1xuXHRcdFx0XHQnc3BhY2VyLWxlZnQgaW1hZ2Ugc3BhY2VyLW1pZGRsZSB0ZXh0IHNwYWNlci1yaWdodCdcblx0XHRcdFx0J3NwYWNlci1sZWZ0IGJ1dHRvbiBzcGFjZXItbWlkZGxlIHRleHQgc3BhY2VyLXJpZ2h0JztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IGNhbGMoIDQ3JSAtIDY3cHggKSA1MHB4IGNhbGMoIDUzJSAtIDY3cHggKSA0MnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCIuby1wYXJ0bmVyLWRldGFpbCB7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luOiAzMHB4ICRzR3V0dGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdpbWFnZSBjb250ZW50JyAnbGlua2xpc3QgY29udGVudCc7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG5cdH1cblxufVxuXG4ucGFydG5lci1kZXRhaWxfX2ltYWdlIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0Z3JpZC1hcmVhOiBpbWFnZTtcblx0fVxuXG5cdC5hLWltYWdlIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4ucGFydG5lci1kZXRhaWxfX2xpbmstbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0Z3JpZC1hcmVhOiBsaW5rbGlzdDtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDM2cHg7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19saW5rLWxpc3QtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblxuXHRcdHNwYW4ge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCB0YWJsZXREZXNrdG9wICkge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRzcGFuIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcblx0XHR9XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19saW5rLWxpc3QtaXRlbS0tbG9jYXRpb24ge1xuXHRzdmcge1xuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoIDNweCwgMCApO1xuXHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdFx0d2lkdGg6IDIwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0fVxuXHR9XG5cblx0I2ljb24tbG9jYXRpb24ge1xuXHRcdGZpbGw6IHZhciggLS1wcmltYXJ5Q29sb3VyICk7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19saW5rLWxpc3QtaXRlbS0tc3ViamVjdCB7XG5cdHN2ZyB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHR3aWR0aDogMjBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRcdGhlaWdodDogNDBweDtcblx0XHR9XG5cdH1cbn1cblxuLy9AdG9kbyBpbmNsdWRlcyB2b24gYXRvbXMtaWNvbnM/XG4ucGFydG5lci1kZXRhaWxfX3BhcnRuZXItc3RhdHVzLS1wbGF0aW51bSB7XG5cdCNpY29uLXJpYmJvbiB7XG5cdFx0ZmlsbDogJGNQbGF0aW51bTtcblx0fVxufVxuXG4ucGFydG5lci1kZXRhaWxfX3BhcnRuZXItc3RhdHVzLS1nb2xkIHtcblx0I2ljb24tcmliYm9uIHtcblx0XHRmaWxsOiAkY0dvbGQ7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19wYXJ0bmVyLXN0YXR1cy0tc2lsdmVyIHtcblx0I2ljb24tcmliYm9uIHtcblx0XHRmaWxsOiAkY1NpbHZlcjtcblx0fVxufVxuXG4ucGFydG5lci1kZXRhaWxfX3BhcnRuZXItc3RhdHVzLS1yZWdpc3RlcmVkIHtcblx0I2ljb24tcmliYm9uIHtcblx0XHRmaWxsOiAkY1JlZ2lzdGVyZWQ7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19wYXJ0bmVyLWNlcnRpZmllZCB7XG5cdCNpY29uLXJpYmJvbiB7XG5cdFx0ZmlsbDogJGNDZXJ0aWZpZWQ7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX19saW5rLWxpc3QtaXRlbS0td2Vic2l0ZSB7XG5cdHN2ZyB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHR3aWR0aDogMjBweDtcblx0XHR9XG5cdH1cblxuXHQuYS1saW5rIHtcblx0XHRjb2xvcjogJGNUZXh0O1xuXHR9XG5cblx0I2ljb24tbGluayB7XG5cdFx0ZmlsbDogdmFyKCAtLXByaW1hcnlDb2xvdXIgKTtcblx0fVxuXG59XG5cbi5wYXJ0bmVyLWRldGFpbF9fY29udGVudCB7XG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBtb2JpbGVPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0RGVza3RvcCApIHtcblx0XHRncmlkLWFyZWE6IGNvbnRlbnQ7XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX190ZXh0IHtcblx0QGluY2x1ZGUgcmljaHRleHQ7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0cGFkZGluZzogMCAkc0d1dHRlcjtcblx0XHRib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoIC0tc2Vjb25kYXJ5Q29sb3VyICk7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAzNnB4O1xuXHR9XG5cblx0JlthcmlhLWV4cGFuZGVkPSdmYWxzZSddIHtcblx0XHRoZWlnaHQ6IDE1ZW07XG5cdH1cbn1cblxuLnBhcnRuZXItZGV0YWlsX190b2dnbGUtYnV0dG9ucyB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0bWFyZ2luLXRvcDogODBweDtcblx0fVxuXG5cdCZbYXJpYS1leHBhbmRlZD0nZmFsc2UnXSB7XG5cdFx0LnBhcnRuZXItZGV0YWlsX19yZWFkLW1vcmUge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblxuXHRcdC5wYXJ0bmVyLWRldGFpbF9fcmVhZC1sZXNzIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0JlthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuXHRcdC5wYXJ0bmVyLWRldGFpbF9fcmVhZC1tb3JlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LnBhcnRuZXItZGV0YWlsX19yZWFkLWxlc3Mge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC5hLWJ1dHRvbiB7XG5cdFx0cGFkZGluZy1yaWdodDogNjBweDtcblx0XHRwYWRkaW5nLWxlZnQ6IDYwcHg7XG5cdH1cbn1cbiIsIi5vLXZpZGVvIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cdG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi52aWRlb19fY29udGVudCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnZpZGVvX19jb25zZW50IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0LmEtaW1hZ2Uge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG59XG5cbi52aWRlb19fY29uc2VudF9fb3ZlcmxheSB7XG5cdEBpbmNsdWRlIHJpY2h0ZXh0O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiAkY1RleHQtLWludmVycztcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGNQYXJhbm9pZFB1cnBsZSwgMC44ICk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0aGVpZ2h0OiBjYWxjKCAxMDAlIC0gMiAqICN7JHNHdXR0ZXJ9ICk7XG5cdFx0d2lkdGg6IGNhbGMoIDEwMCUgLSAyICogI3skc0d1dHRlcn0gKTtcblx0XHRwYWRkaW5nOiAkc0d1dHRlcjtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE3cHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRoZWlnaHQ6IGNhbGMoIDEwMCUgLSAyICogI3skc0d1dHRlckRvdWJsZX0gKTtcblx0XHR3aWR0aDogY2FsYyggMTAwJSAtIDIgKiAjeyRzR3V0dGVyRG91YmxlfSApO1xuXHRcdHBhZGRpbmc6ICRzR3V0dGVyRG91YmxlO1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRsaW5lLWhlaWdodDogMTdweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRoZWlnaHQ6IGNhbGMoIDEwMCUgLSAyICogI3skc0d1dHRlckRvdWJsZX0gKTtcblx0XHR3aWR0aDogY2FsYyggMTAwJSAtIDIgKiAjeyRzR3V0dGVyRG91YmxlfSApO1xuXHRcdHBhZGRpbmc6ICRzR3V0dGVyRG91YmxlO1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRsaW5lLWhlaWdodDogMzZweDtcblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luOiAwLjVlbSAwO1xuXHR9XG5cblx0bGFiZWwsXG5cdFt0eXBlPSdjaGVja2JveCddIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHRbdHlwZT0nY2hlY2tib3gnXSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogLTFweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoIC0tcHJpbWFyeUNvbG91ciApO1xuXHRcdGJvcmRlci1yYWRpdXM6IDJweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1doaXRlO1xuXHRcdGFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0XHR3aWR0aDogMTBweDtcblx0XHRcdGhlaWdodDogMTBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0aGVpZ2h0OiAxMnB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRcdHdpZHRoOiAxNXB4O1xuXHRcdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdH1cblx0fVxuXG5cdGEsXG5cdGE6bGluayxcblx0YTp2aXNpdGVkLFxuXHRhOmhvdmVyLFxuXHRhOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjV2hpdGU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cbn1cblxuLnZpZGVvX190ZXh0IHtcblx0QGluY2x1ZGUgcmljaHRleHQ7XG5cdG1hcmdpbi10b3A6IDMwcHg7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZVRhYmxldCApIHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdH1cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRsaW5lLWhlaWdodDogMzZweDtcblx0fVxufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbiNDeWJvdENvb2tpZWJvdERpYWxvZ1tuZy1ub24tYmluZGFibGUqPSdibG9jayddIH4gLnBhZ2Uge1xuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxODVweDtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxODBweDtcblx0fVxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTgwcHg7XG5cdH1cbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nW3N0eWxlKj0nYmxvY2snXSB+IC5wYWdlIHtcblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjE0cHg7XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCh0YWJsZXREZXNrdG9wKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjEycHg7XG5cdH1cbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nICNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHkgKixcbiNDeWJvdENvb2tpZWJvdERpYWxvZyAjQ3lib3RDb29raWVib3REaWFsb2dEZXRhaWwgKiB7XG5cdGZvbnQtZmFtaWx5OiAkZk5vcm1hbDtcbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsV3JhcHBlciAjQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dBbGwge1xuXHRAZXh0ZW5kIC5hLWJ1dHRvbjtcblx0QGV4dGVuZCAuYnV0dG9uLS1tZWRpdW07XG5cdGJvcmRlcjogbm9uZTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtaW4taGVpZ2h0OiAzOHB4O1xuXHRtaW4td2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxXcmFwcGVyIGEjQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dhbGxTZWxlY3Rpb24ge1xuXHRAZXh0ZW5kIC5hLWJ1dHRvbjtcblx0QGV4dGVuZCAuYnV0dG9uLS1tZWRpdW07XG5cdEBleHRlbmQgLmJ1dHRvbi0taW52ZXJzO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtaW4taGVpZ2h0OiAzOHB4O1xuXHRtaW4td2lkdGg6IGZpdC1jb250ZW50O1xuXG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlIHtcblx0XHRjb2xvcjogJGNQYXJhbm9pZFB1cnBsZTtcblx0fVxufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dhbGxTZWxlY3Rpb25XcmFwcGVyIHtcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLnAtYmxvZy1hcnRpY2xlIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldERlc2t0b3AgKSB7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWFyZWFzOiAnaGVhZGVyIGhlYWRlcicgJ2NvbnRlbnQgYXNpZGUnO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogY29sLXdpZHRoKCA4LCAxMiwgZmFsc2UgKSBjb2wtd2lkdGgoIDQsIDEyLCBmYWxzZSApO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0cm93LWdhcDogNDBweDtcblx0fVxuXG5cdEBpbmNsdWRlIGNtMjAyMC1icmVha3BvaW50KCBkZXNrdG9wT25seSApIHtcblx0XHRyb3ctZ2FwOiA2MHB4O1xuXHR9XG5cblx0LnRlYXNlci0tcGFnZS10aXRsZSArICYge1xuXHRcdG1hcmdpbi10b3A6IDI1cHg7XG5cdH1cbn1cblxuLmJsb2ctYXJ0aWNsZV9faGVhZGVyIHtcblx0Z3JpZC1hcmVhOiBoZWFkZXI7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdpbWFnZSBpbWFnZScgJ3RhZ2xpc3Qgc29jaWFsbGlua2xpc3QnO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGNvbC13aWR0aCggOCwgMTIsIGZhbHNlICkgY29sLXdpZHRoKCA0LCAxMiwgZmFsc2UgKTtcblx0cm93LWdhcDogNDBweDtcblxuXHRpbWcge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxuXG5cdC5tLXRhZy1saXN0IHtcblx0XHRncmlkLWFyZWE6IHRhZ2xpc3Q7XG5cdFx0bWFyZ2luOiAwICRzR3V0dGVyO1xuXHR9XG5cblx0Lmxpc3QtLXNvY2lhbC1pY29uIHtcblx0XHRtYXJnaW46IDAgJHNHdXR0ZXI7XG5cdFx0Z3JpZC1hcmVhOiBzb2NpYWxsaW5rbGlzdDtcblx0fVxufVxuXG4uYmxvZy1hcnRpY2xlX19pbWFnZSB7XG5cdGdyaWQtYXJlYTogaW1hZ2U7XG5cdG1heC13aWR0aDogMTAwJTtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYXNwZWN0LXJhdGlvLWJveCggOCwgMyApO1xuXG5cdC5hLWltYWdlIHtcblx0XHRAaW5jbHVkZSBjbTIwMjAtc3RyZXRjaC1hYnNvbHV0ZSgpO1xuXHR9XG59XG5cbi5ibG9nLWFydGljbGVfX2NvbnRlbnQge1xuXHRncmlkLWFyZWE6IGNvbnRlbnQ7XG5cdG1hcmdpbjogMCAkc0d1dHRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHR9XG5cbn1cblxuLmJsb2ctYXJ0aWNsZV9faGVhZGxpbmUge1xuXHRAZXh0ZW5kICV0ZWFzZXItY29sbGVjdGlvbi1oZWFkbGluZS1tYWluLWgxO1xufVxuXG4uYmxvZy1hcnRpY2xlX190ZXh0IHtcblx0bWFyZ2luLXRvcDogNDBweDtcbn1cblxuLmJsb2ctYXJ0aWNsZV9fYXNpZGUge1xuXHRncmlkLWFyZWE6IGFzaWRlO1xuXHRtYXJnaW46IDAgJHNHdXR0ZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogNTBweDtcblx0fVxuXG5cblx0JiA+ICo6bm90KCA6Zmlyc3QtY2hpbGQgKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogNTBweDtcblx0fVxuXG5cdC50ZWFzZXJfX2NvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDhweCAyMHB4IDEwcHg7XG5cdH1cblxuXHQudGVhc2VyX19oZWFkbGluZSB7XG5cdFx0QGV4dGVuZCAldGVhc2VyLWhlYWRsaW5lLTQtaW4tYS1yb3c7XG5cdH1cblxuXHQudGVhc2VyX19pbWFnZSB7XG5cdFx0QGluY2x1ZGUgY20yMDIwLWFzcGVjdC1yYXRpby1ib3goIDE2LCA5ICk7XG5cblx0XHQuYS1pbWFnZSB7XG5cdFx0XHRAaW5jbHVkZSBjbTIwMjAtc3RyZXRjaC1hYnNvbHV0ZSgpO1xuXHRcdH1cblx0fVxuXG5cdC50ZWFzZXJfX3RleHQge1xuXHRcdEBleHRlbmQgJXRlYXNlci10ZXh0LTQtaW4tYS1yb3c7XG5cdH1cbn1cbiIsIi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3R5cGVhcmVhIHtcblx0QGluY2x1ZGUgdHlwZS1hcmVhKCk7XG59XG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX2hlYWRsaW5lLS10eXBlYXJlYSB7XG5cdEBpbmNsdWRlIGdyaWQoIDEyICk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX2hlYWRsaW5lOm5vdCgucHJvamVjdC1kb2N1bWVudGF0aW9uX19oZWFkbGluZS0tdHlwZWFyZWEpIHtcblx0QGluY2x1ZGUgZ3JpZCggMTIsIDEyLCBmYWxzZSApO1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW46IDIwcHggMCAyMHB4O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG59XG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW46IDIwcHggMCAyMHB4O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRjb2xvcjogJGNUZXh0LS1pbnZlcnM7XG59XG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX2JveCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjUGFyYW5vaWRQdXJwbGU7XG59XG5cblxuLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fYm94LS0xMm9mMTIge1xuXHRwYWRkaW5nOiAkc0d1dHRlcjtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAyLCAyICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMiwgMiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCA2LCA2ICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggNiwgNiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMTIgKTtcblx0XHR9XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlcjpub3QoIC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICkgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAxMiwgMTIsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG59XG5cblxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX19ib3gtLTZvZjEyIHtcblx0cGFkZGluZzogJHNHdXR0ZXI7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMiwgMiApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDIsIDIsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMywgNiApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDMsIDYsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6ICRzR3V0dGVyO1xuXHRcdG1hcmdpbi1ib3R0b206ICRzR3V0dGVyO1xuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXIucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDYgKTtcblx0XHR9XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlcjpub3QoIC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICkgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCA2LCAxMiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX2JveC0tM29mMTIge1xuXHRwYWRkaW5nOiAkc0d1dHRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNCYXR0eUJsdWU7XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIG1vYmlsZU9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSwgMiApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDEsIDIsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIHRhYmxldE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMywgNiApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDMsIDYsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgY20yMDIwLWJyZWFrcG9pbnQoIGRlc2t0b3BPbmx5ICkge1xuXHRcdG1hcmdpbi10b3A6ICRzR3V0dGVyO1xuXHRcdG1hcmdpbi1ib3R0b206ICRzR3V0dGVyO1xuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXIucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDMgKTtcblx0XHR9XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlcjpub3QoIC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICkgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAzLCAxMiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cbn1cblxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX19ib3gtLTJvZjEyIHtcblx0cGFkZGluZzogJHNHdXR0ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjUmFkaWNhbFJlZDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAxLCAyICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSwgMiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAxLCA2ICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSwgNiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMiApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDIsIDEyLCBmYWxzZSApO1xuXHRcdH1cblx0fVxufVxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX19ib3gtLTFvZjEyIHtcblx0cGFkZGluZzogJHNHdXR0ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjUmFkaWNhbFJlZDtcblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggbW9iaWxlT25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAxLCAyICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSwgMiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggdGFibGV0T25seSApIHtcblx0XHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAkc0d1dHRlcjtcblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgJiB7XG5cdFx0XHRAaW5jbHVkZSBncmlkKCAxLCA2ICk7XG5cdFx0fVxuXHRcdC5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXI6bm90KCAucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyLS10eXBlYXJlYSApICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSwgNiwgZmFsc2UgKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBjbTIwMjAtYnJlYWtwb2ludCggZGVza3RvcE9ubHkgKSB7XG5cdFx0bWFyZ2luLXRvcDogJHNHdXR0ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogJHNHdXR0ZXI7XG5cdFx0LnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci5wcm9qZWN0LWRvY3VtZW50YXRpb25fX3dyYXBwZXItLXR5cGVhcmVhICYge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZCggMSApO1xuXHRcdH1cblx0XHQucHJvamVjdC1kb2N1bWVudGF0aW9uX193cmFwcGVyOm5vdCggLnByb2plY3QtZG9jdW1lbnRhdGlvbl9fd3JhcHBlci0tdHlwZWFyZWEgKSAmIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQoIDEsIDEyLCBmYWxzZSApO1xuXHRcdH1cblx0fVxufVxuXG5cbi5wcm9qZWN0LWRvY3VtZW50YXRpb25fX2NvbG9yLXN3YXRjaGVzIHtcblx0QGluY2x1ZGUgcmVzZXQtbGlzdDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdGxpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR3aWR0aDogMTAwcHg7XG5cdFx0bWFyZ2luOiAkc0d1dHRlcjtcblx0fVxufVxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX19jb2xvci1zd2F0Y2gge1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiA2MHB4O1xuXHR3aWR0aDogNjBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNDb29sR3JheTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXG5cdCYtLWJhdHR5LWJsdWUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjQmF0dHlCbHVlO1xuXHR9XG5cblx0Ji0tYmxhY2sge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjQmxhY2s7XG5cdH1cblxuXHQmLS1jb29sLWdyYXkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjQ29vbEdyYXk7XG5cdH1cblxuXHQmLS1kYXJrLWdyYXkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjRGFya0dyYXk7XG5cdH1cblxuXHQmLS1nYWJieS1ncmVlbiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNHYWJieUdyZWVuO1xuXHR9XG5cblx0Ji0tcGFyYW5vaWQtcHVycGxlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1BhcmFub2lkUHVycGxlO1xuXHR9XG5cblx0Ji0tcmFkaWNhbC1yZWQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjUmFkaWNhbFJlZDtcblx0fVxuXG5cdCYtLXRhbmd5LXR1cnF1b2lzZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNUYW5neVR1cnF1b2lzZTtcblx0fVxuXG5cdCYtLXdoaXRlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1doaXRlO1xuXHR9XG5cblx0Ji0teWVsbGluZy15ZWxsb3cge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjWWVsbGluZ1llbGxvdztcblx0fVxuXG5cdCYtLWdvbGQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjR29sZDtcblx0fVxuXG5cdCYtLXBsYXRpbnVtIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1BsYXRpbnVtO1xuXHR9XG5cblx0Ji0tc2lsdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1NpbHZlcjtcblx0fVxufVxuXG4ucHJvamVjdC1kb2N1bWVudGF0aW9uX19jb2xvci1sYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tdG9wOiAkc0d1dHRlcjtcblx0d2lkdGg6IDEwMCU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6ICRjQmxhY2s7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjV2hpdGU7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRjQ29vbEdyYXlcbn1cbiIsIi5taXNzaW5nLW9yZ2FuaXNtIHtcblx0bWFyZ2luOiAzMHB4IDAgMDtcblx0cGFkZGluZzogNTBweCAzMHB4O1xuXHRmb250LXNpemU6IDUwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6ICRjVGV4dC0taW52ZXJzO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY1JhZGljYWxSZWQ7XG59XG4iLCIuYXNwZWN0LXJhdGlvLWJveC0xLTEge1xuICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8tYm94KDEsIDEpO1xufVxuXG4uYXNwZWN0LXJhdGlvLWJveC01LTMge1xuICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8tYm94KDUsIDMpO1xufVxuXG4uYXNwZWN0LXJhdGlvLWJveC0xNi05IHtcbiAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvLWJveCgxNiwgOSk7XG59XG5cbi5jbXctaW1hZ2Uge1xuICBAaW5jbHVkZSBzdHJldGNoLWFic29sdXRlKCk7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/
