@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Lato:300,400,900");
@import url("https://fonts.googleapis.com/css?family=Open+Sans&display=swap");
@import url("https://fonts.googleapis.com/css?family=Roboto&display=swap");
@import url("https://fonts.googleapis.com/css?family=Lato:300,400,900");
@import url("https://fonts.googleapis.com/css?family=Open+Sans&display=swap");
@import url("https://fonts.googleapis.com/css?family=Roboto&display=swap");
@font-face {
  font-family: 'linotypeuniversbasicmedium';
  src: url("../fonts/linotunibasmed-webfont.woff2") format("woff2"), url("../fonts/linotunibasmed-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'linotypeuniversbasicregular';
  src: url("../fonts/linotunibasreg_10-webfont.woff2") format("woff2"), url("../fonts/linotunibasreg_10-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'linotypeuniversbasicregular';
  src: url("../fonts/linotunibasreg-webfont.woff2") format("woff2"), url("../fonts/linotunibasreg-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'linotypeuniversbasicxblack';
  src: url("../fonts/linotunibasxbla-webfont.woff2") format("woff2"), url("../fonts/linotunibasxbla-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'linotypeuniverscondblack';
  src: url("../fonts/linotuniconbla-webfont.woff2") format("woff2"), url("../fonts/linotuniconbla-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'linotypeuniverscondbold';
  src: url("../fonts/linotuniconbol-webfont.woff2") format("woff2"), url("../fonts/linotuniconbol-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

/**
 * Font REM
 * -- convert and output px and rem
 * -- font-rem( $font-size-px )
 */
/* Addition of line-height conversion for consistency */
/**
 * Responsive Media Query Helpers
 * -- responsiveQuery(xs)
 * -- responsiveQuery("(min-width: 100em)")
 */
/**
 * Clearfix as a mixin
 */
/**
 * Horizontally and vertically centers block elements
 *
 * Important: you must have a parent element with `position: relative`.
 */
/**
 * Vertically centers block elements
 *
 * Important: you must have a parent element with `position: relative`.
 */
/**
 * Retina Image Helper
 *
 * A helper mixin for applying high-resolution background images (http://www.retinajs.com)
 * by Nathan Crank (nathancrank.com)
 */
/**
 * Helpers
 */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

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

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

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

p {
  display: block;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0px;
  margin-inline-end: 0px; }

@keyframes right-arrow {
  0% {
    transform: translate(0%, 20%); }
  50% {
    transform: translate(50%, 20%); }
  100% {
    transform: translate(0%, 20%); } }

@keyframes down-arrow {
  0% {
    transform: translate(0%, 0%); }
  50% {
    transform: translate(0%, 60%); }
  100% {
    transform: translate(0%, 0%); } }

@keyframes down-arrow-tabbed {
  0% {
    transform: translate(0%, 25%); }
  50% {
    transform: translate(0%, 85%); }
  100% {
    transform: translate(0%, 25%); } }

@keyframes jump-down-arrow {
  0% {
    transform: translate(0%, 40%); }
  50% {
    transform: translate(0%, 80%); }
  100% {
    transform: translate(0%, 40%); } }

@keyframes right-carat-rotate {
  0% {
    transform: rotate(90deg) translate(25%, 25%); }
  100% {
    transform: rotate(270deg) translate(-25%, -25%); } }

/**
 * Border box all the things
 */
* {
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  box-sizing: border-box; }
  *:before, *:after {
    box-sizing: border-box; }

* {
  min-height: 0;
  min-width: 0; }

html {
  font-size: 62.5%; }

body {
  color: #333333;
  font-family: "Lato", "Arial", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5; }

p {
  margin-bottom: 2rem; }

/**
 * Text meant only for screen readers
 */
.sr-only,
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }

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

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle; }

/**
 * Images, 
 */
img,
video,
figure {
  max-width: 100%;
  height: auto; }

.responsive--full {
  width: 100%; }

/**
 * Responsive Embeds
 */
.embed-responsive {
  overflow: hidden;
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding: 0; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0; }
  .embed-responsive video {
    border: 0; }
  .embed-responsive--ar16x9 {
    padding-top: 56.25%; }
  .embed-responsive--ar4x3 {
    padding-top: 75%; }


.clearfix::after {
  content: "";
  display: table;
  clear: both; }

.logged-in-nav {
  display: none; }

.locked {
  overflow-y: hidden;
  position: fixed; }

#ie-banner {
  display: none; }

form {
  width: 100%; }

label {
  color: #1d428b;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
  font-family: "Lato";
  margin: 0 0 1rem; }

input[type="text"],
select,
textarea {
  background-color: #f7f7f7;
  font-family: "Lato";
  font-size: 16px;
  color: #949494;
  border-radius: 0.8rem;
  border-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  padding: 1rem; }

input[type="search"] {
  background-color: white; }

.fieldset {
  display: flex;
  flex-direction: column;
  margin-bottom: 2.7rem; }

legend {
  color: #001224;
  font-size: 3.5rem;
  font-family: "Museo", sans-serif; }

button {
  border: 0 none;
  background-color: transparent; }

button.primary-cta-button,
.primary-cta-button,
button.secondary-cta-button,
.secondary-cta-button,
button.primary-link-button,
.primary-link-button {
  font-family: "Lato";
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  min-width: 25.5rem;
  width: 80vw;
  border-radius: 9rem;
  border-style: solid;
  border-width: 2px;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 800; }
  @media (min-width: 600px) {
    button.primary-cta-button,
    .primary-cta-button,
    button.secondary-cta-button,
    .secondary-cta-button,
    button.primary-link-button,
    .primary-link-button {
      padding: 1rem 4.5rem;
      width: auto; } }

button.primary-cta-button,
.primary-cta-button {
  background-color: #61be23;
  color: white;
  border-color: #61be23;
  align-self: center; }
  @media (min-width: 600px) {
    button.primary-cta-button,
    .primary-cta-button {
      align-self: center; } }
  button.primary-cta-button .right-arrow .icon,
  .primary-cta-button .right-arrow .icon {
    stroke: white; }

button.secondary-cta-button,
.secondary-cta-button {
  background-color: white;
  color: #61be23;
  border-color: #61be23;
  align-self: flex-start; }

button.primary-link-button,
.primary-link-button {
  background-color: rgba(0, 0, 0, 0);
  color: #61be23;
  border-width: 0;
  justify-content: left; }
  button.primary-link-button.text-link,
  .primary-link-button.text-link {
    padding-left: 0; }

.text-link-arrow {
  color: #61be23;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Lato";
  font-size: 1.4rem;
  font-weight: 800; }

.secondary-download-button {
  color: #61be23;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Lato";
  font-size: 1.4rem;
  font-weight: 800;
  font-family: "Museo", sans-serif;
  font-weight: 300;
  text-transform: none; }

svg.icon-arrow {
  width: 25px;
  height: 25px;
  margin-left: 10px;
  transform: translate(0%, 20%); }

svg.down-arrow {
  width: 25px;
  height: 25px;
  margin-left: 10px;
  transform: translate(0%, 0%); }

svg.back-top-arrow {
  width: 8rem;
  height: 8rem;
  stroke: #61be23;
  fill: none; }

.primary-cta-button:hover svg.icon-arrow, .primary-cta-button:focus svg.icon-arrow,
button.primary-cta-button:hover svg.icon-arrow,
button.primary-cta-button:focus svg.icon-arrow,
.secondary-cta-button:hover svg.icon-arrow,
.secondary-cta-button:focus svg.icon-arrow,
button.secondary-cta-button:hover svg.icon-arrow,
button.secondary-cta-button:focus svg.icon-arrow,
.primary-link-button:hover svg.icon-arrow,
.primary-link-button:focus svg.icon-arrow,
button:hover svg.icon-arrow,
button:focus svg.icon-arrow, .text-link-arrow:hover svg.icon-arrow, .text-link-arrow:focus svg.icon-arrow, .secondary-download-button:hover svg.icon-arrow, .secondary-download-button:focus svg.icon-arrow {
  animation: right-arrow 0.5s ease forwards; }

.primary-cta-button:hover svg.down-arrow, .primary-cta-button:focus svg.down-arrow,
button.primary-cta-button:hover svg.down-arrow,
button.primary-cta-button:focus svg.down-arrow,
.secondary-cta-button:hover svg.down-arrow,
.secondary-cta-button:focus svg.down-arrow,
button.secondary-cta-button:hover svg.down-arrow,
button.secondary-cta-button:focus svg.down-arrow,
.primary-link-button:hover svg.down-arrow,
.primary-link-button:focus svg.down-arrow,
button:hover svg.down-arrow,
button:focus svg.down-arrow, .text-link-arrow:hover svg.down-arrow, .text-link-arrow:focus svg.down-arrow, .secondary-download-button:hover svg.down-arrow, .secondary-download-button:focus svg.down-arrow {
  animation: down-arrow 0.5s ease forwards; }

/*------------------------------------*\
	$CSSWIZARDRY-GRIDS (https://github.com/csswizardry/csswizardry-grids)

	MODIFIED EDITION
\*------------------------------------*/
/**
 * CONTENTS
 * INTRODUCTION.........How the grid system works.
 * VARIABLES............Your settings.
 * MIXINS...............Library mixins.
 * GRID SETUP...........Build the grid structure.
 * HELPERS..............Create helper show/hide classes around our breakpoints.
 * WIDTHS...............Build our responsive widths around our breakpoints.
 * PUSH.................Push classes.
 * PULL.................Pull classes.
 */
/*------------------------------------*\
	$INTRODUCTION
\*------------------------------------*/
/**
 * csswizardry grids provides you with widths to suit a number of breakpoints
 * designed around devices of a size you specify. Out of the box, csswizardry
 * grids caters to the following types of device:
 *
 * palm     --  palm-based devices, like phones and small tablets
 * lap      --  lap-based devices, like iPads or laptops
 * portable --  all of the above
 * desk     --  stationary devices, like desktop computers
 * regular  --  any/all types of device
 *
 * These namespaces are then used in the library to give you the ability to
 * manipulate your layouts based around them, for example:
 *
   <div class="grid__item  col-1-1  lap--col-1-2  desk--col-1-3">
 *
 * This would give you a grid item which is 100% width unless it is on a lap
 * device, at which point it become 50% wide, or it is on a desktop device, at
 * which point it becomes 33.333% width.
 *
 * csswizardry grids also has push and pull classes which allow you to nudge
 * grid items left and right by a defined amount. These follow the same naming
 * convention as above, but are prepended by either `push--` or `pull--`, for
 * example:
 *
   `class="grid__item  col-1-2  push--col-1-2"`
 *
 * This would give you a grid item which is 50% width and pushed over to the
 * right by 50%.
 *
 * All classes in csswizardry grids follow this patten, so you should fairly
 * quickly be able to piece together any combinations you can imagine, for
 * example:
 *
   `class="grid__item  col-1-1  lap--col-1-2  desk--col-1-3  push--desk--col-1-3"`
 *
   `class="grid__item  col-1-4  palm--col-1-2  push--palm--col-1-2"`
 *
   `class="grid__item  palm--col-1-3  desk--5-12"`
 */
/*------------------------------------*\
	$VARIABLES
\*------------------------------------*/
/**
 * If you want numbers instead of names (example : 'one-whole' becomes '1-1', 'third-quarter' becomes '3-4' etc...)
 */
/**
 * When the first char of a class is a digit, you need to convert it to his unicode
 * http://stackoverflow.com/a/21229901
 * http://www.w3.org/TR/css3-syntax/#escaping
 *
 * But Sass doesn't support it yet...
 * https://github.com/sass/sass/issues/255
 *
 * So while waiting for this is possible, this is the code.
 */
/**
 * If you are building a non-responsive site but would still like to use
 * csswizardry-grids, set this to ‘false’:
 */
/**
 * Is this build mobile first? Setting to ‘true’ means that all grids will be
 * 100% width if you do not apply a more specific class to them.
 */
/**
 * Set the spacing between your grid items.
 */
/**
 * Would you like Sass’ silent classes, or regular CSS classes?
 */
/**
 * Would you like push and pull classes enabled?
 */
/**
 * Using `inline-block` means that the grid items need their whitespace removing
 * in order for them to work correctly. Set the following to true if you are
 * going to achieve this by manually removing/commenting out any whitespace in
 * your HTML yourself.
 *
 * Setting this to false invokes a hack which cannot always be guaranteed,
 * please see the following for more detail:
 *
 * github.com/csswizardry/csswizardry-grids/commit/744d4b23c9d2b77d605b5991e54a397df72e0688
 * github.com/csswizardry/inuit.css/issues/170#issuecomment-14859371
 */
/**
 * Define your breakpoints. The first value is the prefix that shall be used for
 * your classes (e.g. `.palm--one-half`), the second value is the media query
 * that the breakpoint fires at.
 *
 *      phone-portrait = 20em   = 320px
 *     phone-landscape = 30em   = 480px
 *   tablet-S-portrait = 37.5em = 600px
 *   tablet-M-portrait = 48em   = 768px
 *   tablet-L-portrait = 60em   = 960px
 *   desktop-landscape = 64em   = 1024px
 * desktop-L-landscape = 80em   = 1280px
 */
/**
 * Define which namespaced breakpoints you would like to generate for each of
 * widths, push and pull. This is handy if you only need pull on, say, desk, or
 * you only need a new width breakpoint at mobile sizes. It allows you to only
 * compile as much CSS as you need. All are turned on by default, but you can
 * add and remove breakpoints at will.
 *
 * Push and pull shall only be used if `$push` and/or `$pull` and `$responsive`
 * have been set to ‘true’.
 */
/**
 * You do not need to edit anything from this line onward; csswizardry-grids is
 * good to go. Happy griddin’!
 */
/*------------------------------------*\
	$MIXINS
\*------------------------------------*/
/**
 * These mixins are for the library to use only, you should not need to modify
 * them at all.
 *
 * Enclose a block of code with a media query as named in `$breakpoints`.
 */
/**
 * Drop relative positioning into silent classes which can’t take advantage of
 * the `[class*="push--"]` and `[class*="pull--"]` selectors.
 */
/*------------------------------------*\
	$GRID SETUP
\*------------------------------------*/
/**
 * 1. Allow the grid system to be used on lists.
 * 2. Remove any margins and paddings that might affect the grid system.
 * 3. Apply a negative `margin-left` to negate the columns’ gutters.
 */
.grid {
  list-style: none;
  /* [1] */
  margin: 0;
  /* [2] */
  padding: 0;
  /* [2] */
  margin-left: -35px;
  /* [3] */ }

/**
 * 1. Cause columns to stack side-by-side.
 * 2. Space columns apart.
 * 3. Align columns to the tops of each other.
 * 4. Full-width unless told to behave otherwise.
 * 5. Required to combine fluid widths and fixed gutters.
 */
.grid__item {
  display: inline-block;
  /* [1] */
  padding-left: 35px;
  /* [2] */
  vertical-align: top;
  /* [3] */
  width: 100%;
  /* [4] */
  -webkit-box-sizing: border-box;
  /* [5] */
  -moz-box-sizing: border-box;
  /* [5] */
  box-sizing: border-box;
  /* [5] */ }

/**
 * Reversed grids allow you to structure your source in the opposite order to
 * how your rendered layout will appear. Extends `.grid`.
 */
.grid--rev {
  direction: rtl;
  text-align: left; }
  .grid--rev > .grid__item {
    direction: ltr;
    text-align: left; }

/**
 * Gutterless grids have all the properties of regular grids, minus any spacing.
 * Extends `.grid`.
 */
.grid--full {
  margin-left: 0; }
  .grid--full > .grid__item {
    padding-left: 0; }

/**
 * Align the entire grid to the right. Extends `.grid`.
 */
.grid--right {
  text-align: right; }
  .grid--right > .grid__item {
    text-align: left; }

/**
 * Centered grids align grid items centrally without needing to use push or pull
 * classes. Extends `.grid`.
 */
.grid--center {
  text-align: center; }
  .grid--center > .grid__item {
    text-align: left; }
    .grid--center > .grid__item.text-center {
      text-align: center; }

/**
 * Align grid cells vertically (`.grid--middle` or `.grid--bottom`). Extends
 * `.grid`.
 */
.grid--middle > .grid__item {
  vertical-align: middle; }

.grid--bottom > .grid__item {
  vertical-align: bottom; }

/**
 * Create grids with narrower gutters. Extends `.grid`.
 */
.grid--narrow {
  margin-left: -17.5px; }
  .grid--narrow > .grid__item {
    padding-left: 17.5px; }

/**
 * Create grids with wider gutters. Extends `.grid`.
 */
.grid--wide {
  margin-left: -70px; }
  .grid--wide > .grid__item {
    padding-left: 70px; }

/*------------------------------------*\
	$WIDTHS
\*------------------------------------*/
/**
 * Create our width classes, prefixed by the specified namespace.
 */
/*------------------------------------*\
  $HELPERS
\*------------------------------------*/
/**
 * Create helper show/hide classes, prefixed by the specified namespace.
 */
/**
 * Our regular, non-responsive width classes.
 */
/**
	 * Whole
	 */
.col-1-1 {
  width: 100%; }

/**
	 * Halves
	 */
.col-1-2, .col-2-4, .col-3-6, .col-4-8, .col-5-10, .col-6-12 {
  width: 50%; }

/**
	 * Thirds
	 */
.col-1-3, .col-2-6, .col-3-9, .col-4-12 {
  width: 33.333%; }

.col-2-3, .col-4-6, .col-6-9, .col-8-12 {
  width: 66.666%; }

/**
	 * Quarters
	 */
.col-1-4, .col-2-8, .col-3-12 {
  width: 25%; }

.col-3-4, .col-6-8, .col-9-12 {
  width: 75%; }

/**
	 * Fifths
	 */
.col-1-5, .col-2-10 {
  width: 20%; }

.col-2-5, .col-4-10 {
  width: 40%; }

.col-3-5, .col-6-10 {
  width: 60%; }

.col-4-5, .col-8-10 {
  width: 80%; }

/**
	 * Sixths
	 */
.col-1-6 {
  width: 16.666%; }

.col-5-6, .col-10-12 {
  width: 83.333%; }

/**
	 * Sevenths
	 */
.col-1-7 {
  width: 14.2857%; }

.col-2-7 {
  width: 28.5714%; }

.col-3-7 {
  width: 42.8571%; }

.col-4-7 {
  width: 57.1428%; }

.col-5-7 {
  width: 71.4285%; }

.col-6-7 {
  width: 85.7142%; }

/**
	 * Eighths
	 */
.col-1-8 {
  width: 12.5%; }

.col-3-8 {
  width: 37.5%; }

.col-5-8 {
  width: 62.5%; }

.col-7-8 {
  width: 87.5%; }

/**
	 * Ninths
	 */
.col-1-9 {
  width: 11.111%; }

.col-2-9 {
  width: 22.222%; }

.col-4-9 {
  width: 44.444%; }

.col-5-9 {
  width: 55.555%; }

.col-7-9 {
  width: 77.777%; }

.col-8-9 {
  width: 88.888%; }

/**
	 * Tenths
	 */
.col-1-10 {
  width: 10%; }

.col-3-10 {
  width: 30%; }

.col-7-10 {
  width: 70%; }

.col-9-10 {
  width: 90%; }

/**
	 * Elevenths
	 */
.col-1-11 {
  width: 9.0909%; }

.col-2-11 {
  width: 18.1818%; }

.col-3-11 {
  width: 27.2727%; }

.col-4-11 {
  width: 36.3636%; }

.col-5-11 {
  width: 45.4545%; }

.col-6-11 {
  width: 54.5454%; }

.col-7-11 {
  width: 63.6363%; }

.col-8-11 {
  width: 72.7272%; }

.col-9-11 {
  width: 81.8181%; }

.col-10-11 {
  width: 90.9090%; }

/**
	 * Twelfths
	 */
.col-1-12 {
  width: 8.333%; }

.col-2-12 {
  width: 16.666%; }

.col-5-12 {
  width: 41.666%; }

.col-7-12 {
  width: 58.333%; }

.col-11-12 {
  width: 91.666%; }

.show {
  display: inline-block; }

.hide {
  display: none; }

/**
 * Our responsive classes, if we have enabled them.
 */
@media only screen and (min-width: 30em) {
  /**
	 * Whole
	 */
  .xs--col-1-1 {
    width: 100%; }
  /**
	 * Halves
	 */
  .xs--col-1-2, .xs--col-2-4, .xs--col-3-6, .xs--col-4-8, .xs--col-5-10, .xs--col-6-12 {
    width: 50%; }
  /**
	 * Thirds
	 */
  .xs--col-1-3, .xs--col-2-6, .xs--col-3-9, .xs--col-4-12 {
    width: 33.333%; }
  .xs--col-2-3, .xs--col-4-6, .xs--col-6-9, .xs--col-8-12 {
    width: 66.666%; }
  /**
	 * Quarters
	 */
  .xs--col-1-4, .xs--col-2-8, .xs--col-3-12 {
    width: 25%; }
  .xs--col-3-4, .xs--col-6-8, .xs--col-9-12 {
    width: 75%; }
  /**
	 * Fifths
	 */
  .xs--col-1-5, .xs--col-2-10 {
    width: 20%; }
  .xs--col-2-5, .xs--col-4-10 {
    width: 40%; }
  .xs--col-3-5, .xs--col-6-10 {
    width: 60%; }
  .xs--col-4-5, .xs--col-8-10 {
    width: 80%; }
  /**
	 * Sixths
	 */
  .xs--col-1-6 {
    width: 16.666%; }
  .xs--col-5-6, .xs--col-10-12 {
    width: 83.333%; }
  /**
	 * Sevenths
	 */
  .xs--col-1-7 {
    width: 14.2857%; }
  .xs--col-2-7 {
    width: 28.5714%; }
  .xs--col-3-7 {
    width: 42.8571%; }
  .xs--col-4-7 {
    width: 57.1428%; }
  .xs--col-5-7 {
    width: 71.4285%; }
  .xs--col-6-7 {
    width: 85.7142%; }
  /**
	 * Eighths
	 */
  .xs--col-1-8 {
    width: 12.5%; }
  .xs--col-3-8 {
    width: 37.5%; }
  .xs--col-5-8 {
    width: 62.5%; }
  .xs--col-7-8 {
    width: 87.5%; }
  /**
	 * Ninths
	 */
  .xs--col-1-9 {
    width: 11.111%; }
  .xs--col-2-9 {
    width: 22.222%; }
  .xs--col-4-9 {
    width: 44.444%; }
  .xs--col-5-9 {
    width: 55.555%; }
  .xs--col-7-9 {
    width: 77.777%; }
  .xs--col-8-9 {
    width: 88.888%; }
  /**
	 * Tenths
	 */
  .xs--col-1-10 {
    width: 10%; }
  .xs--col-3-10 {
    width: 30%; }
  .xs--col-7-10 {
    width: 70%; }
  .xs--col-9-10 {
    width: 90%; }
  /**
	 * Elevenths
	 */
  .xs--col-1-11 {
    width: 9.0909%; }
  .xs--col-2-11 {
    width: 18.1818%; }
  .xs--col-3-11 {
    width: 27.2727%; }
  .xs--col-4-11 {
    width: 36.3636%; }
  .xs--col-5-11 {
    width: 45.4545%; }
  .xs--col-6-11 {
    width: 54.5454%; }
  .xs--col-7-11 {
    width: 63.6363%; }
  .xs--col-8-11 {
    width: 72.7272%; }
  .xs--col-9-11 {
    width: 81.8181%; }
  .xs--col-10-11 {
    width: 90.9090%; }
  /**
	 * Twelfths
	 */
  .xs--col-1-12 {
    width: 8.333%; }
  .xs--col-2-12 {
    width: 16.666%; }
  .xs--col-5-12 {
    width: 41.666%; }
  .xs--col-7-12 {
    width: 58.333%; }
  .xs--col-11-12 {
    width: 91.666%; } }

@media only screen and (min-width: 30em) {
  .xs--show {
    display: inline-block; }
  .xs--hide {
    display: none; } }

@media only screen and (min-width: 37.5em) {
  /**
	 * Whole
	 */
  .s--col-1-1 {
    width: 100%; }
  /**
	 * Halves
	 */
  .s--col-1-2, .s--col-2-4, .s--col-3-6, .s--col-4-8, .s--col-5-10, .s--col-6-12 {
    width: 50%; }
  /**
	 * Thirds
	 */
  .s--col-1-3, .s--col-2-6, .s--col-3-9, .s--col-4-12 {
    width: 33.333%; }
  .s--col-2-3, .s--col-4-6, .s--col-6-9, .s--col-8-12 {
    width: 66.666%; }
  /**
	 * Quarters
	 */
  .s--col-1-4, .s--col-2-8, .s--col-3-12 {
    width: 25%; }
  .s--col-3-4, .s--col-6-8, .s--col-9-12 {
    width: 75%; }
  /**
	 * Fifths
	 */
  .s--col-1-5, .s--col-2-10 {
    width: 20%; }
  .s--col-2-5, .s--col-4-10 {
    width: 40%; }
  .s--col-3-5, .s--col-6-10 {
    width: 60%; }
  .s--col-4-5, .s--col-8-10 {
    width: 80%; }
  /**
	 * Sixths
	 */
  .s--col-1-6 {
    width: 16.666%; }
  .s--col-5-6, .s--col-10-12 {
    width: 83.333%; }
  /**
	 * Sevenths
	 */
  .s--col-1-7 {
    width: 14.2857%; }
  .s--col-2-7 {
    width: 28.5714%; }
  .s--col-3-7 {
    width: 42.8571%; }
  .s--col-4-7 {
    width: 57.1428%; }
  .s--col-5-7 {
    width: 71.4285%; }
  .s--col-6-7 {
    width: 85.7142%; }
  /**
	 * Eighths
	 */
  .s--col-1-8 {
    width: 12.5%; }
  .s--col-3-8 {
    width: 37.5%; }
  .s--col-5-8 {
    width: 62.5%; }
  .s--col-7-8 {
    width: 87.5%; }
  /**
	 * Ninths
	 */
  .s--col-1-9 {
    width: 11.111%; }
  .s--col-2-9 {
    width: 22.222%; }
  .s--col-4-9 {
    width: 44.444%; }
  .s--col-5-9 {
    width: 55.555%; }
  .s--col-7-9 {
    width: 77.777%; }
  .s--col-8-9 {
    width: 88.888%; }
  /**
	 * Tenths
	 */
  .s--col-1-10 {
    width: 10%; }
  .s--col-3-10 {
    width: 30%; }
  .s--col-7-10 {
    width: 70%; }
  .s--col-9-10 {
    width: 90%; }
  /**
	 * Elevenths
	 */
  .s--col-1-11 {
    width: 9.0909%; }
  .s--col-2-11 {
    width: 18.1818%; }
  .s--col-3-11 {
    width: 27.2727%; }
  .s--col-4-11 {
    width: 36.3636%; }
  .s--col-5-11 {
    width: 45.4545%; }
  .s--col-6-11 {
    width: 54.5454%; }
  .s--col-7-11 {
    width: 63.6363%; }
  .s--col-8-11 {
    width: 72.7272%; }
  .s--col-9-11 {
    width: 81.8181%; }
  .s--col-10-11 {
    width: 90.9090%; }
  /**
	 * Twelfths
	 */
  .s--col-1-12 {
    width: 8.333%; }
  .s--col-2-12 {
    width: 16.666%; }
  .s--col-5-12 {
    width: 41.666%; }
  .s--col-7-12 {
    width: 58.333%; }
  .s--col-11-12 {
    width: 91.666%; } }

@media only screen and (min-width: 37.5em) {
  .s--show {
    display: inline-block; }
  .s--hide {
    display: none; } }

@media only screen and (min-width: 48em) {
  /**
	 * Whole
	 */
  .m--col-1-1 {
    width: 100%; }
  /**
	 * Halves
	 */
  .m--col-1-2, .m--col-2-4, .m--col-3-6, .m--col-4-8, .m--col-5-10, .m--col-6-12 {
    width: 50%; }
  /**
	 * Thirds
	 */
  .m--col-1-3, .m--col-2-6, .m--col-3-9, .m--col-4-12 {
    width: 33.333%; }
  .m--col-2-3, .m--col-4-6, .m--col-6-9, .m--col-8-12 {
    width: 66.666%; }
  /**
	 * Quarters
	 */
  .m--col-1-4, .m--col-2-8, .m--col-3-12 {
    width: 25%; }
  .m--col-3-4, .m--col-6-8, .m--col-9-12 {
    width: 75%; }
  /**
	 * Fifths
	 */
  .m--col-1-5, .m--col-2-10 {
    width: 20%; }
  .m--col-2-5, .m--col-4-10 {
    width: 40%; }
  .m--col-3-5, .m--col-6-10 {
    width: 60%; }
  .m--col-4-5, .m--col-8-10 {
    width: 80%; }
  /**
	 * Sixths
	 */
  .m--col-1-6 {
    width: 16.666%; }
  .m--col-5-6, .m--col-10-12 {
    width: 83.333%; }
  /**
	 * Sevenths
	 */
  .m--col-1-7 {
    width: 14.2857%; }
  .m--col-2-7 {
    width: 28.5714%; }
  .m--col-3-7 {
    width: 42.8571%; }
  .m--col-4-7 {
    width: 57.1428%; }
  .m--col-5-7 {
    width: 71.4285%; }
  .m--col-6-7 {
    width: 85.7142%; }
  /**
	 * Eighths
	 */
  .m--col-1-8 {
    width: 12.5%; }
  .m--col-3-8 {
    width: 37.5%; }
  .m--col-5-8 {
    width: 62.5%; }
  .m--col-7-8 {
    width: 87.5%; }
  /**
	 * Ninths
	 */
  .m--col-1-9 {
    width: 11.111%; }
  .m--col-2-9 {
    width: 22.222%; }
  .m--col-4-9 {
    width: 44.444%; }
  .m--col-5-9 {
    width: 55.555%; }
  .m--col-7-9 {
    width: 77.777%; }
  .m--col-8-9 {
    width: 88.888%; }
  /**
	 * Tenths
	 */
  .m--col-1-10 {
    width: 10%; }
  .m--col-3-10 {
    width: 30%; }
  .m--col-7-10 {
    width: 70%; }
  .m--col-9-10 {
    width: 90%; }
  /**
	 * Elevenths
	 */
  .m--col-1-11 {
    width: 9.0909%; }
  .m--col-2-11 {
    width: 18.1818%; }
  .m--col-3-11 {
    width: 27.2727%; }
  .m--col-4-11 {
    width: 36.3636%; }
  .m--col-5-11 {
    width: 45.4545%; }
  .m--col-6-11 {
    width: 54.5454%; }
  .m--col-7-11 {
    width: 63.6363%; }
  .m--col-8-11 {
    width: 72.7272%; }
  .m--col-9-11 {
    width: 81.8181%; }
  .m--col-10-11 {
    width: 90.9090%; }
  /**
	 * Twelfths
	 */
  .m--col-1-12 {
    width: 8.333%; }
  .m--col-2-12 {
    width: 16.666%; }
  .m--col-5-12 {
    width: 41.666%; }
  .m--col-7-12 {
    width: 58.333%; }
  .m--col-11-12 {
    width: 91.666%; } }

@media only screen and (min-width: 48em) {
  .m--show {
    display: inline-block; }
  .m--hide {
    display: none; } }

@media only screen and (min-width: 64em) {
  /**
	 * Whole
	 */
  .l--col-1-1 {
    width: 100%; }
  /**
	 * Halves
	 */
  .l--col-1-2, .l--col-2-4, .l--col-3-6, .l--col-4-8, .l--col-5-10, .l--col-6-12 {
    width: 50%; }
  /**
	 * Thirds
	 */
  .l--col-1-3, .l--col-2-6, .l--col-3-9, .l--col-4-12 {
    width: 33.333%; }
  .l--col-2-3, .l--col-4-6, .l--col-6-9, .l--col-8-12 {
    width: 66.666%; }
  /**
	 * Quarters
	 */
  .l--col-1-4, .l--col-2-8, .l--col-3-12 {
    width: 25%; }
  .l--col-3-4, .l--col-6-8, .l--col-9-12 {
    width: 75%; }
  /**
	 * Fifths
	 */
  .l--col-1-5, .l--col-2-10 {
    width: 20%; }
  .l--col-2-5, .l--col-4-10 {
    width: 40%; }
  .l--col-3-5, .l--col-6-10 {
    width: 60%; }
  .l--col-4-5, .l--col-8-10 {
    width: 80%; }
  /**
	 * Sixths
	 */
  .l--col-1-6 {
    width: 16.666%; }
  .l--col-5-6, .l--col-10-12 {
    width: 83.333%; }
  /**
	 * Sevenths
	 */
  .l--col-1-7 {
    width: 14.2857%; }
  .l--col-2-7 {
    width: 28.5714%; }
  .l--col-3-7 {
    width: 42.8571%; }
  .l--col-4-7 {
    width: 57.1428%; }
  .l--col-5-7 {
    width: 71.4285%; }
  .l--col-6-7 {
    width: 85.7142%; }
  /**
	 * Eighths
	 */
  .l--col-1-8 {
    width: 12.5%; }
  .l--col-3-8 {
    width: 37.5%; }
  .l--col-5-8 {
    width: 62.5%; }
  .l--col-7-8 {
    width: 87.5%; }
  /**
	 * Ninths
	 */
  .l--col-1-9 {
    width: 11.111%; }
  .l--col-2-9 {
    width: 22.222%; }
  .l--col-4-9 {
    width: 44.444%; }
  .l--col-5-9 {
    width: 55.555%; }
  .l--col-7-9 {
    width: 77.777%; }
  .l--col-8-9 {
    width: 88.888%; }
  /**
	 * Tenths
	 */
  .l--col-1-10 {
    width: 10%; }
  .l--col-3-10 {
    width: 30%; }
  .l--col-7-10 {
    width: 70%; }
  .l--col-9-10 {
    width: 90%; }
  /**
	 * Elevenths
	 */
  .l--col-1-11 {
    width: 9.0909%; }
  .l--col-2-11 {
    width: 18.1818%; }
  .l--col-3-11 {
    width: 27.2727%; }
  .l--col-4-11 {
    width: 36.3636%; }
  .l--col-5-11 {
    width: 45.4545%; }
  .l--col-6-11 {
    width: 54.5454%; }
  .l--col-7-11 {
    width: 63.6363%; }
  .l--col-8-11 {
    width: 72.7272%; }
  .l--col-9-11 {
    width: 81.8181%; }
  .l--col-10-11 {
    width: 90.9090%; }
  /**
	 * Twelfths
	 */
  .l--col-1-12 {
    width: 8.333%; }
  .l--col-2-12 {
    width: 16.666%; }
  .l--col-5-12 {
    width: 41.666%; }
  .l--col-7-12 {
    width: 58.333%; }
  .l--col-11-12 {
    width: 91.666%; } }

@media only screen and (min-width: 64em) {
  .l--show {
    display: inline-block; }
  .l--hide {
    display: none; } }

@media only screen and (min-width: 80em) {
  /**
	 * Whole
	 */
  .xl--col-1-1 {
    width: 100%; }
  /**
	 * Halves
	 */
  .xl--col-1-2, .xl--col-2-4, .xl--col-3-6, .xl--col-4-8, .xl--col-5-10, .xl--col-6-12 {
    width: 50%; }
  /**
	 * Thirds
	 */
  .xl--col-1-3, .xl--col-2-6, .xl--col-3-9, .xl--col-4-12 {
    width: 33.333%; }
  .xl--col-2-3, .xl--col-4-6, .xl--col-6-9, .xl--col-8-12 {
    width: 66.666%; }
  /**
	 * Quarters
	 */
  .xl--col-1-4, .xl--col-2-8, .xl--col-3-12 {
    width: 25%; }
  .xl--col-3-4, .xl--col-6-8, .xl--col-9-12 {
    width: 75%; }
  /**
	 * Fifths
	 */
  .xl--col-1-5, .xl--col-2-10 {
    width: 20%; }
  .xl--col-2-5, .xl--col-4-10 {
    width: 40%; }
  .xl--col-3-5, .xl--col-6-10 {
    width: 60%; }
  .xl--col-4-5, .xl--col-8-10 {
    width: 80%; }
  /**
	 * Sixths
	 */
  .xl--col-1-6 {
    width: 16.666%; }
  .xl--col-5-6, .xl--col-10-12 {
    width: 83.333%; }
  /**
	 * Sevenths
	 */
  .xl--col-1-7 {
    width: 14.2857%; }
  .xl--col-2-7 {
    width: 28.5714%; }
  .xl--col-3-7 {
    width: 42.8571%; }
  .xl--col-4-7 {
    width: 57.1428%; }
  .xl--col-5-7 {
    width: 71.4285%; }
  .xl--col-6-7 {
    width: 85.7142%; }
  /**
	 * Eighths
	 */
  .xl--col-1-8 {
    width: 12.5%; }
  .xl--col-3-8 {
    width: 37.5%; }
  .xl--col-5-8 {
    width: 62.5%; }
  .xl--col-7-8 {
    width: 87.5%; }
  /**
	 * Ninths
	 */
  .xl--col-1-9 {
    width: 11.111%; }
  .xl--col-2-9 {
    width: 22.222%; }
  .xl--col-4-9 {
    width: 44.444%; }
  .xl--col-5-9 {
    width: 55.555%; }
  .xl--col-7-9 {
    width: 77.777%; }
  .xl--col-8-9 {
    width: 88.888%; }
  /**
	 * Tenths
	 */
  .xl--col-1-10 {
    width: 10%; }
  .xl--col-3-10 {
    width: 30%; }
  .xl--col-7-10 {
    width: 70%; }
  .xl--col-9-10 {
    width: 90%; }
  /**
	 * Elevenths
	 */
  .xl--col-1-11 {
    width: 9.0909%; }
  .xl--col-2-11 {
    width: 18.1818%; }
  .xl--col-3-11 {
    width: 27.2727%; }
  .xl--col-4-11 {
    width: 36.3636%; }
  .xl--col-5-11 {
    width: 45.4545%; }
  .xl--col-6-11 {
    width: 54.5454%; }
  .xl--col-7-11 {
    width: 63.6363%; }
  .xl--col-8-11 {
    width: 72.7272%; }
  .xl--col-9-11 {
    width: 81.8181%; }
  .xl--col-10-11 {
    width: 90.9090%; }
  /**
	 * Twelfths
	 */
  .xl--col-1-12 {
    width: 8.333%; }
  .xl--col-2-12 {
    width: 16.666%; }
  .xl--col-5-12 {
    width: 41.666%; }
  .xl--col-7-12 {
    width: 58.333%; }
  .xl--col-11-12 {
    width: 91.666%; } }

@media only screen and (min-width: 80em) {
  .xl--show {
    display: inline-block; }
  .xl--hide {
    display: none; } }

/*------------------------------------*\
	$PUSH
\*------------------------------------*/
/**
 * Push classes, to move grid items over to the right by certain amounts.
 */
/**
	 * Not a particularly great selector, but the DRYest way to do things.
	 */
[class*="push--"] {
  position: relative; }

/**
	 * Whole
	 */
.push--col-1-1 {
  left: 100%; }

/**
	 * Halves
	 */
.push--col-1-2, .push--col-2-4, .push--col-3-6, .push--col-4-8, .push--col-5-10, .push--col-6-12 {
  left: 50%; }

/**
	 * Thirds
	 */
.push--col-1-3, .push--col-2-6, .push--col-3-9, .push--col-4-12 {
  left: 33.333%; }

.push--col-2-3, .push--col-4-6, .push--col-6-9, .push--col-8-12 {
  left: 66.666%; }

/**
	 * Quarters
	 */
.push--col-1-4, .push--col-2-8, .push--col-3-12 {
  left: 25%; }

.push--col-3-4, .push--col-6-8, .push--col-9-12 {
  left: 75%; }

/**
	 * Fifths
	 */
.push--col-1-5, .push--col-2-10 {
  left: 20%; }

.push--col-2-5, .push--col-4-10 {
  left: 40%; }

.push--col-3-5, .push--col-6-10 {
  left: 60%; }

.push--col-4-5, .push--col-8-10 {
  left: 80%; }

/**
	 * Sixths
	 */
.push--col-1-6, .push--col-2-12 {
  left: 16.666%; }

.push--col-5-6, .push--col-10-12 {
  left: 83.333%; }

/**
	 * Sevenths
	 */
.push--col-1-7 {
  left: 14.2857%; }

.push--col-2-7 {
  left: 28.5714%; }

.push--col-3-7 {
  left: 42.8571%; }

.push--col-4-7 {
  left: 57.1428%; }

.push--col-5-7 {
  left: 71.4285%; }

.push--col-6-7 {
  left: 85.7142%; }

/**
	 * Eighths
	 */
.push--col-1-8 {
  left: 12.5%; }

.push--col-3-8 {
  left: 37.5%; }

.push--col-5-8 {
  left: 62.5%; }

.push--col-7-8 {
  left: 87.5%; }

/**
	 * Ninths
	 */
.push--col-1-9 {
  left: 11.111%; }

.push--col-2-9 {
  left: 22.222%; }

.push--col-4-9 {
  left: 44.444%; }

.push--col-5-9 {
  left: 55.555%; }

.push--col-7-9 {
  left: 77.777%; }

.push--col-8-9 {
  left: 88.888%; }

/**
	 * Tenths
	 */
.push--col-1-10 {
  left: 10%; }

.push--col-3-10 {
  left: 30%; }

.push--col-7-10 {
  left: 70%; }

.push--col-9-10 {
  left: 90%; }

/**
	 * Elevenths
	 */
.push--col-1-11 {
  left: 9.0909%; }

.push--col-2-11 {
  left: 18.1818%; }

.push--col-3-11 {
  left: 27.2727%; }

.push--col-4-11 {
  left: 36.3636%; }

.push--col-5-11 {
  left: 45.4545%; }

.push--col-6-11 {
  left: 54.5454%; }

.push--col-7-11 {
  left: 63.6363%; }

.push--col-8-11 {
  left: 72.7272%; }

.push--col-9-11 {
  left: 81.8181%; }

.push--col-10-11 {
  left: 90.9090%; }

/**
	 * Twelfths
	 */
.push--col-1-12 {
  left: 8.333%; }

.push--col-5-12 {
  left: 41.666%; }

.push--col-7-12 {
  left: 58.333%; }

.push--col-11-12 {
  left: 91.666%; }

@media only screen and (min-width: 30em) {
  /**
	 * Whole
	 */
  .push--xs--col-1-1 {
    left: 100%; }
  /**
	 * Halves
	 */
  .push--xs--col-1-2, .push--xs--col-2-4, .push--xs--col-3-6, .push--xs--col-4-8, .push--xs--col-5-10, .push--xs--col-6-12 {
    left: 50%; }
  /**
	 * Thirds
	 */
  .push--xs--col-1-3, .push--xs--col-2-6, .push--xs--col-3-9, .push--xs--col-4-12 {
    left: 33.333%; }
  .push--xs--col-2-3, .push--xs--col-4-6, .push--xs--col-6-9, .push--xs--col-8-12 {
    left: 66.666%; }
  /**
	 * Quarters
	 */
  .push--xs--col-1-4, .push--xs--col-2-8, .push--xs--col-3-12 {
    left: 25%; }
  .push--xs--col-3-4, .push--xs--col-6-8, .push--xs--col-9-12 {
    left: 75%; }
  /**
	 * Fifths
	 */
  .push--xs--col-1-5, .push--xs--col-2-10 {
    left: 20%; }
  .push--xs--col-2-5, .push--xs--col-4-10 {
    left: 40%; }
  .push--xs--col-3-5, .push--xs--col-6-10 {
    left: 60%; }
  .push--xs--col-4-5, .push--xs--col-8-10 {
    left: 80%; }
  /**
	 * Sixths
	 */
  .push--xs--col-1-6, .push--xs--col-2-12 {
    left: 16.666%; }
  .push--xs--col-5-6, .push--xs--col-10-12 {
    left: 83.333%; }
  /**
	 * Sevenths
	 */
  .push--xs--col-1-7 {
    left: 14.2857%; }
  .push--xs--col-2-7 {
    left: 28.5714%; }
  .push--xs--col-3-7 {
    left: 42.8571%; }
  .push--xs--col-4-7 {
    left: 57.1428%; }
  .push--xs--col-5-7 {
    left: 71.4285%; }
  .push--xs--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .push--xs--col-1-8 {
    left: 12.5%; }
  .push--xs--col-3-8 {
    left: 37.5%; }
  .push--xs--col-5-8 {
    left: 62.5%; }
  .push--xs--col-7-8 {
    left: 87.5%; }
  /**
	 * Ninths
	 */
  .push--xs--col-1-9 {
    left: 11.111%; }
  .push--xs--col-2-9 {
    left: 22.222%; }
  .push--xs--col-4-9 {
    left: 44.444%; }
  .push--xs--col-5-9 {
    left: 55.555%; }
  .push--xs--col-7-9 {
    left: 77.777%; }
  .push--xs--col-8-9 {
    left: 88.888%; }
  /**
	 * Tenths
	 */
  .push--xs--col-1-10 {
    left: 10%; }
  .push--xs--col-3-10 {
    left: 30%; }
  .push--xs--col-7-10 {
    left: 70%; }
  .push--xs--col-9-10 {
    left: 90%; }
  /**
	 * Elevenths
	 */
  .push--xs--col-1-11 {
    left: 9.0909%; }
  .push--xs--col-2-11 {
    left: 18.1818%; }
  .push--xs--col-3-11 {
    left: 27.2727%; }
  .push--xs--col-4-11 {
    left: 36.3636%; }
  .push--xs--col-5-11 {
    left: 45.4545%; }
  .push--xs--col-6-11 {
    left: 54.5454%; }
  .push--xs--col-7-11 {
    left: 63.6363%; }
  .push--xs--col-8-11 {
    left: 72.7272%; }
  .push--xs--col-9-11 {
    left: 81.8181%; }
  .push--xs--col-10-11 {
    left: 90.9090%; }
  /**
	 * Twelfths
	 */
  .push--xs--col-1-12 {
    left: 8.333%; }
  .push--xs--col-5-12 {
    left: 41.666%; }
  .push--xs--col-7-12 {
    left: 58.333%; }
  .push--xs--col-11-12 {
    left: 91.666%; } }

@media only screen and (min-width: 37.5em) {
  /**
	 * Whole
	 */
  .push--s--col-1-1 {
    left: 100%; }
  /**
	 * Halves
	 */
  .push--s--col-1-2, .push--s--col-2-4, .push--s--col-3-6, .push--s--col-4-8, .push--s--col-5-10, .push--s--col-6-12 {
    left: 50%; }
  /**
	 * Thirds
	 */
  .push--s--col-1-3, .push--s--col-2-6, .push--s--col-3-9, .push--s--col-4-12 {
    left: 33.333%; }
  .push--s--col-2-3, .push--s--col-4-6, .push--s--col-6-9, .push--s--col-8-12 {
    left: 66.666%; }
  /**
	 * Quarters
	 */
  .push--s--col-1-4, .push--s--col-2-8, .push--s--col-3-12 {
    left: 25%; }
  .push--s--col-3-4, .push--s--col-6-8, .push--s--col-9-12 {
    left: 75%; }
  /**
	 * Fifths
	 */
  .push--s--col-1-5, .push--s--col-2-10 {
    left: 20%; }
  .push--s--col-2-5, .push--s--col-4-10 {
    left: 40%; }
  .push--s--col-3-5, .push--s--col-6-10 {
    left: 60%; }
  .push--s--col-4-5, .push--s--col-8-10 {
    left: 80%; }
  /**
	 * Sixths
	 */
  .push--s--col-1-6, .push--s--col-2-12 {
    left: 16.666%; }
  .push--s--col-5-6, .push--s--col-10-12 {
    left: 83.333%; }
  /**
	 * Sevenths
	 */
  .push--s--col-1-7 {
    left: 14.2857%; }
  .push--s--col-2-7 {
    left: 28.5714%; }
  .push--s--col-3-7 {
    left: 42.8571%; }
  .push--s--col-4-7 {
    left: 57.1428%; }
  .push--s--col-5-7 {
    left: 71.4285%; }
  .push--s--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .push--s--col-1-8 {
    left: 12.5%; }
  .push--s--col-3-8 {
    left: 37.5%; }
  .push--s--col-5-8 {
    left: 62.5%; }
  .push--s--col-7-8 {
    left: 87.5%; }
  /**
	 * Ninths
	 */
  .push--s--col-1-9 {
    left: 11.111%; }
  .push--s--col-2-9 {
    left: 22.222%; }
  .push--s--col-4-9 {
    left: 44.444%; }
  .push--s--col-5-9 {
    left: 55.555%; }
  .push--s--col-7-9 {
    left: 77.777%; }
  .push--s--col-8-9 {
    left: 88.888%; }
  /**
	 * Tenths
	 */
  .push--s--col-1-10 {
    left: 10%; }
  .push--s--col-3-10 {
    left: 30%; }
  .push--s--col-7-10 {
    left: 70%; }
  .push--s--col-9-10 {
    left: 90%; }
  /**
	 * Elevenths
	 */
  .push--s--col-1-11 {
    left: 9.0909%; }
  .push--s--col-2-11 {
    left: 18.1818%; }
  .push--s--col-3-11 {
    left: 27.2727%; }
  .push--s--col-4-11 {
    left: 36.3636%; }
  .push--s--col-5-11 {
    left: 45.4545%; }
  .push--s--col-6-11 {
    left: 54.5454%; }
  .push--s--col-7-11 {
    left: 63.6363%; }
  .push--s--col-8-11 {
    left: 72.7272%; }
  .push--s--col-9-11 {
    left: 81.8181%; }
  .push--s--col-10-11 {
    left: 90.9090%; }
  /**
	 * Twelfths
	 */
  .push--s--col-1-12 {
    left: 8.333%; }
  .push--s--col-5-12 {
    left: 41.666%; }
  .push--s--col-7-12 {
    left: 58.333%; }
  .push--s--col-11-12 {
    left: 91.666%; } }

@media only screen and (min-width: 48em) {
  /**
	 * Whole
	 */
  .push--m--col-1-1 {
    left: 100%; }
  /**
	 * Halves
	 */
  .push--m--col-1-2, .push--m--col-2-4, .push--m--col-3-6, .push--m--col-4-8, .push--m--col-5-10, .push--m--col-6-12 {
    left: 50%; }
  /**
	 * Thirds
	 */
  .push--m--col-1-3, .push--m--col-2-6, .push--m--col-3-9, .push--m--col-4-12 {
    left: 33.333%; }
  .push--m--col-2-3, .push--m--col-4-6, .push--m--col-6-9, .push--m--col-8-12 {
    left: 66.666%; }
  /**
	 * Quarters
	 */
  .push--m--col-1-4, .push--m--col-2-8, .push--m--col-3-12 {
    left: 25%; }
  .push--m--col-3-4, .push--m--col-6-8, .push--m--col-9-12 {
    left: 75%; }
  /**
	 * Fifths
	 */
  .push--m--col-1-5, .push--m--col-2-10 {
    left: 20%; }
  .push--m--col-2-5, .push--m--col-4-10 {
    left: 40%; }
  .push--m--col-3-5, .push--m--col-6-10 {
    left: 60%; }
  .push--m--col-4-5, .push--m--col-8-10 {
    left: 80%; }
  /**
	 * Sixths
	 */
  .push--m--col-1-6, .push--m--col-2-12 {
    left: 16.666%; }
  .push--m--col-5-6, .push--m--col-10-12 {
    left: 83.333%; }
  /**
	 * Sevenths
	 */
  .push--m--col-1-7 {
    left: 14.2857%; }
  .push--m--col-2-7 {
    left: 28.5714%; }
  .push--m--col-3-7 {
    left: 42.8571%; }
  .push--m--col-4-7 {
    left: 57.1428%; }
  .push--m--col-5-7 {
    left: 71.4285%; }
  .push--m--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .push--m--col-1-8 {
    left: 12.5%; }
  .push--m--col-3-8 {
    left: 37.5%; }
  .push--m--col-5-8 {
    left: 62.5%; }
  .push--m--col-7-8 {
    left: 87.5%; }
  /**
	 * Ninths
	 */
  .push--m--col-1-9 {
    left: 11.111%; }
  .push--m--col-2-9 {
    left: 22.222%; }
  .push--m--col-4-9 {
    left: 44.444%; }
  .push--m--col-5-9 {
    left: 55.555%; }
  .push--m--col-7-9 {
    left: 77.777%; }
  .push--m--col-8-9 {
    left: 88.888%; }
  /**
	 * Tenths
	 */
  .push--m--col-1-10 {
    left: 10%; }
  .push--m--col-3-10 {
    left: 30%; }
  .push--m--col-7-10 {
    left: 70%; }
  .push--m--col-9-10 {
    left: 90%; }
  /**
	 * Elevenths
	 */
  .push--m--col-1-11 {
    left: 9.0909%; }
  .push--m--col-2-11 {
    left: 18.1818%; }
  .push--m--col-3-11 {
    left: 27.2727%; }
  .push--m--col-4-11 {
    left: 36.3636%; }
  .push--m--col-5-11 {
    left: 45.4545%; }
  .push--m--col-6-11 {
    left: 54.5454%; }
  .push--m--col-7-11 {
    left: 63.6363%; }
  .push--m--col-8-11 {
    left: 72.7272%; }
  .push--m--col-9-11 {
    left: 81.8181%; }
  .push--m--col-10-11 {
    left: 90.9090%; }
  /**
	 * Twelfths
	 */
  .push--m--col-1-12 {
    left: 8.333%; }
  .push--m--col-5-12 {
    left: 41.666%; }
  .push--m--col-7-12 {
    left: 58.333%; }
  .push--m--col-11-12 {
    left: 91.666%; } }

@media only screen and (min-width: 64em) {
  /**
	 * Whole
	 */
  .push--l--col-1-1 {
    left: 100%; }
  /**
	 * Halves
	 */
  .push--l--col-1-2, .push--l--col-2-4, .push--l--col-3-6, .push--l--col-4-8, .push--l--col-5-10, .push--l--col-6-12 {
    left: 50%; }
  /**
	 * Thirds
	 */
  .push--l--col-1-3, .push--l--col-2-6, .push--l--col-3-9, .push--l--col-4-12 {
    left: 33.333%; }
  .push--l--col-2-3, .push--l--col-4-6, .push--l--col-6-9, .push--l--col-8-12 {
    left: 66.666%; }
  /**
	 * Quarters
	 */
  .push--l--col-1-4, .push--l--col-2-8, .push--l--col-3-12 {
    left: 25%; }
  .push--l--col-3-4, .push--l--col-6-8, .push--l--col-9-12 {
    left: 75%; }
  /**
	 * Fifths
	 */
  .push--l--col-1-5, .push--l--col-2-10 {
    left: 20%; }
  .push--l--col-2-5, .push--l--col-4-10 {
    left: 40%; }
  .push--l--col-3-5, .push--l--col-6-10 {
    left: 60%; }
  .push--l--col-4-5, .push--l--col-8-10 {
    left: 80%; }
  /**
	 * Sixths
	 */
  .push--l--col-1-6, .push--l--col-2-12 {
    left: 16.666%; }
  .push--l--col-5-6, .push--l--col-10-12 {
    left: 83.333%; }
  /**
	 * Sevenths
	 */
  .push--l--col-1-7 {
    left: 14.2857%; }
  .push--l--col-2-7 {
    left: 28.5714%; }
  .push--l--col-3-7 {
    left: 42.8571%; }
  .push--l--col-4-7 {
    left: 57.1428%; }
  .push--l--col-5-7 {
    left: 71.4285%; }
  .push--l--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .push--l--col-1-8 {
    left: 12.5%; }
  .push--l--col-3-8 {
    left: 37.5%; }
  .push--l--col-5-8 {
    left: 62.5%; }
  .push--l--col-7-8 {
    left: 87.5%; }
  /**
	 * Ninths
	 */
  .push--l--col-1-9 {
    left: 11.111%; }
  .push--l--col-2-9 {
    left: 22.222%; }
  .push--l--col-4-9 {
    left: 44.444%; }
  .push--l--col-5-9 {
    left: 55.555%; }
  .push--l--col-7-9 {
    left: 77.777%; }
  .push--l--col-8-9 {
    left: 88.888%; }
  /**
	 * Tenths
	 */
  .push--l--col-1-10 {
    left: 10%; }
  .push--l--col-3-10 {
    left: 30%; }
  .push--l--col-7-10 {
    left: 70%; }
  .push--l--col-9-10 {
    left: 90%; }
  /**
	 * Elevenths
	 */
  .push--l--col-1-11 {
    left: 9.0909%; }
  .push--l--col-2-11 {
    left: 18.1818%; }
  .push--l--col-3-11 {
    left: 27.2727%; }
  .push--l--col-4-11 {
    left: 36.3636%; }
  .push--l--col-5-11 {
    left: 45.4545%; }
  .push--l--col-6-11 {
    left: 54.5454%; }
  .push--l--col-7-11 {
    left: 63.6363%; }
  .push--l--col-8-11 {
    left: 72.7272%; }
  .push--l--col-9-11 {
    left: 81.8181%; }
  .push--l--col-10-11 {
    left: 90.9090%; }
  /**
	 * Twelfths
	 */
  .push--l--col-1-12 {
    left: 8.333%; }
  .push--l--col-5-12 {
    left: 41.666%; }
  .push--l--col-7-12 {
    left: 58.333%; }
  .push--l--col-11-12 {
    left: 91.666%; } }

@media only screen and (min-width: 80em) {
  /**
	 * Whole
	 */
  .push--xl--col-1-1 {
    left: 100%; }
  /**
	 * Halves
	 */
  .push--xl--col-1-2, .push--xl--col-2-4, .push--xl--col-3-6, .push--xl--col-4-8, .push--xl--col-5-10, .push--xl--col-6-12 {
    left: 50%; }
  /**
	 * Thirds
	 */
  .push--xl--col-1-3, .push--xl--col-2-6, .push--xl--col-3-9, .push--xl--col-4-12 {
    left: 33.333%; }
  .push--xl--col-2-3, .push--xl--col-4-6, .push--xl--col-6-9, .push--xl--col-8-12 {
    left: 66.666%; }
  /**
	 * Quarters
	 */
  .push--xl--col-1-4, .push--xl--col-2-8, .push--xl--col-3-12 {
    left: 25%; }
  .push--xl--col-3-4, .push--xl--col-6-8, .push--xl--col-9-12 {
    left: 75%; }
  /**
	 * Fifths
	 */
  .push--xl--col-1-5, .push--xl--col-2-10 {
    left: 20%; }
  .push--xl--col-2-5, .push--xl--col-4-10 {
    left: 40%; }
  .push--xl--col-3-5, .push--xl--col-6-10 {
    left: 60%; }
  .push--xl--col-4-5, .push--xl--col-8-10 {
    left: 80%; }
  /**
	 * Sixths
	 */
  .push--xl--col-1-6, .push--xl--col-2-12 {
    left: 16.666%; }
  .push--xl--col-5-6, .push--xl--col-10-12 {
    left: 83.333%; }
  /**
	 * Sevenths
	 */
  .push--xl--col-1-7 {
    left: 14.2857%; }
  .push--xl--col-2-7 {
    left: 28.5714%; }
  .push--xl--col-3-7 {
    left: 42.8571%; }
  .push--xl--col-4-7 {
    left: 57.1428%; }
  .push--xl--col-5-7 {
    left: 71.4285%; }
  .push--xl--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .push--xl--col-1-8 {
    left: 12.5%; }
  .push--xl--col-3-8 {
    left: 37.5%; }
  .push--xl--col-5-8 {
    left: 62.5%; }
  .push--xl--col-7-8 {
    left: 87.5%; }
  /**
	 * Ninths
	 */
  .push--xl--col-1-9 {
    left: 11.111%; }
  .push--xl--col-2-9 {
    left: 22.222%; }
  .push--xl--col-4-9 {
    left: 44.444%; }
  .push--xl--col-5-9 {
    left: 55.555%; }
  .push--xl--col-7-9 {
    left: 77.777%; }
  .push--xl--col-8-9 {
    left: 88.888%; }
  /**
	 * Tenths
	 */
  .push--xl--col-1-10 {
    left: 10%; }
  .push--xl--col-3-10 {
    left: 30%; }
  .push--xl--col-7-10 {
    left: 70%; }
  .push--xl--col-9-10 {
    left: 90%; }
  /**
	 * Elevenths
	 */
  .push--xl--col-1-11 {
    left: 9.0909%; }
  .push--xl--col-2-11 {
    left: 18.1818%; }
  .push--xl--col-3-11 {
    left: 27.2727%; }
  .push--xl--col-4-11 {
    left: 36.3636%; }
  .push--xl--col-5-11 {
    left: 45.4545%; }
  .push--xl--col-6-11 {
    left: 54.5454%; }
  .push--xl--col-7-11 {
    left: 63.6363%; }
  .push--xl--col-8-11 {
    left: 72.7272%; }
  .push--xl--col-9-11 {
    left: 81.8181%; }
  .push--xl--col-10-11 {
    left: 90.9090%; }
  /**
	 * Twelfths
	 */
  .push--xl--col-1-12 {
    left: 8.333%; }
  .push--xl--col-5-12 {
    left: 41.666%; }
  .push--xl--col-7-12 {
    left: 58.333%; }
  .push--xl--col-11-12 {
    left: 91.666%; } }

/*------------------------------------*\
	$PULL
\*------------------------------------*/
/**
 * Pull classes, to move grid items back to the left by certain amounts.
 */
/**
	 * Not a particularly great selector, but the DRYest way to do things.
	 */
[class*="pull--"] {
  position: relative; }

/**
	 * Whole
	 */
.pull--col-1-1 {
  right: 100%; }

/**
	 * Halves
	 */
.pull--col-1-2, .pull--col-2-4, .pull--col-3-6, .pull--col-4-8, .pull--col-5-10, .pull--col-6-12 {
  right: 50%; }

/**
	 * Thirds
	 */
.pull--col-1-3, .pull--col-2-6, .pull--col-3-9, .pull--col-4-12 {
  right: 33.333%; }

.pull--col-2-3, .pull--col-4-6, .pull--col-6-9, .pull--col-8-12 {
  right: 66.666%; }

/**
	 * Quarters
	 */
.pull--col-1-4, .pull--col-2-8, .pull--col-3-12 {
  right: 25%; }

.pull--col-3-4, .pull--col-6-8, .pull--col-9-12 {
  right: 75%; }

/**
	 * Fifths
	 */
.pull--col-1-5, .pull--col-2-10 {
  right: 20%; }

.pull--col-2-5, .pull--col-4-10 {
  right: 40%; }

.pull--col-3-5, .pull--col-6-10 {
  right: 60%; }

.pull--col-4-5, .pull--col-8-10 {
  right: 80%; }

/**
	 * Sixths
	 */
.pull--col-1-6, .pull--col-2-12 {
  right: 16.666%; }

.pull--col-5-6, .pull--col-10-12 {
  right: 83.333%; }

/**
	 * Sevenths
	 */
.pull--col-1-7 {
  left: 14.2857%; }

.pull--col-2-7 {
  left: 28.5714%; }

.pull--col-3-7 {
  left: 42.8571%; }

.pull--col-4-7 {
  left: 57.1428%; }

.pull--col-5-7 {
  left: 71.4285%; }

.pull--col-6-7 {
  left: 85.7142%; }

/**
	 * Eighths
	 */
.pull--col-1-8 {
  right: 12.5%; }

.pull--col-3-8 {
  right: 37.5%; }

.pull--col-5-8 {
  right: 62.5%; }

.pull--col-7-8 {
  right: 87.5%; }

/**
	 * Ninths
	 */
.pull--col-1-9 {
  right: 11.111%; }

.pull--col-2-9 {
  right: 22.222%; }

.pull--col-4-9 {
  right: 44.444%; }

.pull--col-5-9 {
  right: 55.555%; }

.pull--col-7-9 {
  right: 77.777%; }

.pull--col-8-9 {
  right: 88.888%; }

/**
	 * Tenths
	 */
.pull--col-1-10 {
  right: 10%; }

.pull--col-3-10 {
  right: 30%; }

.pull--col-7-10 {
  right: 70%; }

.pull--col-9-10 {
  right: 90%; }

/**
	 * Elevenths
	 */
.pull--col-1-11 {
  right: 9.0909%; }

.pull--col-2-11 {
  right: 18.1818%; }

.pull--col-3-11 {
  right: 27.2727%; }

.pull--col-4-11 {
  right: 36.3636%; }

.pull--col-5-11 {
  right: 45.4545%; }

.pull--col-6-11 {
  right: 54.5454%; }

.pull--col-7-11 {
  right: 63.6363%; }

.pull--col-8-11 {
  right: 72.7272%; }

.pull--col-9-11 {
  right: 81.8181%; }

.pull--col-10-11 {
  right: 90.9090%; }

/**
	 * Twelfths
	 */
.pull--col-1-12 {
  right: 8.333%; }

.pull--col-5-12 {
  right: 41.666%; }

.pull--col-7-12 {
  right: 58.333%; }

.pull--col-11-12 {
  right: 91.666%; }

@media only screen and (min-width: 30em) {
  /**
	 * Whole
	 */
  .pull--xs--col-1-1 {
    right: 100%; }
  /**
	 * Halves
	 */
  .pull--xs--col-1-2, .pull--xs--col-2-4, .pull--xs--col-3-6, .pull--xs--col-4-8, .pull--xs--col-5-10, .pull--xs--col-6-12 {
    right: 50%; }
  /**
	 * Thirds
	 */
  .pull--xs--col-1-3, .pull--xs--col-2-6, .pull--xs--col-3-9, .pull--xs--col-4-12 {
    right: 33.333%; }
  .pull--xs--col-2-3, .pull--xs--col-4-6, .pull--xs--col-6-9, .pull--xs--col-8-12 {
    right: 66.666%; }
  /**
	 * Quarters
	 */
  .pull--xs--col-1-4, .pull--xs--col-2-8, .pull--xs--col-3-12 {
    right: 25%; }
  .pull--xs--col-3-4, .pull--xs--col-6-8, .pull--xs--col-9-12 {
    right: 75%; }
  /**
	 * Fifths
	 */
  .pull--xs--col-1-5, .pull--xs--col-2-10 {
    right: 20%; }
  .pull--xs--col-2-5, .pull--xs--col-4-10 {
    right: 40%; }
  .pull--xs--col-3-5, .pull--xs--col-6-10 {
    right: 60%; }
  .pull--xs--col-4-5, .pull--xs--col-8-10 {
    right: 80%; }
  /**
	 * Sixths
	 */
  .pull--xs--col-1-6, .pull--xs--col-2-12 {
    right: 16.666%; }
  .pull--xs--col-5-6, .pull--xs--col-10-12 {
    right: 83.333%; }
  /**
	 * Sevenths
	 */
  .pull--xs--col-1-7 {
    left: 14.2857%; }
  .pull--xs--col-2-7 {
    left: 28.5714%; }
  .pull--xs--col-3-7 {
    left: 42.8571%; }
  .pull--xs--col-4-7 {
    left: 57.1428%; }
  .pull--xs--col-5-7 {
    left: 71.4285%; }
  .pull--xs--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .pull--xs--col-1-8 {
    right: 12.5%; }
  .pull--xs--col-3-8 {
    right: 37.5%; }
  .pull--xs--col-5-8 {
    right: 62.5%; }
  .pull--xs--col-7-8 {
    right: 87.5%; }
  /**
	 * Ninths
	 */
  .pull--xs--col-1-9 {
    right: 11.111%; }
  .pull--xs--col-2-9 {
    right: 22.222%; }
  .pull--xs--col-4-9 {
    right: 44.444%; }
  .pull--xs--col-5-9 {
    right: 55.555%; }
  .pull--xs--col-7-9 {
    right: 77.777%; }
  .pull--xs--col-8-9 {
    right: 88.888%; }
  /**
	 * Tenths
	 */
  .pull--xs--col-1-10 {
    right: 10%; }
  .pull--xs--col-3-10 {
    right: 30%; }
  .pull--xs--col-7-10 {
    right: 70%; }
  .pull--xs--col-9-10 {
    right: 90%; }
  /**
	 * Elevenths
	 */
  .pull--xs--col-1-11 {
    right: 9.0909%; }
  .pull--xs--col-2-11 {
    right: 18.1818%; }
  .pull--xs--col-3-11 {
    right: 27.2727%; }
  .pull--xs--col-4-11 {
    right: 36.3636%; }
  .pull--xs--col-5-11 {
    right: 45.4545%; }
  .pull--xs--col-6-11 {
    right: 54.5454%; }
  .pull--xs--col-7-11 {
    right: 63.6363%; }
  .pull--xs--col-8-11 {
    right: 72.7272%; }
  .pull--xs--col-9-11 {
    right: 81.8181%; }
  .pull--xs--col-10-11 {
    right: 90.9090%; }
  /**
	 * Twelfths
	 */
  .pull--xs--col-1-12 {
    right: 8.333%; }
  .pull--xs--col-5-12 {
    right: 41.666%; }
  .pull--xs--col-7-12 {
    right: 58.333%; }
  .pull--xs--col-11-12 {
    right: 91.666%; } }

@media only screen and (min-width: 37.5em) {
  /**
	 * Whole
	 */
  .pull--s--col-1-1 {
    right: 100%; }
  /**
	 * Halves
	 */
  .pull--s--col-1-2, .pull--s--col-2-4, .pull--s--col-3-6, .pull--s--col-4-8, .pull--s--col-5-10, .pull--s--col-6-12 {
    right: 50%; }
  /**
	 * Thirds
	 */
  .pull--s--col-1-3, .pull--s--col-2-6, .pull--s--col-3-9, .pull--s--col-4-12 {
    right: 33.333%; }
  .pull--s--col-2-3, .pull--s--col-4-6, .pull--s--col-6-9, .pull--s--col-8-12 {
    right: 66.666%; }
  /**
	 * Quarters
	 */
  .pull--s--col-1-4, .pull--s--col-2-8, .pull--s--col-3-12 {
    right: 25%; }
  .pull--s--col-3-4, .pull--s--col-6-8, .pull--s--col-9-12 {
    right: 75%; }
  /**
	 * Fifths
	 */
  .pull--s--col-1-5, .pull--s--col-2-10 {
    right: 20%; }
  .pull--s--col-2-5, .pull--s--col-4-10 {
    right: 40%; }
  .pull--s--col-3-5, .pull--s--col-6-10 {
    right: 60%; }
  .pull--s--col-4-5, .pull--s--col-8-10 {
    right: 80%; }
  /**
	 * Sixths
	 */
  .pull--s--col-1-6, .pull--s--col-2-12 {
    right: 16.666%; }
  .pull--s--col-5-6, .pull--s--col-10-12 {
    right: 83.333%; }
  /**
	 * Sevenths
	 */
  .pull--s--col-1-7 {
    left: 14.2857%; }
  .pull--s--col-2-7 {
    left: 28.5714%; }
  .pull--s--col-3-7 {
    left: 42.8571%; }
  .pull--s--col-4-7 {
    left: 57.1428%; }
  .pull--s--col-5-7 {
    left: 71.4285%; }
  .pull--s--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .pull--s--col-1-8 {
    right: 12.5%; }
  .pull--s--col-3-8 {
    right: 37.5%; }
  .pull--s--col-5-8 {
    right: 62.5%; }
  .pull--s--col-7-8 {
    right: 87.5%; }
  /**
	 * Ninths
	 */
  .pull--s--col-1-9 {
    right: 11.111%; }
  .pull--s--col-2-9 {
    right: 22.222%; }
  .pull--s--col-4-9 {
    right: 44.444%; }
  .pull--s--col-5-9 {
    right: 55.555%; }
  .pull--s--col-7-9 {
    right: 77.777%; }
  .pull--s--col-8-9 {
    right: 88.888%; }
  /**
	 * Tenths
	 */
  .pull--s--col-1-10 {
    right: 10%; }
  .pull--s--col-3-10 {
    right: 30%; }
  .pull--s--col-7-10 {
    right: 70%; }
  .pull--s--col-9-10 {
    right: 90%; }
  /**
	 * Elevenths
	 */
  .pull--s--col-1-11 {
    right: 9.0909%; }
  .pull--s--col-2-11 {
    right: 18.1818%; }
  .pull--s--col-3-11 {
    right: 27.2727%; }
  .pull--s--col-4-11 {
    right: 36.3636%; }
  .pull--s--col-5-11 {
    right: 45.4545%; }
  .pull--s--col-6-11 {
    right: 54.5454%; }
  .pull--s--col-7-11 {
    right: 63.6363%; }
  .pull--s--col-8-11 {
    right: 72.7272%; }
  .pull--s--col-9-11 {
    right: 81.8181%; }
  .pull--s--col-10-11 {
    right: 90.9090%; }
  /**
	 * Twelfths
	 */
  .pull--s--col-1-12 {
    right: 8.333%; }
  .pull--s--col-5-12 {
    right: 41.666%; }
  .pull--s--col-7-12 {
    right: 58.333%; }
  .pull--s--col-11-12 {
    right: 91.666%; } }

@media only screen and (min-width: 48em) {
  /**
	 * Whole
	 */
  .pull--m--col-1-1 {
    right: 100%; }
  /**
	 * Halves
	 */
  .pull--m--col-1-2, .pull--m--col-2-4, .pull--m--col-3-6, .pull--m--col-4-8, .pull--m--col-5-10, .pull--m--col-6-12 {
    right: 50%; }
  /**
	 * Thirds
	 */
  .pull--m--col-1-3, .pull--m--col-2-6, .pull--m--col-3-9, .pull--m--col-4-12 {
    right: 33.333%; }
  .pull--m--col-2-3, .pull--m--col-4-6, .pull--m--col-6-9, .pull--m--col-8-12 {
    right: 66.666%; }
  /**
	 * Quarters
	 */
  .pull--m--col-1-4, .pull--m--col-2-8, .pull--m--col-3-12 {
    right: 25%; }
  .pull--m--col-3-4, .pull--m--col-6-8, .pull--m--col-9-12 {
    right: 75%; }
  /**
	 * Fifths
	 */
  .pull--m--col-1-5, .pull--m--col-2-10 {
    right: 20%; }
  .pull--m--col-2-5, .pull--m--col-4-10 {
    right: 40%; }
  .pull--m--col-3-5, .pull--m--col-6-10 {
    right: 60%; }
  .pull--m--col-4-5, .pull--m--col-8-10 {
    right: 80%; }
  /**
	 * Sixths
	 */
  .pull--m--col-1-6, .pull--m--col-2-12 {
    right: 16.666%; }
  .pull--m--col-5-6, .pull--m--col-10-12 {
    right: 83.333%; }
  /**
	 * Sevenths
	 */
  .pull--m--col-1-7 {
    left: 14.2857%; }
  .pull--m--col-2-7 {
    left: 28.5714%; }
  .pull--m--col-3-7 {
    left: 42.8571%; }
  .pull--m--col-4-7 {
    left: 57.1428%; }
  .pull--m--col-5-7 {
    left: 71.4285%; }
  .pull--m--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .pull--m--col-1-8 {
    right: 12.5%; }
  .pull--m--col-3-8 {
    right: 37.5%; }
  .pull--m--col-5-8 {
    right: 62.5%; }
  .pull--m--col-7-8 {
    right: 87.5%; }
  /**
	 * Ninths
	 */
  .pull--m--col-1-9 {
    right: 11.111%; }
  .pull--m--col-2-9 {
    right: 22.222%; }
  .pull--m--col-4-9 {
    right: 44.444%; }
  .pull--m--col-5-9 {
    right: 55.555%; }
  .pull--m--col-7-9 {
    right: 77.777%; }
  .pull--m--col-8-9 {
    right: 88.888%; }
  /**
	 * Tenths
	 */
  .pull--m--col-1-10 {
    right: 10%; }
  .pull--m--col-3-10 {
    right: 30%; }
  .pull--m--col-7-10 {
    right: 70%; }
  .pull--m--col-9-10 {
    right: 90%; }
  /**
	 * Elevenths
	 */
  .pull--m--col-1-11 {
    right: 9.0909%; }
  .pull--m--col-2-11 {
    right: 18.1818%; }
  .pull--m--col-3-11 {
    right: 27.2727%; }
  .pull--m--col-4-11 {
    right: 36.3636%; }
  .pull--m--col-5-11 {
    right: 45.4545%; }
  .pull--m--col-6-11 {
    right: 54.5454%; }
  .pull--m--col-7-11 {
    right: 63.6363%; }
  .pull--m--col-8-11 {
    right: 72.7272%; }
  .pull--m--col-9-11 {
    right: 81.8181%; }
  .pull--m--col-10-11 {
    right: 90.9090%; }
  /**
	 * Twelfths
	 */
  .pull--m--col-1-12 {
    right: 8.333%; }
  .pull--m--col-5-12 {
    right: 41.666%; }
  .pull--m--col-7-12 {
    right: 58.333%; }
  .pull--m--col-11-12 {
    right: 91.666%; } }

@media only screen and (min-width: 64em) {
  /**
	 * Whole
	 */
  .pull--l--col-1-1 {
    right: 100%; }
  /**
	 * Halves
	 */
  .pull--l--col-1-2, .pull--l--col-2-4, .pull--l--col-3-6, .pull--l--col-4-8, .pull--l--col-5-10, .pull--l--col-6-12 {
    right: 50%; }
  /**
	 * Thirds
	 */
  .pull--l--col-1-3, .pull--l--col-2-6, .pull--l--col-3-9, .pull--l--col-4-12 {
    right: 33.333%; }
  .pull--l--col-2-3, .pull--l--col-4-6, .pull--l--col-6-9, .pull--l--col-8-12 {
    right: 66.666%; }
  /**
	 * Quarters
	 */
  .pull--l--col-1-4, .pull--l--col-2-8, .pull--l--col-3-12 {
    right: 25%; }
  .pull--l--col-3-4, .pull--l--col-6-8, .pull--l--col-9-12 {
    right: 75%; }
  /**
	 * Fifths
	 */
  .pull--l--col-1-5, .pull--l--col-2-10 {
    right: 20%; }
  .pull--l--col-2-5, .pull--l--col-4-10 {
    right: 40%; }
  .pull--l--col-3-5, .pull--l--col-6-10 {
    right: 60%; }
  .pull--l--col-4-5, .pull--l--col-8-10 {
    right: 80%; }
  /**
	 * Sixths
	 */
  .pull--l--col-1-6, .pull--l--col-2-12 {
    right: 16.666%; }
  .pull--l--col-5-6, .pull--l--col-10-12 {
    right: 83.333%; }
  /**
	 * Sevenths
	 */
  .pull--l--col-1-7 {
    left: 14.2857%; }
  .pull--l--col-2-7 {
    left: 28.5714%; }
  .pull--l--col-3-7 {
    left: 42.8571%; }
  .pull--l--col-4-7 {
    left: 57.1428%; }
  .pull--l--col-5-7 {
    left: 71.4285%; }
  .pull--l--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .pull--l--col-1-8 {
    right: 12.5%; }
  .pull--l--col-3-8 {
    right: 37.5%; }
  .pull--l--col-5-8 {
    right: 62.5%; }
  .pull--l--col-7-8 {
    right: 87.5%; }
  /**
	 * Ninths
	 */
  .pull--l--col-1-9 {
    right: 11.111%; }
  .pull--l--col-2-9 {
    right: 22.222%; }
  .pull--l--col-4-9 {
    right: 44.444%; }
  .pull--l--col-5-9 {
    right: 55.555%; }
  .pull--l--col-7-9 {
    right: 77.777%; }
  .pull--l--col-8-9 {
    right: 88.888%; }
  /**
	 * Tenths
	 */
  .pull--l--col-1-10 {
    right: 10%; }
  .pull--l--col-3-10 {
    right: 30%; }
  .pull--l--col-7-10 {
    right: 70%; }
  .pull--l--col-9-10 {
    right: 90%; }
  /**
	 * Elevenths
	 */
  .pull--l--col-1-11 {
    right: 9.0909%; }
  .pull--l--col-2-11 {
    right: 18.1818%; }
  .pull--l--col-3-11 {
    right: 27.2727%; }
  .pull--l--col-4-11 {
    right: 36.3636%; }
  .pull--l--col-5-11 {
    right: 45.4545%; }
  .pull--l--col-6-11 {
    right: 54.5454%; }
  .pull--l--col-7-11 {
    right: 63.6363%; }
  .pull--l--col-8-11 {
    right: 72.7272%; }
  .pull--l--col-9-11 {
    right: 81.8181%; }
  .pull--l--col-10-11 {
    right: 90.9090%; }
  /**
	 * Twelfths
	 */
  .pull--l--col-1-12 {
    right: 8.333%; }
  .pull--l--col-5-12 {
    right: 41.666%; }
  .pull--l--col-7-12 {
    right: 58.333%; }
  .pull--l--col-11-12 {
    right: 91.666%; } }

@media only screen and (min-width: 80em) {
  /**
	 * Whole
	 */
  .pull--xl--col-1-1 {
    right: 100%; }
  /**
	 * Halves
	 */
  .pull--xl--col-1-2, .pull--xl--col-2-4, .pull--xl--col-3-6, .pull--xl--col-4-8, .pull--xl--col-5-10, .pull--xl--col-6-12 {
    right: 50%; }
  /**
	 * Thirds
	 */
  .pull--xl--col-1-3, .pull--xl--col-2-6, .pull--xl--col-3-9, .pull--xl--col-4-12 {
    right: 33.333%; }
  .pull--xl--col-2-3, .pull--xl--col-4-6, .pull--xl--col-6-9, .pull--xl--col-8-12 {
    right: 66.666%; }
  /**
	 * Quarters
	 */
  .pull--xl--col-1-4, .pull--xl--col-2-8, .pull--xl--col-3-12 {
    right: 25%; }
  .pull--xl--col-3-4, .pull--xl--col-6-8, .pull--xl--col-9-12 {
    right: 75%; }
  /**
	 * Fifths
	 */
  .pull--xl--col-1-5, .pull--xl--col-2-10 {
    right: 20%; }
  .pull--xl--col-2-5, .pull--xl--col-4-10 {
    right: 40%; }
  .pull--xl--col-3-5, .pull--xl--col-6-10 {
    right: 60%; }
  .pull--xl--col-4-5, .pull--xl--col-8-10 {
    right: 80%; }
  /**
	 * Sixths
	 */
  .pull--xl--col-1-6, .pull--xl--col-2-12 {
    right: 16.666%; }
  .pull--xl--col-5-6, .pull--xl--col-10-12 {
    right: 83.333%; }
  /**
	 * Sevenths
	 */
  .pull--xl--col-1-7 {
    left: 14.2857%; }
  .pull--xl--col-2-7 {
    left: 28.5714%; }
  .pull--xl--col-3-7 {
    left: 42.8571%; }
  .pull--xl--col-4-7 {
    left: 57.1428%; }
  .pull--xl--col-5-7 {
    left: 71.4285%; }
  .pull--xl--col-6-7 {
    left: 85.7142%; }
  /**
	 * Eighths
	 */
  .pull--xl--col-1-8 {
    right: 12.5%; }
  .pull--xl--col-3-8 {
    right: 37.5%; }
  .pull--xl--col-5-8 {
    right: 62.5%; }
  .pull--xl--col-7-8 {
    right: 87.5%; }
  /**
	 * Ninths
	 */
  .pull--xl--col-1-9 {
    right: 11.111%; }
  .pull--xl--col-2-9 {
    right: 22.222%; }
  .pull--xl--col-4-9 {
    right: 44.444%; }
  .pull--xl--col-5-9 {
    right: 55.555%; }
  .pull--xl--col-7-9 {
    right: 77.777%; }
  .pull--xl--col-8-9 {
    right: 88.888%; }
  /**
	 * Tenths
	 */
  .pull--xl--col-1-10 {
    right: 10%; }
  .pull--xl--col-3-10 {
    right: 30%; }
  .pull--xl--col-7-10 {
    right: 70%; }
  .pull--xl--col-9-10 {
    right: 90%; }
  /**
	 * Elevenths
	 */
  .pull--xl--col-1-11 {
    right: 9.0909%; }
  .pull--xl--col-2-11 {
    right: 18.1818%; }
  .pull--xl--col-3-11 {
    right: 27.2727%; }
  .pull--xl--col-4-11 {
    right: 36.3636%; }
  .pull--xl--col-5-11 {
    right: 45.4545%; }
  .pull--xl--col-6-11 {
    right: 54.5454%; }
  .pull--xl--col-7-11 {
    right: 63.6363%; }
  .pull--xl--col-8-11 {
    right: 72.7272%; }
  .pull--xl--col-9-11 {
    right: 81.8181%; }
  .pull--xl--col-10-11 {
    right: 90.9090%; }
  /**
	 * Twelfths
	 */
  .pull--xl--col-1-12 {
    right: 8.333%; }
  .pull--xl--col-5-12 {
    right: 41.666%; }
  .pull--xl--col-7-12 {
    right: 58.333%; }
  .pull--xl--col-11-12 {
    right: 91.666%; } }

/* Global grid reset - setting font to 0 lets grid blocks bump next to each other */
.grid {
  font-size: 0; }
  .grid__item {
    font-size: 16px;
    font-size: 1.6rem; }

body {
  line-height: 1.5; }

.wiz-container h1,
.wiz-container h2,
.wiz-container h3,
.wiz-container h4,
.wiz-container h5,
.wiz-container h6, .core-heading h1,
.core-heading h2,
.core-heading h3,
.core-heading h4,
.core-heading h5,
.core-heading h6, .core-paragraph h1,
.core-paragraph h2,
.core-paragraph h3,
.core-paragraph h4,
.core-paragraph h5,
.core-paragraph h6, .core-list h1,
.core-list h2,
.core-list h3,
.core-list h4,
.core-list h5,
.core-list h6, .core-classic h1,
.core-classic h2,
.core-classic h3,
.core-classic h4,
.core-classic h5,
.core-classic h6, .single-post--content-wrap h1,
.single-post--content-wrap h2,
.single-post--content-wrap h3,
.single-post--content-wrap h4,
.single-post--content-wrap h5,
.single-post--content-wrap h6, .single-case_study--content-wrap h1,
.single-case_study--content-wrap h2,
.single-case_study--content-wrap h3,
.single-case_study--content-wrap h4,
.single-case_study--content-wrap h5,
.single-case_study--content-wrap h6, .single-download--content-wrap h1,
.single-download--content-wrap h2,
.single-download--content-wrap h3,
.single-download--content-wrap h4,
.single-download--content-wrap h5,
.single-download--content-wrap h6, .single-leadership--content-wrap h1,
.single-leadership--content-wrap h2,
.single-leadership--content-wrap h3,
.single-leadership--content-wrap h4,
.single-leadership--content-wrap h5,
.single-leadership--content-wrap h6, .single-news--content-wrap h1,
.single-news--content-wrap h2,
.single-news--content-wrap h3,
.single-news--content-wrap h4,
.single-news--content-wrap h5,
.single-news--content-wrap h6, .single-product--content-wrap h1,
.single-product--content-wrap h2,
.single-product--content-wrap h3,
.single-product--content-wrap h4,
.single-product--content-wrap h5,
.single-product--content-wrap h6, .single-video--content-wrap h1,
.single-video--content-wrap h2,
.single-video--content-wrap h3,
.single-video--content-wrap h4,
.single-video--content-wrap h5,
.single-video--content-wrap h6 {
  font-family: "Museo", sans-serif; }

.wiz-container h1, .core-heading h1, .core-paragraph h1, .core-list h1, .core-classic h1, .single-post--content-wrap h1, .single-case_study--content-wrap h1, .single-download--content-wrap h1, .single-leadership--content-wrap h1, .single-news--content-wrap h1, .single-product--content-wrap h1, .single-video--content-wrap h1 {
  font-size: 4.6rem;
  line-height: 1.5;
  font-weight: 100;
  text-align: center; }

.wiz-container h2, .core-heading h2, .core-paragraph h2, .core-list h2, .core-classic h2, .single-post--content-wrap h2, .single-case_study--content-wrap h2, .single-download--content-wrap h2, .single-leadership--content-wrap h2, .single-news--content-wrap h2, .single-product--content-wrap h2, .single-video--content-wrap h2 {
  font-size: 4.6rem;
  line-height: 1.5;
  font-weight: 100;
  text-align: center; }

.wiz-container h3, .core-heading h3, .core-paragraph h3, .core-list h3, .core-classic h3, .single-post--content-wrap h3, .single-case_study--content-wrap h3, .single-download--content-wrap h3, .single-leadership--content-wrap h3, .single-news--content-wrap h3, .single-product--content-wrap h3, .single-video--content-wrap h3 {
  font-size: 4.6rem;
  line-height: 1.5;
  font-weight: 100; }

.wiz-container h4, .core-heading h4, .core-paragraph h4, .core-list h4, .core-classic h4, .single-post--content-wrap h4, .single-case_study--content-wrap h4, .single-download--content-wrap h4, .single-leadership--content-wrap h4, .single-news--content-wrap h4, .single-product--content-wrap h4, .single-video--content-wrap h4 {
  font-family: "Lato";
  font-size: 2.8rem;
  line-height: 1.5;
  color: #0e2a62; }

.wiz-container h5, .core-heading h5, .core-paragraph h5, .core-list h5, .core-classic h5, .single-post--content-wrap h5, .single-case_study--content-wrap h5, .single-download--content-wrap h5, .single-leadership--content-wrap h5, .single-news--content-wrap h5, .single-product--content-wrap h5, .single-video--content-wrap h5 {
  font-size: 2.1rem;
  line-height: 1.5;
  font-weight: 100; }

.wiz-container p, .core-heading p, .core-paragraph p, .core-list p, .core-classic p, .single-post--content-wrap p, .single-case_study--content-wrap p, .single-download--content-wrap p, .single-leadership--content-wrap p, .single-news--content-wrap p, .single-product--content-wrap p, .single-video--content-wrap p {
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "Lato"; }

.wiz-container a, .core-heading a, .core-paragraph a, .core-list a, .core-classic a, .single-post--content-wrap a, .single-case_study--content-wrap a, .single-download--content-wrap a, .single-leadership--content-wrap a, .single-news--content-wrap a, .single-product--content-wrap a, .single-video--content-wrap a {
  font-size: 1.6rem;
  font-family: "Lato";
  text-decoration: none;
  color: #61be23 !important; }
  .wiz-container a:hover, .wiz-container a:focus, .core-heading a:hover, .core-heading a:focus, .core-paragraph a:hover, .core-paragraph a:focus, .core-list a:hover, .core-list a:focus, .core-classic a:hover, .core-classic a:focus, .single-post--content-wrap a:hover, .single-post--content-wrap a:focus, .single-case_study--content-wrap a:hover, .single-case_study--content-wrap a:focus, .single-download--content-wrap a:hover, .single-download--content-wrap a:focus, .single-leadership--content-wrap a:hover, .single-leadership--content-wrap a:focus, .single-news--content-wrap a:hover, .single-news--content-wrap a:focus, .single-product--content-wrap a:hover, .single-product--content-wrap a:focus, .single-video--content-wrap a:hover, .single-video--content-wrap a:focus {
    text-decoration: underline; }
  .wiz-container a.primary-cta-button, .core-heading a.primary-cta-button, .core-paragraph a.primary-cta-button, .core-list a.primary-cta-button, .core-classic a.primary-cta-button, .single-post--content-wrap a.primary-cta-button, .single-case_study--content-wrap a.primary-cta-button, .single-download--content-wrap a.primary-cta-button, .single-leadership--content-wrap a.primary-cta-button, .single-news--content-wrap a.primary-cta-button, .single-product--content-wrap a.primary-cta-button, .single-video--content-wrap a.primary-cta-button {
    color: #fff !important; }
    .wiz-container a.primary-cta-button:hover, .wiz-container a.primary-cta-button:focus, .core-heading a.primary-cta-button:hover, .core-heading a.primary-cta-button:focus, .core-paragraph a.primary-cta-button:hover, .core-paragraph a.primary-cta-button:focus, .core-list a.primary-cta-button:hover, .core-list a.primary-cta-button:focus, .core-classic a.primary-cta-button:hover, .core-classic a.primary-cta-button:focus, .single-post--content-wrap a.primary-cta-button:hover, .single-post--content-wrap a.primary-cta-button:focus, .single-case_study--content-wrap a.primary-cta-button:hover, .single-case_study--content-wrap a.primary-cta-button:focus, .single-download--content-wrap a.primary-cta-button:hover, .single-download--content-wrap a.primary-cta-button:focus, .single-leadership--content-wrap a.primary-cta-button:hover, .single-leadership--content-wrap a.primary-cta-button:focus, .single-news--content-wrap a.primary-cta-button:hover, .single-news--content-wrap a.primary-cta-button:focus, .single-product--content-wrap a.primary-cta-button:hover, .single-product--content-wrap a.primary-cta-button:focus, .single-video--content-wrap a.primary-cta-button:hover, .single-video--content-wrap a.primary-cta-button:focus {
      background-color: #56a81f;
      border-color: #56a81f;
      transition: background-color 0.5s;
      text-decoration: none; }

.wiz-container blockquote, .core-heading blockquote, .core-paragraph blockquote, .core-list blockquote, .core-classic blockquote, .single-post--content-wrap blockquote, .single-case_study--content-wrap blockquote, .single-download--content-wrap blockquote, .single-leadership--content-wrap blockquote, .single-news--content-wrap blockquote, .single-product--content-wrap blockquote, .single-video--content-wrap blockquote {
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 100;
  padding-left: 2rem;
  border-left: 0.4rem solid #61be23; }

.wiz-container ul, .core-heading ul, .core-paragraph ul, .core-list ul, .core-classic ul, .single-post--content-wrap ul, .single-case_study--content-wrap ul, .single-download--content-wrap ul, .single-leadership--content-wrap ul, .single-news--content-wrap ul, .single-product--content-wrap ul, .single-video--content-wrap ul {
  list-style-type: disc;
  padding-left: 3rem;
  margin-bottom: 2rem; }
  .wiz-container ul li, .core-heading ul li, .core-paragraph ul li, .core-list ul li, .core-classic ul li, .single-post--content-wrap ul li, .single-case_study--content-wrap ul li, .single-download--content-wrap ul li, .single-leadership--content-wrap ul li, .single-news--content-wrap ul li, .single-product--content-wrap ul li, .single-video--content-wrap ul li {
    font-size: 1.6rem;
    line-height: 1.5;
    font-family: "Lato";
    font-weight: 400; }

.wiz-container ol, .core-heading ol, .core-paragraph ol, .core-list ol, .core-classic ol, .single-post--content-wrap ol, .single-case_study--content-wrap ol, .single-download--content-wrap ol, .single-leadership--content-wrap ol, .single-news--content-wrap ol, .single-product--content-wrap ol, .single-video--content-wrap ol {
  list-style-type: decimal;
  padding-left: 3rem;
  margin-bottom: 2rem; }
  .wiz-container ol li, .core-heading ol li, .core-paragraph ol li, .core-list ol li, .core-classic ol li, .single-post--content-wrap ol li, .single-case_study--content-wrap ol li, .single-download--content-wrap ol li, .single-leadership--content-wrap ol li, .single-news--content-wrap ol li, .single-product--content-wrap ol li, .single-video--content-wrap ol li {
    font-size: 1.6rem;
    line-height: 1.5;
    font-family: "Lato";
    font-weight: 400; }

.wiz-container strong, .core-heading strong, .core-paragraph strong, .core-list strong, .core-classic strong, .single-post--content-wrap strong, .single-case_study--content-wrap strong, .single-download--content-wrap strong, .single-leadership--content-wrap strong, .single-news--content-wrap strong, .single-product--content-wrap strong, .single-video--content-wrap strong {
  font-weight: bold; }

.wiz-container .alignleft, .core-heading .alignleft, .core-paragraph .alignleft, .core-list .alignleft, .core-classic .alignleft, .single-post--content-wrap .alignleft, .single-case_study--content-wrap .alignleft, .single-download--content-wrap .alignleft, .single-leadership--content-wrap .alignleft, .single-news--content-wrap .alignleft, .single-product--content-wrap .alignleft, .single-video--content-wrap .alignleft {
  float: none; }

.wiz-container .alignright, .core-heading .alignright, .core-paragraph .alignright, .core-list .alignright, .core-classic .alignright, .single-post--content-wrap .alignright, .single-case_study--content-wrap .alignright, .single-download--content-wrap .alignright, .single-leadership--content-wrap .alignright, .single-news--content-wrap .alignright, .single-product--content-wrap .alignright, .single-video--content-wrap .alignright {
  float: none; }

.wiz-container svg.ss-icons, .core-heading svg.ss-icons, .core-paragraph svg.ss-icons, .core-list svg.ss-icons, .core-classic svg.ss-icons, .single-post--content-wrap svg.ss-icons, .single-case_study--content-wrap svg.ss-icons, .single-download--content-wrap svg.ss-icons, .single-leadership--content-wrap svg.ss-icons, .single-news--content-wrap svg.ss-icons, .single-product--content-wrap svg.ss-icons, .single-video--content-wrap svg.ss-icons {
  width: 25px;
  height: 25px; }

@media (min-width: 1200px) {
  .wiz-container .alignleft, .core-heading .alignleft, .core-paragraph .alignleft, .core-list .alignleft, .core-classic .alignleft, .single-post--content-wrap .alignleft, .single-case_study--content-wrap .alignleft, .single-download--content-wrap .alignleft, .single-leadership--content-wrap .alignleft, .single-news--content-wrap .alignleft, .single-product--content-wrap .alignleft, .single-video--content-wrap .alignleft {
    float: left;
    padding-left: 10px;
    padding-bottom: 10px;
    clear: both; }
  .wiz-container .alignright, .core-heading .alignright, .core-paragraph .alignright, .core-list .alignright, .core-classic .alignright, .single-post--content-wrap .alignright, .single-case_study--content-wrap .alignright, .single-download--content-wrap .alignright, .single-leadership--content-wrap .alignright, .single-news--content-wrap .alignright, .single-product--content-wrap .alignright, .single-video--content-wrap .alignright {
    float: right;
    padding-right: 10px;
    padding-bottom: 10px;
    clear: both; } }

.core-image {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto; }

section[class^="core-"] {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%; }

.app-container, .contained {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }

.global-header {
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  color: black; }
  @media (min-width: 1200px) {
    .global-header {
      background-color: transparent; }
      .global-header.activated, .global-header.scrolled {
        background-color: #fff;
        border-bottom: 1px solid #e0e0e0; } }

.top-nav {
  display: flex;
  flex-direction: column; }
  @media (min-width: 1200px) {
    .top-nav {
      flex-direction: row;
      justify-content: space-evenly;
      justify-content: flex-end; } }

.global-header__logo {
  max-width: calc(7.5rem + 6.93%);
  padding-left: 6.93%; }
  .global-header__logo img {
    width: 185px;
    height: auto; }
    .global-header__logo img.logo-svg {
      margin: 15% 0; }
  @media (min-width: 1200px) {
    .global-header__logo {
      max-width: 18.5rem;
      padding-left: 0; } }

.hamburger {
  padding: 1.5rem 6.93% 1.5rem 0; }

body.single-post .global-header {
  background-color: #fff;
  border-bottom: 1px solid #e0e0e0; }
  body.single-post .global-header .global-header-container .menu_link {
    color: black; }

.main-nav {
  display: flex;
  flex-direction: column;
  padding: 0 6.93%;
  border-bottom: 1px solid #e0e0e0;
  margin-bottom: 2rem; }
  .main-nav li {
    margin-bottom: 2rem;
    font-family: "Museo", sans-serif; }
    .main-nav li a {
      font-family: "Museo", sans-serif; }
    .main-nav li.dropdown__item {
      display: grid;
      grid-template-areas: "anchor button" "container container";
      grid-template-rows: auto;
      grid-template-columns: repeat(2, 1fr); }
      .main-nav li.dropdown__item .menu-toggle {
        grid-area: anchor; }
      .main-nav li.dropdown__item .test-trigger {
        grid-area: button; }
      .main-nav li.dropdown__item .menu-child-container {
        grid-area: container; }
  @media (min-width: 1200px) {
    .main-nav {
      padding: 0;
      flex-direction: row;
      justify-content: space-evenly;
      height: 100%;
      border-bottom: 0 none;
      margin-bottom: 0; }
      .main-nav > li.dropdown__item,
      .main-nav > li {
        display: flex;
        align-self: stretch;
        align-items: center;
        width: 100%;
        justify-content: center;
        margin-bottom: 0; } }

@media (min-width: 1200px) {
  .dropdown__item {
    display: flex;
    flex-wrap: wrap; } }

.dropdown__item > .menu-child-container {
  display: none;
  background-color: #fff; }
  .dropdown__item > .menu-child-container > .menu-child-app-container {
    display: flex;
    flex-direction: column; }
    .dropdown__item > .menu-child-container > .menu-child-app-container .nav_post,
    .dropdown__item > .menu-child-container > .menu-child-app-container .featured-container-header {
      display: none; }
    .dropdown__item > .menu-child-container > .menu-child-app-container .featured-container > ul.dropdown {
      margin-top: 2rem; }

@media (min-width: 1200px) {
  .dropdown__item > .menu-child-container {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding-top: 4.5rem;
    padding-bottom: 4rem;
    border-top: 1px solid #e0e0e0; }
    .dropdown__item > .menu-child-container > .menu-child-app-container {
      width: 100%;
      max-width: 144rem;
      margin: 0 auto;
      padding: 0 3%;
      flex-direction: row; }
      .dropdown__item > .menu-child-container > .menu-child-app-container .nav_post,
      .dropdown__item > .menu-child-container > .menu-child-app-container .featured-container-header {
        display: block; } }

.dropdown__item.open > .menu-child-container {
  display: block; }

@media (min-width: 1200px) {
  .dropdown__item {
    border-bottom: 2px solid rgba(0, 0, 0, 0); }
    .dropdown__item.open {
      color: #61be23;
      border-bottom: 2px solid #61be23; }
      .dropdown__item.open > .menu-child-container {
        min-height: 33vh; } }

button.test-trigger {
  display: flex;
  align-items: center;
  justify-content: flex-end; }
  button.test-trigger svg {
    width: 2rem;
    height: auto;
    fill: #000; }
  @media (min-width: 1200px) {
    button.test-trigger {
      display: none; } }

.search-form,
.global-top__nav,
.global-header__nav {
  display: none; }
  .search-form.open,
  .global-top__nav.open,
  .global-header__nav.open {
    display: block; }
  @media (min-width: 1200px) {
    .search-form,
    .global-top__nav,
    .global-header__nav {
      display: block; } }

.global-header__nav {
  align-self: stretch; }

.menu_link {
  color: #0e2a62;
  text-decoration: none; }
  @media (min-width: 1200px) {
    .menu_link {
      color: #000; } }
  .menu_link:hover {
    color: #5eba45; }
  @media (min-width: 1200px) {
    .menu_link {
      color: #fff; }
      .menu_link:hover {
        color: #5eba45; } }

.activated .global-header-container .menu_link,
.scrolled .global-header-container .menu_link, .password-not-entered .global-header-container .menu_link {
  color: #0e2a62; }
  @media (min-width: 1200px) {
    .activated .global-header-container .menu_link,
    .scrolled .global-header-container .menu_link, .password-not-entered .global-header-container .menu_link {
      color: #000; } }

.activated .global-header-container .menu-child-container .menu_link:hover, .activated .global-header-container .menu-child-container .menu_link:focus,
.scrolled .global-header-container .menu-child-container .menu_link:hover,
.scrolled .global-header-container .menu-child-container .menu_link:focus, .password-not-entered .global-header-container .menu-child-container .menu_link:hover, .password-not-entered .global-header-container .menu-child-container .menu_link:focus {
  color: #61be23; }

.global-top__nav {
  background-color: #fff; }
  .global-top__nav a {
    text-decoration: none;
    font-family: "Lato";
    color: #0e2a62; }
    @media (min-width: 1200px) {
      .global-top__nav a {
        color: #000; } }
  @media (min-width: 1200px) {
    .global-top__nav {
      background-color: #0e2a62;
      color: #fff; }
      .global-top__nav a {
        font-family: "Lato";
        color: #fff;
        margin: 0 1rem;
        font-size: 1.2rem;
        text-transform: uppercase; } }

.top-nav {
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%; }
  .top-nav li {
    margin-bottom: 2rem; }
  @media (min-width: 1200px) {
    .top-nav {
      padding-right: 0;
      font-weight: bold; }
      .top-nav li {
        padding: 1rem 2rem;
        margin-bottom: 0; } }

.global-header--parentlogo-enabled .global-top__nav {
  position: relative; }

.global-header--parentlogo-enabled .top-nav {
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%; }
  @media (min-width: 1200px) {
    .global-header--parentlogo-enabled .top-nav {
      width: 100%;
      max-width: 144rem;
      margin: 0 auto;
      padding: 0 3%;
      padding-right: 98px; } }

.global-header--parentlogo-enabled .header-parent-logo {
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%;
  padding-bottom: 20px; }
  @media (min-width: 1200px) {
    .global-header--parentlogo-enabled .header-parent-logo {
      width: 100%;
      max-width: 144rem;
      margin: 0 auto;
      padding: 0 3%;
      padding: 0 98px;
      position: absolute;
      top: 0;
      bottom: auto;
      left: 0;
      right: 0;
      margin: auto; } }

.global-header--parentlogo-enabled .header-parent-logo-inner a {
  display: inline-block;
  width: 92px;
  height: 100px;
  transition: opacity 1s linear;
  border: 1px solid #cccccc; }

.global-header--parentlogo-enabled .header-parent-logo-inner img {
  display: block;
  width: 92px;
  height: auto; }

.global-header--parentlogo-enabled .header-parent-logo-inner a:hover {
  opacity: 0.7; }

@media (min-width: 1200px) {
  .global-header--parentlogo-enabled .header-parent-logo-inner {
    position: absolute;
    top: 0;
    right: -10px; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
/**
 * Border box all the things
 */
* {
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  box-sizing: border-box; }
  *:before, *:after {
    box-sizing: border-box; }

* {
  min-height: 0;
  min-width: 0; }

html {
  font-size: 62.5%; }

body {
  color: #333333;
  font-family: "Lato", "Arial", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5; }

p {
  margin-bottom: 2rem; }

/**
 * Text meant only for screen readers
 */
.sr-only,
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }

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

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle; }

/**
 * Images, 
 */
img,
video,
figure {
  max-width: 100%;
  height: auto; }

.responsive--full {
  width: 100%; }

/**
 * Responsive Embeds
 */
.embed-responsive {
  overflow: hidden;
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding: 0; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0; }
  .embed-responsive video {
    border: 0; }
  .embed-responsive--ar16x9 {
    padding-top: 56.25%; }
  .embed-responsive--ar4x3 {
    padding-top: 75%; }


.clearfix::after {
  content: "";
  display: table;
  clear: both; }

.logged-in-nav {
  display: none; }

.locked {
  overflow-y: hidden;
  position: fixed; }

#ie-banner {
  display: none; }

.hamburger {
  display: flex;
  justify-content: flex-end;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  @media (min-width: 1200px) {
    .hamburger {
      display: none; } }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 16px;
  height: 12px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 16px;
    height: 2px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -5px; }
  .hamburger-inner::after {
    bottom: -5px; }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

.global-top__nav {
  grid-area: sub-nav;
  order: 1; }
  @media (min-width: 1200px) {
    .global-top__nav {
      order: 0; } }

.global-header__logo {
  grid-area: logo; }

.hamburger {
  grid-area: hamburger; }

.global-header__nav {
  grid-area: main-nav; }
  @media (min-width: 1200px) {
    .global-header__nav {
      flex-grow: 1;
      margin-right: 2%; } }

.search-form {
  grid-area: search; }

.global-header {
  display: flex;
  flex-direction: column; }

.global-header-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas: "logo hamburger" "search search" "main-nav main-nav"; }
  @media (min-width: 1200px) {
    .global-header-container {
      display: flex;
      align-items: center; } }

@media (min-width: 1200px) {
  .global-header--parentlogo-enabled .global-header-container {
    padding-right: 98px; } }

@media (min-width: 1200px) {
  .nav_post,
  .nav_form {
    flex-basis: 28.66022099447514%; }
  .featured-container {
    padding-left: 3.6256906077348064%;
    flex-basis: auto; } }

.nav_form {
  border-right: 1px solid #e0e0e0; }

.nav_post .nav_post--image {
  margin-bottom: 2rem; }

.nav_post .nav_post--title {
  margin-bottom: 2rem; }
  .nav_post .nav_post--title a {
    color: #0e2a62;
    text-transform: uppercase;
    font-family: "Lato";
    font-weight: bold;
    margin-bottom: 2rem;
    text-decoration: none; }

.nav_post .nav_post--excerpt {
  color: #949494;
  font-family: "Lato";
  margin-bottom: 2rem; }

.featured-container ul li a {
  color: #0e2a62;
  text-transform: uppercase;
  font-family: "Lato";
  font-weight: bold;
  margin-bottom: 2rem;
  letter-spacing: 0.5px; }

h2.featured-container-header {
  font-family: "Museo", sans-serif;
  color: #000;
  font-size: 2.4rem;
  font-weight: 300;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  text-align: left; }
  h2.featured-container-header + ul.dropdown {
    padding-left: 1.2rem; }
  @media (min-width: 1200px) {
    h2.featured-container-header {
      margin-top: 0; }
      h2.featured-container-header + ul.dropdown {
        padding-left: 0; } }

@media (min-width: 1200px) {
  .dropdown__item .menu-child-container .featured-container ul.dropdown {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr; }
    .dropdown__item .menu-child-container .featured-container ul.dropdown li {
      margin-bottom: 0;
      padding-bottom: 2rem; }
      .dropdown__item .menu-child-container .featured-container ul.dropdown li:nth-of-type(odd) {
        border-right: 1px solid #e0e0e0;
        margin-right: 10%; }
      .dropdown__item .menu-child-container .featured-container ul.dropdown li:nth-of-type(even) {
        padding-left: 2rem; } }

li.custom-dropdown {
  position: relative;
  margin-right: 0.6rem; }
  li.custom-dropdown ul.sub-menu {
    display: none; }
  @media (min-width: 1200px) {
    li.custom-dropdown ul.sub-menu {
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      width: calc(100% + 0.5rem);
      background-color: #0e2a62;
      z-index: 1; }
      li.custom-dropdown ul.sub-menu li:hover {
        background-color: #8894af; } }
  li.custom-dropdown.opened ul.sub-menu {
    display: block; }

li.custom-dropdown > a {
  position: relative;
  display: inline-block;
  width: 100%; }
  li.custom-dropdown > a:after {
    position: absolute;
    content: "";
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/icons/carat.svg");
    background-position: right center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    right: 1.2rem;
    display: block;
    width: 1.6rem;
    height: 2rem; }

li.custom-dropdown ul {
  padding-left: 2rem;
  padding-top: 2rem; }

li.custom-dropdown > a {
  position: relative;
  display: inline-block;
  width: 100%; }
  li.custom-dropdown > a:after {
    position: absolute;
    content: "";
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/icons/carat.svg");
    background-position: right center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    right: 1.2rem;
    display: block;
    width: 1.6rem;
    height: 2rem; }

li.custom-dropdown ul {
  padding-left: 2rem;
  padding-top: 2rem; }

@media (min-width: 1200px) {
  li.custom-dropdown {
    padding-right: 4rem; }
    li.custom-dropdown > a {
      position: relative; }
      li.custom-dropdown > a:after {
        content: "";
        position: absolute;
        top: 10%;
        right: -0.6rem;
        display: block;
        background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/icons/arrow-down-white.png");
        background-position: right center;
        background-repeat: no-repeat;
        background-size: cover;
        width: 1.2rem;
        height: 1rem; }
    li.custom-dropdown ul {
      padding: 0; }
  li.custom-dropdown.opened > a:after {
    transform: rotate(180deg); } }

.block-core {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto; }

.page-not-found-page .hero-container.shortened img, .page-not-found-page .hero-container.shortened video {
  height: 100%; }

.core-page-not-found h2 {
  padding-top: 60px;
  padding-bottom: 40px;
  text-align: left; }

.core-page-not-found .page-not-found-search {
  padding-bottom: 40px; }

.single-post .single-post-header, .single-post .core-case_study-header, .single-video .single-post-header, .single-video .core-case_study-header, .single-case_study .single-post-header, .single-case_study .core-case_study-header {
  font-size: 4.6rem;
  line-height: 1.5;
  font-weight: 100;
  text-align: left;
  font-family: "Museo", sans-serif; }

.single-post .date, .single-video .date, .single-case_study .date {
  text-align: left;
  padding: 1rem 0;
  color: #949494;
  font-size: 1.8rem; }

.single-post .author-card, .single-video .author-card, .single-case_study .author-card {
  text-align: left;
  padding: 0 0 2rem;
  font-size: 1.8rem; }
  .single-post .author-card span.author-img, .single-video .author-card span.author-img, .single-case_study .author-card span.author-img {
    padding: 0 1rem; }
  .single-post .author-card span.author-name, .single-video .author-card span.author-name, .single-case_study .author-card span.author-name {
    color: #333333;
    font-weight: 600; }
  .single-post .author-card span.author-title, .single-video .author-card span.author-title, .single-case_study .author-card span.author-title {
    color: #00abfa;
    font-weight: 600; }

.single-post .core-resource-header, .single-video .core-resource-header, .single-case_study .core-resource-header {
  padding-top: 3rem; }

.single-post .core-classic, .single-video .core-classic, .single-case_study .core-classic {
  padding-bottom: 8rem; }
  .single-post .core-classic img, .single-video .core-classic img, .single-case_study .core-classic img {
    max-width: 100%;
    display: block;
    padding-bottom: 4rem; }
    .single-post .core-classic img.alignleft, .single-video .core-classic img.alignleft, .single-case_study .core-classic img.alignleft {
      float: left;
      padding-right: 3rem; }
    .single-post .core-classic img.alignright, .single-video .core-classic img.alignright, .single-case_study .core-classic img.alignright {
      float: right;
      padding-left: 3rem; }
    .single-post .core-classic img.aligncenter, .single-video .core-classic img.aligncenter, .single-case_study .core-classic img.aligncenter {
      margin: 0 auto; }

.news-content {
  display: block;
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding: 0 6.93%; }
  @media only screen and (min-width: 48em) {
    .news-content {
      display: flex; } }
  .news-content .wp-block-image .aligncenter, .news-content .wp-block-image .alignleft, .news-content .wp-block-image .alignright {
    display: block; }
  .news-content .single-post {
    flex-basis: auto; }
    .news-content .single-post #main_menu a {
      color: #000; }
    .news-content .single-post .single-post-header {
      text-align: left;
      font-size: 38px;
      color: #1d428a;
      margin-bottom: 30px;
      font-weight: 700;
      line-height: 1.1; }
    .news-content .single-post .breadcrumbs-bg-container {
      padding-top: 0;
      background-color: #fff; }
      .news-content .single-post .breadcrumbs-bg-container .breadcrumbs-container {
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0; }
        .news-content .single-post .breadcrumbs-bg-container .breadcrumbs-container .breadcrumbs {
          color: #001224; }
          .news-content .single-post .breadcrumbs-bg-container .breadcrumbs-container .breadcrumbs a {
            color: #001224; }
    .news-content .single-post .date {
      font-size: 18pxpx;
      font-size: 1.8pxrem;
      font-family: "Lato", "Arial", sans-serif;
      font-weight: 700; }
    .news-content .single-post--featured-image-wrap {
      position: relative;
      padding-top: 56.25%; }
      .news-content .single-post--featured-image-wrap img, .news-content .single-post--featured-image-wrap .video-container {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: center; }
        .news-content .single-post--featured-image-wrap img iframe, .news-content .single-post--featured-image-wrap .video-container iframe {
          width: 100%;
          height: 100%; }
      .news-content .single-post--featured-image-wrap p {
        color: #949494;
        font-size: 12pxpx;
        font-size: 1.2pxrem;
        font-family: "Lato", "Arial", sans-serif;
        font-weight: 400;
        font-style: italic; }
    .news-content .single-post--content-wrap {
      width: 100%;
      display: block;
      padding-bottom: 40px; }
      .news-content .single-post--content-wrap section[class^="core-"] {
        padding: 0; }
    .news-content .single-post .search-results-grid-item {
      padding: 5%; }
      .news-content .single-post .search-results-grid-item .search-results-figure {
        background-color: #fff; }
      .news-content .single-post .search-results-grid-item .text-link-arrow {
        color: #1d428b; }
      .news-content .single-post .search-results-grid-item header {
        color: #1d428b; }
    .news-content .single-post .video-container {
      position: relative;
      padding-bottom: 56.25%;
      height: 0;
      margin-bottom: 20px; }
      .news-content .single-post .video-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding: 0;
        z-index: 2; }
  @media only screen and (min-width: 48em) {
    .news-content .news-sidebar {
      flex-basis: 50%;
      margin-left: 3rem; } }
  @media only screen and (min-width: 64em) {
    .news-content .news-sidebar {
      flex-basis: 35%; } }
  .news-content .news-sidebar .news-sidebar-form {
    background-color: #f7f7f7;
    padding: 3%;
    margin-bottom: 2rem; }
    .news-content .news-sidebar .news-sidebar-form .button {
      padding: 1rem 2.5rem;
      min-width: unset; }
    .news-content .news-sidebar .news-sidebar-form .news-signup-form-title {
      color: #0e2a62;
      font-family: "Museo", sans-serif;
      font-size: 2rem;
      font-weight: bold; }
    .news-content .news-sidebar .news-sidebar-form input[type="text"] {
      background-color: #fff;
      border: 1px solid #0e2a62; }
  .news-content .news-sidebar .featured-news {
    background-color: #f7f7f7;
    padding: 3%; }
    .news-content .news-sidebar .featured-news .component-container {
      padding-bottom: 0;
      padding-top: 1rem; }
      .news-content .news-sidebar .featured-news .component-container .component-header {
        padding-bottom: 0;
        margin-bottom: 1rem; }
        .news-content .news-sidebar .featured-news .component-container .component-header .intro-title {
          color: #0e2a62;
          font-family: "Museo", sans-serif;
          font-size: 2rem;
          font-weight: bold;
          text-align: left;
          margin-bottom: 0; }
    .news-content .news-sidebar .featured-news .grid-news {
      grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
      padding-top: 2rem; }
      .news-content .news-sidebar .featured-news .grid-news .component-cta-container {
        padding-top: 0; }
        .news-content .news-sidebar .featured-news .grid-news .component-cta-container .icon-arrow {
          stroke: #fff; }
      .news-content .news-sidebar .featured-news .grid-news button.primary-cta-button, .news-content .news-sidebar .featured-news .grid-news .primary-cta-button, .news-content .news-sidebar .featured-news .grid-news button.secondary-cta-button, .news-content .news-sidebar .featured-news .grid-news .secondary-cta-button, .news-content .news-sidebar .featured-news .grid-news button.primary-link-button, .news-content .news-sidebar .featured-news .grid-news .primary-link-button {
        padding: 1rem 2.5rem;
        min-width: unset; }

.single-post .core-resource-header,
.single-post .news-content {
  font-size: 3rem;
  line-height: 1.2;
  font-weight: 500;
  text-align: left;
  font-family: Museo, sans-serif;
  color: #0e2961;
  max-width: 1245px; }
  @media only screen and (min-width: 1250px) {
    .single-post .core-resource-header,
    .single-post .news-content {
      padding-left: 0;
      padding-right: 0; } }

.single-post .date {
  color: #666666;
  font-size: 1.3rem; }

.single-post--social-share-icons {
  display: block;
  margin: 15px 0 30px; }

.single-post--social-share-icon {
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-right: 8px; }
  .single-post--social-share-icon > a {
    width: 25px;
    height: 25px;
    display: block;
    background-repeat: no-repeat;
    background-size: auto 50%;
    background-position: center; }
    .single-post--social-share-icon > a.facebook-share {
      background-color: #4267B2;
      background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/facebook.png"); }
    .single-post--social-share-icon > a.linkedin-share {
      background-color: #0072b1;
      background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/linkedin.png"); }
    .single-post--social-share-icon > a.twitter-share {
      background-color: #1DA1F2;
      background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/twitter.svg"); }
    .single-post--social-share-icon > a:hover {
      opacity: 0.8; }

.single-post .breadcrumbs-bg-container {
  padding-top: 0;
  background-color: transparent;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0; }
  .single-post .breadcrumbs-bg-container .breadcrumbs-container {
    border-top: none; }
    .single-post .breadcrumbs-bg-container .breadcrumbs-container .breadcrumbs,
    .single-post .breadcrumbs-bg-container .breadcrumbs-container .breadcrumbs a {
      color: #333333; }

.news-sidebar-subscribe {
  background-color: #f7f7f7;
  padding: 25px 15px;
  margin: 0 0 20px; }
  .news-sidebar-subscribe a.button {
    padding: 10px;
    text-align: center;
    text-transform: none;
    display: block;
    max-width: 100%;
    min-width: 0;
    line-height: 1.35; }

.news-sidebar .query-results-grid-container .search-results-grid-item {
  border-bottom: 1px solid #ddd;
  margin: 0 0 30px;
  min-height: 0; }
  .news-sidebar .query-results-grid-container .search-results-grid-item .search-results-figure {
    display: block;
    min-height: 0; }
  .news-sidebar .query-results-grid-container .search-results-grid-item figcaption {
    margin: 10px 0 30px 0;
    padding: 0;
    max-width: 100%;
    word-break: break-word;
    width: 100%; }
  .news-sidebar .query-results-grid-container .search-results-grid-item .search-results-image-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    overflow: hidden; }
    .news-sidebar .query-results-grid-container .search-results-grid-item .search-results-image-container > img {
      position: absolute;
      top: -50%;
      bottom: -50%;
      left: 0;
      right: 0;
      max-width: 100%;
      width: auto;
      height: auto;
      min-width: 100%;
      margin: auto; }

.single-download {
  background: transparent linear-gradient(180deg, #0e2a62 0%, #001224 100%) 0% 0% no-repeat padding-box; }
  .single-download .core-download-header {
    padding-top: 4rem; }
    .single-download .core-download-header h1 {
      font-size: 4.6rem;
      line-height: 1.5;
      font-weight: 100;
      text-align: center;
      color: #fff; }
    .single-download .core-download-header h2 {
      font-size: 4.6rem;
      line-height: 1.5;
      font-weight: 100;
      text-align: center;
      color: #fff; }
  .single-download .core-video_detail {
    padding-bottom: 8rem; }
    .single-download .core-video_detail a {
      text-decoration: none; }
      .single-download .core-video_detail a img {
        display: block;
        padding-bottom: 2rem;
        max-height: 60vh; }
      .single-download .core-video_detail a .download-container {
        display: flex;
        align-items: center; }
        .single-download .core-video_detail a .download-container .download {
          color: #61be23;
          text-decoration: none; }
        .single-download .core-video_detail a .download-container .down-arrow {
          stroke: #61be23; }
        .single-download .core-video_detail a .download-container:hover svg.down-arrow, .single-download .core-video_detail a .download-container:focus svg.down-arrow {
          animation: down-arrow 0.5s ease forwards; }

#cookieSpace {
  width: 100%;
  background-color: #FFF;
  color: #000;
  text-align: center;
  padding: 12px 2%;
  font-size: 12px;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 99999;
  border-top: 4px solid #0e2a62;
  display: none; }

.global-footer {
  background-color: #001224;
  color: #fff; }
  .global-footer .menu_link {
    color: #fff; }
    .global-footer .menu_link:hover, .global-footer .menu_link:focus {
      color: #61be23; }

.footer-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 8rem 3%; }
  @media (min-width: 1200px) {
    .footer-container {
      display: grid;
      grid-template-columns: 185px repeat(2, 1fr) 110px;
      grid-gap: 6%; } }

.footer-bottom {
  background-color: #0e2a62;
  text-align: center;
  padding: 1.5rem; }

@media (min-width: 1200px) {
  .footer-nav-container {
    border-right: 1px solid #0e2a62;
    margin-bottom: 0; } }

.footer-nav {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #0e2a62;
  padding-bottom: 2rem; }
  @media (min-width: 1200px) {
    .footer-nav {
      border-bottom: 0 none;
      padding-bottom: 0; } }
  .footer-nav li {
    flex-basis: 100%;
    font-family: "Museo", sans-serif;
    font-size: 1.8rem;
    margin-bottom: 2rem; }
    .footer-nav li:nth-of-type(3) {
      margin-bottom: 4rem; }
    @media (min-width: 1200px) {
      .footer-nav li {
        flex-basis: 50%; }
        .footer-nav li:nth-of-type(3) {
          margin-bottom: 2rem; } }

.global-footer__logo img {
  margin-top: -21px; }

.global-footer__parentlogo {
  max-width: 100px;
  display: block; }

.footer-logo-container {
  margin-bottom: 4rem; }

.footer-nav-container {
  margin-bottom: 4rem; }
  @media (min-width: 1200px) {
    .footer-nav-container {
      margin-bottom: 0; } }

.company-info {
  margin-bottom: 4rem; }
  .company-info a {
    color: #fff;
    text-decoration: underline; }
    .company-info a:hover, .company-info a:focus {
      color: #61be23; }

.social-links-container {
  margin-bottom: 4rem; }
  @media (min-width: 1200px) {
    .social-links-container {
      display: flex;
      align-items: center; } }

.social-links-cta {
  color: #20aed5;
  font-weight: 900;
  margin-right: 2rem;
  margin-bottom: 2rem; }
  @media (min-width: 1200px) {
    .social-links-cta {
      line-height: 1;
      align-self: flex-start;
      margin-bottom: 0; } }

.social-links-list {
  display: flex;
  align-items: center; }

.social-links-item {
  margin: 0 1.5rem; }
  .social-links-item:first-child {
    margin-left: 0; }

.social-link {
  display: block;
  background-position: center;
  background-repeat: no-repeat; }
  .social-link.facebook {
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/facebook.png");
    width: 11px;
    height: 23px; }
  .social-link.linkedin {
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/linkedin.png");
    width: 22px;
    height: 22px; }
  .social-link.youtube {
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/youtube.svg");
    width: 29px;
    height: 20px; }
  .social-link.twitter {
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/twitter.svg");
    width: 24px;
    height: 20px; }
  .social-link.twitter-x {
    background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/social/twitter-x.png");
    width: 24px;
    height: 24px;
    background-size: contain; }

.footer-container {
  position: relative; }
  .footer-container .back-to-top {
    width: 8rem;
    height: 8rem;
    position: absolute;
    bottom: 52%;
    right: 5%; }
    @media (min-width: 1200px) {
      .footer-container .back-to-top {
        bottom: calc(100% - 4rem);
        right: 2rem; } }
    .footer-container .back-to-top:hover svg.back-top-arrow {
      fill: #61be23;
      stroke: #001224; }

.search-form form {
  display: flex;
  flex-direction: column;
  align-items: center; }

@media (min-width: 1200px) {
  .search-form {
    position: relative;
    display: flex; }
    .search-form form {
      display: block; }
    .search-form input[type="text"].search-form__input {
      position: absolute;
      top: -34px;
      right: 0;
      width: 0;
      opacity: 0;
      animation-duration: 500ms;
      animation-delay: 150ms;
      animation-iteration-count: 1;
      animation-direction: normal;
      animation-fill-mode: forwards; }
      .search-form input[type="text"].search-form__input:focus {
        animation-name: open-search; }
    .search-form .search-toggle {
      width: 25px;
      height: 25px;
      position: absolute;
      top: 0;
      right: 20px;
      background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/icons/magnifying-lens.svg");
      background-repeat: no-repeat; }
    .search-form input[type="text"].search-form__input:focus + .search-toggle {
      background-image: url("https://www.novelis.com/wp-content/themes/novelis/assets/images/icons/x-close.svg"); } }

@keyframes open-search {
  from {
    opacity: 0;
    width: 0; }
  to {
    opacity: 1;
    width: 50rem; } }

@media (min-width: 1200px) {
  .subdued .main-nav .menu_link {
    opacity: 0.6; } }

input[type="text"].search-form__input {
  width: calc(100% - 6.93%);
  background-color: #fff;
  border-color: #e0e0e0;
  border-radius: 3rem;
  margin: 2rem 0;
  padding: 1.5rem; }

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem 0; }

.page-numbers {
  color: #949494;
  font-size: 1.6rem;
  font-family: "Lato";
  text-decoration: none;
  margin: 0 0.5rem; }
  .page-numbers.prev, .page-numbers.next {
    text-transform: uppercase;
    color: #61be23; }
    @media (min-width: 900px) {
      .page-numbers.prev, .page-numbers.next {
        margin: 0 4.8rem; } }
  .page-numbers.current {
    border-radius: 50%;
    width: 3.5rem;
    height: 3.5rem;
    background-color: #61be23;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center; }

.component-header {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .component-header {
      font-size: 4.6rem; } }
  .component-header .intro-title {
    font-family: "Museo", sans-serif;
    color: #1d428b;
    font-size: 4.6rem;
    line-height: 1.5;
    font-weight: 100;
    text-align: center;
    margin-bottom: 5rem; }
  .component-header .intro-subtitle {
    font-size: 2.6rem;
    font-family: "Museo", sans-serif;
    color: #61be23;
    font-weight: 300;
    text-align: left;
    margin-bottom: 1rem; }
  .component-header .intro-description p {
    font-family: "Lato";
    color: #001224;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0 0;
    text-align: left; }

.component-cta-container {
  padding-top: 6rem;
  padding-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  .component-cta-container a + a {
    margin-top: 2rem; }
  @media (min-width: 900px) {
    .component-cta-container {
      flex-direction: row; }
      .component-cta-container a + a {
        margin-left: 2rem;
        margin-top: 0; } }

.module-card-item {
  display: flex;
  flex-direction: column;
  background-position: center center;
  justify-content: flex-end;
  padding: 8% 8% 82% 8%;
  height: 100%;
  max-width: 100%;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #0e2a62;
  text-decoration: none; }
  .module-card-item:after {
    content: "";
    position: absolute;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0) 100%); }
  .module-card-item .module-card-item-header {
    color: #fff;
    font-size: 2.4rem;
    font-weight: 300;
    font-family: "Museo", sans-serif;
    position: relative;
    z-index: 1;
    max-width: 100%;
    overflow: hidden; }
    .module-card-item .module-card-item-header .overwrite-excerpt {
      color: #fff;
      font-family: "Lato";
      font-size: 1.8rem;
      margin-bottom: 0; }
  .module-card-item .module-card-item-link {
    color: #61be23;
    text-transform: uppercase;
    font-family: "Lato";
    font-size: 1.4rem;
    font-weight: 800;
    position: relative;
    z-index: 1;
    padding-top: 0; }

.bg--partial.bg--white {
  background: linear-gradient(to bottom, #fff 0 50%, transparent 50% 100%); }

.bg--partial.bg--white-smoke {
  background: linear-gradient(to bottom, #f7f7f7 0 50%, transparent 50% 100%); }

.bg--partial.bg--sapphire {
  background: linear-gradient(to bottom, #0e2a62 0 50%, transparent 50% 100%); }

.bg--partial.bg--prussian-blue {
  background: linear-gradient(to bottom, #001b3d 0 50%, transparent 50% 100%); }

.bg--partial.bg--dark-green {
  background: linear-gradient(to bottom, #001224 0 50%, transparent 50% 100%); }

.bg--white {
  background-color: #fff; }
  .bg--white header {
    color: #1d428b; }
  .bg--white .intro-title, .bg--white .alt-title {
    color: #1d428b; }
  .bg--white .intro-subtitle {
    color: #61be23; }
  .bg--white .intro-description, .bg--white .tab-component-title,
  .bg--white p, .bg--white ul, .bg--white ol, .bg--white h1, .bg--white h2, .bg--white h3, .bg--white h4, .bg--white h5, .bg--white h6 {
    color: #001224; }
    .bg--white .intro-description p, .bg--white .tab-component-title p,
    .bg--white p p, .bg--white ul p, .bg--white ol p, .bg--white h1 p, .bg--white h2 p, .bg--white h3 p, .bg--white h4 p, .bg--white h5 p, .bg--white h6 p {
      color: #001224; }
  .bg--white table {
    color: #001224; }
  .bg--white a:not(.primary-cta-button) {
    color: #001224; }
  .bg--white .query-results-grid-container figcaption header {
    color: #1d428b; }
  .bg--white .query-results-grid-container figcaption a {
    color: #001224; }
  .bg--white .tabs a {
    color: #fff; }

.bg--white-smoke {
  background-color: #f7f7f7; }
  .bg--white-smoke header {
    color: #1d428b; }
  .bg--white-smoke .intro-title, .bg--white-smoke .alt-title {
    color: #1d428b; }
  .bg--white-smoke .intro-subtitle {
    color: #61be23; }
  .bg--white-smoke .intro-description, .bg--white-smoke .tab-component-title,
  .bg--white-smoke p, .bg--white-smoke ul, .bg--white-smoke ol, .bg--white-smoke h1, .bg--white-smoke h2, .bg--white-smoke h3, .bg--white-smoke h4, .bg--white-smoke h5, .bg--white-smoke h6 {
    color: #001224; }
    .bg--white-smoke .intro-description p, .bg--white-smoke .tab-component-title p,
    .bg--white-smoke p p, .bg--white-smoke ul p, .bg--white-smoke ol p, .bg--white-smoke h1 p, .bg--white-smoke h2 p, .bg--white-smoke h3 p, .bg--white-smoke h4 p, .bg--white-smoke h5 p, .bg--white-smoke h6 p {
      color: #001224; }
  .bg--white-smoke table {
    color: #001224; }
  .bg--white-smoke a:not(.primary-cta-button) {
    color: #001224; }
  .bg--white-smoke .query-results-grid-container figcaption header {
    color: #1d428b; }
  .bg--white-smoke .query-results-grid-container figcaption a {
    color: #001224; }
  .bg--white-smoke .tabs a {
    color: #fff; }
  .bg--white-smoke.bg--half {
    background: linear-gradient(180deg, #f7f7f7 50%, #fff 50%); }
    .bg--white-smoke.bg--half figcaption p {
      color: #333333; }

.bg--dark-green {
  background-color: #001224; }
  .bg--dark-green header {
    color: #fff; }
  .bg--dark-green .intro-title, .bg--dark-green .alt-title {
    color: #fff; }
  .bg--dark-green .intro-subtitle {
    color: #61be23; }
  .bg--dark-green .intro-description, .bg--dark-green .tab-component-title,
  .bg--dark-green p, .bg--dark-green ul, .bg--dark-green ol, .bg--dark-green h1, .bg--dark-green h2, .bg--dark-green h3, .bg--dark-green h4, .bg--dark-green h5, .bg--dark-green h6 {
    color: #fff; }
    .bg--dark-green .intro-description p, .bg--dark-green .tab-component-title p,
    .bg--dark-green p p, .bg--dark-green ul p, .bg--dark-green ol p, .bg--dark-green h1 p, .bg--dark-green h2 p, .bg--dark-green h3 p, .bg--dark-green h4 p, .bg--dark-green h5 p, .bg--dark-green h6 p {
      color: #fff; }
  .bg--dark-green table {
    color: #fff; }
  .bg--dark-green a:not(.primary-cta-button) {
    color: #fff; }
  .bg--dark-green .query-results-grid-container figcaption header {
    color: #fff; }
  .bg--dark-green .query-results-grid-container figcaption a {
    color: #fff; }
  .bg--dark-green .tabs a {
    color: #fff; }
  .bg--dark-green.column-content-component header {
    color: #61be23; }
  .bg--dark-green .wiz-container h4 {
    color: #fff; }
  .bg--dark-green.bg--half {
    background: linear-gradient(180deg, #001224 50%, #fff 50%); }
    .bg--dark-green.bg--half figcaption p {
      color: #333333; }

.bg--sapphire {
  background-color: #0e2a62; }
  .bg--sapphire header {
    color: #fff; }
  .bg--sapphire .intro-title, .bg--sapphire .alt-title {
    color: #fff; }
  .bg--sapphire .intro-subtitle {
    color: #61be23; }
  .bg--sapphire .intro-description, .bg--sapphire .tab-component-title,
  .bg--sapphire p, .bg--sapphire ul, .bg--sapphire ol, .bg--sapphire h1, .bg--sapphire h2, .bg--sapphire h3, .bg--sapphire h4, .bg--sapphire h5, .bg--sapphire h6 {
    color: #fff; }
    .bg--sapphire .intro-description p, .bg--sapphire .tab-component-title p,
    .bg--sapphire p p, .bg--sapphire ul p, .bg--sapphire ol p, .bg--sapphire h1 p, .bg--sapphire h2 p, .bg--sapphire h3 p, .bg--sapphire h4 p, .bg--sapphire h5 p, .bg--sapphire h6 p {
      color: #fff; }
  .bg--sapphire table {
    color: #fff; }
  .bg--sapphire a:not(.primary-cta-button) {
    color: #fff; }
  .bg--sapphire .query-results-grid-container figcaption header {
    color: #fff; }
  .bg--sapphire .query-results-grid-container figcaption a {
    color: #fff; }
  .bg--sapphire .tabs a {
    color: #fff; }
  .bg--sapphire.column-content-component header {
    color: #61be23; }
  .bg--sapphire .wiz-container h4 {
    color: #fff; }
  .bg--sapphire.bg--half {
    background: linear-gradient(180deg, #0e2a62 50%, #fff 50%); }
    .bg--sapphire.bg--half figcaption p {
      color: #333333; }

.bg--prussian-blue {
  background-color: #001b3d; }
  .bg--prussian-blue header {
    color: #fff; }
  .bg--prussian-blue .intro-title, .bg--prussian-blue .alt-title {
    color: #fff; }
  .bg--prussian-blue .intro-subtitle {
    color: #a1db00; }
  .bg--prussian-blue .intro-description, .bg--prussian-blue .tab-component-title,
  .bg--prussian-blue p, .bg--prussian-blue ul, .bg--prussian-blue ol, .bg--prussian-blue h1, .bg--prussian-blue h2, .bg--prussian-blue h3, .bg--prussian-blue h4, .bg--prussian-blue h5, .bg--prussian-blue h6 {
    color: #fff; }
    .bg--prussian-blue .intro-description p, .bg--prussian-blue .tab-component-title p,
    .bg--prussian-blue p p, .bg--prussian-blue ul p, .bg--prussian-blue ol p, .bg--prussian-blue h1 p, .bg--prussian-blue h2 p, .bg--prussian-blue h3 p, .bg--prussian-blue h4 p, .bg--prussian-blue h5 p, .bg--prussian-blue h6 p {
      color: #fff; }
  .bg--prussian-blue table {
    color: #fff; }
  .bg--prussian-blue a:not(.primary-cta-button) {
    color: #fff; }
  .bg--prussian-blue .query-results-grid-container figcaption header {
    color: #fff; }
  .bg--prussian-blue .query-results-grid-container figcaption a {
    color: #fff; }
  .bg--prussian-blue .tabs a {
    color: #fff; }
  .bg--prussian-blue.column-content-component header {
    color: #61be23; }
  .bg--prussian-blue .wiz-container h4 {
    color: #fff; }
  .bg--prussian-blue.bg--half {
    background: linear-gradient(180deg, #001b3d 50%, #fff 50%); }
    .bg--prussian-blue.bg--half figcaption p {
      color: #333333; }

.bg--suva-grey {
  background-color: #949494; }

.bg--christi {
  background-color: #61be23; }

.bg--kelly-green {
  background-color: #57bf0d; }

.bg--spring-bud {
  background-color: #a1db00; }

.bg--bahama-blue {
  background-color: #1d428b; }

.bg--deep-sky-blue {
  background-color: #00abfa; }

.bg--summer-sky {
  background-color: #20aed5; }

.bg--black {
  background-color: black; }

.wiz-container h3 {
  color: #61be23; }

.wiz-container ul li {
  text-align: left; }

.elementor-section ul, .elementor-section ol {
  margin-left: 20px;
  margin-bottom: 2rem; }

.elementor-section ul {
  list-style-type: disc; }

.elementor-section ol {
  list-style-type: decimal; }

.elementor-section strong {
  font-weight: bold; }

.elementor-section em {
  font-style: italic; }

.elementor-section blockquote {
  margin: 0 30px; }

.svg-sprites {
  display: none; }

.icon {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10; }

.stroke-2 {
  stroke-width: 2; }

.stroke-3 {
  stroke-width: 3; }

.stroke-4 {
  stroke-width: 4; }

.stroke-5 {
  stroke-width: 5; }

.ss-twitter {
  fill-rule: evenodd;
  clip-rule: evenodd;
  fill: #2CA7E0; }

.ss-linkedin {
  fill: #007BB6; }

.ss-facebook {
  fill: #3C5A99; }

.ss-pinterest-f {
  fill: #CB1F26; }

.ss-pinterest-s {
  fill: #FFFFFF; }

.acf-alternating {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  overflow-x: hidden;
  overflow-y: hidden; }
  .acf-alternating .component-container {
    padding-top: 8rem;
    padding-bottom: 10rem; }
  .acf-alternating header {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: center;
    padding: 0 3% 4rem;
    font-weight: 100; }
    @media (min-width: 1200px) {
      .acf-alternating header {
        font-size: 4.6rem; } }
  .acf-alternating .icon-arrow {
    stroke: white; }
  .acf-alternating .icon-shape {
    stroke: #00abfa; }

.right-alt {
  padding-bottom: 4rem; }
  @media (min-width: 900px) {
    .right-alt {
      display: flex;
      justify-content: space-around;
      flex-direction: row-reverse; } }

.left-alt {
  padding-bottom: 4rem; }
  @media (min-width: 900px) {
    .left-alt {
      display: flex;
      justify-content: space-around;
      flex-direction: row; } }

@media (min-width: 900px) {
  .alt-row:first-child .content-alt-container {
    padding-bottom: 10rem; } }

@media (min-width: 900px) {
  .negMargin {
    margin-top: -11rem; }
    .negMargin .content-alt-container {
      padding-top: 5rem; } }

.image-alt-container {
  display: flex;
  justify-content: center;
  flex: 1 0 100%;
  position: relative; }
  @media (min-width: 900px) {
    .image-alt-container {
      flex: 0 1 45%; } }
  .image-alt-container img {
    position: relative;
    max-width: 100%;
    height: auto;
    z-index: 2;
    align-self: center; }
  .image-alt-container iframe {
    position: relative;
    min-width: 100%;
    z-index: 2;
    width: 100%; }
  .image-alt-container .html-video-container {
    align-self: center; }
  .image-alt-container .splide__pagination {
    flex-direction: row;
    flex-wrap: nowrap;
    left: 90%;
    top: 92%;
    width: 50px;
    background-image: none; }
  .image-alt-container.splide {
    padding-bottom: 40px; }
  .image-alt-container .splide__track {
    height: 100%;
    z-index: 2; }
  .image-alt-container .splide__list {
    height: 100%; }
  .image-alt-container .splide__slide {
    background-color: transparent; }

.content-alt-container {
  width: 100%;
  padding: 3rem 5%; }
  .content-alt-container .primary-cta-button {
    margin-bottom: 1rem; }
  @media (min-width: 900px) {
    .content-alt-container {
      width: 50%;
      display: flex;
      flex-direction: column;
      justify-content: center; }
      .content-alt-container .primary-cta-button {
        align-self: flex-start; } }

.alt-title {
  color: #1d428b;
  font-family: "Lato";
  font-size: 26px;
  font-weight: 400;
  line-height: 1.4; }

.alt-content {
  color: #333333;
  font-family: "Lato";
  font-size: 14px;
  font-weight: 400;
  padding: 10px 30px 30px 0;
  line-height: 1.5; }

.alt-row svg.icon-shape {
  display: none; }

@media (min-width: 900px) {
  .alt-row .alt-graphic-1 svg.icon-shape {
    display: block;
    position: absolute;
    width: 90px;
    top: -20px;
    left: -40px;
    z-index: 1; }
  .alt-row .alt-graphic-2 svg.icon-shape {
    display: block;
    position: absolute;
    width: 70px;
    bottom: 10px;
    right: 50%;
    z-index: 2; } }

.alt-row:nth-of-type(2) .alt-graphic-1 svg.icon-shape, .alt-row:nth-of-type(5) .alt-graphic-1 svg.icon-shape {
  width: 90px;
  top: -20px;
  left: -40px; }

.alt-row:nth-of-type(2) .alt-graphic-2 svg.icon-shape, .alt-row:nth-of-type(5) .alt-graphic-2 svg.icon-shape {
  width: 130px;
  bottom: -60px;
  right: -60px;
  z-index: 1; }

.alt-row:nth-of-type(3) .alt-graphic-1 svg.icon-shape {
  display: none; }

.alt-row:nth-of-type(3) .alt-graphic-2 svg.icon-shape {
  width: 130px;
  bottom: -60px;
  right: -60px;
  z-index: 1; }

.alt-row:nth-of-type(4) .alt-graphic-1 svg.icon-shape, .alt-row:nth-of-type(6) .alt-graphic-1 svg.icon-shape {
  width: 90px;
  top: -20px;
  left: -40px; }

.alt-row:nth-of-type(4) .alt-graphic-2 svg.icon-shape, .alt-row:nth-of-type(6) .alt-graphic-2 svg.icon-shape {
  display: none; }

svg.icon-arrow {
  display: inline-block; }

.hero-wrapper {
  max-width: 100vw; }
  @media (min-width: 1200px) {
    .hero-wrapper {
      margin-top: -9.4rem;
      overflow-x: hidden; }
      .hero-wrapper:before {
        bottom: 0; } }
  .hero-wrapper .splide__pagination {
    width: 101%;
    bottom: 0;
    background: linear-gradient(to top, #001428 0%, rgba(0, 20, 40, 0.8) 100%); }
    @media (min-width: 1200px) {
      .hero-wrapper .splide__pagination {
        width: 30px;
        left: 95%;
        top: 44%;
        bottom: unset;
        transform: none;
        background: unset;
        flex-direction: column; } }
  .hero-wrapper .splide__pagination__page {
    width: 9px;
    height: 9px;
    margin: 6px 10px; }
  .hero-wrapper .splide__pagination__page.is-active {
    width: 13px;
    height: 13px;
    background-color: #00abfa;
    transform: scale(1); }

#hero-static {
  visibility: visible; }
  #hero-static .splide__slide {
    width: 100%; }

.splide {
  padding-bottom: 0; }
  @media (min-width: 1200px) {
    .splide {
      padding-bottom: 0; } }

@media (min-width: 900px) {
  .home .hero-container {
    height: 75vh; } }

.hero-container {
  position: relative;
  display: flex;
  justify-content: center;
  height: 100vw; }
  @media (min-width: 600px) {
    .hero-container {
      height: 55vh; } }
  .hero-container img,
  .hero-container video {
    object-fit: cover; }
    @media (min-width: 900px) {
      .hero-container img,
      .hero-container video {
        width: 100%;
        height: auto; } }
  .hero-container .icon-arrow {
    stroke: white; }

.hero-cta-bg-container {
  position: absolute;
  top: 50%;
  bottom: 0;
  left: 50%;
  right: 50%;
  transform: translateX(-50%) translateY(-50%);
  max-width: 100vw;
  width: 100%;
  height: 100%;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  color: #fff; }
  .hero-cta-bg-container:after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -1px;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(0deg, #001224 0%, rgba(0, 18, 36, 0.2) 15%, rgba(0, 18, 36, 0.1) 20%, rgba(0, 18, 36, 0) 100%); }
    @media (min-width: 1200px) {
      .hero-cta-bg-container:after {
        bottom: -1px; } }

.hero-cta-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  height: 100%; }
  @media (min-width: 1200px) {
    .hero-cta-container {
      margin-top: 12rem; } }

.hero-cta-header {
  font-family: "Museo", sans-serif;
  font-size: 3.2rem;
  font-weight: 100;
  color: #fff !important;
  text-align: left;
  margin-bottom: 2rem;
  line-height: 1.1;
  width: 100%; }
  @media (min-width: 1200px) {
    .hero-cta-header {
      font-size: 6.5rem; } }

.hero-cta-content {
  margin-top: 2rem; }
  .hero-cta-content p {
    color: #fff; }

.hero-cta-content,
.hero-cta-footer {
  margin-bottom: 2rem;
  width: 100%; }

.hero-cta-footer {
  display: flex;
  justify-content: center;
  align-items: flex-start; }
  @media (min-width: 900px) {
    .hero-cta-footer {
      justify-content: flex-start; } }

@media (min-width: 900px) {
  .hero-cta-header,
  .hero-cta-content,
  .hero-cta-footer {
    text-align: left; }
    .home .hero-cta-header, .home
    .hero-cta-content, .home
    .hero-cta-footer {
      width: 50%; } }

@media (max-width: 899px) and (orientation: landscape) {
  .hero-container img,
  .hero-container video {
    min-width: 100vw;
    height: 80vh; } }

@media (min-width: 900px) {
  .hero-container.shortened .hero-cta-header {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%; } }

.acf-hero:not(.has-breadcrumbs):not(.has-jump) + section {
  margin-top: -5.5rem; }
  @media (min-width: 1200px) {
    .acf-hero:not(.has-breadcrumbs):not(.has-jump) + section {
      margin-top: 0; } }

.hero-static.has-jump .jump-links-bg-container {
  margin-top: 0;
  position: relative;
  z-index: 1; }
  @media (min-width: 1200px) {
    .hero-static.has-jump .jump-links-bg-container {
      margin-top: 0; } }

.hero-container.shortened {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-top: 56.25%; }
  @media (min-width: 900px) {
    .hero-container.shortened {
      height: 35vh;
      min-height: 22rem;
      overflow-y: hidden;
      padding-top: unset; } }
  .hero-container.shortened img,
  .hero-container.shortened video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    @media (min-width: 900px) {
      .hero-container.shortened img,
      .hero-container.shortened video {
        position: unset;
        height: auto; } }
  .hero-container.shortened .hero-cta-container {
    position: absolute;
    top: 50%;
    bottom: 0;
    left: 50%;
    right: 50%;
    transform: translateX(-50%) translateY(-50%);
    max-width: 100vw;
    width: 100%;
    height: 100%;
    padding: 0 6.93%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    color: #fff; }
    @media (min-width: 1200px) {
      .hero-container.shortened .hero-cta-container {
        justify-content: flex-start;
        padding: 0; } }

.jump-links-bg-container {
  background-color: #001224;
  margin-top: -8px; }
  @media (min-width: 1200px) {
    .jump-links-bg-container {
      margin-top: 0; } }

.bg--white .jump-links-bg-container, .bg--white .jump-links-list {
  background-color: #fff; }

.bg--white-smoke .jump-links-bg-container, .bg--white-smoke .jump-links-list {
  background-color: #f7f7f7; }

.bg--sapphire .jump-links-bg-container, .bg--sapphire .jump-links-list {
  background-color: #0e2a62; }

.bg--prussian-blue .jump-links-bg-container, .bg--prussian-blue .jump-links-list {
  background-color: #001b3d; }

.bg--dark-green .jump-links-bg-container, .bg--dark-green .jump-links-list {
  background-color: #001224; }

.jump-links-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative; }

.jump-links-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #001224;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0;
  opacity: 0;
  animation-delay: 200ms;
  animation-duration: 650ms;
  -moz-animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards; }
  .jump-links-list.opened {
    animation-name: open-menu; }

@keyframes open-menu {
  from {
    height: 0;
    opacity: 0; }
  to {
    height: 22rem;
    opacity: 1; } }
  @media (min-width: 900px) {
    .jump-links-list {
      padding: 2.4rem 0;
      width: 100%;
      flex-direction: row;
      justify-content: flex-end;
      position: unset;
      height: auto;
      opacity: 1; } }

.jump-link-list-item {
  margin: 1rem 2rem;
  width: auto;
  text-align: left; }
  @media (min-width: 900px) {
    .jump-link-list-item {
      margin: 0 2rem; } }

a.jump-link,
button.jump-trigger {
  color: #61be23;
  font-family: "Lato";
  font-size: 1.8rem;
  text-decoration: none;
  display: block;
  padding-right: 4rem; }
  a.jump-link .down-arrow,
  button.jump-trigger .down-arrow {
    display: none; }
  a.jump-link .icon-carat,
  button.jump-trigger .icon-carat {
    display: inline-block;
    fill: #61be23;
    margin-left: 20px;
    width: 20px;
    height: 20px;
    transform: rotate(90deg) translate(25%, 25%); }
  @media (min-width: 900px) {
    a.jump-link,
    button.jump-trigger {
      background-image: none; }
      a.jump-link .icon-carat,
      button.jump-trigger .icon-carat {
        display: none; }
      a.jump-link .down-arrow,
      button.jump-trigger .down-arrow {
        display: inline-block;
        stroke: #61be23;
        margin-left: 20px;
        transform: translate(0%, 40%); }
      a.jump-link:hover .down-arrow,
      button.jump-trigger:hover .down-arrow {
        animation: jump-down-arrow 0.5s ease forwards; } }

.active-list .icon-carat {
  animation: right-carat-rotate 0.5s ease forwards; }

button.jump-trigger {
  width: 15rem;
  text-align: left;
  padding: 2rem 0;
  margin: 0.5rem 0; }
  @media (min-width: 900px) {
    button.jump-trigger {
      display: none; } }

.breadcrumbs-bg-container {
  background-color: #001224;
  padding-top: 2rem; }

.bg--white .breadcrumbs-bg-container {
  background-color: #fff; }

.bg--white-smoke .breadcrumbs-bg-container {
  background-color: #f7f7f7; }

.bg--sapphire .breadcrumbs-bg-container {
  background-color: #0e2a62; }

.bg--prussian-blue .breadcrumbs-bg-container {
  background-color: #001b3d; }

.bg--dark-green .breadcrumbs-bg-container {
  background-color: #001224; }

.jump-links-bg-container + .breadcrumbs-bg-container {
  padding-top: 0; }

.breadcrumbs-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  border-top: 1px solid #1d428b; }

.breadcrumbs {
  font-family: "Lato";
  font-size: 1.6rem;
  padding: 2rem 0;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.5); }
  .breadcrumbs a {
    color: rgba(255, 255, 255, 0.5);
    text-decoration: none;
    padding: 0 1rem; }
    .breadcrumbs a:hover, .breadcrumbs a:focus {
      text-decoration: underline; }
  .breadcrumbs .breadcrumb_last {
    color: #61be23;
    padding: 0 1rem; }

.hero-wrapper + .breadcrumbs-bg-container {
  position: relative;
  z-index: 1;
  margin-top: -51px; }
  @media (min-width: 1200px) {
    .hero-wrapper + .breadcrumbs-bg-container {
      margin-top: 0; } }

.logo-wrapper {
  max-width: 100vw;
  overflow-x: hidden; }
  @media (min-width: 1200px) {
    .logo-wrapper {
      margin-top: -9.4rem; }
      .logo-wrapper:before {
        bottom: 0; } }
  .logo-wrapper #logo-static {
    visibility: visible; }
    .logo-wrapper #logo-static .splide__slide {
      width: 100%; }
  .logo-wrapper .slide-container {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%; }
  .logo-wrapper .slide-comp-padding {
    padding-top: 4rem;
    padding-bottom: 4rem; }
  .logo-wrapper .splide {
    padding-bottom: 50px; }
    @media (min-width: 1200px) {
      .logo-wrapper .splide {
        padding-bottom: 4rem; } }
  .logo-wrapper .splide__slide {
    background-color: transparent; }
    .logo-wrapper .splide__slide img {
      display: block;
      margin: 0 auto; }
  .logo-wrapper .splide__arrow {
    width: 6em;
    height: 6em;
    background-color: transparent;
    fill: #ffffff; }
    .logo-wrapper .splide__arrow svg {
      width: 4em;
      height: 4em; }
  .logo-wrapper .splide__pagination {
    width: 101%;
    bottom: 1.5rem; }
    @media (min-width: 1200px) {
      .logo-wrapper .splide__pagination {
        bottom: 0; } }
  .logo-wrapper .splide__pagination__page {
    width: 9px;
    height: 9px;
    margin: 20px 10px; }
  .logo-wrapper .splide__pagination__page.is-active {
    width: 14px;
    height: 14px;
    background-color: #00abfa; }
  .logo-wrapper .splide__list {
    align-items: center; }

.acf-tabbed .component-container {
  padding-top: 8rem;
  padding-bottom: 10rem; }

.acf-tabbed .tab-component-title {
  text-align: center;
  font-size: 56px;
  line-height: 45px;
  font-family: "Museo", sans-serif;
  font-weight: 100;
  letter-spacing: 1.12px;
  margin-bottom: 50px; }

.acf-tabbed .tabs-container {
  border-bottom: 3px solid #85c700; }

.acf-tabbed .tabs {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }
  .acf-tabbed .tabs li {
    color: white;
    font-size: 21px;
    font-family: "Museo", sans-serif;
    flex-grow: 1;
    border: none;
    padding: 20px 0;
    border-radius: 0;
    margin-bottom: -3px; }
    @media (min-width: 900px) {
      .acf-tabbed .tabs li {
        flex-grow: 1;
        border-top: 3px solid #85c700;
        border-right: 3px solid #85c700;
        border-left: 3px solid #85c700;
        border-bottom: none;
        border-radius: 20px 20px 0 0;
        background-color: #002a61; } }
    .acf-tabbed .tabs li.inactive {
      border: none;
      border-radius: 0;
      background-color: transparent;
      margin-bottom: 0; }
      @media (min-width: 900px) {
        .acf-tabbed .tabs li.inactive {
          border: none; } }
    .acf-tabbed .tabs li a.inactive {
      color: #85c700;
      cursor: pointer; }

.acf-tabbed .tab-content {
  position: relative;
  background: transparent linear-gradient(180deg, #002a61 0%, #000914 100%) 0% 0% no-repeat padding-box; }

.acf-tabbed .tab-pane {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }
  .acf-tabbed .tab-pane.hide {
    display: none; }
  .acf-tabbed .tab-pane .slide {
    width: 101%;
    left: 0;
    overflow-y: hidden;
    color: white;
    background-color: #00adfb;
    padding: 20px; }
    .acf-tabbed .tab-pane .slide.bio_open {
      display: block;
      max-height: 0;
      margin-bottom: 50px;
      animation: expand 1s ease-out forwards; }
    .acf-tabbed .tab-pane .slide .close {
      color: white;
      padding-bottom: 10px;
      float: right;
      font-size: 29px;
      cursor: pointer; }
    .acf-tabbed .tab-pane .slide .slide-content-wrap {
      width: 100%;
      vertical-align: top;
      padding-top: 10px; }

.acf-tabbed .tab-description {
  text-align: center;
  padding: 20px 15% 40px; }
  .acf-tabbed .tab-description p {
    font-size: 22px;
    color: white;
    opacity: 0.5;
    font-family: "Lato"; }

.acf-tabbed .tab-row {
  display: flex;
  flex-wrap: wrap; }
  @media (min-width: 600px) {
    .acf-tabbed .tab-row {
      justify-content: flex-start; } }

.acf-tabbed .tabbed-post-wrap {
  flex-basis: 80%;
  position: unset;
  margin-bottom: 50px;
  padding-bottom: 20px;
  transition: all 1s ease; }
  @media (min-width: 600px) {
    .acf-tabbed .tabbed-post-wrap {
      flex-basis: 49%;
      margin-right: 2%; }
      .acf-tabbed .tabbed-post-wrap:nth-child(2n + 2) {
        margin-right: 0; } }
  @media (min-width: 900px) {
    .acf-tabbed .tabbed-post-wrap {
      flex-basis: 33.66%;
      margin-right: 0.49%; }
      .acf-tabbed .tabbed-post-wrap:nth-child(3n + 3) {
        margin-right: 0; } }
  @media (min-width: 1200px) {
    .acf-tabbed .tabbed-post-wrap {
      flex-basis: 16%;
      margin-right: 0.75%; }
      .acf-tabbed .tabbed-post-wrap:nth-child(6n + 6) {
        margin-right: 0; } }
  .acf-tabbed .tabbed-post-wrap .featured-image {
    padding: 10px;
    overflow: hidden; }
  .acf-tabbed .tabbed-post-wrap .text_title {
    color: #85c700;
    font-family: "Museo", sans-serif;
    padding: 10px 10px 0;
    font-size: 18px;
    font-weight: 300;
    padding-right: 45px; }
  .acf-tabbed .tabbed-post-wrap .dl-wrapper {
    position: relative; }
  .acf-tabbed .tabbed-post-wrap .tabbed-link {
    text-decoration: none; }
    .acf-tabbed .tabbed-post-wrap .tabbed-link:hover .dl-wrapper .down-arrow, .acf-tabbed .tabbed-post-wrap .tabbed-link:focus .dl-wrapper .down-arrow {
      animation: down-arrow-tabbed 0.5s ease forwards; }
    .acf-tabbed .tabbed-post-wrap .tabbed-link:hover .dl-wrapper .icon-arrow, .acf-tabbed .tabbed-post-wrap .tabbed-link:focus .dl-wrapper .icon-arrow {
      animation: right-arrow 0.5s ease forwards; }
  .acf-tabbed .tabbed-post-wrap .text-sub-title {
    color: #85c700;
    font-family: "Museo", sans-serif;
    font-size: 18px;
    font-weight: 300;
    padding: 0 10px;
    padding-right: 45px; }
  .acf-tabbed .tabbed-post-wrap .text-excerpt {
    color: #fff;
    padding: 0 10px; }
  .acf-tabbed .tabbed-post-wrap .icon-text {
    position: absolute;
    right: 10px;
    top: 15px;
    width: 30px;
    height: 25px;
    display: block;
    text-decoration: none; }
  .acf-tabbed .tabbed-post-wrap .download-text {
    display: block;
    text-decoration: none;
    padding: 10px 10px 0;
    color: #61be23; }
    .acf-tabbed .tabbed-post-wrap .download-text svg.down-arrow {
      transform: translate(0%, 25%); }

.acf-tabbed .down-arrow {
  stroke: #61be23; }

.acf-tabbed .icon-arrow {
  stroke: #61be23; }

.component-container {
  padding-top: 8rem;
  padding-bottom: 10rem; }

.tab-component-title {
  text-align: center;
  font-size: 56px;
  line-height: 45px;
  font-family: "Museo", sans-serif;
  font-weight: 100;
  letter-spacing: 1.12px;
  margin-bottom: 50px; }

.tabs-container {
  border-bottom: 3px solid #85c700; }

.tabs {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }
  .tabs li {
    color: white;
    font-size: 21px;
    font-family: "Museo", sans-serif;
    flex-grow: 1;
    flex-basis: 100%;
    border: none;
    padding: 20px 0;
    border-radius: 0;
    margin-bottom: -3px; }
    @media (min-width: 900px) {
      .tabs li {
        flex-grow: 1;
        flex-basis: auto;
        border-top: 3px solid #85c700;
        border-right: 3px solid #85c700;
        border-left: 3px solid #85c700;
        border-bottom: none;
        border-radius: 20px 20px 0 0;
        background-color: #002a61; } }
    .tabs li.inactive {
      border: none;
      border-radius: 0;
      background-color: transparent;
      margin-bottom: 0; }
      @media (min-width: 900px) {
        .tabs li.inactive {
          border: none; } }
    .tabs li a.inactive {
      color: #85c700;
      cursor: pointer; }

.tab-content {
  position: relative;
  background: transparent linear-gradient(180deg, #002a61 0%, #000914 100%) 0% 0% no-repeat padding-box; }

.tab-pane {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }
  .tab-pane.inactive-map {
    position: absolute;
    opacity: 0; }
  .tab-pane.hide {
    display: none; }
  .tab-pane .slide {
    width: 101%;
    left: 0;
    overflow-y: hidden;
    color: white;
    background-color: #00abfa;
    padding: 20px; }
    .tab-pane .slide.bio_open {
      display: block;
      max-height: 0;
      margin-bottom: 50px;
      animation: expand 1.5s ease-out forwards; }
    .tab-pane .slide .close {
      color: white;
      padding-bottom: 10px;
      float: right;
      font-size: 29px;
      cursor: pointer; }
    .tab-pane .slide .slide-content-wrap {
      width: 100%;
      vertical-align: top;
      padding-top: 10px; }
      .tab-pane .slide .slide-content-wrap .text_content p {
        color: #fff; }
        .tab-pane .slide .slide-content-wrap .text_content p a {
          color: #001224;
          text-decoration: none; }
          .tab-pane .slide .slide-content-wrap .text_content p a:hover, .tab-pane .slide .slide-content-wrap .text_content p a:focus {
            text-decoration: underline; }

.tab-description {
  text-align: center;
  padding: 20px 15% 40px; }
  .tab-description p {
    font-size: 22px;
    color: white;
    opacity: .5;
    font-family: "Lato"; }

.tab-row {
  display: flex;
  flex-wrap: wrap; }

.tabbed-post-wrap {
  position: relative;
  flex-basis: 100%;
  margin-bottom: 50px;
  padding-bottom: 20px;
  transition: all 1s ease; }
  @media (max-width: 599px) {
    .tabbed-post-wrap {
      flex-basis: auto; } }
  @media (min-width: 600px) {
    .tabbed-post-wrap {
      flex-basis: 50%; } }
  @media (min-width: 900px) {
    .tabbed-post-wrap {
      flex-basis: 33.33%; } }
  @media (min-width: 1200px) {
    .tabbed-post-wrap {
      flex-basis: 25%; } }
  .tabbed-post-wrap .featured-image {
    padding: 10px;
    overflow: hidden; }
  .tabbed-post-wrap .post-text-wrapper {
    display: flex; }
    .tabbed-post-wrap .post-text-wrapper .text-container {
      flex-basis: 75%; }
  .tabbed-post-wrap .text_title {
    color: white;
    font-family: "Museo", sans-serif;
    padding: 10px 10px 0;
    font-size: 2.3rem;
    font-weight: 300;
    line-height: 1.3; }
  .tabbed-post-wrap .text-job-title {
    color: white;
    font-family: "Lato";
    font-size: 14px;
    font-weight: bold;
    padding: 0 10px; }
  .tabbed-post-wrap .text-link {
    position: absolute;
    right: 0;
    bottom: 0.5rem; }
    .tabbed-post-wrap .text-link .button {
      width: 40px;
      height: 25px;
      display: block;
      float: right;
      text-decoration: none;
      position: relative; }
      .tabbed-post-wrap .text-link .button svg {
        position: absolute;
        top: 0;
        right: 15px;
        transition: all 0.5s ease; }
      .tabbed-post-wrap .text-link .button.clicked svg {
        transform: rotate(180deg);
        position: absolute;
        top: 0;
        right: 15px;
        transition: 0.5s ease; }

.tabbed-expanded-bg {
  background-color: transparent;
  animation: expand-bg-color 1.5s ease-out forwards; }

@keyframes expand {
  0% {
    padding: 0 2.5%;
    max-height: 0;
    opacity: 0; }
  20% {
    padding: 2.5%;
    max-height: 100%;
    opacity: 0; }
  55% {
    padding: 2.5%;
    max-height: 100%;
    opacity: 0; }
  100% {
    padding: 2.5%;
    max-height: 100%;
    opacity: 1; } }

@keyframes expand-bg-color {
  0% {
    background-color: transparent; }
  55% {
    background-color: transparent; }
  100% {
    background-color: #00abfa; } }

.acf-sbs .icon-arrow {
  stroke: white; }

.acf-sbs .down-arrow {
  margin-top: 0.8rem;
  stroke: white; }

.sbs-container {
  display: flex;
  flex-direction: column;
  padding: 0 7%; }
  @media (min-width: 900px) {
    .sbs-container {
      width: 100%;
      max-width: 144rem;
      margin: 0 auto;
      padding: 0 3%;
      padding-top: 8rem;
      padding-bottom: 10rem;
      margin-bottom: 0;
      padding: 0 3%;
      flex-direction: row; }
      .sbs-container .sbs-asset,
      .sbs-container .sbs-details {
        flex-basis: 50%; } }

.sbs-asset {
  text-align: center; }
  .sbs-asset img {
    width: 100%; }
    .sbs-asset img.static-img {
      width: initial;
      vertical-align: middle; }
  .sbs-asset.attachment-image {
    text-align: center;
    background-color: #001224;
    padding: 10rem 0 15rem; }
    .sbs-asset.attachment-image img {
      width: initial; }
    .sbs-asset.attachment-image a {
      display: block;
      margin-top: 2rem;
      color: #61be23;
      text-decoration: none; }
      .sbs-asset.attachment-image a .down-arrow {
        transform: translate(0%, 40%);
        stroke: #61be23; }
      .sbs-asset.attachment-image a:hover .down-arrow {
        animation: jump-down-arrow 0.5s ease forwards; }

.sbs-details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 7%;
  background-color: #fff; }
  @media (min-width: 900px) {
    .sbs-details {
      padding: 0 3%;
      box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.078); } }
  .sbs-details header {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: left;
    padding: 0 3% 4rem;
    font-weight: 100;
    padding: 0;
    line-height: 1.1; }
    @media (min-width: 1200px) {
      .sbs-details header {
        font-size: 4.6rem; } }
  .sbs-details p {
    margin-bottom: 2rem; }

.sbs-description .sbs-content,
.sbs-description .wiz-container {
  color: #333333; }
  .sbs-description .sbs-content *,
  .sbs-description .wiz-container * {
    color: #333333; }

.sbs-description .component-cta-container {
  padding-top: 3rem; }
  @media (min-width: 900px) {
    .sbs-description .component-cta-container {
      padding: 0;
      justify-content: flex-start;
      margin-top: 2rem; } }

.acf-column-content .column-content-component {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
  .acf-column-content .column-content-component .component-container {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%;
    padding-top: 8rem;
    padding-bottom: 10rem; }
    .acf-column-content .column-content-component .component-container .component-header {
      padding-bottom: 0rem; }

.acf-column-content h2 {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  font-family: "Museo", sans-serif;
  font-weight: 300;
  text-align: center;
  padding-top: 40px;
  font-size: 36px; }

.acf-column-content .column-content-grid {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: flex;
  flex-wrap: wrap;
  text-align: center; }
  .acf-column-content .column-content-grid .grid-columns-2 {
    flex: 0 1 100%;
    padding: 20px; }
    @media (min-width: 600px) {
      .acf-column-content .column-content-grid .grid-columns-2 {
        flex: 0 1 50%; } }
  .acf-column-content .column-content-grid .grid-columns-3 {
    flex: 0 1 100%;
    padding: 20px; }
    @media (min-width: 600px) {
      .acf-column-content .column-content-grid .grid-columns-3 {
        flex: 0 1 50%; } }
    @media (min-width: 900px) {
      .acf-column-content .column-content-grid .grid-columns-3 {
        flex: 0 1 33%; } }
  .acf-column-content .column-content-grid .grid-columns-4 {
    flex: 0 1 100%;
    padding: 20px; }
    @media (min-width: 600px) {
      .acf-column-content .column-content-grid .grid-columns-4 {
        flex: 0 1 50%; } }
    @media (min-width: 900px) {
      .acf-column-content .column-content-grid .grid-columns-4 {
        flex: 0 1 25%; } }
  .acf-column-content .column-content-grid .grid-columns-5 {
    flex: 0 1 100%;
    padding: 20px; }
    @media (min-width: 600px) {
      .acf-column-content .column-content-grid .grid-columns-5 {
        flex: 0 1 33%; } }
    @media (min-width: 900px) {
      .acf-column-content .column-content-grid .grid-columns-5 {
        flex: 0 1 20%; } }

.acf-column-content .column-content-grid-item-container header {
  font-family: "Museo", sans-serif;
  font-weight: 300;
  font-size: 3.6rem;
  margin: 1rem 0;
  line-height: 1; }

.acf-column-content .column-content-grid-item-container p {
  font-family: "Lato";
  font-size: 1.6rem; }

.acf-column-content .column-content-cta-container {
  padding-top: 6rem;
  padding-bottom: 10rem;
  display: flex;
  justify-content: center;
  align-items: center; }
  .acf-column-content .column-content-cta-container a {
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .acf-column-content .column-content-cta-container a {
        align-self: center; } }

.acf-column-content .icon-arrow {
  stroke: #fff; }

.acf-column-content .icon-container a {
  text-decoration: none; }
  .acf-column-content .icon-container a:hover, .acf-column-content .icon-container a:focus {
    text-decoration: underline; }

.acf-column-page .app-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 0;
  padding-top: 8rem;
  padding-bottom: 10rem; }
  @media (min-width: 600px) {
    .acf-column-page .app-container {
      padding-left: 3%;
      padding-right: 3%; } }
  .acf-column-page .app-container > header {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: center;
    padding: 0 3% 4rem;
    font-weight: 100; }
    @media (min-width: 1200px) {
      .acf-column-page .app-container > header {
        font-size: 4.6rem; } }

.acf-column-page .module-card-item {
  position: relative; }
  .acf-column-page .module-card-item.download-file {
    background-size: initial;
    background-position: center 20%; }
  .acf-column-page .module-card-item .post-type-text {
    color: #00abfa;
    text-transform: uppercase;
    font-size: 1.6rem;
    font-family: "Lato";
    font-weight: 600;
    line-height: 3.5; }

.acf-column-page .icon-arrow,
.acf-column-page .down-arrow {
  stroke: #fff; }

.acf-column-page .module-card-item-link {
  display: flex;
  justify-content: left;
  align-items: center;
  padding-left: 0; }
  .acf-column-page .module-card-item-link .icon-arrow,
  .acf-column-page .module-card-item-link .down-arrow {
    stroke: #61be23; }

.column-page-grid {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr; }
  @media (min-width: 900px) {
    .column-page-grid.columns-2 {
      grid-template-columns: repeat(2, 1fr); }
    .column-page-grid.columns-3 {
      grid-template-columns: repeat(3, 1fr); }
    .column-page-grid.columns-4 {
      grid-template-columns: repeat(4, 1fr); } }

.acf-banner-image .banner-image-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto; }
  @media (min-width: 900px) {
    .acf-banner-image .banner-image-container {
      grid-template-columns: 1fr 1fr; } }

.acf-banner-image .banner-image-container figure {
  display: flex;
  justify-content: center; }
  .acf-banner-image .banner-image-container figure img {
    align-self: center; }

.acf-banner-image .banner-image-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 3%; }
  .acf-banner-image .banner-image-content .intro-title {
    font-family: "Museo", sans-serif;
    font-weight: 100;
    font-size: 36px;
    line-height: 58px;
    margin-bottom: 10px; }
  .acf-banner-image .banner-image-content .intro-description {
    font-family: "Lato";
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 40px; }

.acf-banner-image .primary-cta-button,
.acf-banner-image .secondary-cta-button,
.acf-banner-image .primary-link-button {
  width: auto;
  max-width: 100%;
  align-self: flex-start; }

.acf-banner-image .primary-cta-button .icon-arrow {
  stroke: white; }

.acf-banner-image .secondary-cta-button .down-arrow {
  stroke: #61be23; }

.acf-banner-image .primary-link-button {
  color: #61be23; }
  .acf-banner-image .primary-link-button .icon-arrow {
    stroke: #61be23; }
  .acf-banner-image .primary-link-button .down-arrow {
    stroke: #61be23; }

.acf-content .component-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }
  .acf-content .component-container .component-header {
    padding-bottom: 0; }

.acf-content .content-component-content {
  padding: 0 3%; }

.acf-content h2 {
  font-family: "Museo", sans-serif;
  font-weight: 100;
  font-size: 4.6rem;
  line-height: 62px;
  text-align: center;
  margin-bottom: 15px; }

.acf-content h3 {
  font-family: "Museo", sans-serif;
  font-weight: 300;
  font-size: 2.6re;
  line-height: 35px;
  text-align: left;
  margin-bottom: 10px; }

.acf-content p {
  font-family: "Lato";
  font-size: 1.6rem;
  line-height: 21px;
  text-align: left;
  margin-bottom: 1rem; }

.acf-content .icon-arrow {
  stroke: #fff; }

.acf-infographic .icon-arrow {
  stroke: white; }

.acf-infographic .down-arrow {
  stroke: white; }

.infographic-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }
  .infographic-container header {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: center;
    padding: 0 3% 4rem;
    font-weight: 100; }
    @media (min-width: 1200px) {
      .infographic-container header {
        font-size: 4.6rem; } }
  .infographic-container .description p {
    font-family: "Lato";
    color: #001224;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0 6.93%;
    text-align: left; }

.infographic-grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto; }
  .infographic-grid-container .infographic-image:first-of-type {
    order: 1; }
  .infographic-grid-container .infographic-image:nth-of-type(2) {
    order: 4; }
  .infographic-grid-container .infographic-image:nth-of-type(3) {
    order: 5; }
  .infographic-grid-container .infographic-image:nth-of-type(4) {
    order: 8; }
  .infographic-grid-container .infographic-content-container {
    padding: 0 3rem; }
    .infographic-grid-container .infographic-content-container p {
      font-weight: 500; }
      .infographic-grid-container .infographic-content-container p strong, .infographic-grid-container .infographic-content-container p b {
        font-weight: 700; }
      .infographic-grid-container .infographic-content-container p em, .infographic-grid-container .infographic-content-container p i {
        font-style: italic; }
    .infographic-grid-container .infographic-content-container:first-of-type {
      order: 2; }
    .infographic-grid-container .infographic-content-container:nth-of-type(2) {
      order: 3; }
    .infographic-grid-container .infographic-content-container:nth-of-type(3) {
      order: 6; }
    .infographic-grid-container .infographic-content-container:nth-of-type(4) {
      order: 7; }
  @media (min-width: 900px) {
    .infographic-grid-container {
      grid-template-columns: repeat(4, 1fr); }
      .infographic-grid-container .infographic-image:first-of-type {
        order: 1; }
      .infographic-grid-container .infographic-image:nth-of-type(2) {
        order: 3; }
      .infographic-grid-container .infographic-image:nth-of-type(3) {
        order: 6; }
      .infographic-grid-container .infographic-image:nth-of-type(4) {
        order: 8; }
      .infographic-grid-container .infographic-content-container:first-of-type {
        order: 2; }
      .infographic-grid-container .infographic-content-container:nth-of-type(2) {
        order: 4; }
      .infographic-grid-container .infographic-content-container:nth-of-type(3) {
        order: 5; }
      .infographic-grid-container .infographic-content-container:nth-of-type(4) {
        order: 7; } }

.infographic-content-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #001224;
  color: #fff;
  font-family: "Lato";
  font-weight: 900; }
  .infographic-content-container .infographic-content-figure,
  .infographic-content-container .infographic-content-description {
    flex-basis: 50%;
    display: flex;
    align-items: center;
    flex-direction: column; }
  .infographic-content-container .infographic-content-figure {
    justify-content: flex-end;
    margin-bottom: 2rem; }
    .infographic-content-container .infographic-content-figure img {
      align-self: center;
      max-height: 6rem; }
      @media (min-width: 600px) {
        .infographic-content-container .infographic-content-figure img {
          max-height: 9rem; } }
  .infographic-content-container .infographic-content-description {
    justify-content: flex-start; }

.form-bg-container {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 5rem 0 9rem;
  position: relative; }
  .form-bg-container.gradient-overlay:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, #001428 0%, rgba(0, 20, 40, 0.99) 2%, rgba(0, 20, 40, 0.95) 10%, rgba(0, 20, 40, 0.8) 20%, rgba(0, 20, 40, 0.6) 40%, rgba(0, 20, 40, 0.5) 80%, rgba(0, 20, 40, 0.4) 100%); }
  .form-bg-container.gradient-overlay .gform_description {
    color: #fff; }

.acf-form .gform_wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }

.gform_heading {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 8rem 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .gform_heading {
      font-size: 4.6rem; } }
  .gform_heading h3.gform_title {
    font-weight: 200 !important; }
  .gform_heading .gform_description {
    font-family: "Lato";
    color: #001224;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0 0;
    text-align: left;
    align-self: center;
    padding: 4rem 0 0; }

.gravityforms-form .gform_wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%; }

.gravityforms-form .gform_wrapper .ginput_complex input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]),
.gravityforms-form .gform_wrapper .ginput_complex select,
.gravityforms-form .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
  background-color: #f7f7f7;
  font-family: "Lato";
  font-size: 16px;
  color: #949494;
  border-radius: 0.8rem;
  border-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  padding: 1rem; }

.gravityforms-form .gform_wrapper label.gfield_label,
.gravityforms-form .gform_wrapper legend.gfield_label,
.gravityforms-form .gform_wrapper .top_label .gfield_label {
  color: #1d428b;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
  font-family: "Lato";
  margin: 0 0 1rem; }

.gravityforms-form .gform_wrapper .ginput_complex select,
.gravityforms-form select,
.gravityforms-form .gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield select {
  padding: calc(0.75 * 1rem);
  -webkit-appearance: none;
  border: 0 none; }

.form-bg-container .gform_wrapper,
.acf-form .gform_wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 6.93%;
  padding-top: 8rem;
  padding-bottom: 10rem;
  padding-top: 0;
  position: relative; }

.form-bg-container .gform_wrapper .ginput_complex input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]),
.form-bg-container .gform_wrapper .ginput_complex select,
.form-bg-container .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.acf-form .gform_wrapper .ginput_complex input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="image"]):not([type="file"]),
.acf-form .gform_wrapper .ginput_complex select,
.acf-form .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
  background-color: #f7f7f7;
  font-family: "Lato";
  font-size: 16px;
  color: #949494;
  border-radius: 0.8rem;
  border-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  padding: 1rem; }

.form-bg-container .gform_wrapper label.gfield_label,
.form-bg-container .gform_wrapper legend.gfield_label,
.acf-form .gform_wrapper label.gfield_label,
.acf-form .gform_wrapper legend.gfield_label {
  color: #1d428b;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
  font-family: "Lato";
  margin: 0 0 1rem; }

.form-bg-container .gform_wrapper .ginput_complex select,
.form-bg-container select,
.form-bg-container .gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield select,
.acf-form .gform_wrapper .ginput_complex select,
.acf-form select,
.acf-form .gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield select {
  padding: calc(0.75 * 1rem);
  -webkit-appearance: none;
  border: 0 none; }

.form-bg-container .gform_wrapper .gform_footer,
.acf-form .gform_wrapper .gform_footer {
  display: flex;
  justify-content: center;
  padding-top: 6rem;
  padding-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  .form-bg-container .gform_wrapper .gform_footer a + a,
  .acf-form .gform_wrapper .gform_footer a + a {
    margin-top: 2rem; }
  @media (min-width: 900px) {
    .form-bg-container .gform_wrapper .gform_footer,
    .acf-form .gform_wrapper .gform_footer {
      flex-direction: row; }
      .form-bg-container .gform_wrapper .gform_footer a + a,
      .acf-form .gform_wrapper .gform_footer a + a {
        margin-left: 2rem;
        margin-top: 0; } }
  .form-bg-container .gform_wrapper .gform_footer input[type="submit"],
  .form-bg-container .gform_wrapper .gform_footer button,
  .acf-form .gform_wrapper .gform_footer input[type="submit"],
  .acf-form .gform_wrapper .gform_footer button {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .form-bg-container .gform_wrapper .gform_footer input[type="submit"],
      .form-bg-container .gform_wrapper .gform_footer button,
      .acf-form .gform_wrapper .gform_footer input[type="submit"],
      .acf-form .gform_wrapper .gform_footer button {
        padding: 1rem 4.5rem;
        width: auto; } }
    @media (min-width: 600px) {
      .form-bg-container .gform_wrapper .gform_footer input[type="submit"],
      .form-bg-container .gform_wrapper .gform_footer button,
      .acf-form .gform_wrapper .gform_footer input[type="submit"],
      .acf-form .gform_wrapper .gform_footer button {
        align-self: center; } }
  .form-bg-container .gform_wrapper .gform_footer .icon-arrow,
  .acf-form .gform_wrapper .gform_footer .icon-arrow {
    stroke: #fff; }

.bg--white .gform_heading .gform_title {
  color: #1d428b; }

.bg--white .gform_heading span.gform_description,
.bg--white .gform_heading p {
  color: #001224; }
  .bg--white .gform_heading span.gform_description p,
  .bg--white .gform_heading p p {
    color: #001224; }

.bg--white .gform_wrapper label.gfield_label,
.bg--white .gform_wrapper label {
  color: #001224; }
  .bg--white .gform_wrapper label.gfield_label a,
  .bg--white .gform_wrapper label a {
    color: #001224; }

.bg--white .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.bg--white textarea {
  background-color: #f7f7f7; }

.bg--white .gform_confirmation_wrapper {
  color: #1d428b; }

.bg--white-smoke .gform_heading .gform_title {
  color: #949494; }

.bg--white-smoke .gform_heading span.gform_description,
.bg--white-smoke .gform_heading p {
  color: #001224; }
  .bg--white-smoke .gform_heading span.gform_description p,
  .bg--white-smoke .gform_heading p p {
    color: #001224; }

.bg--white-smoke .gform_wrapper label.gfield_label,
.bg--white-smoke .gform_wrapper label {
  color: #001224; }
  .bg--white-smoke .gform_wrapper label.gfield_label a,
  .bg--white-smoke .gform_wrapper label a {
    color: #001224; }

.bg--white-smoke .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.bg--white-smoke textarea {
  background-color: #fff; }

.bg--white-smoke .gform_confirmation_wrapper {
  color: #949494; }

.bg--sapphire .gform_heading .gform_title {
  color: #fff; }

.bg--sapphire .gform_heading span.gform_description,
.bg--sapphire .gform_heading p {
  color: #fff; }
  .bg--sapphire .gform_heading span.gform_description p,
  .bg--sapphire .gform_heading p p {
    color: #fff; }

.bg--sapphire .gform_wrapper label.gfield_label,
.bg--sapphire .gform_wrapper label {
  color: #fff; }
  .bg--sapphire .gform_wrapper label.gfield_label a,
  .bg--sapphire .gform_wrapper label a {
    color: #fff; }

.bg--sapphire .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.bg--sapphire textarea {
  background-color: #f7f7f7; }

.bg--sapphire .gform_confirmation_wrapper {
  color: #fff; }

.bg--prussian-blue .gform_heading .gform_title {
  color: #fff; }

.bg--prussian-blue .gform_heading span.gform_description,
.bg--prussian-blue .gform_heading p {
  color: #fff; }
  .bg--prussian-blue .gform_heading span.gform_description p,
  .bg--prussian-blue .gform_heading p p {
    color: #fff; }

.bg--prussian-blue .gform_wrapper label.gfield_label,
.bg--prussian-blue .gform_wrapper label {
  color: #fff; }
  .bg--prussian-blue .gform_wrapper label.gfield_label a,
  .bg--prussian-blue .gform_wrapper label a {
    color: #fff; }

.bg--prussian-blue .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.bg--prussian-blue textarea {
  background-color: #f7f7f7; }

.bg--prussian-blue .gform_confirmation_wrapper {
  color: #fff; }

.bg--dark-green .gform_heading .gform_title {
  color: #fff; }

.bg--dark-green .gform_heading span.gform_description,
.bg--dark-green .gform_heading p {
  color: #fff; }
  .bg--dark-green .gform_heading span.gform_description p,
  .bg--dark-green .gform_heading p p {
    color: #fff; }

.bg--dark-green .gform_wrapper label.gfield_label,
.bg--dark-green .gform_wrapper label {
  color: #fff; }
  .bg--dark-green .gform_wrapper label.gfield_label a,
  .bg--dark-green .gform_wrapper label a {
    color: #fff; }

.bg--dark-green .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
.bg--dark-green textarea {
  background-color: #f7f7f7; }

.bg--dark-green .gform_confirmation_wrapper {
  color: #fff; }

.gform_heading {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 8rem 3% 4rem;
  font-weight: 100;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0; }
  @media (min-width: 1200px) {
    .gform_heading {
      font-size: 4.6rem; } }
  .gform_heading h3.gform_title {
    font-weight: 200;
    margin-bottom: 3rem; }
  .gform_heading .gform_description {
    font-family: "Lato";
    color: #001224;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0 0;
    text-align: left; }

.gform_body ul.gform_fields {
  display: block; }
  .gform_body ul.gform_fields li input[type="text"] {
    width: 100%; }
  .gform_body ul.gform_fields li.full_width_field {
    grid-column: 1 / 3; }
  .gform_body ul.gform_fields li:first-child {
    grid-area: name; }
  .gform_body ul.gform_fields li:nth-of-type(2) {
    grid-area: email; }
  .gform_body ul.gform_fields li:nth-of-type(3) {
    grid-area: message; }
  @media (min-width: 900px) {
    .gform_body ul.gform_fields {
      display: grid;
      grid-template-rows: auto;
      grid-template-columns: 1fr 1fr;
      grid-template-areas: "name email" "message message"; } }

label a:hover, label a:focus {
  color: #61be23 !important; }

.gform_wrapper .gform_footer {
  display: flex;
  justify-content: center; }
  .gform_wrapper .gform_footer input[type="submit"],
  .gform_wrapper .gform_footer button {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .gform_wrapper .gform_footer input[type="submit"],
      .gform_wrapper .gform_footer button {
        padding: 1rem 4.5rem;
        width: auto; } }
    @media (min-width: 600px) {
      .gform_wrapper .gform_footer input[type="submit"],
      .gform_wrapper .gform_footer button {
        align-self: center; } }
  .gform_wrapper .gform_footer .icon-arrow {
    stroke: #fff; }

.gform_wrapper .gform_validation_errors {
  background-color: rgba(255, 223, 224, 0.25);
  margin-bottom: 6px !important;
  border-top: 1px solid #c89797;
  border-bottom: 1px solid #c89797;
  border-left: none;
  border-right: none;
  border-radius: 0; }

.gform_wrapper textarea.large {
  height: 12rem; }

.gfield_radio {
  display: flex;
  justify-content: center; }
  .gfield_radio li:first-child {
    margin-right: 2rem !important; }
  .gfield_radio li label {
    font-size: 22px !important; }

.acf-form .gform_wrapper ul.gform_fields li div.ginput_container_radio ul {
  display: flex;
  flex-direction: column; }

.acf-form .gform_wrapper ul.gform_fields li h2 {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .acf-form .gform_wrapper ul.gform_fields li h2 {
      font-size: 4.6rem; } }

.acf-form .gform_wrapper ul.gform_fields li center {
  padding: 9rem 0 0; }

@media (min-width: 900px) {
  .acf-form .gform_wrapper ul.gform_fields {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr; }
    .acf-form .gform_wrapper ul.gform_fields li input[type="text"],
    .acf-form .gform_wrapper ul.gform_fields li select {
      width: 100%; }
    .acf-form .gform_wrapper ul.gform_fields li:nth-last-child(2) {
      grid-column: 1 / span 2; }
    .acf-form .gform_wrapper ul.gform_fields li.gfield_html {
      grid-column: 1 / span 2; }
      .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li {
        grid-column: 1 / span 2;
        display: flex;
        align-items: center; }
        .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li label.gfield_label {
          margin-right: 4rem; }
        .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li div.ginput_container_radio {
          margin-top: 0; }
          .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li div.ginput_container_radio ul {
            flex-direction: row; }
            .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li div.ginput_container_radio ul li {
              margin-right: 4rem !important;
              display: flex;
              align-items: center; }
              .acf-form .gform_wrapper ul.gform_fields li.gfield_html + li div.ginput_container_radio ul li input[type="text"] {
                min-width: 33rem; } }

.gform_footer {
  display: flex;
  justify-content: center; }
  .gform_footer button.gform_button {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .gform_footer button.gform_button {
        padding: 1rem 4.5rem;
        width: auto; } }
    @media (min-width: 600px) {
      .gform_footer button.gform_button {
        align-self: center; } }

.post-password-form {
  padding: 10rem 0 8rem; }
  .post-password-form input[type="password"] {
    background-color: #f7f7f7;
    font-family: "Lato";
    font-size: 16px;
    color: #949494;
    border-radius: 0.8rem;
    border-color: #f7f7f7;
    border-width: 1px;
    border-style: solid;
    padding: 1rem;
    display: block;
    min-width: 25.5rem;
    margin: 2rem 0; }
  .post-password-form input[type="submit"] {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .post-password-form input[type="submit"] {
        padding: 1rem 4.5rem;
        width: auto; } }
    @media (min-width: 600px) {
      .post-password-form input[type="submit"] {
        align-self: center; } }

.gform_confirmation_wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100;
  padding-top: 8rem;
  padding-bottom: 10rem;
  position: relative; }
  @media (min-width: 1200px) {
    .gform_confirmation_wrapper {
      font-size: 4.6rem; } }

.search-results-page .hero-container {
  background-color: #001224; }

.search-results-page .hero-cta-header {
  width: 100%; }
  .search-results-page .hero-cta-header > div {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%;
    padding: 0;
    display: flex; }

.search-results-search {
  line-height: 1; }
  .search-results-search input[type="text"].search-form__input {
    margin-top: 0;
    margin-bottom: 4rem; }

.search-results-search-label {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #fff;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100;
  font-weight: 200;
  margin-bottom: 0;
  padding: 0; }
  @media (min-width: 1200px) {
    .search-results-search-label {
      font-size: 4.6rem; } }
  @media (min-width: 1200px) {
    .search-results-search-label {
      display: inherit;
      line-height: 0.75;
      font-size: 3.6rem;
      text-align: left; } }

.search-results-section {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  padding: 7rem 3% 9rem; }
  @media (min-width: 900px) {
    .search-results-section {
      grid-template-columns: minmax(auto, 222px) 1fr;
      column-gap: 3rem; } }

.search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
  flex-direction: column; }
  @media (min-width: 900px) {
    .search-results-header {
      flex-direction: row; }
      .search-results-header .search-results-sort-select {
        max-width: 22rem; } }
  .search-results-header .search-results-sort-select {
    -webkit-appearance: none;
    width: 100%; }
  .search-results-header .search-results-query {
    width: 100%; }
    .search-results-header .search-results-query + form {
      display: flex;
      justify-content: flex-end; }

.search-no-results-message {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%; }

.search-results-filters-container header {
  display: flex;
  justify-content: space-between;
  padding-bottom: 1rem;
  border-bottom: 1px solid #7d7d7d;
  margin-bottom: 2.4rem; }
  .search-results-filters-container header button {
    color: #333333;
    font-size: 1.6rem; }
    .search-results-filters-container header button.clear-filters-button {
      color: #51c200; }

.search-results-filters-container .filter-type {
  font-family: "Lato";
  color: #000;
  font-size: 1.6rem;
  margin-bottom: 2.4rem; }

.filters-inputs-container {
  display: flex;
  flex-direction: column;
  margin-bottom: 2rem; }
  .filters-inputs-container label {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    color: #333333; }
  .filters-inputs-container input {
    margin-right: 2rem; }

.search-results-grid {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fill, minmax(248px, 1fr));
  row-gap: 1rem;
  column-gap: 1rem;
  margin-bottom: 9rem; }

.search-results-grid-item {
  min-height: 32rem; }
  .search-results-grid-item.video, .search-results-grid-item.case_study {
    padding: 7%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-color: #0e2a62;
    display: flex;
    flex-direction: column;
    justify-content: flex-end; }
    .search-results-grid-item.video header, .search-results-grid-item.case_study header {
      font-family: "Museo", sans-serif;
      font-size: 2.1rem;
      color: #fff;
      margin-bottom: 2rem; }
  .search-results-grid-item .secondary-download-button,
  .search-results-grid-item .text-link-arrow {
    display: flex;
    justify-content: left;
    align-items: center;
    padding-left: 0; }
    .search-results-grid-item .secondary-download-button .icon-arrow,
    .search-results-grid-item .secondary-download-button .down-arrow,
    .search-results-grid-item .text-link-arrow .icon-arrow,
    .search-results-grid-item .text-link-arrow .down-arrow {
      stroke: #61be23; }

.search-results-figure {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  min-height: 32rem;
  height: 100%; }

figcaption {
  margin-bottom: 2rem;
  padding: 5%;
  max-width: 100%;
  word-break: break-word;
  width: 100%; }
  figcaption header {
    font-family: "Museo", sans-serif;
    font-size: 2.1rem;
    color: #000;
    margin-bottom: 2rem; }
  figcaption p {
    margin-bottom: 2rem; }
  figcaption .primary-link-button,
  figcaption .secondary-download-button {
    display: grid;
    grid-template-columns: max-content 2.5rem;
    max-width: 100%;
    min-width: auto;
    padding: 0;
    justify-content: center; }
    @media (min-width: 900px) {
      figcaption .primary-link-button,
      figcaption .secondary-download-button {
        justify-content: flex-start; } }

.search-results-grid-item.download figure {
  padding: 7%; }
  .search-results-grid-item.download figure .search-results-image-container {
    display: flex;
    justify-content: center; }

.search-results-grid-item.post .search-results-image-container img {
  width: 100%; }

.acf-social {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding: 2rem 15% 6rem;
  color: #00abfa;
  font-family: "Lato";
  font-weight: 600;
  font-size: 1.5rem;
  display: flex;
  align-items: center; }
  .acf-social .ss-icons {
    width: 3rem;
    height: 3rem;
    margin: 0 1rem; }

.acf-one-third .icon-arrow {
  stroke: #fff; }

.acf-one-third .down-arrow {
  stroke: #fff; }

.acf-one-third .primary-link-button .icon-arrow {
  stroke: #61be23; }

.acf-one-third .primary-link-button .down-arrow {
  stroke: #61be23; }

.one-third-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }
  .one-third-container .button,
  .one-third-container .button-download {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: #61be23;
    color: white;
    border-color: #61be23;
    align-self: center; }
    @media (min-width: 600px) {
      .one-third-container .button,
      .one-third-container .button-download {
        padding: 1rem 4.5rem;
        width: auto; } }
    @media (min-width: 600px) {
      .one-third-container .button,
      .one-third-container .button-download {
        align-self: center; } }

.one-third-header {
  margin-bottom: 4rem;
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .one-third-header {
      font-size: 4.6rem; } }
  .one-third-header .one-third-header-description {
    color: #333333;
    font-family: "Lato";
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: left; }

.one-third-grid-container {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  row-gap: 2rem; }
  @media (min-width: 900px) {
    .one-third-grid-container {
      grid-template-columns: minmax(auto, 436px) 1fr; } }

.one-third-grid-item-details {
  background-color: #fff;
  padding: 4rem 6%;
  display: flex;
  flex-direction: column;
  justify-content: center; }
  @media (min-width: 900px) {
    .one-third-grid-item-details {
      padding: 0 6%; } }
  .one-third-grid-item-details p:last-of-type {
    margin-bottom: 2rem; }

.acf-one-third .one-third-grid-item-details-header {
  color: #1d428b;
  font-family: "Lato";
  font-size: 2.6rem;
  margin-bottom: 2rem;
  color: #1d428b; }

.acf-one-third .one-third-content.wiz-container h1,
.acf-one-third .one-third-content.wiz-container h2,
.acf-one-third .one-third-content.wiz-container h4,
.acf-one-third .one-third-content.wiz-container h5,
.acf-one-third .one-third-content.wiz-container h6,
.acf-one-third .one-third-content.wiz-container p,
.acf-one-third .one-third-content.wiz-container li,
.acf-one-third .one-third-content.wiz-container blockquote {
  color: #001224; }

.product-details-page-section {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding: 6.93%;
  padding-top: 8rem;
  padding-bottom: 10rem; }

.product-details-page-header {
  color: #000;
  font-size: 2.8rem;
  margin-bottom: 4rem; }
  .product-details-page-header p {
    color: #000; }

.product-details-tables-grid {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  max-width: 100vw;
  overflow-x: hidden; }
  @media (min-width: 900px) {
    .product-details-tables-grid {
      grid-template-columns: repeat(2, 1fr);
      column-gap: 3%; } }

.product-details-properties-header {
  background-color: #b3d237;
  font-family: "Museo", sans-serif;
  font-size: 1.8rem;
  color: #fff;
  padding: 0.5rem 2rem;
  margin-bottom: 2rem; }
  .product-details-properties-header.physical {
    margin-bottom: 0; }

.product-details-properties-description {
  color: #000;
  font-family: "Museo", sans-serif;
  font-size: 1.6rem;
  margin-bottom: 2rem; }

.product-details-page-section table {
  margin-bottom: 2rem;
  width: 100%;
  color: #000; }
  .product-details-page-section table tr {
    border-bottom: 1px solid #a1db00; }
    .product-details-page-section table tr:first-child {
      border-bottom: 0 none; }
    .product-details-page-section table tr:last-child {
      border-bottom: 0 none; }
    .product-details-page-section table tr th,
    .product-details-page-section table tr td {
      padding: 0.6rem; }
    .product-details-page-section table tr th {
      background-color: #017dc5;
      color: #fff;
      font-family: "Lato";
      font-size: 1.4rem; }
    .product-details-page-section table tr td {
      text-align: center; }

.product-details-page-section .side-header-table tr:first-child {
  border-bottom: 1px solid #a1db00; }

.product-details-page-section .side-header-table th {
  text-align: left;
  padding-left: 2rem; }

.product-details-page-section .product-details-available-options-table tr td {
  border-right: 1px solid #00abfa; }
  .product-details-page-section .product-details-available-options-table tr td:last-child {
    border-right: 0 none; }

.product-details-available-options-header {
  background-color: #017dc5;
  color: #fff;
  font-family: "Lato";
  font-size: 1.4rem;
  padding: 0.6rem;
  margin-bottom: 3rem; }

p.details-disclaimer {
  margin-bottom: 3rem;
  color: #000; }

.download-button-container {
  display: flex;
  justify-content: center;
  margin-top: 8rem; }
  .download-button-container a {
    font-family: "Lato";
    font-size: 1.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    min-width: 25.5rem;
    width: 80vw;
    border-radius: 9rem;
    border-style: solid;
    border-width: 2px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 800;
    background-color: white;
    color: #61be23;
    border-color: #61be23;
    align-self: flex-start; }
    @media (min-width: 600px) {
      .download-button-container a {
        padding: 1rem 4.5rem;
        width: auto; } }

.acf-resources .icon-arrow, .acf-resources .down-arrow {
  stroke: #61be23; }

.acf-resources .component-cta-container .icon-arrow, .acf-resources .component-cta-container .down-arrow {
  stroke: #fff; }

.acf-resources .module-card-item {
  position: relative; }
  .acf-resources .module-card-item.download-file {
    background-size: initial;
    background-position: center 20%; }
  .acf-resources .module-card-item.download {
    padding: 82% 8% 8% 8%; }
    .acf-resources .module-card-item.download:after {
      background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0) 100%); }

.resources-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }

.resources-header {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #001224;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .resources-header {
      font-size: 4.6rem; } }
  .resources-header .resources-header-description {
    color: #333333;
    font-family: "Lato";
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: left; }

.resources-grid-container {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr; }
  @media (min-width: 900px) {
    .resources-grid-container {
      grid-template-columns: repeat(3, 1fr); } }

.acf-video {
  margin-bottom: 0; }
  @media (min-width: 600px) {
    .acf-video {
      margin-bottom: 60px; } }
  .acf-video .video-component-container {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%;
    padding-top: 8rem;
    padding-bottom: 10rem; }
  .acf-video .video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0; }
    .acf-video .video-container svg {
      position: absolute;
      left: 10px;
      bottom: 0;
      width: 18%;
      max-width: 300px;
      z-index: 1;
      display: none; }
      @media (min-width: 600px) {
        .acf-video .video-container svg {
          display: block; } }
  .acf-video iframe, .acf-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    z-index: 2; }
    @media (min-width: 600px) {
      .acf-video iframe, .acf-video video {
        padding: 5% 8% 7%; } }
  .acf-video .poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    z-index: 3; }
    @media (min-width: 600px) {
      .acf-video .poster {
        padding: 5% 8% 7%; } }
  .acf-video .icon-video {
    width: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 4; }

.table-section {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }

.tables-grid-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(40rem, 1fr));
  column-gap: 2rem; }

.table-title-blue {
  background-color: #b3d237;
  font-family: "Museo", sans-serif;
  font-size: 1.8rem;
  color: #fff;
  padding: 0.5rem 2rem;
  margin-bottom: 2rem; }

.table-title-green {
  background-color: #b3d237;
  font-family: "Museo", sans-serif;
  font-size: 1.8rem;
  color: #fff;
  padding: 0.5rem 2rem;
  margin-bottom: 2rem;
  background-color: #017dc5; }

.table-title-blue,
.table-title-green {
  border-bottom: 2px solid #b3d237;
  margin-bottom: 0; }

.table-header-blue,
.table-header-green {
  max-width: calc(100vw - 6%);
  margin-bottom: 1rem;
  width: 100%; }
  .table-header-blue tr,
  .table-header-green tr {
    border-bottom: 2px solid #b3d237; }
    .table-header-blue tr:last-child,
    .table-header-green tr:last-child {
      border-bottom: 0 none; }
    .table-header-blue tr td,
    .table-header-green tr td {
      text-align: center; }
  .table-header-blue tr:first-child,
  .table-header-green tr:first-child {
    border-bottom: 0 none; }

.table-header-blue th {
  background-color: #017dc5;
  color: #fff;
  font-family: "Lato";
  font-size: 1.4rem;
  background-color: #b3d237; }

.table-header-blue tr {
  border-bottom: 2px solid #017dc5; }

.table-header-green th {
  background-color: #017dc5;
  color: #fff;
  font-family: "Lato";
  font-size: 1.4rem; }

.label_col {
  text-align: left;
  padding-left: 2rem; }

.table-description {
  color: #000;
  font-family: "Museo", sans-serif;
  font-size: 1.6rem;
  margin-bottom: 2rem;
  margin-top: 2rem; }

.maps-container .tab-content {
  background: transparent linear-gradient(180deg, #002a61 0%, #001224 100%) 0% 0% no-repeat padding-box; }

.maps-component-header {
  font-family: "Museo", sans-serif;
  font-size: 3.5rem;
  color: #fff;
  margin-bottom: 2rem;
  text-align: center;
  padding: 0 3% 4rem;
  font-weight: 100; }
  @media (min-width: 1200px) {
    .maps-component-header {
      font-size: 4.6rem; } }

.maps-row {
  display: grid;
  grid-template-rows: 50rem auto;
  grid-template-columns: 1fr; }
  @media (min-width: 900px) {
    .maps-row {
      grid-template-columns: 75% 25%;
      grid-template-rows: minmax(auto, 54.7rem);
      column-gap: 4%; } }

.maps-tab-content {
  padding: 5rem 4%; }
  .maps-tab-content .tab-pane {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 3%; }

.locations-list-container {
  padding: 7%; }

.locations-list {
  height: 100%;
  max-height: 100%;
  overflow-y: auto;
  padding-right: 2rem; }

.locations-list::-webkit-scrollbar {
  width: 1rem; }

.locations-list::-webkit-scrollbar-track {
  border-radius: 0;
  background-color: #001224; }

.locations-list::-webkit-scrollbar-thumb {
  background-color: #00abfa; }

.locations-list-item {
  color: #fff;
  font-size: 1.6rem;
  margin-bottom: 2rem; }
  .locations-list-item p {
    margin-bottom: 0; }
  .locations-list-item .marker-phone {
    color: #949494;
    text-decoration: none; }
    .locations-list-item .marker-phone:hover, .locations-list-item .marker-phone:focus {
      text-decoration: underline; }

.locations-list-item-title {
  text-transform: uppercase;
  color: #00abfa;
  font-size: 1.6rem; }

.locations-list-item-address {
  color: #949494; }

.view-location-link {
  color: #61be23;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Lato";
  font-size: 1.4rem;
  font-weight: 800;
  text-transform: none;
  cursor: pointer;
  margin-top: 0.5rem;
  color: #949494; }
  .view-location-link img {
    width: 30px;
    padding: 0 0.5rem; }
  .view-location-link span {
    color: #61be23;
    text-decoration: none; }
    .view-location-link span:hover, .view-location-link span:focus {
      text-decoration: underline; }

.gm-style-iw-d {
  font-family: "Lato";
  color: #333333;
  font-size: 1.5rem;
  font-weight: 400; }
  .gm-style-iw-d h3 {
    color: #57bf0d;
    font-weight: bold;
    font-size: 2rem;
    margin-bottom: 2rem; }
  .gm-style-iw-d p {
    margin-bottom: 1rem; }
  .gm-style-iw-d .marker-phone {
    color: #333333;
    text-decoration: none; }
    .gm-style-iw-d .marker-phone:hover, .gm-style-iw-d .marker-phone:focus {
      color: #61be23; }
  .gm-style-iw-d .marker-directions {
    color: #57bf0d;
    font-weight: bold;
    text-decoration: none; }
    .gm-style-iw-d .marker-directions img {
      width: 30px;
      padding: 0 0.5rem; }
    .gm-style-iw-d .marker-directions:hover, .gm-style-iw-d .marker-directions:focus {
      text-decoration: underline; }

.query-results-page-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }
  .query-results-page-container .component-header {
    text-align: center; }
    .query-results-page-container .component-header .intro-subtitle {
      font-family: "Lato";
      font-size: 2.2rem;
      color: #949494;
      text-align: center; }
  .query-results-page-container .primary-cta-button .icon-arrow {
    stroke: #fff; }
  .query-results-page-container .primary-cta-button .down-arrow {
    stroke: #fff; }
  .query-results-page-container .secondary-cta-button .icon-arrow,
  .query-results-page-container .primary-link-button .icon-arrow {
    stroke: #61be23; }
  .query-results-page-container .secondary-cta-button .down-arrow,
  .query-results-page-container .primary-link-button .down-arrow {
    stroke: #61be23; }

.bg--white-smoke .search-results-grid-item.post {
  background-color: #fff; }

.query-results-grid-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fill, minmax(40rem, 1fr));
  justify-content: center;
  padding-top: 5rem;
  padding-bottom: 5rem; }
  .query-results-grid-container.grid-download {
    grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr)); }
  .query-results-grid-container.grid-post {
    grid-template-columns: repeat(auto-fill, minmax(30rem, 1fr)); }
  @media (min-width: 600px) {
    .query-results-grid-container {
      padding-bottom: 9rem; }
      .query-results-grid-container.grid-download .down-arrow {
        align-self: flex-end; }
      .query-results-grid-container.grid-post {
        gap: 2rem 1rem; }
      .query-results-grid-container .pagination,
      .query-results-grid-container .component-cta-container {
        grid-column: 1 / -1;
        padding-top: 9rem; } }
  .query-results-grid-container .module-card-item-link .icon-arrow {
    stroke: #61be23;
    vertical-align: bottom; }
  .query-results-grid-container .module-card-item,
  .query-results-grid-container .search-results-grid-item {
    position: relative;
    cursor: pointer; }
    .query-results-grid-container .module-card-item:hover svg.icon-arrow, .query-results-grid-container .module-card-item:focus svg.icon-arrow,
    .query-results-grid-container .search-results-grid-item:hover svg.icon-arrow,
    .query-results-grid-container .search-results-grid-item:focus svg.icon-arrow {
      animation: right-arrow 0.5s ease forwards; }

.query-results-grid-container .download figcaption header {
  font-size: 1.8rem; }

.query-results-bg-container.bg--sapphire {
  background: transparent linear-gradient(180deg, #0e2a62 0%, #001224 100%) 0% 0% no-repeat padding-box; }

.acf-featured-news .component-container {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  max-width: none; }
  .acf-featured-news .component-container .component-header {
    padding-bottom: 0; }
  .acf-featured-news .component-container .query-results-grid-container {
    padding-top: 0; }
    .acf-featured-news .component-container .query-results-grid-container.grid-4 {
      grid-template-columns: repeat(auto-fill, minmax(30rem, 1fr)); }
    @media (min-width: 820px) {
      .acf-featured-news .component-container .query-results-grid-container.grid-3 {
        grid-template-columns: auto auto auto; } }
    .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item {
      margin: 5%; }
      .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item .search-results-figure {
        background-color: #fff; }
        .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item .search-results-figure figcaption header {
          color: #0e2a62; }
        .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item .search-results-figure .search-results-image-container {
          width: 100%; }
          .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item .search-results-figure .search-results-image-container img {
            max-width: unset;
            width: 100%; }
      .acf-featured-news .component-container .query-results-grid-container .search-results-grid-item .text-link-arrow {
        color: #001b3d; }
  .acf-featured-news .component-container .component-cta-container .icon-arrow {
    stroke: #fff; }

body .leaflet-pane.leaflet-tooltip-pane {
  display: none; }

body .hotspot-info .hotspot-title,
body .hotspot-initial .hotspot-title {
  font-family: "Museo", sans-serif;
  font-size: 25px;
  line-height: 28px;
  font-weight: normal;
  text-align: left; }

body .featherlight .featherlight-content {
  max-width: 90%; }

@media screen and (min-width: 600px) {
  body .featherlight .featherlight-content {
    max-width: 75%; } }

@media screen and (min-width: 980px) {
  body .featherlight .featherlight-content {
    max-width: 50%; } }

.news-filters-wrapper:after {
  content: "";
  clear: both;
  display: table; }

.news-filters-wrapper .search-results-grid-item > a.search-results-grid-item-anchor {
  text-decoration: none !important; }

.news-filters-wrapper .search-results-figure {
  justify-content: flex-start !important; }

.news-filters-wrapper .search-results-image-container {
  width: 100%;
  height: 168px !important;
  overflow: hidden; }
  @media screen and (min-width: 2200px) {
    .news-filters-wrapper .search-results-image-container {
      width: 100%;
      height: 225px !important;
      overflow: hidden; } }

.news-filters-wrapper .search-results-figure {
  max-width: 350px;
  margin: 0 auto; }

.news-filters-wrapper .news-filters-widget {
  background-color: #f7f7f7;
  margin-bottom: 40px; }
  .news-filters-wrapper .news-filters-widget h3 {
    padding: 12px 15px;
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 10px;
    font-size: 1.1em;
    color: #0e2a62;
    font-family: "Museo", sans-serif;
    text-transform: capitalize; }
  .news-filters-wrapper .news-filters-widget .news-filters-widget-inner {
    padding: 12px 15px 24px 25px; }
  .news-filters-wrapper .news-filters-widget .facetwp-facet {
    margin-bottom: 0; }

.news-filters-wrapper a.facetwp-page {
  color: #000;
  font-size: 1.6rem;
  font-family: "Lato";
  text-decoration: none;
  margin: 0 0.5rem;
  width: 3.5rem;
  height: 3.5rem;
  line-height: 3.5rem; }
  .news-filters-wrapper a.facetwp-page.active {
    border-radius: 50%;
    background-color: #61be23;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center; }

@media (min-width: 900px) {
  .news-filters-wrapper .news-filters {
    width: 25%;
    float: left; }
  .news-filters-wrapper .query-results-grid-container.grid-post {
    padding: 0 0 0 25px;
    float: left;
    width: 75%; } }

@media (min-width: 900px) {
  .hero-container.shortened {
    height: 28vh; } }

.sbs-animated--cols {
  display: flex;
  flex-wrap: wrap;
  opacity: 0; }
  .sbs-animated--cols-ready {
    opacity: 1; }
  .sbs-animated--cols-texthidden .sbs-animated--img {
    width: 100%; }
  .sbs-animated--cols-texthidden .sbs-animated--text {
    overflow: hidden; }
    @media (min-width: 1024px) {
      .sbs-animated--cols-texthidden .sbs-animated--text {
        width: 0%; } }

.sbs-animated--img {
  width: 100%;
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-repeat: no-repeat; }
  @media (max-width: 1023px) {
    .sbs-animated--img {
      background-image: none !important;
      height: auto !important; } }
  @media (min-width: 1024px) {
    .sbs-animated--img {
      width: 45%;
      transition: width 0.5s linear; } }
  .sbs-animated--img > img {
    display: block;
    width: 100%;
    height: auto; }
    @media (min-width: 1024px) {
      .sbs-animated--img > img {
        display: none; } }

.sbs-animated--text {
  width: 100%;
  overflow: hidden; }
  @media (min-width: 1024px) {
    .sbs-animated--text {
      width: 55%;
      transition: width 0.5s linear; } }
  .sbs-animated--text-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    transition: width 0.5s linear;
    padding: 40px 40px; }
    @media (min-width: 1024px) {
      .sbs-animated--text-inner {
        padding: 80px 40px; } }
  .sbs-animated--text h2 {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: left;
    padding: 0 3% 4rem;
    font-weight: 100;
    padding: 0; }
    @media (min-width: 1200px) {
      .sbs-animated--text h2 {
        font-size: 4.6rem; } }
  .sbs-animated--text-content {
    margin-bottom: 35px; }
    .sbs-animated--text-content p:last-child, .sbs-animated--text-content ul:last-child, .sbs-animated--text-content ol:last-child {
      margin-bottom: 0; }

.sbs-animated--cta a {
  text-align: center; }

.sbs-animated .bg--sapphire .sbs-animated--text h2,
.sbs-animated .bg--prussian-blue .sbs-animated--text h2,
.sbs-animated .bg--dark-green .sbs-animated--text h2 {
  color: #fff; }

@media (min-width: 1024px) {
  .sbs-animated--cols-reversed {
    flex-wrap: nowrap; } }

@media (min-width: 1024px) {
  .sbs-animated--cols-reversed .sbs-animated--img {
    order: 2; } }

@media (min-width: 1024px) {
  .sbs-animated--cols-reversed .sbs-animated--text {
    order: 1; } }

.sbs-animated--cols-reversed.sbs-animated--cols-ready {
  position: relative; }
  .sbs-animated--cols-reversed.sbs-animated--cols-ready .sbs-animated--text {
    position: relative; }
  .sbs-animated--cols-reversed.sbs-animated--cols-ready .sbs-animated--text-inner {
    top: 0;
    right: 0;
    transition: right 0.5s linear; }
    @media (min-width: 1024px) {
      .sbs-animated--cols-reversed.sbs-animated--cols-ready .sbs-animated--text-inner {
        position: absolute; } }
  .sbs-animated--cols-reversed.sbs-animated--cols-ready.sbs-animated--cols-texthidden .sbs-animated--text-inner {
    right: -100%; }

.videomodal--outer {
  position: relative;
  overflow: hidden; }

.videomodal--wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 3%;
  padding-top: 8rem;
  padding-bottom: 10rem; }

.videomodal--bgvideo {
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 100%; }
  .videomodal--bgvideo-inner {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    @media (min-width: 600px) {
      .videomodal--bgvideo-inner {
        height: 0;
        padding-top: 56.5%; } }
  .videomodal--bgvideo video,
  .videomodal--bgvideo iframe {
    width: 100vw;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0; }
  .videomodal--bgvideo::after {
    content: "";
    background-color: rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }

.videomodal--inner {
  position: relative;
  z-index: 1; }
  @media (min-width: 600px) {
    .videomodal--inner {
      max-width: 75%;
      margin-left: 0; } }
  .videomodal--inner.videomodal--inner-leftalign {
    margin-left: 0;
    margin-right: auto;
    text-align: left; }
  .videomodal--inner.videomodal--inner-centeralign {
    margin-left: auto;
    margin-right: auto;
    text-align: center; }
    .videomodal--inner.videomodal--inner-centeralign h2 {
      text-align: center; }
  .videomodal--inner.videomodal--inner-rightalign {
    margin-left: auto;
    margin-right: 0;
    text-align: right; }
    .videomodal--inner.videomodal--inner-rightalign h2,
    .videomodal--inner.videomodal--inner-rightalign .videomodal--inner-cta {
      display: block;
      text-align: right; }
  .videomodal--inner h2 {
    font-family: "Museo", sans-serif;
    font-size: 3.5rem;
    color: #001224;
    margin-bottom: 2rem;
    text-align: left;
    padding: 0 3% 4rem;
    font-weight: 100;
    padding: 0;
    color: #fff; }
    @media (min-width: 1200px) {
      .videomodal--inner h2 {
        font-size: 4.6rem; } }
  .videomodal--inner-content p, .videomodal--inner-content ul, .videomodal--inner-content ol {
    color: #fff; }
  .videomodal--inner-cta a {
    display: inline-block;
    text-align: center; }

.videomodal--vimeo {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.5%;
  overflow: hidden; }
  .videomodal--vimeo iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0; }

.videomodal-modalwrrapper .close {
  position: absolute;
  top: -25px;
  right: -25px;
  font-size: 3rem;
  font-weight: 300;
  line-height: 1;
  color: #fff;
  opacity: 1;
  cursor: pointer; }
  @media (max-width: 767px) {
    .videomodal-modalwrrapper .close {
      top: -30px;
      right: 0; } }

.videomodal-modalwrrapper .close:hover {
  text-decoration: none;
  opacity: 0.8; }

.videomodal-modalwrrapper .close:not(:disabled):not(.disabled):hover,
.videomodal-modalwrrapper .close:not(:disabled):not(.disabled):focus {
  opacity: .75; }

.videomodal-modalwrrapper button.close {
  padding: 0;
  background-color: transparent;
  border: 0; }

.videomodal-modalwrrapper a.close.disabled {
  pointer-events: none; }

.videomodal-modalwrrapper .modal-open {
  overflow: hidden; }

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

.videomodal-modalwrrapper .modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0; }

.videomodal-modalwrrapper .modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none; }

.videomodal-modalwrrapper .modal.fade .modal-dialog {
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -webkit-transform: translate(0, -50px);
  transform: translate(0, -50px); }

@media (prefers-reduced-motion: reduce) {
  .videomodal-modalwrrapper .modal.fade .modal-dialog {
    transition: none; } }

.videomodal-modalwrrapper .modal.show .modal-dialog {
  -webkit-transform: none;
  transform: none; }

.videomodal-modalwrrapper .modal.modal-static .modal-dialog {
  -webkit-transform: scale(1.02);
  transform: scale(1.02); }

.videomodal-modalwrrapper .modal-dialog-scrollable {
  display: -ms-flexbox;
  display: flex;
  max-height: calc(100% - 1rem); }

.videomodal-modalwrrapper .modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden; }

.videomodal-modalwrrapper .modal-dialog-scrollable .modal-header,
.videomodal-modalwrrapper .modal-dialog-scrollable .modal-footer {
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.videomodal-modalwrrapper .modal-dialog-scrollable .modal-body {
  overflow-y: auto; }

.videomodal-modalwrrapper .modal-dialog-centered {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  min-height: calc(100% - 1rem); }

.videomodal-modalwrrapper .modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: ""; }

.videomodal-modalwrrapper .modal-dialog-centered.modal-dialog-scrollable {
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%; }

.videomodal-modalwrrapper .modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none; }

.videomodal-modalwrrapper .modal-dialog-centered.modal-dialog-scrollable::before {
  content: none; }

.videomodal-modalwrrapper .modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 75%;
  max-width: 1920px;
  pointer-events: auto;
  background-color: transparent;
  background-clip: padding-box;
  border: none;
  border-radius: 0;
  outline: 0; }

.videomodal-modalwrrapper .modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 0; }

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

.videomodal-modalwrrapper .modal-dialog {
  margin: auto;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center; }

@media (min-width: 576px) {
  .videomodal-modalwrrapper .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem); }
  .videomodal-modalwrrapper .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem); }
  .videomodal-modalwrrapper .modal-dialog-centered {
    min-height: calc(100% - 3.5rem); }
  .videomodal-modalwrrapper .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content; }
  .videomodal-modalwrrapper .modal-sm {
    max-width: 300px; } }

@media (min-width: 992px) {
  .videomodal-modalwrrapper .modal-lg,
  .videomodal-modalwrrapper .modal-xl {
    max-width: 800px; } }

@media (min-width: 1200px) {
  .videomodal-modalwrrapper .modal-xl {
    max-width: 1140px; } }

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000; }

.modal-backdrop.fade {
  opacity: 0; }

.modal-backdrop.show {
  opacity: 0.9; }

.wcs-class__date-time {
  display: none !important; }

.wcs-modal__action a {
  text-decoration: none !important; }

.core-paragraph {
  padding-left: 0px !important; }

.hero-container {
  max-height: 600px; }

.search-results-figure {
  justify-content: flex-start !important; }

.search-results-image-container {
  width: 100%;
  height: 215px !important;
  overflow: hidden; }

.component-cta-container {
  padding-top: 40px !important; }

@media (min-width: 1200px) {
  .hero-cta-header {
    font-size: 5rem !important; } }

.novelis--constrained-form .gfield_radio {
  display: block; }

.novelis--constrained-form .gform_heading,
.novelis--constrained-form .gform_footer {
  max-width: 800px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important; }

.novelis--constrained-form .gform-body {
  max-width: 800px;
  margin: 0 auto 50px auto; }

.novelis--constrained-form .gform_wrapper.gravity-theme .gfield {
  margin-bottom: 20px; }
  .novelis--constrained-form .gform_wrapper.gravity-theme .gfield input[type=text].medium {
    width: 100%; }
  .novelis--constrained-form .gform_wrapper.gravity-theme .gfield select.medium, .novelis--constrained-form .gform_wrapper.gravity-theme .gfield select.large {
    width: auto;
    min-width: 200px;
    color: #333333; }

@media (min-width: 1024px) {
  .novelis--constrained-form.novelis--constrained-form--hr-radios .gfield:not(.novelis--block-radio) .gfield_radio {
    display: flex;
    white-space: nowrap;
    justify-content: left;
    flex-wrap: wrap; }
    .novelis--constrained-form.novelis--constrained-form--hr-radios .gfield:not(.novelis--block-radio) .gfield_radio .gchoice {
      margin-right: 25px;
      margin-bottom: 25px; } }

.bg--white-smoke .novelis--constrained-form input[type=text], .bg--white-smoke .novelis--constrained-form select, .bg--white-smoke .novelis--constrained-form textarea {
  border-color: #ccc; }

.bg--white-smoke .novelis--constrained-form select {
  background-color: #fff; }

.bg--sapphire .novelis--constrained-form,
.bg--prussian-blue .novelis--constrained-form,
.bg--dark-green .novelis--constrained-form {
  color: #fff; }
  .bg--sapphire .novelis--constrained-form .gform_wrapper.gravity-theme .gfield_label,
  .bg--prussian-blue .novelis--constrained-form .gform_wrapper.gravity-theme .gfield_label,
  .bg--dark-green .novelis--constrained-form .gform_wrapper.gravity-theme .gfield_label {
    color: #fff; }

@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1) !important;
    top: 0; }
  a,
  a:visited {
    color: #000 !important;
    text-decoration: underline; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  a[href*='//']:after {
    content: " (" attr(href) ") ";
    word-wrap: break-word;
    word-break: break-all;
    display: block; }
  .text_title a:after {
    display: none; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    color: #000 !important;
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    color: #000 !important;
    page-break-after: avoid; }
  header, footer, #breadcrumbs, #breadcrumbs-placeholder {
    display: none; }
  .hero {
    padding: 0;
    margin: 30px auto; }
    .hero * {
      position: relative !important;
      top: 0 !important;
      left: 0 !important;
      padding: 0 !important;
      margin: 0 !important;
      height: auto  !important;
      max-width: 100%; }
    .hero .product_hero .grid__item {
      width: 100% !important; }
    .hero .product_hero .slick-dots {
      display: none !important; }
    .hero .product_hero .slider--slide {
      width: 25% !important;
      display: inline-block !important; }
    .hero .product_hero .hero_content img {
      background: #000 !important; }
  section {
    margin: 0;
    padding-top: 0; }
  .logged-in-nav {
    display: none; }
  .benefits .grid__item {
    width: 25% !important; }
  .masonry-grid {
    display: block !important; }
  .masonry-grid__item {
    width: 100% !important;
    min-height: auto !important;
    float: left !important;
    text-align: left !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    display: block !important; }
    .masonry-grid__item .masonry--block-title {
      display: block !important;
      margin: 0 !important;
      color: #000 !important;
      opacity: 1 !important;
      width: 100% !important;
      text-align: left !important; }
    .masonry-grid__item .masonry--block-content {
      display: block !important;
      margin: 0 !important;
      width: 100% !important; }
  .resource .grid__item, .product .grid__item {
    width: 33% !important; }
  .featured_resources .grid__item {
    width: 25% !important; }
  .grid_content .tab-header:after {
    transform: rotateX(-180deg);
    color: #FFDA27; }
  .grid_content .tab-content {
    display: block !important; }
    .grid_content .tab-content .grid .grid__item {
      width: 25% !important; }
  .trigger-wtb {
    display: none; } }

/* IE/EDGE rule sets go here */
_:-ms-lang(x).style-Landing .animated-text,
.hero.style-Landing .animated-text {
  overflow: hidden; }
  _:-ms-lang(x).style-Landing .animated-text:after,
  .hero.style-Landing .animated-text:after {
    display: none; }
  _:-ms-lang(x).style-Landing .animated-text .animated-text-second,
  .hero.style-Landing .animated-text .animated-text-second {
    position: relative;
    top: 0;
    transform: translateY(0); }
    _:-ms-lang(x).style-Landing .animated-text .animated-text-second:before,
    .hero.style-Landing .animated-text .animated-text-second:before {
      content: '';
      width: 3px;
      height: 180%;
      background: #fff;
      -webkit-transform: translateY(-50%) rotateZ(45deg);
      -moz-transform: translateY(-50%) rotateZ(45deg);
      -ms-transform: translateY(-50%) rotateZ(45deg);
      -o-transform: translateY(-50%) rotateZ(45deg);
      transform: translateY(-50%) rotateZ(45deg);
      position: absolute;
      top: 50%;
      left: 10%; }
    _:-ms-lang(x).style-Landing .animated-text .animated-text-second h2,
    .hero.style-Landing .animated-text .animated-text-second h2 {
      padding-top: 0; }

_:-ms-lang(x).style-Slider .hero_slider--wrap .hero_content h1,
.hero.style-Slider .hero_slider--wrap .hero_content h1 {
  height: 100%; }
  _:-ms-lang(x).style-Slider .hero_slider--wrap .hero_content h1:after,
  .hero.style-Slider .hero_slider--wrap .hero_content h1:after {
    content: '';
    width: 2px;
    left: 100%;
    -webkit-transform: rotateZ(10deg);
    -moz-transform: rotateZ(10deg);
    -ms-transform: rotateZ(10deg);
    -o-transform: rotateZ(10deg);
    transform: rotateZ(10deg); }

_:-ms-lang(x).style-Slider .hero_slider--wrap .hero_slider--slide .hero_content--wrap.animatingFadeOut,
.hero.style-Slider .hero_slider--wrap .hero_slider--slide .hero_content--wrap.animatingFadeOut {
  -webkit-animation-delay: 0s;
  -webkit-animation-duration: 100ms;
  -webkit-animation-name: ie-fadeout;
  -webkit-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -webkit-animation-timing-function: linear;
  -moz-animation-delay: 0s;
  -moz-animation-duration: 100ms;
  -moz-animation-name: ie-fadeout;
  -moz-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -moz-animation-timing-function: linear;
  -o-animation-delay: 0s;
  -o-animation-duration: 100ms;
  -o-animation-name: ie-fadeout;
  -o-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -o-animation-timing-function: linear;
  animation-delay: 0s;
  animation-duration: 100ms;
  animation-name: ie-fadeout;
  animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  animation-timing-function: linear; }

_:-ms-lang(x).style-Slider .hero_slider--wrap .hero_slider--slide .hero_content--wrap.animatingFadeIn,
.hero.style-Slider .hero_slider--wrap .hero_slider--slide .hero_content--wrap.animatingFadeIn {
  -webkit-animation-delay: 0s;
  -webkit-animation-duration: 100ms;
  -webkit-animation-name: ie-fadein;
  -webkit-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -webkit-animation-timing-function: linear;
  -moz-animation-delay: 0s;
  -moz-animation-duration: 100ms;
  -moz-animation-name: ie-fadein;
  -moz-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -moz-animation-timing-function: linear;
  -o-animation-delay: 0s;
  -o-animation-duration: 100ms;
  -o-animation-name: ie-fadein;
  -o-animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  -o-animation-timing-function: linear;
  animation-delay: 0s;
  animation-duration: 100ms;
  animation-name: ie-fadein;
  animation-fill-mode: forwards;
  /* this prevents the animation from restarting! */
  animation-timing-function: linear; }

_:-ms-lang(x) .home-1 .home-1-left:after,
#home-wrapper .home-1 .home-1-left:after {
  background: transparent; }

_:-ms-lang(x) .home-1 .home-1-left .content:after,
#home-wrapper .home-1 .home-1-left .content:after {
  content: '';
  width: 2px;
  height: 100%;
  background: white;
  display: block;
  position: absolute;
  top: 0%;
  right: -15px; }

_:-ms-lang(x) .grid__item--texture img,
.grid_content .grid__item--texture img {
  min-height: 1px; }

/***** Rules for Edge ONLY ***/
@supports (-ms-ime-align: auto) {
  #home-wrapper .home-1 .home-1-left .content:after {
    right: 0px; }
  .hero.style-Slider .hero_slider--wrap .hero_content h1:after {
    left: 32%; } }

@-webkit-keyframes ie-fadeout {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@-moz-keyframes ie-fadeout {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@-ms-keyframes ie-fadeout {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@keyframes ie-fadeout {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@-webkit-keyframes ie-fadein {
  0% {
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    opacity: 1; } }

@-moz-keyframes ie-fadein {
  0% {
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    opacity: 1; } }

@-ms-keyframes ie-fadein {
  0% {
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    opacity: 1; } }

@keyframes ie-fadein {
  0% {
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    opacity: 1; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  #ie-banner {
    display: none;
    background-color: #61be23;
    padding: 20px 80px;
    position: fixed;
    z-index: 9999;
    width: 100vw;
    height: 450px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 600px), (-ms-high-contrast: none) and (min-width: 600px) {
    #ie-banner {
      height: 360px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 830px), (-ms-high-contrast: none) and (min-width: 830px) {
    #ie-banner {
      height: 320px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 992px), (-ms-high-contrast: none) and (min-width: 992px) {
    #ie-banner {
      height: 260px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    #ie-banner .ie-content-container {
      display: block; } }
    @media screen and (-ms-high-contrast: active) and (min-width: 992px), (-ms-high-contrast: none) and (min-width: 992px) {
      #ie-banner .ie-content-container {
        display: inline-block; }
        #ie-banner .ie-content-container p {
          width: 79%;
          display: inline-block;
          padding-right: 15px; }
        #ie-banner .ie-content-container .ie-btn-container {
          width: 20%;
          display: inline-block;
          margin-bottom: 2rem;
          vertical-align: top; }
          #ie-banner .ie-content-container .ie-btn-container button {
            margin: 0 auto; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    #ie-banner h2 {
      font-size: 28px;
      font-weight: 600;
      margin-bottom: 10px; }
    #ie-banner p {
      font-size: 20px; }
    #ie-banner .ie-btn-container button {
      min-width: 251px;
      cursor: pointer;
      border-color: #fff; }
      #ie-banner .ie-btn-container button:hover {
        color: #fff;
        background-color: #61be23;
        border-color: #fff; }
  .ie-banner-margin-mobile {
    margin-top: 450px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 600px), (-ms-high-contrast: none) and (min-width: 600px) {
    .ie-banner-margin-mobile {
      margin-top: 360px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 830px), (-ms-high-contrast: none) and (min-width: 830px) {
    .ie-banner-margin-mobile {
      margin-top: 320px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 992px), (-ms-high-contrast: none) and (min-width: 992px) {
    .ie-banner-margin-mobile {
      margin-top: 260px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 1200px), (-ms-high-contrast: none) and (min-width: 1200px) {
    .ie-banner-margin-mobile {
      margin-top: 0px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ie-banner-margin-desktop {
    margin-top: 0px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 1200px), (-ms-high-contrast: none) and (min-width: 1200px) {
    .ie-banner-margin-desktop {
      margin-top: 260px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ie-browser-alt li {
    display: inline-block;
    width: 50px;
    margin-right: 15px;
    text-align: center;
    font-size: 16px;
    margin-top: 15px; } }
  @media screen and (-ms-high-contrast: active) and (min-width: 992px), (-ms-high-contrast: none) and (min-width: 992px) {
    .ie-browser-alt li {
      margin-top: 0px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .ie-browser-alt li a {
      text-decoration: none;
      color: #000000; }
      .ie-browser-alt li a .browser-title {
        font-size: 12px;
        line-height: 1; }
      .ie-browser-alt li a:hover {
        text-decoration: underline; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiYmFzZS9fZm9udHMuc2NzcyIsIl92YXJzLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJfcmVzZXQuc2NzcyIsIl9rZXlmcmFtZXMuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsImJhc2UvX2J1dHRvbnMuc2NzcyIsImJhc2UvX2dyaWQuc2NzcyIsImdsb2JhbHMvX2FsbC1nbG9iYWxzLnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtbGF5b3V0LnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtaGVhZGVyLnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtbWVnYS1tZW51LnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtc3VibmF2LnNjc3MiLCJnbG9iYWxzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycy5zY3NzIiwiZ2xvYmFscy9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCJnbG9iYWxzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsImdsb2JhbHMvX2dsb2JhbC1tZWdhLW1lbnUtZ3JpZC5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLW1lZ2EtbWVudS1jb250ZW50LnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtbWVnYS1tZW51LXByb2R1Y3RzLXN1Ym1lbnUuc2NzcyIsImdsb2JhbHMvX2dsb2JhbC1sYW5ndWFnZXMtbWVudS5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLWNvbnRlbnQuc2NzcyIsImdsb2JhbHMvX2dsb2JhbC1zaW5nbGUtcG9zdC5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLXNpbmdsZS1kb3dubG9hZC5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLWZvb3Rlci5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLXNlYXJjaGZvcm0uc2NzcyIsImdsb2JhbHMvX2dsb2JhbC1wYWdpbmF0aW9uLnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtZm9ybS1lbGVtZW50cy5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLXRoZW1lLWVsZW1lbnRzLnNjc3MiLCJnbG9iYWxzL19nbG9iYWwtdGhlbWUtY29sb3Iuc2NzcyIsImdsb2JhbHMvX2VsZW1lbnRvci5zY3NzIiwiZ2xvYmFscy9fZ2xvYmFsLXNwcml0ZXMuc2NzcyIsImJsb2Nrcy9hbHRlcm5hdGluZy5zY3NzIiwiYmxvY2tzL2hlcm9fc3BsaWRlLnNjc3MiLCJibG9ja3MvaGVyby5zY3NzIiwiYmxvY2tzL2hlcm9fc2hvcnRlbmVkLnNjc3MiLCJibG9ja3MvanVtcF9saW5rcy5zY3NzIiwiYmxvY2tzL2JyZWFkY3J1bWJzLnNjc3MiLCJibG9ja3MvbG9nb19zcGxpZGUuc2NzcyIsImJsb2Nrcy90YWJiZWQuc2NzcyIsImJsb2Nrcy90YWJiZWRfYmlvcy5zY3NzIiwiYmxvY2tzL3Nicy5zY3NzIiwiYmxvY2tzL2NvbHVtbl9jb250ZW50LnNjc3MiLCJibG9ja3MvY29sdW1uX3BhZ2Uuc2NzcyIsImJsb2Nrcy9iYW5uZXJfaW1hZ2Uuc2NzcyIsImJsb2Nrcy9jb250ZW50LnNjc3MiLCJibG9ja3MvaW5mb2dyYXBoaWMuc2NzcyIsImJsb2Nrcy9mb3JtLnNjc3MiLCJibG9ja3Mvc2VhcmNoX3Jlc3VsdHNfcGFnZS5zY3NzIiwiYmxvY2tzL3NlYXJjaF9yZXN1bHRzX2ZpbHRlcnMuc2NzcyIsImJsb2Nrcy9zZWFyY2hfcmVzdWx0c19ncmlkLnNjc3MiLCJibG9ja3Mvc29jaWFsLnNjc3MiLCJibG9ja3Mvb25lX3RoaXJkLnNjc3MiLCJibG9ja3MvcHJvZHVjdC5zY3NzIiwiYmxvY2tzL3Jlc291cmNlcy5zY3NzIiwiYmxvY2tzL3ZpZGVvLnNjc3MiLCJibG9ja3MvdGFibGVzLnNjc3MiLCJibG9ja3MvbWFwLnNjc3MiLCJibG9ja3MvcXVlcnlfcmVzdWx0cy5zY3NzIiwiYmxvY2tzL2ZlYXR1cmVkX25ld3Muc2NzcyIsImJsb2Nrcy9kcmF3LWF0dGVudGlvbi5zY3NzIiwiYmxvY2tzL2ZhY2V0X3F1ZXJ5LnNjc3MiLCJibG9ja3Mvc2JzLWFuaW1hdGVkLnNjc3MiLCJibG9ja3MvdmlkZW8tbW9kYWwuc2NzcyIsImJhc2UvX3ByaW50LnNjc3MiLCJfaWUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vIFNFVFRJTkdTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLy8gRm9udHNcbkBpbXBvcnQgXCJiYXNlL2ZvbnRzXCI7XG5cbi8vIFZhcmlibGVzXG5AaW1wb3J0IFwidmFyc1wiO1xuXG4vLyBNaXhpbnNcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLy8gUmVzZXRcbkBpbXBvcnQgXCJyZXNldFwiO1xuXG4vLyBBbmltYXRpb25zXG5AaW1wb3J0IFwia2V5ZnJhbWVzXCI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gVkVORE9SXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLy8gQGltcG9ydCAndmVuZG9yL3dvcmRwcmVzc19kZWZhdWx0cyc7XG4vLyBAaW1wb3J0ICd2ZW5kb3IvZ3Jhdml0eWZvcm1zJztcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4vLyBCQVNFXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImJhc2UvYmFzZVwiO1xuQGltcG9ydCBcImJhc2UvYnV0dG9uc1wiO1xuXG4vLyBncmlkXG5AaW1wb3J0IFwiYmFzZS9ncmlkXCI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gR0xPQkFMU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJnbG9iYWxzL2FsbC1nbG9iYWxzXCI7XG5cbi8vIGxheW91dFxuQGltcG9ydCBcImdsb2JhbHMvZ2xvYmFsLWxheW91dFwiO1xuXG4vLyBIZWFkZXJcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1oZWFkZXJcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1tZWdhLW1lbnVcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1zdWJuYXZcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycy5zY3NzXCI7XG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtbWVnYS1tZW51LWdyaWRcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1tZWdhLW1lbnUtY29udGVudFwiO1xuQGltcG9ydCBcImdsb2JhbHMvZ2xvYmFsLW1lZ2EtbWVudS1wcm9kdWN0cy1zdWJtZW51XCI7XG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtbGFuZ3VhZ2VzLW1lbnVcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1jb250ZW50XCI7XG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtc2luZ2xlLXBvc3RcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1zaW5nbGUtZG93bmxvYWRcIjtcblxuLy8gRm9vdGVyXG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtZm9vdGVyXCI7XG5cbi8vIHNlYXJjaGZvcm1cbkBpbXBvcnQgXCJnbG9iYWxzL2dsb2JhbC1zZWFyY2hmb3JtXCI7XG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtcGFnaW5hdGlvblwiO1xuXG4vLyBmb3JtIGVsZW1lbnRzXG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtZm9ybS1lbGVtZW50c1wiO1xuXG4vLyB0aGVtZSBlbGVtZW50c1xuQGltcG9ydCBcImdsb2JhbHMvZ2xvYmFsLXRoZW1lLWVsZW1lbnRzXCI7XG5AaW1wb3J0IFwiZ2xvYmFscy9nbG9iYWwtdGhlbWUtY29sb3JcIjtcbkBpbXBvcnQgXCJnbG9iYWxzL2VsZW1lbnRvclwiO1xuXG4vLyBpY29uc1xuQGltcG9ydCBcImdsb2JhbHMvZ2xvYmFsLXNwcml0ZXNcIjtcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4vLyBCTE9DS1Ncbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJibG9ja3MvYWx0ZXJuYXRpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9oZXJvX3NwbGlkZS5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2hlcm8uc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9oZXJvX3Nob3J0ZW5lZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2p1bXBfbGlua3Muc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9icmVhZGNydW1icy5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2xvZ29fc3BsaWRlLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvdGFiYmVkLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvdGFiYmVkX2Jpb3Muc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9zYnMuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9jb2x1bW5fY29udGVudC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2NvbHVtbl9wYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvYmFubmVyX2ltYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvY29udGVudC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2luZm9ncmFwaGljLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvZm9ybS5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3NlYXJjaF9yZXN1bHRzX3BhZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9zZWFyY2hfcmVzdWx0c19maWx0ZXJzLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3Mvc2VhcmNoX3Jlc3VsdHNfZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3NvY2lhbC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL29uZV90aGlyZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3Byb2R1Y3Quc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9yZXNvdXJjZXMuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy92aWRlby5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3RhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL21hcC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3F1ZXJ5X3Jlc3VsdHMuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9mZWF0dXJlZF9uZXdzLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvZHJhdy1hdHRlbnRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9mYWNldF9xdWVyeS5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3Nicy1hbmltYXRlZC5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL3ZpZGVvLW1vZGFsLnNjc3NcIjtcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vIENsaWVudCBwcm92aWRlZCBDU1Ncbi8vIGh0dHBzOi8vZDZkaWdpdGFsLmF0bGFzc2lhbi5uZXQvYnJvd3NlL05ELTc0NlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLndjcy1jbGFzc19fZGF0ZS10aW1lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4ud2NzLW1vZGFsX19hY3Rpb24gYSB7IFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuLmNvcmUtcGFyYWdyYXBoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xufVxuLmhlcm8tY29udGFpbmVyIHtcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbn1cbi5zZWFyY2gtcmVzdWx0cy1maWd1cmUge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuLnNlYXJjaC1yZXN1bHRzLWltYWdlLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7IFxuICAgIGhlaWdodDogMjE1cHggIWltcG9ydGFudDsgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5jb21wb25lbnQtY3RhLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpe1xuICAgIC5oZXJvLWN0YS1oZWFkZXIge1xuICAgICAgICBmb250LXNpemU6IDVyZW0gIWltcG9ydGFudDtcbiAgICB9XG59IFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gTm92ZWxpcy5jb20gLSBDb250YWN0IEZvcm0gTGF5b3V0XG4vLyBodHRwczovL2Q2ZGlnaXRhbC5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9ORC03Njhcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubm92ZWxpcy0tY29uc3RyYWluZWQtZm9ybSB7XG4gICAgLmdmaWVsZF9yYWRpbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrXG4gICAgfVxuICAgIC5nZm9ybV9oZWFkaW5nLFxuICAgIC5nZm9ybV9mb290ZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuZ2Zvcm0tYm9keSB7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHggYXV0bztcbiAgICB9XG4gICAgLmdmb3JtX3dyYXBwZXIge1xuICAgICAgICAmLmdyYXZpdHktdGhlbWUge1xuICAgICAgICAgICAgLmdmaWVsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPXRleHRdLm1lZGl1bSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlXG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICYubWVkaXVtLFxuICAgICAgICAgICAgICAgICAgICAmLmxhcmdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ub3ZlbGlzLS1jb25zdHJhaW5lZC1mb3JtLS1oci1yYWRpb3Mge1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIC5nZmllbGQ6bm90KC5ub3ZlbGlzLS1ibG9jay1yYWRpbykge1xuICAgICAgICAgICAgICAgIC5nZmllbGRfcmFkaW8ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5nY2hvaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbi5iZy0td2hpdGUtc21va2Uge1xuICAgIC5ub3ZlbGlzLS1jb25zdHJhaW5lZC1mb3JtIHtcbiAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNjY2M7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYmctLXNhcHBoaXJlLFxuLmJnLS1wcnVzc2lhbi1ibHVlLFxuLmJnLS1kYXJrLWdyZWVuIHtcbiAgICAubm92ZWxpcy0tY29uc3RyYWluZWQtZm9ybSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAuZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vIEhFTFBFUlNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiYmFzZS9wcmludFwiO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vIElFIDkgJiAxMCBIQUNLU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJpZVwiOyIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGlub3R5cGV1bml2ZXJzYmFzaWNtZWRpdW0nO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9saW5vdHVuaWJhc21lZC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9saW5vdHVuaWJhc21lZC13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xpbm90eXBldW5pdmVyc2Jhc2ljcmVndWxhcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2xpbm90dW5pYmFzcmVnXzEwLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2xpbm90dW5pYmFzcmVnXzEwLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGlub3R5cGV1bml2ZXJzYmFzaWNyZWd1bGFyJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGlub3R1bmliYXNyZWctd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnLi4vZm9udHMvbGlub3R1bmliYXNyZWctd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsaW5vdHlwZXVuaXZlcnNiYXNpY3hibGFjayc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2xpbm90dW5pYmFzeGJsYS13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9saW5vdHVuaWJhc3hibGEtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsaW5vdHlwZXVuaXZlcnNjb25kYmxhY2snO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9saW5vdHVuaWNvbmJsYS13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9saW5vdHVuaWNvbmJsYS13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xpbm90eXBldW5pdmVyc2NvbmRib2xkJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGlub3R1bmljb25ib2wtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnLi4vZm9udHMvbGlub3R1bmljb25ib2wtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn0iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vIENvbG9yc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gaHR0cHM6Ly93d3cuY29sb3ItYmxpbmRuZXNzLmNvbS9jb2xvci1uYW1lLWh1ZS9cblxuJGNocmlzdGk6IGhzbCg5NiwgNjklLCA0NCUpO1xuJGtlbGx5LWdyZWVuOiBoc2woOTUsIDg3JSwgNDAlKTtcbiRzcHJpbmctYnVkOiBoc2woNzYsIDEwMCUsIDQzJSk7XG4kZnVlZ286IGhzbCg3MiwgNjMlLCA1MiUpO1xuJGFwcGxlOiBoc2woMTA3LCA0NiUsIDUwJSk7XG4kaGFybGVxdWluOiBoc2woOTUsIDEwMCUsIDM4JSk7XG5cbiRkYXJrLWdyZWVuOiBoc2woMjEwLCAxMDAlLCA3JSk7XG4kcHJ1c3NpYW4tYmx1ZTogaHNsKDIxNCwgMTAwJSwgMTIlKTtcbiRzYXBwaGlyZTogaHNsKDIyMCwgNzUlLCAyMiUpO1xuJG5vdmVsaXMtYmx1ZS1zZWNvbmRhcnk6ICMxZDQyOGE7XG4kbmF2eS1ibHVlOiAjMDE3ZGM1O1xuJGJhaGFtYS1ibHVlOiBoc2woMjIwLCA2NSUsIDMzJSk7XG5cbiRkZWVwLXNreS1ibHVlOiBoc2woMTk5LCAxMDAlLCA0OSUpO1xuJHN1bW1lci1za3k6IGhzbCgxOTMsIDc0JSwgNDglKTtcblxuJGJsYWNrOiBoc2woMCwgMCUsIDAlKTtcbiRuaWdodC1yaWRlcjogaHNsKDAsIDAlLCAyMCUpO1xuJHN1dmEtZ3JleTogaHNsKDAsIDAlLCA1OCUpO1xuJHNoaXAtY292ZTogaHNsKDIyMSwgMjAlLCA2MSUpO1xuJGFjYWRpYTogaHNsKDAsIDAlLCA4OCUpO1xuJHdoaXRlLXNtb2tlOiBoc2woMCwgMCUsIDk3JSk7XG4kd2hpdGU6IGhzbCgwLCAwJSwgMTAwJSk7XG4kdHJhbnNwYXJlbnQ6IGhzbGEoMCwgMCUsIDAlLCAwJSk7XG5cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxhdG86MzAwLDQwMCw5MDBcIik7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnMmZGlzcGxheT1zd2FwXCIpO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvJmRpc3BsYXk9c3dhcFwiKTtcblxuJGxhdG86IFwiTGF0b1wiO1xuJG9wZW4tc2FuczogXCJPcGVuIFNhbnNcIjtcbiRyb2JvdG86IFwiUm9ib3RvXCI7XG4kbXVzZW86IFwiTXVzZW9cIiwgc2Fucy1zZXJpZjtcblxuJGFwcC10ZXh0LWNvbG9yOiAkbmlnaHQtcmlkZXI7XG4kYXBwLWxpbmUtaGVpZ2h0OiAxLjU7XG4kYXBwLWZvbnQtZmFtaWx5OiAkbGF0bztcbiRhcHAtZm9udC1zaXplOiAxLjZyZW07XG5cbkBtaXhpbiBib2R5LXRleHQge1xuICBjb2xvcjogJGFwcC10ZXh0LWNvbG9yO1xuICBmb250LWZhbWlseTogJGFwcC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkYXBwLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRhcHAtbGluZS1oZWlnaHQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gYnV0dG9ucywgbGlua3MsIGZvcm0gZWxlbWVudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiRidXR0b24tZm9udC1mYW1pbHk6ICRsYXRvO1xuJGJ1dHRvbi1mb250LXNpemU6IDEuNnJlbTtcblxuJGJ1dHRvbi1kaXNwbGF5OiBmbGV4O1xuJGJ1dHRvbi1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiRidXR0b24tYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuJGJ1dHRvbi1wYWRkaW5nOiAxcmVtO1xuJGJ1dHRvbi13aWR0aDogODB2dztcblxuJGJ1dHRvbi1ib3JkZXItcmFkaXVzOiA5cmVtO1xuJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkO1xuJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDJweDtcblxuJHByaW1hcnktY3RhLWJhY2tncm91bmQtY29sb3I6ICRjaHJpc3RpO1xuJHByaW1hcnktY3RhLXRleHQtY29sb3I6ICR3aGl0ZTtcbiRwcmltYXJ5LWN0YS1ib3JkZXItY29sb3I6ICRjaHJpc3RpO1xuXG4kc2Vjb25kYXJ5LWN0YS1iYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4kc2Vjb25kYXJ5LWN0YS10ZXh0LWNvbG9yOiAkY2hyaXN0aTtcbiRzZWNvbmRhcnktY3RhLWJvcmRlci1jb2xvcjogJGNocmlzdGk7XG5cbiRwcmltYXJ5LWxpbmstYmFja2dyb3VuZC1jb2xvcjogJHRyYW5zcGFyZW50O1xuJHByaW1hcnktbGluay10ZXh0LWNvbG9yOiAkY2hyaXN0aTtcbiRwcmltYXJ5LWxpbmstYnV0dG9uLWJvcmRlci13aWR0aDogMDtcbiRwcmltYXJ5LWxpbmstYnV0dG9uLWp1c3RpZnktY29udGVudDogbGVmdDtcblxuJGxhYmVsLXRleHQtY29sb3I6ICRiYWhhbWEtYmx1ZTtcbiRsYWJlbC1mb250LWZhbWlseTogJGxhdG87XG4kbGFiZWwtZm9udC1zaXplOiAyMnB4O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiA0MDA7XG4kbGFiZWwtbGluZS1oZWlnaHQ6IDEuNTtcbiRsYWJlbC1tYXJnaW46IDAgMCAxcmVtO1xuXG4kaW5wdXQtdGV4dC1jb2xvcjogJHN1dmEtZ3JleTtcbiRpbnB1dC1mb250LWZhbWlseTogJGxhdG87XG4kaW5wdXQtZm9udC1zaXplOiAxNnB4O1xuJGlucHV0LWJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICR3aGl0ZS1zbW9rZTtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwLjhyZW07XG4kaW5wdXQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6IDFweDtcbiRpbnB1dC1wYWRkaW5nOiAxcmVtO1xuXG4kc2VhcmNoLWJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuJGxlZ2VuZC10ZXh0LWNvbG9yOiAkZGFyay1ncmVlbjtcbiRsZWdlbmQtZm9udC1mYW1pbHk6ICRtdXNlbztcbiRsZWdlbmQtZm9udC1zaXplOiAzLjVyZW07XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gbGF5b3V0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kYXBwLXdpZHRoOiAxNDRyZW07XG5cbiRhcHAtcGFkZGluZzogNi45MyU7XG5cbiVjb250YWluZXIge1xuICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLyBjbGllbnQgY29sb3JzXG4vLyAkcHJpbWFyeS1jb2xvcjogIzEzMTc0YiAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yOiAkc2FwcGhpcmU7XG4kcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmU7XG4kcHJpbWFyeS1mb250LWNvbG9yOiAjZmZmICFkZWZhdWx0OyAvL3doaXRlXG5cbiRzZWNvbmRhcnktY29sb3I6ICNlNTE5MzcgIWRlZmF1bHQ7IC8vcmVkXG4kc2Vjb25kYXJ5LWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7IC8vd2hpdGVcblxuJHRlcnRpYXJ5LWNvbG9yLW9uZTogI2YzZjNmMyAhZGVmYXVsdDsgLy9saWdodCBncmF5aXNoIHdoaXRlXG4kdGVydGlhcnktZm9udC1jb2xvcjogIzJhMmEyYSAhZGVmYXVsdDsgLy9kYXJrIGdyYXlcblxuLy8gbW9ub2Nocm9tZSBjb2xvcnNcbiRibGFjazogIzAwMDtcbiRncmF5LWRhcmtlcjogIzIyMiAhZGVmYXVsdDtcbiRncmF5LWRhcms6ICM2MjYyNjEgIWRlZmF1bHQ7XG4kZ3JheTogIzg4OCAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0OiAjYmJiICFkZWZhdWx0O1xuJGdyYXktbGlnaHRlcjogI2Y5ZjlmOSAhZGVmYXVsdDtcbiR3aGl0ZTogI2ZmZjtcbiRkYXJrLWJ0bi1ob3ZlcjogIzAwMjYzZTtcblxuLy8gbXVsdGkgY29sb3JzXG4kYmx1ZTogIzViYzBkZSAhZGVmYXVsdDtcbiRncmVlbjogIzVjYjg1YyAhZGVmYXVsdDtcbiRvcmFuZ2U6ICNmMGFkNGUgIWRlZmF1bHQ7XG4kcmVkOiAjZTUxOTM3ICFkZWZhdWx0O1xuXG4vLyBzaXppbmdcbiRiYXNlLW1heC13aWR0aDogMTIwMHB4ICFkZWZhdWx0O1xuJGJhc2UtcGFnZS1ndXR0ZXI6IDM1cHggIWRlZmF1bHQ7XG5cbiRiYXNlLXBhZGRpbmc6IDI1cHggIWRlZmF1bHQ7XG4vL2hlaWdodCBicmVha3BvaW50XG4kYnJlYWtwb2ludC1oZWlnaHQtbTogNzAwcHg7XG5cbi8vIGZvbnQgc2l6aW5nXG4kcmVzZXQtZm9udC1kaXZpZGVyOiAxMDtcbiRyZXNldC1mb250LXNpemU6ICgxMDAgLyAxNikgKiAkcmVzZXQtZm9udC1kaXZpZGVyICFkZWZhdWx0O1xuJGJhc2UtZm9udC1zaXplOiAxNiAhZGVmYXVsdDtcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kc21hbGwtdGV4dDogMTAgIWRlZmF1bHQ7XG5cbi8vIGZvbnQgc3R5bGVzXG4kcHJpbWFyeS1mb250LWZhbWlseTogJGxhdG8sIFwiQXJpYWxcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktZm9udC1mYW1pbHk6IFwibGlub3R5cGV1bml2ZXJzY29uZGJvbGRcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJHRlcnRpYXJ5LWZvbnQtZmFtaWx5OiBcImxpbm90eXBldW5pdmVyc2Jhc2ljbWVkaXVtXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtZmFtaWx5OiAkcHJpbWFyeS1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtY29sb3I6ICMzMzMzMzMgIWRlZmF1bHQ7XG4kYmFzZS10ZXh0LWFsaWduOiBsZWZ0ICFkZWZhdWx0O1xuXG4vLyBtaXNjZWxsYW5lb3VzXG4kaGlnaGxpZ2h0LWJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGhpZ2hsaWdodC10ZXh0LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyB0eXBvZ3JhcGh5XG4vLyBoZWFkaW5nIGZvbnQgc2l6ZXMgYmFzZWQgb2ZmICRiYXNlLWZvbnQtc2l6ZSA9IDE2XG4kaGVhZGluZy1mb250LXNpemVzLXNtYWxsOiAoXG4gIFwiaDFcIjogMzYsXG4gIFwiaDJcIjogMjIsXG4gIFwiaDNcIjogMjAsXG4gIFwiaDRcIjogMjAsXG4gIFwiaDVcIjogMjAsXG4gIFwiaDZcIjogMThcbik7XG5cbiRoZWFkaW5nLWZvbnQtc2l6ZXMtbWVkaXVtOiAoXG4gIFwiaDFcIjogNDAsXG4gIFwiaDJcIjogMjYsXG4gIFwiaDNcIjogMjQsXG4gIFwiaDRcIjogMjIsXG4gIFwiaDVcIjogMjAsXG4gIFwiaDZcIjogMThcbik7XG5cbiRoZWFkaW5nLWZvbnQtc2l6ZXMtbGFyZ2U6IChcbiAgXCJoMVwiOiA0NCxcbiAgXCJoMlwiOiAzMCxcbiAgXCJoM1wiOiAyNixcbiAgXCJoNFwiOiAyMixcbiAgXCJoNVwiOiAyMCxcbiAgXCJoNlwiOiAxOFxuKTtcblxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBcImxpbm90eXBldW5pdmVyc2NvbmRib2xkXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS4yNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuJGxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGxpbmstY29sb3ItaG92ZXI6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogY2VpbCgoJGJhc2UtZm9udC1zaXplICogMS4yKSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kYmxvY2txdW90ZS1saW5lLWhlaWdodDogMS41O1xuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGltYWdlLWdyYWRpZW50LW92ZXJsYXk6IGxpbmVhci1ncmFkaWVudChcbiAgdG8gYm90dG9tLFxuICByZ2JhKDAsIDAsIDAsIDAuOCkgMCUsXG4gIHJnYmEoMCwgMCwgMCwgMC4xKSA0MCUsXG4gIHJnYmEoMCwgMCwgMCwgMCkgMTAwJVxuKTtcblxuJGltYWdlLWdyYWRpZW50LW92ZXJsYXktYWx0OiBsaW5lYXItZ3JhZGllbnQoXG4gIHRvIHRvcCxcbiAgcmdiYSgwLCAwLCAwLCAwLjgpIDAlLFxuICByZ2JhKDAsIDAsIDAsIDAuMSkgNDAlLFxuICByZ2JhKDAsIDAsIDAsIDApIDEwMCVcbik7XG4iLCIvKipcbiAqIEZvbnQgUkVNXG4gKiAtLSBjb252ZXJ0IGFuZCBvdXRwdXQgcHggYW5kIHJlbVxuICogLS0gZm9udC1yZW0oICRmb250LXNpemUtcHggKVxuICovXG5AbWl4aW4gZm9udC1yZW0oJGZvbnQtc2l6ZS1weCkge1xuXHQkcmVtLWZvbnQtc2l6ZTogKCRmb250LXNpemUtcHggLyAkcmVzZXQtZm9udC1kaXZpZGVyKTtcblxuXHRmb250LXNpemU6ICN7JGZvbnQtc2l6ZS1weH0jeydweCd9O1xuXHRmb250LXNpemU6ICN7JHJlbS1mb250LXNpemV9I3sncmVtJ307XG59XG4vKiBBZGRpdGlvbiBvZiBsaW5lLWhlaWdodCBjb252ZXJzaW9uIGZvciBjb25zaXN0ZW5jeSAqL1xuQG1peGluIGxpbmUtaGVpZ2h0LWNvbnZlcnQoJGxpbmUtaGVpZ2h0LXB4KSB7XG5cdCRyZW0tbGluZS1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtcHggLyAkcmVzZXQtZm9udC1kaXZpZGVyKTtcblxuXHRsaW5lLWhlaWdodDogI3skbGluZS1oZWlnaHQtcHh9I3sncHgnfTtcblx0bGluZS1oZWlnaHQ6ICN7JHJlbS1saW5lLWhlaWdodH0jeydyZW0nfTtcbn1cblxuLyoqXG4gKiBSZXNwb25zaXZlIE1lZGlhIFF1ZXJ5IEhlbHBlcnNcbiAqIC0tIHJlc3BvbnNpdmVRdWVyeSh4cylcbiAqIC0tIHJlc3BvbnNpdmVRdWVyeShcIihtaW4td2lkdGg6IDEwMGVtKVwiKVxuICovXG5AbWl4aW4gcmVzcG9uc2l2ZVF1ZXJ5KCRtZWRpYTogbnVsbCwgJG51bWJlcjogbnVsbCkge1xuXHRAaWYgJG51bWJlciAhPW51bGwge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG51bWJlcikge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8gTU9CSUxFXG5cdEBlbHNlIGlmICRtZWRpYT09eHMgb3IgJG1lZGlhPT00ODAge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0Ly8gNDgwXG5cdH1cblxuXHQvLyBQSEFCTEVUIC8gU01BTEwgVEFCTEVUIC8gTkVUQk9PSyAvIFNNQUxMIFNDUkVFTlxuXHRAZWxzZSBpZiAkbWVkaWE9PXMgb3IgJG1lZGlhPT02MDAge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzcuNWVtKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cblx0XHQvLyA2MDBcblx0fVxuXG5cdEBlbHNlIGlmICRtZWRpYT09bSBvciAkbWVkaWE9PTc2OCB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cblx0XHQvLyA3Njhcblx0fVxuXG5cdC8vIERFU0tUT1AgLyBMQVJHRSBUQUJMRVRcblx0QGVsc2UgaWYgJG1lZGlhPT1sIG9yICRtZWRpYT09MTAyNCB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cblx0XHQvLyAxMDI0XG5cdH1cblxuXHQvLyBNQVNTSVZFIFNDUkVFTlxuXHRAZWxzZSBpZiAkbWVkaWE9PXhsIG9yICRtZWRpYT09MTI4MCB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cblx0XHQvLyAxMjgwXG5cdH1cblxuXHRAZWxzZSBpZiAkbWVkaWE9PXh4bCBvciAkbWVkaWE9PTE0NDAge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0Ly8gMTQ0MFxuXHR9XG5cblx0QGVsc2UgaWYgJG1lZGlhPT1maW5hbCBvciAkbWVkaWE9PTE5MjAge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblxuXHRcdC8vIDE5MjBcblx0fVxuXG5cdEBlbHNlIGlmICRtZWRpYT09cmV0aW5hIHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSkge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0Ly8gcmV0aW5hXG5cdH1cblxuXHQvLyBPVEhFUlxuXHRAZWxzZSB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAjeyRtZWRpYX0ge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0Ly8gYW55dGhpbmcgZWxzZVxuXHR9XG59XG5cbi8qKlxuICogQ2xlYXJmaXggYXMgYSBtaXhpblxuICovXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdEBleHRlbmQgJWNsZWFyZml4O1xufVxuXG5cbi8qKlxuICogSG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IGNlbnRlcnMgYmxvY2sgZWxlbWVudHNcbiAqXG4gKiBJbXBvcnRhbnQ6IHlvdSBtdXN0IGhhdmUgYSBwYXJlbnQgZWxlbWVudCB3aXRoIGBwb3NpdGlvbjogcmVsYXRpdmVgLlxuICovXG5AbWl4aW4gY2VudGVyLWJvdGgoJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuXHRwb3NpdGlvbjogJHBvc2l0aW9uO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbn1cblxuLyoqXG4gKiBWZXJ0aWNhbGx5IGNlbnRlcnMgYmxvY2sgZWxlbWVudHNcbiAqXG4gKiBJbXBvcnRhbnQ6IHlvdSBtdXN0IGhhdmUgYSBwYXJlbnQgZWxlbWVudCB3aXRoIGBwb3NpdGlvbjogcmVsYXRpdmVgLlxuICovXG5AbWl4aW4gY2VudGVyLXZlcnRpY2FsKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcblx0cG9zaXRpb246ICRwb3NpdGlvbjtcblx0dG9wOiA1MCU7XG5cdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbn1cblxuLyoqXG4gKiBSZXRpbmEgSW1hZ2UgSGVscGVyXG4gKlxuICogQSBoZWxwZXIgbWl4aW4gZm9yIGFwcGx5aW5nIGhpZ2gtcmVzb2x1dGlvbiBiYWNrZ3JvdW5kIGltYWdlcyAoaHR0cDovL3d3dy5yZXRpbmFqcy5jb20pXG4gKiBieSBOYXRoYW4gQ3JhbmsgKG5hdGhhbmNyYW5rLmNvbSlcbiAqL1xuQG1peGluIGF0MngoJHBhdGgsICRleHQ6IFwianBnXCIpIHtcblx0JGF0MXhfcGF0aDogXCIjeyRwYXRofS4jeyRleHR9XCI7XG5cdCRhdDJ4X3BhdGg6IFwiI3skcGF0aH1AMnguI3skZXh0fVwiO1xuXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGF0MXhfcGF0aH1cIik7XG5cblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuXHRcdG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuXHRcdG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMy8yKSxcblx0XHRvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksXG5cdFx0b25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcblx0XHRvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxLjVkcHB4KSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXQyeF9wYXRofVwiKTtcblx0fVxufVxuXG4vKipcbiAqIEhlbHBlcnNcbiAqL1xuXG4vLy0tIGZvbnQgbWl4aW4gdG8gZG8gdGhlIGhlYXZ5IGxpZnRpbmcuLi5cbkBtaXhpbiBmb250KCR3ZWlnaHQsICRzaXplLCAkaXRhbGljOmZhbHNlKSB7XG5cdEBpbmNsdWRlIGZvbnQtcmVtKCRzaXplKTtcblx0Zm9udC1mYW1pbHk6ICRwcmltYXJ5LWZvbnQtZmFtaWx5O1xuXG5cdEBpZiAkd2VpZ2h0PT1yZWcge1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdH1cblxuXHRAZWxzZSBpZiAkd2VpZ2h0PT1zZW1pIHtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHR9XG5cblx0QGVsc2UgaWYgJHdlaWdodD09Ym9sZCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0fVxuXG5cdEBlbHNlIGlmICR3ZWlnaHQ9PXhib2xkIHtcblx0XHRmb250LXdlaWdodDogODAwO1xuXHR9XG5cblx0QGVsc2UgaWYgJHdlaWdodD09bGlnaHQge1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdH1cblxuXHRAaWYgJGl0YWxpYz09dHJ1ZSB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG59XG5cbi8vLS0gZm9yIENTUyB0cmFuc2l0aW9ucy4uLlxuQG1peGluIHRyYW5zaXRpb24oJGFyZ3MuLi4pIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAkYXJncztcblx0LW1vei10cmFuc2l0aW9uOiAkYXJncztcblx0LW1zLXRyYW5zaXRpb246ICRhcmdzO1xuXHQtby10cmFuc2l0aW9uOiAkYXJncztcblx0dHJhbnNpdGlvbjogJGFyZ3M7XG59XG5cbi8vLS0gZm9yIENTUyB0cmFuc2Zvcm0uLi5cbkBtaXhpbiB0cmFuc2Zvcm0oJGFyZ3MuLi4pIHtcblx0LXdlYmtpdC10cmFuc2Zvcm06ICRhcmdzO1xuXHQtbW96LXRyYW5zZm9ybTogJGFyZ3M7XG5cdC1tcy10cmFuc2Zvcm06ICRhcmdzO1xuXHQtby10cmFuc2Zvcm06ICRhcmdzO1xuXHR0cmFuc2Zvcm06ICRhcmdzO1xufVxuXG4vLy0tIGZvciBDU1MgYm94LXNoYWRvdy4uLlxuQG1peGluIGJveHNoYWRvdygkeCwgJHksICRibHVyLCAkc3ByZWFkLCAkciwgJGcsICRiLCAkYSkge1xuXHQtd2Via2l0LWJveC1zaGFkb3c6ICR4K3B4ICR5K3B4ICRibHVyK3B4ICRzcHJlYWQrcHggcmdiYSgkciwgJGcsICRiLCAkYSk7XG5cdC1tb3otYm94LXNoYWRvdzogJHgrcHggJHkrcHggJGJsdXIrcHggJHNwcmVhZCtweCByZ2JhKCRyLCAkZywgJGIsICRhKTtcblx0LW1zLWJveC1zaGFkb3c6ICR4K3B4ICR5K3B4ICRibHVyK3B4ICRzcHJlYWQrcHggcmdiYSgkciwgJGcsICRiLCAkYSk7XG5cdC1vLWJveC1zaGFkb3c6ICR4K3B4ICR5K3B4ICRibHVyK3B4ICRzcHJlYWQrcHggcmdiYSgkciwgJGcsICRiLCAkYSk7XG5cdGJveC1zaGFkb3c6ICR4K3B4ICR5K3B4ICRibHVyK3B4ICRzcHJlYWQrcHggcmdiYSgkciwgJGcsICRiLCAkYSk7XG59XG5cbi8vLS0gY2xpcC1wYXRoXG5AbWl4aW4gY2xpcC1wYXRoKCRhcmdzLi4uKSB7XG5cdC13ZWJraXQtY2xpcC1wYXRoOiAkYXJncztcblx0LW1zLWNsaXAtcGF0aDogJGFyZ3M7XG5cdGNsaXAtcGF0aDogJGFyZ3M7XG59XG5cbi8va2V5ZnJhbWVzXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG5cdEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblxuXHRALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cblx0QC1tcy1rZXlmcmFtZXMgI3skbmFtZX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cblx0QGtleWZyYW1lcyAjeyRuYW1lfSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy9hbmltYXRpb25cbkBtaXhpbiBhbmltYXRpb24gKCRkZWxheSwgJGR1cmF0aW9uLCAkYW5pbWF0aW9uLCRlYXNpbmcpIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJGFuaW1hdGlvbjtcblx0LXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgLyogdGhpcyBwcmV2ZW50cyB0aGUgYW5pbWF0aW9uIGZyb20gcmVzdGFydGluZyEgKi9cblx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZWFzaW5nO1xuXG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgIC1tb3otYW5pbWF0aW9uLW5hbWU6ICRhbmltYXRpb247XG5cdC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IC8qIHRoaXMgcHJldmVudHMgdGhlIGFuaW1hdGlvbiBmcm9tIHJlc3RhcnRpbmchICovXG5cdC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2luZztcblxuICAgIC1vLWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgIC1vLWFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uO1xuXHQtby1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgLyogdGhpcyBwcmV2ZW50cyB0aGUgYW5pbWF0aW9uIGZyb20gcmVzdGFydGluZyEgKi9cblx0LW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2luZztcblxuICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgIGFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uO1xuXHRhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgLyogdGhpcyBwcmV2ZW50cyB0aGUgYW5pbWF0aW9uIGZyb20gcmVzdGFydGluZyEgKi9cblx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2luZztcbn1cblxuLy8tLSBvdmVyZmxvd1xuQG1peGluIG92ZXJmbG93LXgoJGFyZ3MuLi4pIHtcblx0LW1zLW92ZXJmbG93LXg6ICRhcmdzO1xuXHRvdmVyZmxvdy14OiAkYXJncztcbn1cbkBtaXhpbiBvdmVyZmxvdy15KCRhcmdzLi4uKSB7XG5cdC1tcy1vdmVyZmxvdy15OiAkYXJncztcblx0b3ZlcmZsb3cteTogJGFyZ3M7XG59IiwiLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC8gXG4gICB2Mi4wIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5hcHBsZXQsXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmEsXG5hYmJyLFxuYWNyb255bSxcbmFkZHJlc3MsXG5iaWcsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuaW1nLFxuaW5zLFxua2JkLFxucSxcbnMsXG5zYW1wLFxuc21hbGwsXG5zdHJpa2UsXG5zdHJvbmcsXG5zdWIsXG5zdXAsXG50dCxcbnZhcixcbmIsXG51LFxuaSxcbmNlbnRlcixcbmRsLFxuZHQsXG5kZCxcbm9sLFxudWwsXG5saSxcbmZpZWxkc2V0LFxuZm9ybSxcbmxhYmVsLFxubGVnZW5kLFxudGFibGUsXG5jYXB0aW9uLFxudGJvZHksXG50Zm9vdCxcbnRoZWFkLFxudHIsXG50aCxcbnRkLFxuYXJ0aWNsZSxcbmFzaWRlLFxuY2FudmFzLFxuZGV0YWlscyxcbmVtYmVkLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5vdXRwdXQsXG5ydWJ5LFxuc2VjdGlvbixcbnN1bW1hcnksXG50aW1lLFxubWFyayxcbmF1ZGlvLFxudmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLFxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxucSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuLy8gZXh0ZW5zaW9uc1xucCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cbiIsIkBrZXlmcmFtZXMgcmlnaHQtYXJyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDIwJSk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDIwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDIwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZG93bi1hcnJvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDYwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgfVxufVxuICBAa2V5ZnJhbWVzIGRvd24tYXJyb3ctdGFiYmVkIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAyNSUpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDg1JSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDI1JSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMganVtcC1kb3duLWFycm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCA0MCUpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDgwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDQwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcmlnaHQtY2FyYXQtcm90YXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMjUlLCAyNSUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKC0yNSUsIC0yNSUpO1xuICB9XG59XG4iLCIvKipcbiAqIEJvcmRlciBib3ggYWxsIHRoZSB0aGluZ3NcbiAqL1xuKiB7XG4gIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuKiB7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogI3skcmVzZXQtZm9udC1zaXplfSN7XCIlXCJ9OyAvLyBSZXNldCBIVE1MIGZvbnQgc2l6ZSB0byB+MTBweCBzbyB0aGF0IFJFTSBmb250IG1lYXN1cmVtZW50IGNhbiBiZSBlYXNpbHkgZGl2aWRlZFxufVxuXG5ib2R5IHtcbiAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1yZW0oJGJhc2UtZm9udC1zaXplKTtcbiAgLy8gbWFrZXMgbWF0aCBlYXNpZXIgZm9yIHJlbSwgbm8gbmVlZCBmb3IgaGVscGVyXG4gIGxpbmUtaGVpZ2h0OiAkYXBwLWxpbmUtaGVpZ2h0O1xuICAvLyB0ZXh0LWFsaWduOiAjeyRiYXNlLXRleHQtYWxpZ259O1xufVxucCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4vKipcbiAqIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnNcbiAqL1xuLnNyLW9ubHksXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBBbGxvdyBvbmx5IHZlcnRpY2FsIHJlc2l6aW5nIG9mIHRleHRhcmVhcy5cbiAqL1xudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBnYXAgYmV0d2VlbiBpbWFnZXMsIHZpZGVvcywgYXVkaW8gYW5kIGNhbnZhcyBhbmQgdGhlIGJvdHRvbSBvZlxuICogdGhlaXIgY29udGFpbmVyczogaDVicC5jb20vaS80NDBcbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5pbWcsXG52aWRlbyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qKlxuICogSW1hZ2VzLCBcbiAqL1xuaW1nLFxudmlkZW8sXG5maWd1cmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5yZXNwb25zaXZlLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogUmVzcG9uc2l2ZSBFbWJlZHNcbiAqL1xuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgdmlkZW8ge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYtLWFyMTZ4OSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgfVxuXG4gICYtLWFyNHgzIHtcbiAgICBwYWRkaW5nLXRvcDogNzUlO1xuICB9XG59XG5cbi8vIHRhYmxlIHtcbi8vICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbi8vICAgdGQge1xuLy8gICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4vLyAgICAgcGFkZGluZzogM3B4O1xuLy8gICB9XG4vLyB9XG5cbi8vIENsZWFyZml4XG4lY2xlYXJmaXgsXG4uY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG5AbWl4aW4gZm9yLXNpemUoJHNpemUpIHtcbiAgQGlmICRzaXplID09IHBob25lLW9ubHkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRzaXplID09IHBob25lLXRhYmxldC1wb3J0cmFpdC1vbmx5IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgICB9IEBlbHNlIGlmICRzaXplID09IHBob25lLXRhYmxldC1vbmx5IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkc2l6ZSA9PSBsYW5kc2NhcGUtb25seSB7XG4gICAgQG1lZGlhIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHNpemUgPT0gdGFibGV0LXBvcnRyYWl0LXVwIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkc2l6ZSA9PSB0YWJsZXQtcG9ydHJhaXQtdXAtMiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHNpemUgPT0gdGFibGV0LWxhbmRzY2FwZS11cCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHNpemUgPT0gZGVza3RvcC11cCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRzaXplID09IGJpZy1kZXNrdG9wLXVwIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTgwMHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gdGVtcFxuLy8gd2UgbmVlZCB0byBkZWNpZGUgd2hlcmUgYWRtaW4gc2hvdWxkIGJlXG4vLyBwb3MgOiBzdGlja3kgbWFrZXMgaXQgd29yayBvbiB0b3Agd2l0aCBvdXIgaGVhZGVyXG5cbi5sb2dnZWQtaW4tbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxvY2tlZCB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuI2llLWJhbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sYWJlbCB7XG4gIGNvbG9yOiAkbGFiZWwtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGxhYmVsLWxpbmUtaGVpZ2h0O1xuICBmb250LWZhbWlseTogJGxhYmVsLWZvbnQtZmFtaWx5O1xuICBtYXJnaW46ICRsYWJlbC1tYXJnaW47XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgYm9yZGVyLXN0eWxlOiAkaW5wdXQtYm9yZGVyLXN0eWxlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWFyY2gtYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLy8gY2FuJ3QgdXNlIGFjdHVhbCA8ZmllbGRzZXQ+IGIvYyBkb2Vzbid0IHBsYXkgd2l0aCBmbGV4Ym94XG4uZmllbGRzZXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tYm90dG9tOiAyLjdyZW07XG59XG5cbmxlZ2VuZCB7XG4gIGNvbG9yOiAkbGVnZW5kLXRleHQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGxlZ2VuZC1mb250LXNpemU7XG4gIGZvbnQtZmFtaWx5OiAkbGVnZW5kLWZvbnQtZmFtaWx5O1xufVxuXG4vLyBvdmVycmlkZVxuXG5idXR0b24ge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBidXR0b24tc3R5bGVzIHtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG5cbiAgZGlzcGxheTogJGJ1dHRvbi1kaXNwbGF5O1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICRidXR0b24tanVzdGlmeS1jb250ZW50O1xuICBhbGlnbi1pdGVtczogJGJ1dHRvbi1hbGlnbi1pdGVtcztcblxuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIG1pbi13aWR0aDogMjUuNXJlbTtcbiAgd2lkdGg6ICRidXR0b24td2lkdGg7XG5cbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1ib3JkZXItcmFkaXVzO1xuICBib3JkZXItc3R5bGU6ICRidXR0b24tYm9yZGVyLXN0eWxlO1xuICBib3JkZXItd2lkdGg6ICRidXR0b24tYm9yZGVyLXdpZHRoO1xuXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcbiAgICBwYWRkaW5nOiAxcmVtIDQuNXJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5AbWl4aW4gcHJpbWFyeS1jdGEtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY3RhLWJhY2tncm91bmQtY29sb3I7XG4gIGNvbG9yOiAkcHJpbWFyeS1jdGEtdGV4dC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jdGEtYm9yZGVyLWNvbG9yO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxufVxuXG5AbWl4aW4gc2Vjb25kYXJ5LWN0YS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWN0YS1iYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJHNlY29uZGFyeS1jdGEtdGV4dC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWN0YS1ib3JkZXItY29sb3I7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gcHJpbWFyeS1saW5rLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpbmstYmFja2dyb3VuZC1jb2xvcjtcbiAgY29sb3I6ICRwcmltYXJ5LWxpbmstdGV4dC1jb2xvcjtcbiAgYm9yZGVyLXdpZHRoOiAkcHJpbWFyeS1saW5rLWJ1dHRvbi1ib3JkZXItd2lkdGg7XG4gIGp1c3RpZnktY29udGVudDogJHByaW1hcnktbGluay1idXR0b24tanVzdGlmeS1jb250ZW50O1xufVxuXG5idXR0b24ucHJpbWFyeS1jdGEtYnV0dG9uLFxuLnByaW1hcnktY3RhLWJ1dHRvbixcbmJ1dHRvbi5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbi5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbmJ1dHRvbi5wcmltYXJ5LWxpbmstYnV0dG9uLFxuLnByaW1hcnktbGluay1idXR0b24ge1xuICBAaW5jbHVkZSBidXR0b24tc3R5bGVzO1xufVxuXG5idXR0b24ucHJpbWFyeS1jdGEtYnV0dG9uLFxuLnByaW1hcnktY3RhLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIHByaW1hcnktY3RhLWJ1dHRvbjtcbiAgLnJpZ2h0LWFycm93IHtcbiAgICAuaWNvbiB7XG4gICAgICBzdHJva2U6IGhzbCgwLCAwJSwgMTAwJSk7XG4gICAgfVxuICB9XG59XG5cbmJ1dHRvbi5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbi5zZWNvbmRhcnktY3RhLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIHNlY29uZGFyeS1jdGEtYnV0dG9uO1xufVxuXG5idXR0b24ucHJpbWFyeS1saW5rLWJ1dHRvbixcbi5wcmltYXJ5LWxpbmstYnV0dG9uIHtcbiAgQGluY2x1ZGUgcHJpbWFyeS1saW5rLWJ1dHRvbjtcbiAgJi50ZXh0LWxpbmsge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1saW5rIHtcbiAgY29sb3I6ICRjaHJpc3RpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi50ZXh0LWxpbmstYXJyb3cge1xuICBAaW5jbHVkZSB0ZXh0LWxpbms7XG59XG5cbi5zZWNvbmRhcnktZG93bmxvYWQtYnV0dG9uIHtcbiAgQGluY2x1ZGUgdGV4dC1saW5rO1xuICBmb250LWZhbWlseTogJG11c2VvO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIENUQSBJY29uIFN0eWxlc1xuc3ZnLmljb24tYXJyb3cge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDIwJSk7XG59XG5zdmcuZG93bi1hcnJvdyB7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xufVxuc3ZnLmJhY2stdG9wLWFycm93IHtcbiAgd2lkdGg6IDhyZW07XG4gIGhlaWdodDogOHJlbTtcbiAgLy8gbWFyZ2luLXRvcDowLjVyZW07XG4gIHN0cm9rZTogJGNocmlzdGk7XG4gIGZpbGw6IG5vbmU7XG4gIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAyMCUpO1xufVxuXG4vLyBIb3ZlciBFZmZlY3RzXG4ucHJpbWFyeS1jdGEtYnV0dG9uLFxuYnV0dG9uLnByaW1hcnktY3RhLWJ1dHRvbixcbi5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbmJ1dHRvbi5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbi5wcmltYXJ5LWxpbmstYnV0dG9uLFxuYnV0dG9uLCAudGV4dC1saW5rLWFycm93LCAuc2Vjb25kYXJ5LWRvd25sb2FkLWJ1dHRvbiB7XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAvLyBSaWdodCBBcnJvd1xuICAgIHN2Zy5pY29uLWFycm93IHtcbiAgICAgIGFuaW1hdGlvbjogcmlnaHQtYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuICAgIH1cbiAgICBzdmcuZG93bi1hcnJvdyB7XG4gICAgICBhbmltYXRpb246IGRvd24tYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0JENTU1dJWkFSRFJZLUdSSURTIChodHRwczovL2dpdGh1Yi5jb20vY3Nzd2l6YXJkcnkvY3Nzd2l6YXJkcnktZ3JpZHMpXG5cblx0TU9ESUZJRUQgRURJVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ09OVEVOVFNcbiAqIElOVFJPRFVDVElPTi4uLi4uLi4uLkhvdyB0aGUgZ3JpZCBzeXN0ZW0gd29ya3MuXG4gKiBWQVJJQUJMRVMuLi4uLi4uLi4uLi5Zb3VyIHNldHRpbmdzLlxuICogTUlYSU5TLi4uLi4uLi4uLi4uLi4uTGlicmFyeSBtaXhpbnMuXG4gKiBHUklEIFNFVFVQLi4uLi4uLi4uLi5CdWlsZCB0aGUgZ3JpZCBzdHJ1Y3R1cmUuXG4gKiBIRUxQRVJTLi4uLi4uLi4uLi4uLi5DcmVhdGUgaGVscGVyIHNob3cvaGlkZSBjbGFzc2VzIGFyb3VuZCBvdXIgYnJlYWtwb2ludHMuXG4gKiBXSURUSFMuLi4uLi4uLi4uLi4uLi5CdWlsZCBvdXIgcmVzcG9uc2l2ZSB3aWR0aHMgYXJvdW5kIG91ciBicmVha3BvaW50cy5cbiAqIFBVU0guLi4uLi4uLi4uLi4uLi4uLlB1c2ggY2xhc3Nlcy5cbiAqIFBVTEwuLi4uLi4uLi4uLi4uLi4uLlB1bGwgY2xhc3Nlcy5cbiAqL1xuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdCRJTlRST0RVQ1RJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIGNzc3dpemFyZHJ5IGdyaWRzIHByb3ZpZGVzIHlvdSB3aXRoIHdpZHRocyB0byBzdWl0IGEgbnVtYmVyIG9mIGJyZWFrcG9pbnRzXG4gKiBkZXNpZ25lZCBhcm91bmQgZGV2aWNlcyBvZiBhIHNpemUgeW91IHNwZWNpZnkuIE91dCBvZiB0aGUgYm94LCBjc3N3aXphcmRyeVxuICogZ3JpZHMgY2F0ZXJzIHRvIHRoZSBmb2xsb3dpbmcgdHlwZXMgb2YgZGV2aWNlOlxuICpcbiAqIHBhbG0gICAgIC0tICBwYWxtLWJhc2VkIGRldmljZXMsIGxpa2UgcGhvbmVzIGFuZCBzbWFsbCB0YWJsZXRzXG4gKiBsYXAgICAgICAtLSAgbGFwLWJhc2VkIGRldmljZXMsIGxpa2UgaVBhZHMgb3IgbGFwdG9wc1xuICogcG9ydGFibGUgLS0gIGFsbCBvZiB0aGUgYWJvdmVcbiAqIGRlc2sgICAgIC0tICBzdGF0aW9uYXJ5IGRldmljZXMsIGxpa2UgZGVza3RvcCBjb21wdXRlcnNcbiAqIHJlZ3VsYXIgIC0tICBhbnkvYWxsIHR5cGVzIG9mIGRldmljZVxuICpcbiAqIFRoZXNlIG5hbWVzcGFjZXMgYXJlIHRoZW4gdXNlZCBpbiB0aGUgbGlicmFyeSB0byBnaXZlIHlvdSB0aGUgYWJpbGl0eSB0b1xuICogbWFuaXB1bGF0ZSB5b3VyIGxheW91dHMgYmFzZWQgYXJvdW5kIHRoZW0sIGZvciBleGFtcGxlOlxuICpcbiAgIDxkaXYgY2xhc3M9XCJncmlkX19pdGVtICBjb2wtMS0xICBsYXAtLWNvbC0xLTIgIGRlc2stLWNvbC0xLTNcIj5cbiAqXG4gKiBUaGlzIHdvdWxkIGdpdmUgeW91IGEgZ3JpZCBpdGVtIHdoaWNoIGlzIDEwMCUgd2lkdGggdW5sZXNzIGl0IGlzIG9uIGEgbGFwXG4gKiBkZXZpY2UsIGF0IHdoaWNoIHBvaW50IGl0IGJlY29tZSA1MCUgd2lkZSwgb3IgaXQgaXMgb24gYSBkZXNrdG9wIGRldmljZSwgYXRcbiAqIHdoaWNoIHBvaW50IGl0IGJlY29tZXMgMzMuMzMzJSB3aWR0aC5cbiAqXG4gKiBjc3N3aXphcmRyeSBncmlkcyBhbHNvIGhhcyBwdXNoIGFuZCBwdWxsIGNsYXNzZXMgd2hpY2ggYWxsb3cgeW91IHRvIG51ZGdlXG4gKiBncmlkIGl0ZW1zIGxlZnQgYW5kIHJpZ2h0IGJ5IGEgZGVmaW5lZCBhbW91bnQuIFRoZXNlIGZvbGxvdyB0aGUgc2FtZSBuYW1pbmdcbiAqIGNvbnZlbnRpb24gYXMgYWJvdmUsIGJ1dCBhcmUgcHJlcGVuZGVkIGJ5IGVpdGhlciBgcHVzaC0tYCBvciBgcHVsbC0tYCwgZm9yXG4gKiBleGFtcGxlOlxuICpcbiAgIGBjbGFzcz1cImdyaWRfX2l0ZW0gIGNvbC0xLTIgIHB1c2gtLWNvbC0xLTJcImBcbiAqXG4gKiBUaGlzIHdvdWxkIGdpdmUgeW91IGEgZ3JpZCBpdGVtIHdoaWNoIGlzIDUwJSB3aWR0aCBhbmQgcHVzaGVkIG92ZXIgdG8gdGhlXG4gKiByaWdodCBieSA1MCUuXG4gKlxuICogQWxsIGNsYXNzZXMgaW4gY3Nzd2l6YXJkcnkgZ3JpZHMgZm9sbG93IHRoaXMgcGF0dGVuLCBzbyB5b3Ugc2hvdWxkIGZhaXJseVxuICogcXVpY2tseSBiZSBhYmxlIHRvIHBpZWNlIHRvZ2V0aGVyIGFueSBjb21iaW5hdGlvbnMgeW91IGNhbiBpbWFnaW5lLCBmb3JcbiAqIGV4YW1wbGU6XG4gKlxuICAgYGNsYXNzPVwiZ3JpZF9faXRlbSAgY29sLTEtMSAgbGFwLS1jb2wtMS0yICBkZXNrLS1jb2wtMS0zICBwdXNoLS1kZXNrLS1jb2wtMS0zXCJgXG4gKlxuICAgYGNsYXNzPVwiZ3JpZF9faXRlbSAgY29sLTEtNCAgcGFsbS0tY29sLTEtMiAgcHVzaC0tcGFsbS0tY29sLTEtMlwiYFxuICpcbiAgIGBjbGFzcz1cImdyaWRfX2l0ZW0gIHBhbG0tLWNvbC0xLTMgIGRlc2stLTUtMTJcImBcbiAqL1xuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdCRWQVJJQUJMRVNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIElmIHlvdSB3YW50IG51bWJlcnMgaW5zdGVhZCBvZiBuYW1lcyAoZXhhbXBsZSA6ICdvbmUtd2hvbGUnIGJlY29tZXMgJzEtMScsICd0aGlyZC1xdWFydGVyJyBiZWNvbWVzICczLTQnIGV0Yy4uLilcbiAqL1xuJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8qKlxuICogV2hlbiB0aGUgZmlyc3QgY2hhciBvZiBhIGNsYXNzIGlzIGEgZGlnaXQsIHlvdSBuZWVkIHRvIGNvbnZlcnQgaXQgdG8gaGlzIHVuaWNvZGVcbiAqIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzIxMjI5OTAxXG4gKiBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLXN5bnRheC8jZXNjYXBpbmdcbiAqXG4gKiBCdXQgU2FzcyBkb2Vzbid0IHN1cHBvcnQgaXQgeWV0Li4uXG4gKiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yNTVcbiAqXG4gKiBTbyB3aGlsZSB3YWl0aW5nIGZvciB0aGlzIGlzIHBvc3NpYmxlLCB0aGlzIGlzIHRoZSBjb2RlLlxuICovXG4kZ3JpZC1pdGVtLXByZWZpeDogJ2NvbC0nO1xuXG4kb25lOiAgICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgI3skZ3JpZC1pdGVtLXByZWZpeH0xLCBcIm9uZVwiKTtcbiR0d286ICAgICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCAjeyRncmlkLWl0ZW0tcHJlZml4fTIsIFwidHdvXCIpO1xuJHRocmVlOiAgICAgaWYoJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXMsICN7JGdyaWQtaXRlbS1wcmVmaXh9MywgXCJ0aHJlZVwiKTtcbiRmb3VyOiAgICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCAjeyRncmlkLWl0ZW0tcHJlZml4fTQsIFwiZm91clwiKTtcbiRmaXZlOiAgICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCAjeyRncmlkLWl0ZW0tcHJlZml4fTUsIFwiZml2ZVwiKTtcbiRzaXg6ICAgICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCAjeyRncmlkLWl0ZW0tcHJlZml4fTYsIFwic2l4XCIpO1xuJHNldmVuOiAgICAgaWYoJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXMsICN7JGdyaWQtaXRlbS1wcmVmaXh9NywgXCJzZXZlblwiKTtcbiRlaWdodDogICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCAjeyRncmlkLWl0ZW0tcHJlZml4fTgsIFwiZWlnaHRcIik7XG4kbmluZTogICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgI3skZ3JpZC1pdGVtLXByZWZpeH05LCBcIm5pbmVcIik7XG4kdGVuOiAgICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgI3skZ3JpZC1pdGVtLXByZWZpeH0xMCwgXCJ0ZW5cIik7XG4kZWxldmVuOiAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgI3skZ3JpZC1pdGVtLXByZWZpeH0xMSwgXCJlbGV2ZW5cIik7XG5cbiR3aG9sZTogICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCBcIjFcIiwgXCJ3aG9sZVwiKTtcbiRoYWxmOiAgICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCBcIjJcIiwgXCJoYWxmXCIpO1xuJHRoaXJkOiAgICAgaWYoJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXMsIFwiM1wiLCBcInRoaXJkXCIpO1xuJHF1YXJ0ZXI6ICAgaWYoJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXMsIFwiNFwiLCBcInF1YXJ0ZXJcIik7XG4kZmlmdGg6ICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgXCI1XCIsIFwiZmlmdGhcIik7XG4kc2l4dGg6ICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgXCI2XCIsIFwic2l4dGhcIik7XG4kc2V2ZW50aDogICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgXCI3XCIsIFwic2V2ZW50aFwiKTtcbiRlaWdodGg6ICAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCBcIjhcIiwgXCJlaWdodGhcIik7XG4kbmludGg6ICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgXCI5XCIsIFwibmludGhcIik7XG4kdGVudGg6ICAgICBpZigkdXNlLW51bWJlcnMtaW5zdGVhZC1uYW1lcywgXCIxMFwiLCBcInRlbnRoXCIpO1xuJGVsZXZlbnRoOiAgaWYoJHVzZS1udW1iZXJzLWluc3RlYWQtbmFtZXMsIFwiMTFcIiwgXCJlbGV2ZW50aFwiKTtcbiR0d2VsZnRoOiAgIGlmKCR1c2UtbnVtYmVycy1pbnN0ZWFkLW5hbWVzLCBcIjEyXCIsIFwidHdlbGZ0aFwiKTtcblxuXG4vKipcbiAqIElmIHlvdSBhcmUgYnVpbGRpbmcgYSBub24tcmVzcG9uc2l2ZSBzaXRlIGJ1dCB3b3VsZCBzdGlsbCBsaWtlIHRvIHVzZVxuICogY3Nzd2l6YXJkcnktZ3JpZHMsIHNldCB0aGlzIHRvIOKAmGZhbHNl4oCZOlxuICovXG4kcmVzcG9uc2l2ZTogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8qKlxuICogSXMgdGhpcyBidWlsZCBtb2JpbGUgZmlyc3Q/IFNldHRpbmcgdG8g4oCYdHJ1ZeKAmSBtZWFucyB0aGF0IGFsbCBncmlkcyB3aWxsIGJlXG4gKiAxMDAlIHdpZHRoIGlmIHlvdSBkbyBub3QgYXBwbHkgYSBtb3JlIHNwZWNpZmljIGNsYXNzIHRvIHRoZW0uXG4gKi9cbiRtb2JpbGUtZmlyc3Q6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBTZXQgdGhlIHNwYWNpbmcgYmV0d2VlbiB5b3VyIGdyaWQgaXRlbXMuXG4gKi9cbiRndXR0ZXI6ICAgICAgICAgICAgICAgICRiYXNlLXBhZ2UtZ3V0dGVyICFkZWZhdWx0OyAvLyAyMHB4XG5cblxuLyoqXG4gKiBXb3VsZCB5b3UgbGlrZSBTYXNz4oCZIHNpbGVudCBjbGFzc2VzLCBvciByZWd1bGFyIENTUyBjbGFzc2VzP1xuICovXG4kdXNlLXNpbGVudC1jbGFzc2VzOiAgICBmYWxzZSAhZGVmYXVsdDtcblxuXG4vKipcbiAqIFdvdWxkIHlvdSBsaWtlIHB1c2ggYW5kIHB1bGwgY2xhc3NlcyBlbmFibGVkP1xuICovXG4kcHVzaDogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJHB1bGw6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vKipcbiAqIFVzaW5nIGBpbmxpbmUtYmxvY2tgIG1lYW5zIHRoYXQgdGhlIGdyaWQgaXRlbXMgbmVlZCB0aGVpciB3aGl0ZXNwYWNlIHJlbW92aW5nXG4gKiBpbiBvcmRlciBmb3IgdGhlbSB0byB3b3JrIGNvcnJlY3RseS4gU2V0IHRoZSBmb2xsb3dpbmcgdG8gdHJ1ZSBpZiB5b3UgYXJlXG4gKiBnb2luZyB0byBhY2hpZXZlIHRoaXMgYnkgbWFudWFsbHkgcmVtb3ZpbmcvY29tbWVudGluZyBvdXQgYW55IHdoaXRlc3BhY2UgaW5cbiAqIHlvdXIgSFRNTCB5b3Vyc2VsZi5cbiAqXG4gKiBTZXR0aW5nIHRoaXMgdG8gZmFsc2UgaW52b2tlcyBhIGhhY2sgd2hpY2ggY2Fubm90IGFsd2F5cyBiZSBndWFyYW50ZWVkLFxuICogcGxlYXNlIHNlZSB0aGUgZm9sbG93aW5nIGZvciBtb3JlIGRldGFpbDpcbiAqXG4gKiBnaXRodWIuY29tL2Nzc3dpemFyZHJ5L2Nzc3dpemFyZHJ5LWdyaWRzL2NvbW1pdC83NDRkNGIyM2M5ZDJiNzdkNjA1YjU5OTFlNTRhMzk3ZGY3MmUwNjg4XG4gKiBnaXRodWIuY29tL2Nzc3dpemFyZHJ5L2ludWl0LmNzcy9pc3N1ZXMvMTcwI2lzc3VlY29tbWVudC0xNDg1OTM3MVxuICovXG4kdXNlLW1hcmt1cC1maXg6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8qKlxuICogRGVmaW5lIHlvdXIgYnJlYWtwb2ludHMuIFRoZSBmaXJzdCB2YWx1ZSBpcyB0aGUgcHJlZml4IHRoYXQgc2hhbGwgYmUgdXNlZCBmb3JcbiAqIHlvdXIgY2xhc3NlcyAoZS5nLiBgLnBhbG0tLW9uZS1oYWxmYCksIHRoZSBzZWNvbmQgdmFsdWUgaXMgdGhlIG1lZGlhIHF1ZXJ5XG4gKiB0aGF0IHRoZSBicmVha3BvaW50IGZpcmVzIGF0LlxuICpcbiAqICAgICAgcGhvbmUtcG9ydHJhaXQgPSAyMGVtICAgPSAzMjBweFxuICogICAgIHBob25lLWxhbmRzY2FwZSA9IDMwZW0gICA9IDQ4MHB4XG4gKiAgIHRhYmxldC1TLXBvcnRyYWl0ID0gMzcuNWVtID0gNjAwcHhcbiAqICAgdGFibGV0LU0tcG9ydHJhaXQgPSA0OGVtICAgPSA3NjhweFxuICogICB0YWJsZXQtTC1wb3J0cmFpdCA9IDYwZW0gICA9IDk2MHB4XG4gKiAgIGRlc2t0b3AtbGFuZHNjYXBlID0gNjRlbSAgID0gMTAyNHB4XG4gKiBkZXNrdG9wLUwtbGFuZHNjYXBlID0gODBlbSAgID0gMTI4MHB4XG4gKi9cbiRicmVha3BvaW50czogKFxuXHQneHMnICcobWluLXdpZHRoOiAzMGVtKScsXG5cdCdzJyAnKG1pbi13aWR0aDogMzcuNWVtKScsXG5cdCdtJyAnKG1pbi13aWR0aDogNDhlbSknLFxuXHQnbCcgJyhtaW4td2lkdGg6IDY0ZW0pJyxcblx0J3hsJyAnKG1pbi13aWR0aDogODBlbSknXG5cdCd4bCcgJyhtaW4td2lkdGg6IDkwZW0pJ1xuKSAhZGVmYXVsdDtcblxuXG4vKipcbiAqIERlZmluZSB3aGljaCBuYW1lc3BhY2VkIGJyZWFrcG9pbnRzIHlvdSB3b3VsZCBsaWtlIHRvIGdlbmVyYXRlIGZvciBlYWNoIG9mXG4gKiB3aWR0aHMsIHB1c2ggYW5kIHB1bGwuIFRoaXMgaXMgaGFuZHkgaWYgeW91IG9ubHkgbmVlZCBwdWxsIG9uLCBzYXksIGRlc2ssIG9yXG4gKiB5b3Ugb25seSBuZWVkIGEgbmV3IHdpZHRoIGJyZWFrcG9pbnQgYXQgbW9iaWxlIHNpemVzLiBJdCBhbGxvd3MgeW91IHRvIG9ubHlcbiAqIGNvbXBpbGUgYXMgbXVjaCBDU1MgYXMgeW91IG5lZWQuIEFsbCBhcmUgdHVybmVkIG9uIGJ5IGRlZmF1bHQsIGJ1dCB5b3UgY2FuXG4gKiBhZGQgYW5kIHJlbW92ZSBicmVha3BvaW50cyBhdCB3aWxsLlxuICpcbiAqIFB1c2ggYW5kIHB1bGwgc2hhbGwgb25seSBiZSB1c2VkIGlmIGAkcHVzaGAgYW5kL29yIGAkcHVsbGAgYW5kIGAkcmVzcG9uc2l2ZWBcbiAqIGhhdmUgYmVlbiBzZXQgdG8g4oCYdHJ1ZeKAmS5cbiAqL1xuJGJyZWFrcG9pbnQtaGFzLXdpZHRoczogKCd4cycsICdzJywgJ20nLCAnbCcsICd4bCcpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtaGFzLXB1c2g6ICAgKCd4cycsICdzJywgJ20nLCAnbCcsICd4bCcpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtaGFzLXB1bGw6ICAgKCd4cycsICdzJywgJ20nLCAnbCcsICd4bCcpICFkZWZhdWx0O1xuXG5cbi8qKlxuICogWW91IGRvIG5vdCBuZWVkIHRvIGVkaXQgYW55dGhpbmcgZnJvbSB0aGlzIGxpbmUgb253YXJkOyBjc3N3aXphcmRyeS1ncmlkcyBpc1xuICogZ29vZCB0byBnby4gSGFwcHkgZ3JpZGRpbuKAmSFcbiAqL1xuJGNsYXNzLXR5cGU6IGlmKCR1c2Utc2lsZW50LWNsYXNzZXMsIHVucXVvdGUoXCIlXCIpLCB1bnF1b3RlKFwiLlwiKSk7XG5cblxuXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0JE1JWElOU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogVGhlc2UgbWl4aW5zIGFyZSBmb3IgdGhlIGxpYnJhcnkgdG8gdXNlIG9ubHksIHlvdSBzaG91bGQgbm90IG5lZWQgdG8gbW9kaWZ5XG4gKiB0aGVtIGF0IGFsbC5cbiAqXG4gKiBFbmNsb3NlIGEgYmxvY2sgb2YgY29kZSB3aXRoIGEgbWVkaWEgcXVlcnkgYXMgbmFtZWQgaW4gYCRicmVha3BvaW50c2AuXG4gKi9cbkBtaXhpbiBncmlkLW1lZGlhLXF1ZXJ5KCRtZWRpYS1xdWVyeSkge1xuXHQkYnJlYWtwb2ludC1mb3VuZDogZmFsc2U7XG5cblx0QGVhY2ggJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcblx0XHQkbmFtZTogbnRoKCRicmVha3BvaW50LCAxKTtcblx0XHQkZGVjbGFyYXRpb246IG50aCgkYnJlYWtwb2ludCwgMik7XG5cblx0XHRAaWYgJG1lZGlhLXF1ZXJ5ID09ICRuYW1lIGFuZCAkZGVjbGFyYXRpb24ge1xuXHRcdFx0JGJyZWFrcG9pbnQtZm91bmQ6IHRydWU7XG5cblx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgI3skZGVjbGFyYXRpb259IHtcblx0XHRcdFx0QGNvbnRlbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGlmIG5vdCAkYnJlYWtwb2ludC1mb3VuZCB7XG5cdFx0QHdhcm4gXCJCcmVha3BvaW50IOKAmCN7JG1lZGlhLXF1ZXJ5feKAmSBkb2VzIG5vdCBleGlzdFwiO1xuXHR9XG59XG5cblxuLyoqXG4gKiBEcm9wIHJlbGF0aXZlIHBvc2l0aW9uaW5nIGludG8gc2lsZW50IGNsYXNzZXMgd2hpY2ggY2Fu4oCZdCB0YWtlIGFkdmFudGFnZSBvZlxuICogdGhlIGBbY2xhc3MqPVwicHVzaC0tXCJdYCBhbmQgYFtjbGFzcyo9XCJwdWxsLS1cIl1gIHNlbGVjdG9ycy5cbiAqL1xuQG1peGluIHNpbGVudC1yZWxhdGl2ZSB7XG5cdEBpZiAkdXNlLXNpbGVudC1jbGFzc2VzIHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0fVxufVxuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdCRHUklEIFNFVFVQXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiAxLiBBbGxvdyB0aGUgZ3JpZCBzeXN0ZW0gdG8gYmUgdXNlZCBvbiBsaXN0cy5cbiAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuICogMy4gQXBwbHkgYSBuZWdhdGl2ZSBgbWFyZ2luLWxlZnRgIHRvIG5lZ2F0ZSB0aGUgY29sdW1uc+KAmSBndXR0ZXJzLlxuICovXG4jeyRjbGFzcy10eXBlfWdyaWQge1xuXHRsaXN0LXN0eWxlOm5vbmU7ICAgICAgICAgICAgICAgIC8qIFsxXSAqL1xuXHRtYXJnaW46MDsgICAgICAgICAgICAgICAgICAgICAgIC8qIFsyXSAqL1xuXHRwYWRkaW5nOjA7ICAgICAgICAgICAgICAgICAgICAgIC8qIFsyXSAqL1xuXHRtYXJnaW4tbGVmdDotJGd1dHRlcjsgICAgICAgICAgIC8qIFszXSAqL1xuXHRAaWYgbm90ICR1c2UtbWFya3VwLWZpeCB7XG5cdFx0bGV0dGVyLXNwYWNpbmc6LTAuMzJlbTtcblx0fVxufVxuXG5AaWYgbm90ICR1c2UtbWFya3VwLWZpeCB7XG5cdC8qIE9wZXJhIGhhY2sgKi9cblx0Lm9wZXJhOi1vLXByZWZvY3VzLFxuXHQjeyRjbGFzcy10eXBlfWdyaWQge1xuXHRcdHdvcmQtc3BhY2luZzotMC40M2VtO1xuXHR9XG59XG5cblxuLyoqXG4gKiAxLiBDYXVzZSBjb2x1bW5zIHRvIHN0YWNrIHNpZGUtYnktc2lkZS5cbiAqIDIuIFNwYWNlIGNvbHVtbnMgYXBhcnQuXG4gKiAzLiBBbGlnbiBjb2x1bW5zIHRvIHRoZSB0b3BzIG9mIGVhY2ggb3RoZXIuXG4gKiA0LiBGdWxsLXdpZHRoIHVubGVzcyB0b2xkIHRvIGJlaGF2ZSBvdGhlcndpc2UuXG4gKiA1LiBSZXF1aXJlZCB0byBjb21iaW5lIGZsdWlkIHdpZHRocyBhbmQgZml4ZWQgZ3V0dGVycy5cbiAqL1xuI3skY2xhc3MtdHlwZX1ncmlkX19pdGVtIHtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7ICAgICAgICAgICAvKiBbMV0gKi9cblx0cGFkZGluZy1sZWZ0OiRndXR0ZXI7ICAgICAgICAgICAvKiBbMl0gKi9cblx0dmVydGljYWwtYWxpZ246dG9wOyAgICAgICAgICAgICAvKiBbM10gKi9cblx0QGlmICRtb2JpbGUtZmlyc3Qge1xuXHRcdHdpZHRoOjEwMCU7ICAgICAgICAgICAgICAgICAvKiBbNF0gKi9cblx0fVxuXHQtd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDsgIC8qIFs1XSAqL1xuXHQgICAtbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDsgIC8qIFs1XSAqL1xuXHRcdFx0Ym94LXNpemluZzpib3JkZXItYm94OyAgLyogWzVdICovXG5cdEBpZiBub3QgJHVzZS1tYXJrdXAtZml4IHtcblx0XHRsZXR0ZXItc3BhY2luZzpub3JtYWw7XG5cdFx0d29yZC1zcGFjaW5nOm5vcm1hbDtcblx0fVxufVxuXG5cbi8qKlxuICogUmV2ZXJzZWQgZ3JpZHMgYWxsb3cgeW91IHRvIHN0cnVjdHVyZSB5b3VyIHNvdXJjZSBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgdG9cbiAqIGhvdyB5b3VyIHJlbmRlcmVkIGxheW91dCB3aWxsIGFwcGVhci4gRXh0ZW5kcyBgLmdyaWRgLlxuICovXG4jeyRjbGFzcy10eXBlfWdyaWQtLXJldiB7XG5cdGRpcmVjdGlvbjpydGw7XG5cdHRleHQtYWxpZ246bGVmdDtcblxuXHQ+ICN7JGNsYXNzLXR5cGV9Z3JpZF9faXRlbSB7XG5cdFx0ZGlyZWN0aW9uOmx0cjtcblx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdH1cbn1cblxuXG4vKipcbiAqIEd1dHRlcmxlc3MgZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG4gKiBFeHRlbmRzIGAuZ3JpZGAuXG4gKi9cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tZnVsbCB7XG5cdG1hcmdpbi1sZWZ0OjA7XG5cblx0PiAjeyRjbGFzcy10eXBlfWdyaWRfX2l0ZW0ge1xuXHRcdHBhZGRpbmctbGVmdDowO1xuXHR9XG59XG5cblxuLyoqXG4gKiBBbGlnbiB0aGUgZW50aXJlIGdyaWQgdG8gdGhlIHJpZ2h0LiBFeHRlbmRzIGAuZ3JpZGAuXG4gKi9cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tcmlnaHQge1xuXHR0ZXh0LWFsaWduOnJpZ2h0O1xuXG5cdD4gI3skY2xhc3MtdHlwZX1ncmlkX19pdGVtIHtcblx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdH1cbn1cblxuXG4vKipcbiAqIENlbnRlcmVkIGdyaWRzIGFsaWduIGdyaWQgaXRlbXMgY2VudHJhbGx5IHdpdGhvdXQgbmVlZGluZyB0byB1c2UgcHVzaCBvciBwdWxsXG4gKiBjbGFzc2VzLiBFeHRlbmRzIGAuZ3JpZGAuXG4gKi9cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tY2VudGVyIHtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cblx0PiAjeyRjbGFzcy10eXBlfWdyaWRfX2l0ZW0ge1xuXHRcdHRleHQtYWxpZ246bGVmdDtcblx0XHQmLnRleHQtY2VudGVyIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqIEFsaWduIGdyaWQgY2VsbHMgdmVydGljYWxseSAoYC5ncmlkLS1taWRkbGVgIG9yIGAuZ3JpZC0tYm90dG9tYCkuIEV4dGVuZHNcbiAqIGAuZ3JpZGAuXG4gKi9cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tbWlkZGxlIHtcblxuXHQ+ICN7JGNsYXNzLXR5cGV9Z3JpZF9faXRlbSB7XG5cdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xuXHR9XG59XG5cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tYm90dG9tIHtcblxuXHQ+ICN7JGNsYXNzLXR5cGV9Z3JpZF9faXRlbSB7XG5cdFx0dmVydGljYWwtYWxpZ246Ym90dG9tO1xuXHR9XG59XG5cblxuLyoqXG4gKiBDcmVhdGUgZ3JpZHMgd2l0aCBuYXJyb3dlciBndXR0ZXJzLiBFeHRlbmRzIGAuZ3JpZGAuXG4gKi9cbiN7JGNsYXNzLXR5cGV9Z3JpZC0tbmFycm93IHtcblx0bWFyZ2luLWxlZnQ6LSgkZ3V0dGVyIC8gMik7XG5cblx0PiAjeyRjbGFzcy10eXBlfWdyaWRfX2l0ZW0ge1xuXHRcdHBhZGRpbmctbGVmdDokZ3V0dGVyIC8gMjtcblx0fVxufVxuXG5cbi8qKlxuICogQ3JlYXRlIGdyaWRzIHdpdGggd2lkZXIgZ3V0dGVycy4gRXh0ZW5kcyBgLmdyaWRgLlxuICovXG4jeyRjbGFzcy10eXBlfWdyaWQtLXdpZGUge1xuXHRtYXJnaW4tbGVmdDotKCRndXR0ZXIgKiAyKTtcblxuXHQ+ICN7JGNsYXNzLXR5cGV9Z3JpZF9faXRlbSB7XG5cdFx0cGFkZGluZy1sZWZ0OiRndXR0ZXIgKiAyO1xuXHR9XG59XG5cblxuXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0JFdJRFRIU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ3JlYXRlIG91ciB3aWR0aCBjbGFzc2VzLCBwcmVmaXhlZCBieSB0aGUgc3BlY2lmaWVkIG5hbWVzcGFjZS5cbiAqL1xuQG1peGluIGRldmljZS10eXBlKCRuYW1lc3BhY2U6XCJcIikge1xuXHQkcHJlZml4OiAkY2xhc3MtdHlwZSArICRuYW1lc3BhY2U7XG5cblx0LyoqXG5cdCAqIFdob2xlXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR3aG9sZX0gICAgICAgICB7IHdpZHRoOjEwMCU7IH1cblxuXG5cdC8qKlxuXHQgKiBIYWx2ZXNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGhhbGZ9ICAgICAgICAgIHsgd2lkdGg6NTAlOyB9XG5cblxuXHQvKipcblx0ICogVGhpcmRzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH0gICAgICAgICB7IHdpZHRoOjMzLjMzMyU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skdGhpcmR9ICAgICAgICB7IHdpZHRoOjY2LjY2NiU7IH1cblxuXG5cdC8qKlxuXHQgKiBRdWFydGVyc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skcXVhcnRlcn0gICAgICAgeyB3aWR0aDoyNSU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skcXVhcnRlcn0gICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn07IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyRxdWFydGVyfSAgICB7IHdpZHRoOjc1JTsgfVxuXG5cblx0LyoqXG5cdCAqIEZpZnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skZmlmdGh9ICAgICAgICAgeyB3aWR0aDoyMCU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skZmlmdGh9ICAgICAgICB7IHdpZHRoOjQwJTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JGZpZnRofSAgICAgIHsgd2lkdGg6NjAlOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRmaWZ0aH0gICAgICAgeyB3aWR0aDo4MCU7IH1cblxuXG5cdC8qKlxuXHQgKiBTaXh0aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHNpeHRofSAgICAgICAgIHsgd2lkdGg6MTYuNjY2JTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRzaXh0aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyRzaXh0aH0gICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn07IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JHNpeHRofSAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JHR3b30tI3skdGhpcmR9OyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRzaXh0aH0gICAgICAgeyB3aWR0aDo4My4zMzMlOyB9XG5cblxuXHQvKipcblx0ICogU2V2ZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHNldmVudGh9ICAgICAgIHsgd2lkdGg6MTQuMjg1NyU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skc2V2ZW50aH0gICAgICB7IHdpZHRoOjI4LjU3MTQlOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skc2V2ZW50aH0gICAgeyB3aWR0aDo0Mi44NTcxJTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skc2V2ZW50aH0gICAgIHsgd2lkdGg6NTcuMTQyOCU7IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHNldmVudGh9ICAgICB7IHdpZHRoOjcxLjQyODUlOyB9XG5cdCN7JHByZWZpeH0jeyRzaXh9LSN7JHNldmVudGh9ICAgICAgeyB3aWR0aDo4NS43MTQyJTsgfVxuXG5cblx0LyoqXG5cdCAqIEVpZ2h0aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGVpZ2h0aH0gICAgICAgIHsgd2lkdGg6MTIuNSU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skZWlnaHRofSAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skcXVhcnRlcn07IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyRlaWdodGh9ICAgICB7IHdpZHRoOjM3LjUlOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRlaWdodGh9ICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JGhhbGZ9OyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRlaWdodGh9ICAgICAgeyB3aWR0aDo2Mi41JTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRlaWdodGh9ICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHF1YXJ0ZXJ9OyB9XG5cdCN7JHByZWZpeH0jeyRzZXZlbn0tI3skZWlnaHRofSAgICAgeyB3aWR0aDo4Ny41JTsgfVxuXG5cblx0LyoqXG5cdCAqIE5pbnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skbmludGh9ICAgICAgICAgeyB3aWR0aDoxMS4xMTElOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JG5pbnRofSAgICAgICAgeyB3aWR0aDoyMi4yMjIlOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skbmludGh9ICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skbmludGh9ICAgICAgIHsgd2lkdGg6NDQuNDQ0JTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skbmludGh9ICAgICAgIHsgd2lkdGg6NTUuNTU1JTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRuaW50aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JHNldmVufS0jeyRuaW50aH0gICAgICB7IHdpZHRoOjc3Ljc3NyU7IH1cblx0I3skcHJlZml4fSN7JGVpZ2h0fS0jeyRuaW50aH0gICAgICB7IHdpZHRoOjg4Ljg4OCU7IH1cblxuXG5cdC8qKlxuXHQgKiBUZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHRlbnRofSAgICAgICAgIHsgd2lkdGg6MTAlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHRlbnRofSAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JGZpZnRofTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHRlbnRofSAgICAgIHsgd2lkdGg6MzAlOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyR0ZW50aH0gICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0d299LSN7JGZpZnRofTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skdGVudGh9ICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyR0ZW50aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdGhyZWV9LSN7JGZpZnRofTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JHRlbnRofSAgICAgIHsgd2lkdGg6NzAlOyB9XG5cdCN7JHByZWZpeH0jeyRlaWdodH0tI3skdGVudGh9ICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRmb3VyfS0jeyRmaWZ0aH07IH1cblx0I3skcHJlZml4fSN7JG5pbmV9LSN7JHRlbnRofSAgICAgICB7IHdpZHRoOjkwJTsgfVxuXG5cblx0LyoqXG5cdCAqIEVsZXZlbnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skZWxldmVudGh9ICAgICAgIHsgd2lkdGg6OS4wOTA5JTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRlbGV2ZW50aH0gICAgICB7IHdpZHRoOjE4LjE4MTglOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skZWxldmVudGh9ICAgIHsgd2lkdGg6MjcuMjcyNyU7IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JGVsZXZlbnRofSAgICAgeyB3aWR0aDozNi4zNjM2JTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skZWxldmVudGh9ICAgICB7IHdpZHRoOjQ1LjQ1NDUlOyB9XG5cdCN7JHByZWZpeH0jeyRzaXh9LSN7JGVsZXZlbnRofSAgICAgIHsgd2lkdGg6NTQuNTQ1NCU7IH1cblx0I3skcHJlZml4fSN7JHNldmVufS0jeyRlbGV2ZW50aH0gICAgeyB3aWR0aDo2My42MzYzJTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JGVsZXZlbnRofSAgICB7IHdpZHRoOjcyLjcyNzIlOyB9XG5cdCN7JHByZWZpeH0jeyRuaW5lfS0jeyRlbGV2ZW50aH0gICAgIHsgd2lkdGg6ODEuODE4MSU7IH1cblx0I3skcHJlZml4fSN7JHRlbn0tI3skZWxldmVudGh9ICAgICAgeyB3aWR0aDo5MC45MDkwJTsgfVxuXG5cblx0LyoqXG5cdCAqIFR3ZWxmdGhzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR0d2VsZnRofSAgICAgICB7IHdpZHRoOjguMzMzJTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyR0d2VsZnRofSAgICAgIHsgd2lkdGg6MTYuNjY2JTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHR3ZWxmdGh9ICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRxdWFydGVyfTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skdHdlbGZ0aH0gICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHR3ZWxmdGh9ICAgICB7IHdpZHRoOjQxLjY2NiUgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyR0d2VsZnRofSAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JHR3ZWxmdGh9ICAgIHsgd2lkdGg6NTguMzMzJTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JHR3ZWxmdGh9ICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JG5pbmV9LSN7JHR3ZWxmdGh9ICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JHRocmVlfS0jeyRxdWFydGVyfTsgfVxuXHQjeyRwcmVmaXh9I3skdGVufS0jeyR0d2VsZnRofSAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skZml2ZX0tI3skc2l4dGh9OyB9XG5cdCN7JHByZWZpeH0jeyRlbGV2ZW59LSN7JHR3ZWxmdGh9ICAgeyB3aWR0aDo5MS42NjYlOyB9XG59XG5cblxuXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgJEhFTFBFUlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIENyZWF0ZSBoZWxwZXIgc2hvdy9oaWRlIGNsYXNzZXMsIHByZWZpeGVkIGJ5IHRoZSBzcGVjaWZpZWQgbmFtZXNwYWNlLlxuICovXG5AbWl4aW4gZGV2aWNlLWhlbHBlcigkbmFtZXNwYWNlOlwiXCIpIHtcblx0I3skY2xhc3MtdHlwZX0jeyRuYW1lc3BhY2V9c2hvdyAgICAgeyBkaXNwbGF5OmlubGluZS1ibG9jazsgfVxuXHQjeyRjbGFzcy10eXBlfSN7JG5hbWVzcGFjZX1oaWRlICAgICB7IGRpc3BsYXk6bm9uZTsgfVxufVxuXG5cbi8qKlxuICogT3VyIHJlZ3VsYXIsIG5vbi1yZXNwb25zaXZlIHdpZHRoIGNsYXNzZXMuXG4gKi9cbkBpbmNsdWRlIGRldmljZS10eXBlO1xuQGluY2x1ZGUgZGV2aWNlLWhlbHBlcjtcblxuXG4vKipcbiAqIE91ciByZXNwb25zaXZlIGNsYXNzZXMsIGlmIHdlIGhhdmUgZW5hYmxlZCB0aGVtLlxuICovXG5AaWYgJHJlc3BvbnNpdmUge1xuXHRAZWFjaCAkbmFtZSBpbiAkYnJlYWtwb2ludC1oYXMtd2lkdGhzIHtcblx0XHRAaW5jbHVkZSBncmlkLW1lZGlhLXF1ZXJ5KCRuYW1lKSB7XG5cdFx0XHRAaW5jbHVkZSBkZXZpY2UtdHlwZSgnI3skbmFtZX0tLScpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGdyaWQtbWVkaWEtcXVlcnkoJG5hbWUpIHtcblx0XHRcdEBpbmNsdWRlIGRldmljZS1oZWxwZXIoJyN7JG5hbWV9LS0nKTtcblx0XHR9XG5cdH1cbn1cblxuXG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHQkUFVTSFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogUHVzaCBjbGFzc2VzLCB0byBtb3ZlIGdyaWQgaXRlbXMgb3ZlciB0byB0aGUgcmlnaHQgYnkgY2VydGFpbiBhbW91bnRzLlxuICovXG5AbWl4aW4gcHVzaC1zZXR1cCgkbmFtZXNwYWNlOiBcIlwiKSB7XG5cdCRwcmVmaXg6ICRjbGFzcy10eXBlICsgXCJwdXNoLS1cIiArICRuYW1lc3BhY2U7XG5cblx0LyoqXG5cdCAqIFdob2xlXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR3aG9sZX0gICAgICAgICAgIHsgbGVmdDoxMDAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBIYWx2ZXNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGhhbGZ9ICAgICAgICAgICAgeyBsZWZ0OjUwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogVGhpcmRzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH0gICAgICAgICAgIHsgbGVmdDozMy4zMzMlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skdGhpcmR9ICAgICAgICAgIHsgbGVmdDo2Ni42NjYlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBRdWFydGVyc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skcXVhcnRlcn0gICAgICAgICB7IGxlZnQ6MjUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skcXVhcnRlcn0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHF1YXJ0ZXJ9ICAgICAgeyBsZWZ0Ojc1JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogRmlmdGhzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyRmaWZ0aH0gICAgICAgICAgIHsgbGVmdDoyMCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRmaWZ0aH0gICAgICAgICAgeyBsZWZ0OjQwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skZmlmdGh9ICAgICAgICB7IGxlZnQ6NjAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JGZpZnRofSAgICAgICAgIHsgbGVmdDo4MCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXG5cblx0LyoqXG5cdCAqIFNpeHRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skc2l4dGh9ICAgICAgICAgICB7IGxlZnQ6MTYuNjY2JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHNpeHRofSAgICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skdGhpcmR9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skc2l4dGh9ICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn07IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JHNpeHRofSAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHNpeHRofSAgICAgICAgIHsgbGVmdDo4My4zMzMlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBTZXZlbnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skc2V2ZW50aH0gICAgICAgICB7IGxlZnQ6MTQuMjg1NyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHNldmVudGh9ICAgICAgICB7IGxlZnQ6MjguNTcxNCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skc2V2ZW50aH0gICAgICB7IGxlZnQ6NDIuODU3MSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRzZXZlbnRofSAgICAgICB7IGxlZnQ6NTcuMTQyOCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRzZXZlbnRofSAgICAgICB7IGxlZnQ6NzEuNDI4NSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRzaXh9LSN7JHNldmVudGh9ICAgICAgICB7IGxlZnQ6ODUuNzE0MiU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cblxuXHQvKipcblx0ICogRWlnaHRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skZWlnaHRofSAgICAgICAgICB7IGxlZnQ6MTIuNSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRlaWdodGh9ICAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JHF1YXJ0ZXJ9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skZWlnaHRofSAgICAgICB7IGxlZnQ6MzcuNSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skZWlnaHRofSAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JGhhbGZ9OyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRlaWdodGh9ICAgICAgICB7IGxlZnQ6NjIuNSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRlaWdodGh9ICAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0aHJlZX0tI3skcXVhcnRlcn07IH1cblx0I3skcHJlZml4fSN7JHNldmVufS0jeyRlaWdodGh9ICAgICAgIHsgbGVmdDo4Ny41JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogTmludGhzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyRuaW50aH0gICAgICAgICAgIHsgbGVmdDoxMS4xMTElOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRuaW50aH0gICAgICAgICAgeyBsZWZ0OjIyLjIyMiU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skbmludGh9ICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skdGhpcmR9OyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRuaW50aH0gICAgICAgICB7IGxlZnQ6NDQuNDQ0JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlKCk7IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JG5pbnRofSAgICAgICAgIHsgbGVmdDo1NS41NTUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRuaW50aH0gICAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0d299LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JG5pbnRofSAgICAgICAgeyBsZWZ0Ojc3Ljc3NyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRlaWdodH0tI3skbmludGh9ICAgICAgICB7IGxlZnQ6ODguODg4JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlKCk7IH1cblxuXG5cdC8qKlxuXHQgKiBUZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHRlbnRofSAgICAgICAgICAgeyBsZWZ0OjEwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHRlbnRofSAgICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skZmlmdGh9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skdGVudGh9ICAgICAgICB7IGxlZnQ6MzAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JHRlbnRofSAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyRmaWZ0aH07IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHRlbnRofSAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyR0ZW50aH0gICAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0aHJlZX0tI3skZmlmdGh9OyB9XG5cdCN7JHByZWZpeH0jeyRzZXZlbn0tI3skdGVudGh9ICAgICAgICB7IGxlZnQ6NzAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JGVpZ2h0fS0jeyR0ZW50aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skZm91cn0tI3skZmlmdGh9OyB9XG5cdCN7JHByZWZpeH0jeyRuaW5lfS0jeyR0ZW50aH0gICAgICAgICB7IGxlZnQ6OTAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBFbGV2ZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGVsZXZlbnRofSAgICAgICAgeyBsZWZ0OjkuMDkwOSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JGVsZXZlbnRofSAgICAgICB7IGxlZnQ6MTguMTgxOCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skZWxldmVudGh9ICAgICB7IGxlZnQ6MjcuMjcyNyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRlbGV2ZW50aH0gICAgICB7IGxlZnQ6MzYuMzYzNiU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRlbGV2ZW50aH0gICAgICB7IGxlZnQ6NDUuNDU0NSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRzaXh9LSN7JGVsZXZlbnRofSAgICAgICB7IGxlZnQ6NTQuNTQ1NCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRzZXZlbn0tI3skZWxldmVudGh9ICAgICB7IGxlZnQ6NjMuNjM2MyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRlaWdodH0tI3skZWxldmVudGh9ICAgICB7IGxlZnQ6NzIuNzI3MiU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRuaW5lfS0jeyRlbGV2ZW50aH0gICAgICB7IGxlZnQ6ODEuODE4MSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0ZW59LSN7JGVsZXZlbnRofSAgICAgICB7IGxlZnQ6OTAuOTA5MCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cblxuXHQvKipcblx0ICogVHdlbGZ0aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHR3ZWxmdGh9ICAgICAgICAgeyBsZWZ0OjguMzMzJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHR3ZWxmdGh9ICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skc2l4dGh9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skdHdlbGZ0aH0gICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skcXVhcnRlcn07IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JHR3ZWxmdGh9ICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHR3ZWxmdGh9ICAgICAgIHsgbGVmdDo0MS42NjYlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHNpeH0tI3skdHdlbGZ0aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JHR3ZWxmdGh9ICAgICAgeyBsZWZ0OjU4LjMzMyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JHR3ZWxmdGh9ICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0d299LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skbmluZX0tI3skdHdlbGZ0aH0gICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0aHJlZX0tI3skcXVhcnRlcn07IH1cblx0I3skcHJlZml4fSN7JHRlbn0tI3skdHdlbGZ0aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skZml2ZX0tI3skc2l4dGh9OyB9XG5cdCN7JHByZWZpeH0jeyRlbGV2ZW59LSN7JHR3ZWxmdGh9ICAgICB7IGxlZnQ6OTEuNjY2JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG59XG5cbkBpZiAkcHVzaCB7XG5cblx0LyoqXG5cdCAqIE5vdCBhIHBhcnRpY3VsYXJseSBncmVhdCBzZWxlY3RvciwgYnV0IHRoZSBEUlllc3Qgd2F5IHRvIGRvIHRoaW5ncy5cblx0ICovXG5cdFtjbGFzcyo9XCJwdXNoLS1cIl0geyBwb3NpdGlvbjpyZWxhdGl2ZTsgfVxuXG5cdEBpbmNsdWRlIHB1c2gtc2V0dXA7XG5cblx0QGlmICRyZXNwb25zaXZlIHtcblx0XHRAZWFjaCAkbmFtZSBpbiAkYnJlYWtwb2ludC1oYXMtcHVzaCB7XG5cdFx0XHRAaW5jbHVkZSBncmlkLW1lZGlhLXF1ZXJ5KCRuYW1lKSB7XG5cdFx0XHRcdEBpbmNsdWRlIHB1c2gtc2V0dXAoJyN7JG5hbWV9LS0nKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdCRQVUxMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBQdWxsIGNsYXNzZXMsIHRvIG1vdmUgZ3JpZCBpdGVtcyBiYWNrIHRvIHRoZSBsZWZ0IGJ5IGNlcnRhaW4gYW1vdW50cy5cbiAqL1xuQG1peGluIHB1bGwtc2V0dXAoJG5hbWVzcGFjZTogXCJcIikge1xuXHQkcHJlZml4OiAkY2xhc3MtdHlwZSArIFwicHVsbC0tXCIgKyAkbmFtZXNwYWNlO1xuXG5cdC8qKlxuXHQgKiBXaG9sZVxuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skd2hvbGV9ICAgICAgICAgICB7IHJpZ2h0OjEwMCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXG5cblx0LyoqXG5cdCAqIEhhbHZlc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn0gICAgICAgICAgICB7IHJpZ2h0OjUwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogVGhpcmRzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR0aGlyZH0gICAgICAgICAgIHsgcmlnaHQ6MzMuMzMzJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHRoaXJkfSAgICAgICAgICB7IHJpZ2h0OjY2LjY2NiU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXG5cblx0LyoqXG5cdCAqIFF1YXJ0ZXJzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyRxdWFydGVyfSAgICAgICAgIHsgcmlnaHQ6MjUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skcXVhcnRlcn0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHF1YXJ0ZXJ9ICAgICAgeyByaWdodDo3NSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXG5cblx0LyoqXG5cdCAqIEZpZnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skZmlmdGh9ICAgICAgICAgICB7IHJpZ2h0OjIwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JGZpZnRofSAgICAgICAgICB7IHJpZ2h0OjQwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skZmlmdGh9ICAgICAgICB7IHJpZ2h0OjYwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRmaWZ0aH0gICAgICAgICB7IHJpZ2h0OjgwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogU2l4dGhzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyRzaXh0aH0gICAgICAgICAgIHsgcmlnaHQ6MTYuNjY2JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHNpeHRofSAgICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skdGhpcmR9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skc2l4dGh9ICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn07IH1cblx0I3skcHJlZml4fSN7JGZvdXJ9LSN7JHNpeHRofSAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JGZpdmV9LSN7JHNpeHRofSAgICAgICAgIHsgcmlnaHQ6ODMuMzMzJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cblxuXHQvKipcblx0ICogU2V2ZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JHNldmVudGh9ICAgICAgICAgeyBsZWZ0OjE0LjI4NTclOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRzZXZlbnRofSAgICAgICAgeyBsZWZ0OjI4LjU3MTQlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHNldmVudGh9ICAgICAgeyBsZWZ0OjQyLjg1NzElOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skc2V2ZW50aH0gICAgICAgeyBsZWZ0OjU3LjE0MjglOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skc2V2ZW50aH0gICAgICAgeyBsZWZ0OjcxLjQyODUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRzZXZlbnRofSAgICAgICAgeyBsZWZ0Ojg1LjcxNDIlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXG5cblx0LyoqXG5cdCAqIEVpZ2h0aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGVpZ2h0aH0gICAgICAgICAgeyByaWdodDoxMi41JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JGVpZ2h0aH0gICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skcXVhcnRlcn07IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyRlaWdodGh9ICAgICAgIHsgcmlnaHQ6MzcuNSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skZWlnaHRofSAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JGhhbGZ9OyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyRlaWdodGh9ICAgICAgICB7IHJpZ2h0OjYyLjUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHNpeH0tI3skZWlnaHRofSAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHF1YXJ0ZXJ9OyB9XG5cdCN7JHByZWZpeH0jeyRzZXZlbn0tI3skZWlnaHRofSAgICAgICB7IHJpZ2h0Ojg3LjUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBOaW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JG5pbnRofSAgICAgICAgICAgeyByaWdodDoxMS4xMTElOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRuaW50aH0gICAgICAgICAgeyByaWdodDoyMi4yMjIlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdGhyZWV9LSN7JG5pbnRofSAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skbmludGh9ICAgICAgICAgeyByaWdodDo0NC40NDQlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skbmludGh9ICAgICAgICAgeyByaWdodDo1NS41NTUlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skc2l4fS0jeyRuaW50aH0gICAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyR0d299LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JG5pbnRofSAgICAgICAgeyByaWdodDo3Ny43NzclOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JG5pbnRofSAgICAgICAgeyByaWdodDo4OC44ODglOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXG5cblx0LyoqXG5cdCAqIFRlbnRoc1xuXHQgKi9cblx0I3skcHJlZml4fSN7JG9uZX0tI3skdGVudGh9ICAgICAgICAgICB7IHJpZ2h0OjEwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyR0d299LSN7JHRlbnRofSAgICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skZmlmdGh9OyB9XG5cdCN7JHByZWZpeH0jeyR0aHJlZX0tI3skdGVudGh9ICAgICAgICB7IHJpZ2h0OjMwJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyR0ZW50aH0gICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JHR3b30tI3skZmlmdGh9OyB9XG5cdCN7JHByZWZpeH0jeyRmaXZlfS0jeyR0ZW50aH0gICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JG9uZX0tI3skaGFsZn07IH1cblx0I3skcHJlZml4fSN7JHNpeH0tI3skdGVudGh9ICAgICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdGhyZWV9LSN7JGZpZnRofTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JHRlbnRofSAgICAgICAgeyByaWdodDo3MCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JHRlbnRofSAgICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRmb3VyfS0jeyRmaWZ0aH07IH1cblx0I3skcHJlZml4fSN7JG5pbmV9LSN7JHRlbnRofSAgICAgICAgIHsgcmlnaHQ6OTAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblxuXG5cdC8qKlxuXHQgKiBFbGV2ZW50aHNcblx0ICovXG5cdCN7JHByZWZpeH0jeyRvbmV9LSN7JGVsZXZlbnRofSAgICAgICAgeyByaWdodDo5LjA5MDklOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skdHdvfS0jeyRlbGV2ZW50aH0gICAgICAgeyByaWdodDoxOC4xODE4JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlKCk7IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyRlbGV2ZW50aH0gICAgIHsgcmlnaHQ6MjcuMjcyNyU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRmb3VyfS0jeyRlbGV2ZW50aH0gICAgICB7IHJpZ2h0OjM2LjM2MzYlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skZWxldmVudGh9ICAgICAgeyByaWdodDo0NS40NTQ1JTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlKCk7IH1cblx0I3skcHJlZml4fSN7JHNpeH0tI3skZWxldmVudGh9ICAgICAgIHsgcmlnaHQ6NTQuNTQ1NCU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyRzZXZlbn0tI3skZWxldmVudGh9ICAgICB7IHJpZ2h0OjYzLjYzNjMlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXHQjeyRwcmVmaXh9I3skZWlnaHR9LSN7JGVsZXZlbnRofSAgICAgeyByaWdodDo3Mi43MjcyJTsgQGluY2x1ZGUgc2lsZW50LXJlbGF0aXZlKCk7IH1cblx0I3skcHJlZml4fSN7JG5pbmV9LSN7JGVsZXZlbnRofSAgICAgIHsgcmlnaHQ6ODEuODE4MSU7IEBpbmNsdWRlIHNpbGVudC1yZWxhdGl2ZSgpOyB9XG5cdCN7JHByZWZpeH0jeyR0ZW59LSN7JGVsZXZlbnRofSAgICAgICB7IHJpZ2h0OjkwLjkwOTAlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmUoKTsgfVxuXG5cblx0LyoqXG5cdCAqIFR3ZWxmdGhzXG5cdCAqL1xuXHQjeyRwcmVmaXh9I3skb25lfS0jeyR0d2VsZnRofSAgICAgICAgIHsgcmlnaHQ6OC4zMzMlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHR3b30tI3skdHdlbGZ0aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRzaXh0aH07IH1cblx0I3skcHJlZml4fSN7JHRocmVlfS0jeyR0d2VsZnRofSAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRxdWFydGVyfTsgfVxuXHQjeyRwcmVmaXh9I3skZm91cn0tI3skdHdlbGZ0aH0gICAgICAgeyBAZXh0ZW5kICN7JHByZWZpeH0jeyRvbmV9LSN7JHRoaXJkfTsgfVxuXHQjeyRwcmVmaXh9I3skZml2ZX0tI3skdHdlbGZ0aH0gICAgICAgeyByaWdodDo0MS42NjYlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JHNpeH0tI3skdHdlbGZ0aH0gICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skb25lfS0jeyRoYWxmfTsgfVxuXHQjeyRwcmVmaXh9I3skc2V2ZW59LSN7JHR3ZWxmdGh9ICAgICAgeyByaWdodDo1OC4zMzMlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cblx0I3skcHJlZml4fSN7JGVpZ2h0fS0jeyR0d2VsZnRofSAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdHdvfS0jeyR0aGlyZH07IH1cblx0I3skcHJlZml4fSN7JG5pbmV9LSN7JHR3ZWxmdGh9ICAgICAgIHsgQGV4dGVuZCAjeyRwcmVmaXh9I3skdGhyZWV9LSN7JHF1YXJ0ZXJ9OyB9XG5cdCN7JHByZWZpeH0jeyR0ZW59LSN7JHR3ZWxmdGh9ICAgICAgICB7IEBleHRlbmQgI3skcHJlZml4fSN7JGZpdmV9LSN7JHNpeHRofTsgfVxuXHQjeyRwcmVmaXh9I3skZWxldmVufS0jeyR0d2VsZnRofSAgICAgeyByaWdodDo5MS42NjYlOyBAaW5jbHVkZSBzaWxlbnQtcmVsYXRpdmU7IH1cbn1cblxuQGlmICRwdWxsIHtcblxuXHQvKipcblx0ICogTm90IGEgcGFydGljdWxhcmx5IGdyZWF0IHNlbGVjdG9yLCBidXQgdGhlIERSWWVzdCB3YXkgdG8gZG8gdGhpbmdzLlxuXHQgKi9cblx0W2NsYXNzKj1cInB1bGwtLVwiXSB7IHBvc2l0aW9uOnJlbGF0aXZlOyB9XG5cblx0QGluY2x1ZGUgcHVsbC1zZXR1cDtcblxuXHRAaWYgJHJlc3BvbnNpdmUge1xuXHRcdEBlYWNoICRuYW1lIGluICRicmVha3BvaW50LWhhcy1wdWxsIHtcblx0XHRcdEBpbmNsdWRlIGdyaWQtbWVkaWEtcXVlcnkoJG5hbWUpIHtcblx0XHRcdFx0QGluY2x1ZGUgcHVsbC1zZXR1cCgnI3skbmFtZX0tLScpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59XG5cbi8qIEdsb2JhbCBncmlkIHJlc2V0IC0gc2V0dGluZyBmb250IHRvIDAgbGV0cyBncmlkIGJsb2NrcyBidW1wIG5leHQgdG8gZWFjaCBvdGhlciAqL1xuLmdyaWR7XG5cdGZvbnQtc2l6ZTogMDtcblxuXHQmX19pdGVte1xuXHRcdEBpbmNsdWRlIGZvbnQtcmVtKCRiYXNlLWZvbnQtc2l6ZSk7XG5cdH1cblxufSIsImJvZHkge1xuICBsaW5lLWhlaWdodDogJGFwcC1saW5lLWhlaWdodDtcbn1cblxuLy8gR2VuZXJpYyBTdHlsZXNcbi53aXotY29udGFpbmVyLCAuY29yZS1oZWFkaW5nLCAuY29yZS1wYXJhZ3JhcGgsIC5jb3JlLWxpc3QsIC5jb3JlLWNsYXNzaWMsIC5zaW5nbGUtcG9zdC0tY29udGVudC13cmFwLCAuc2luZ2xlLWNhc2Vfc3R1ZHktLWNvbnRlbnQtd3JhcCwgLnNpbmdsZS1kb3dubG9hZC0tY29udGVudC13cmFwLCAuc2luZ2xlLWxlYWRlcnNoaXAtLWNvbnRlbnQtd3JhcCwgLnNpbmdsZS1uZXdzLS1jb250ZW50LXdyYXAsIC5zaW5nbGUtcHJvZHVjdC0tY29udGVudC13cmFwLCAuc2luZ2xlLXZpZGVvLS1jb250ZW50LXdyYXAge1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJG11c2VvO1xuICB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDQuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDQuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDQuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiBoc2woMjIwLCA3NSUsIDIyJSk7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBoc2woOTYsIDY5JSwgNDQlKSFpbXBvcnRhbnQ7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgJi5wcmltYXJ5LWN0YS1idXR0b24ge1xuICAgICAgY29sb3I6ICR3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpkYXJrZW4oaHNsKDk2LCA2OSUsIDQ0JSksIDUlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOmRhcmtlbihoc2woOTYsIDY5JSwgNDQlKSwgNSUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIGJvcmRlci1sZWZ0OiAwLjRyZW0gc29saWQgaHNsKDk2LCA2OSUsIDQ0JSk7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBsaSB7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgfVxuICB9XG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIH1cbiAgfVxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG4gIFxuICAuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICBzdmcuc3MtaWNvbnMge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAuYWxpZ25sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIFxuICAgIC5hbGlnbnJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxufVxuXG4iLCJtYWluIHtcbiAgLy8gdG9kbyBtYWtlIGV4dGVuc2lvbi9wbGFjZWhvbGRlclxuICAvLyB3aWR0aDogMTAwJTtcbiAgLy8gbWF4LXdpZHRoOiAkYXBwLXdpZHRoO1xuICAvLyBtYXJnaW46IDAgYXV0bztcbiAgLy8gIHRvZG8gZW5kXG4gIC8vIHBhZGRpbmc6IDAgJGFwcC1wYWRkaW5nO1xuXG4gIC8vIG5tIGV2ZXJ5dGhpbmcgaSBzYWlkIGJlbG93XG4gIC8vIG9rLCBraW5kIG9mIGEgaGFja1xuICAvLyBmb3IgbW9iaWxlXG4gIC8vIHNvIHRoYXQgd2UgY2FuIGp1c3QgdXNlXG4gIC8vIGNzcyBmb3IgcmVzcG9uc2l2ZSBtZWdhbWVudVxuXG4gIC8vIGhlcmUgZ29lczpcblxuICAvLyBzdGljayBpdCB1bmRlcm5lYXRoXG4gIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gYWNjb3VudCBmb3IgZ2xvYmFsIG5hdiBoZWFkZXJcbiAgLy8gd2hpY2ggaW5jbHVkZXMgbG9nbyBhbmQgYnVyZ2VyXG4gIC8vIGJldHRlciB3YXlzIHRvIGdldCB0aGlzIG9mZnNldFxuICAvLyBhbnkgaWRlYXMgQG1hdHQuLi5cbiAgLy8gdG9wOiA2N3B4O1xuXG4gIC8vIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgLy8gICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIC8vIH1cbn1cblxuLy8gdGVtcCBoYWNrLCBmaXggb24gY29udGVudCBsZXZlbFxuLmNvcmUtaW1hZ2Uge1xuICAvLyB0b2RvIG1ha2UgZXh0ZW5zaW9uL3BsYWNlaG9sZGVyXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLyB2ZXJ5IHRlbXAsIHZlcnkgdWdseSBoYWNrXG4vLyB0b2RvIGZpeCBvbiB3cCBsZXZlbFxuc2VjdGlvbltjbGFzc149XCJjb3JlLVwiXSB7XG4gIC8vIHRvZG8gbWFrZSBleHRlbnNpb24vcGxhY2Vob2xkZXJcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogJGFwcC13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC8vIGZvcmdpdmUgbWUgbXkgdHJlc3Bhc3Nlc1xuICBwYWRkaW5nOiAwICRhcHAtcGFkZGluZztcbn1cblxuQG1peGluIGFwcC1jb250YWluZXIoJHBhZGRpbmdZOiAwLCAkcGFkZGluZ1g6IDMlKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAkcGFkZGluZ1kgJHBhZGRpbmdYO1xufVxuXG4uYXBwLWNvbnRhaW5lciwgLmNvbnRhaW5lZCB7XG4gIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG59XG4iLCIuZ2xvYmFsLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk5OTtcbiAgLy8gdG9kbyBuZXh0IDMgYXMgZXh0ZW5zaW9uXG4gIHdpZHRoOiAxMDAlO1xuICAvLyBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmLmFjdGl2YXRlZCxcbiAgICAmLnNjcm9sbGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYWNhZGlhO1xuICAgIH1cbiAgfVxuXG4gIC8vIHRlbXBcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4udG9wLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG4vLyBsb2dvIHN0eWxlc1xuXG4uZ2xvYmFsLWhlYWRlcl9fbG9nbyB7XG4gIG1heC13aWR0aDogY2FsYyg3LjVyZW0gKyA2LjkzJSk7XG4gIHBhZGRpbmctbGVmdDogJGFwcC1wYWRkaW5nO1xuICBpbWcge1xuICAgIHdpZHRoOjE4NXB4O1xuICAgIGhlaWdodDphdXRvO1xuICAgICYubG9nby1zdmcge1xuICAgICAgbWFyZ2luOjE1JSAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBtYXgtd2lkdGg6IDE4LjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gcGFkZGluZzogIDEuNXJlbSAwIDEuNXJlbSAkYXBwLXBhZGRpbmc7XG4gIC8vIHdpZHRoOiA0NiU7XG5cbiAgLy8gQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAvLyBcdHdpZHRoOiAxMDAlO1xuICAvLyB9XG59XG5cbi8vIGhhbWJ1cmdlciBvdmVycmlkZXMgVE9ETzogcmV3cml0ZSB0aGUgd2hvbGUgYnVyZ2VyLFxuLy8gdXNlIHN2ZywgYWRkIGExMXlcblxuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6IDEuNXJlbSAkYXBwLXBhZGRpbmcgMS41cmVtIDA7XG59XG5ib2R5IHtcbiAgJi5zaW5nbGUtcG9zdCB7XG4gICAgLmdsb2JhbC1oZWFkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY2FkaWE7XG5cbiAgICAgIC5nbG9iYWwtaGVhZGVyLWNvbnRhaW5lciAubWVudV9saW5rIHtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5tYWluLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDAgJGFwcC1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFjYWRpYTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICBsaSB7XG4gICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAvLyBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8vIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgZm9udC1mYW1pbHk6ICRtdXNlbztcblxuICAgIGEge1xuICAgICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICB9XG5cbiAgICAmLmRyb3Bkb3duX19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICBcImFuY2hvciBidXR0b25cIlxuICAgICAgICBcImNvbnRhaW5lciBjb250YWluZXJcIjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cbiAgICAgIC5tZW51LXRvZ2dsZSB7XG4gICAgICAgIGdyaWQtYXJlYTogYW5jaG9yO1xuICAgICAgfVxuICAgICAgLnRlc3QtdHJpZ2dlciB7XG4gICAgICAgIGdyaWQtYXJlYTogYnV0dG9uO1xuICAgICAgfVxuXG4gICAgICAubWVudS1jaGlsZC1jb250YWluZXIge1xuICAgICAgICBncmlkLWFyZWE6IGNvbnRhaW5lcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgIC8vIG5lZWQgdGhpcyB0byBjZW50ZXIgdGhpbmdzIHZlcnRpY2FsbHlcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMCBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICA+IGxpLmRyb3Bkb3duX19pdGVtLFxuICAgID4gbGkge1xuICAgICAgLy8gbWF5YmUgbW92ZSB0aGlzIGludG8gbW9iaWxlXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gdGhlc2Ugc3RheSBoZXJlXG4gICAgICAvLyB0YWtlIHVwIHRoZSBmdWxsIGhlaWdodCBvZiBwYXJlbnRcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAvLyBjZW50ZXIgY2hpbGRyZW4gdmVydGljYWxseVxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC8vIG5lZWQgdGhpcyB0byBjZW50ZXIgaG9yaXpvbnRhbGx5XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIC8vIGFzIHdlbGwgYXMgdGhpc1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAvLyB0aGlzIGdpdmVzIHVzIGEgYmlnZ2VyIGFyZWFcbiAgICAgIC8vIHNvIHdlIGRvbid0IGxvc2UgaG92ZXJcbiAgICAgIC8vIGVuZCB0aGVzZSBzdGF5IGhlcmVcbiAgICAgIC8vIGFuZCB3ZSBjbGVhciB0aGlzIG91dCBiL2Mgc2FtZSBhcyBhYm92ZVxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duX19pdGVtIHtcbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgJiA+IC5tZW51LWNoaWxkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAmID4gLm1lbnUtY2hpbGQtYXBwLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgLm5hdl9wb3N0LFxuICAgICAgLmZlYXR1cmVkLWNvbnRhaW5lci1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmZlYXR1cmVkLWNvbnRhaW5lciA+IHVsLmRyb3Bkb3duIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYgPiAubWVudS1jaGlsZC1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICBwYWRkaW5nLXRvcDogNC41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGFjYWRpYTtcblxuICAgICAgJiA+IC5tZW51LWNoaWxkLWFwcC1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgLm5hdl9wb3N0LFxuICAgICAgICAuZmVhdHVyZWQtY29udGFpbmVyLWhlYWRlciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm9wZW4gPiAubWVudS1jaGlsZC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIHRvZG86IGNsZWFuIHVwIHRoaXMgbmVzdGluZ1xuXG5AaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gIC5kcm9wZG93bl9faXRlbSB7XG4gICAgLy8gYXZvaWQganVtcGluZyB3aXRoIHRyYW5zcGFyZW50IGJvcmRlclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBoc2xhKDAsIDAsIDAsIDApO1xuICAgICYub3BlbiB7XG4gICAgICBjb2xvcjogJGNocmlzdGk7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNocmlzdGk7XG5cbiAgICAgICYgPiAubWVudS1jaGlsZC1jb250YWluZXIge1xuICAgICAgICAvLyB0ZW1wIGZvciBkZWJ1Z2dpbmdcbiAgICAgICAgbWluLWhlaWdodDogMzN2aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYnV0dG9uLnRlc3QtdHJpZ2dlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHN2ZyB7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZpbGw6ICRibGFjaztcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAvLyBoaWRpbmcgZm9yIG5vd1xuICAgIC8vIGJ1dCBpIGRvbid0IGFncmVlIHRvIHRoaXNcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIG1vYmlsZSBoaWRlL3Nob3cgZnVuXG5cbi5zZWFyY2gtZm9ybSxcbi5nbG9iYWwtdG9wX19uYXYsXG4uZ2xvYmFsLWhlYWRlcl9fbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIGRlc2t0b3AgY2VudGVyIGZpeFxuLy8gcmVmYWN0b3IgbGF0ZXJcblxuLmdsb2JhbC1oZWFkZXJfX25hdiB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5tZW51X2xpbmsge1xuICBjb2xvcjogJHNhcHBoaXJlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRhcHBsZTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGFwcGxlO1xuICAgIH1cbiAgfVxufVxuXG4uYWN0aXZhdGVkLFxuLnNjcm9sbGVkLCAucGFzc3dvcmQtbm90LWVudGVyZWQge1xuICAuZ2xvYmFsLWhlYWRlci1jb250YWluZXIge1xuICAgIC5tZW51X2xpbmsge1xuICAgICAgY29sb3I6ICRzYXBwaGlyZTtcbiAgICAgIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5hY3RpdmF0ZWQsXG4uc2Nyb2xsZWQsIC5wYXNzd29yZC1ub3QtZW50ZXJlZCB7XG4gIC5nbG9iYWwtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgLm1lbnUtY2hpbGQtY29udGFpbmVyIHtcbiAgICAgIC5tZW51X2xpbmsge1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjokY2hyaXN0aTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyB0ZW1wIGhhY2sgZm9yIGRlYnVnZ2luZ1xuXG4vLyAuZHJvcGRvd25fX2l0ZW0ubWVudS1hdXRvbW90aXZlIHtcbi8vICAgLm1lbnUtY2hpbGQtY29udGFpbmVyIHtcbi8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgfVxuLy8gfVxuIiwiLmdsb2JhbC10b3BfX25hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICAgIGNvbG9yOiAkc2FwcGhpcmU7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbiAgLnRvcC1uYXYgPiBsaTpub3QoLmN1c3RvbS1kcm9wZG93bikge1xuICAgICYgPiBhIHtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAvLyBjb2xvcjokY2hyaXN0aTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudG9wLW5hdiA+IGxpLnRvcC1uYXYtZ3JlZW4ge1xuICAgICYgPiBhIHtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAvLyBjb2xvcjokZGFyay1ncmVlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmFja2dyb3VuZC1jb2xvcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luOiAwIDFyZW07XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIC8vIHRlbXAgLSBkb250IGRvIHRoaXMgaXQgaXMgc2xvd1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cbn1cblxuLnRvcC1uYXYge1xuICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwICRhcHAtcGFkZGluZztcblxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgJi5tZW51LWNvbnRhY3QtdXMsICYudG9wLW5hdi1ncmVlbiB7XG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRzcHJpbmctYnVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ2xvYmFsLWhlYWRlci0tcGFyZW50bG9nby1lbmFibGVkIHtcblxuICAuZ2xvYmFsLXRvcF9fbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgXG4gIC50b3AtbmF2IHtcbiAgICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAkYXBwLXBhZGRpbmc7XG4gICAgXG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgICAgcGFkZGluZy1yaWdodDogOThweDtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLXBhcmVudC1sb2dvIHtcbiAgICBtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAkYXBwLXBhZGRpbmc7XG4gICAgXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbiAgICAgIHBhZGRpbmc6IDAgOThweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLXBhcmVudC1sb2dvLWlubmVyIHtcbiAgICBcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA5MnB4O1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgbGluZWFyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogOTJweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogLTEwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gbGFuZ3VhZ2VzIGljb24gaGFja1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW1idXJnZXJzXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcbiAqIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcbiAqL1xuXG4vLyBTZXR0aW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICA6IDAgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgIDogMTZweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICAgICAgICA6IDJweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICA6IDNweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICA6ICMwMDAgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXMgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgICAgICAgOiAwLjcgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvciAgOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICFkZWZhdWx0O1xuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyICAgOiBmYWxzZSAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyICAgICAgIDogb3BhY2l0eSg1MCUpICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAhZGVmYXVsdDtcblxuLy8gVHlwZXMgKFJlbW92ZSBvciBjb21tZW50IG91dCB3aGF0IHlvdSBkb27igJl0IG5lZWQpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci10eXBlczogKFxuICBzcXVlZXplLFxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0ICcuL2Jhc2UnO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCIuL3R5cGVzL3NxdWVlemVcIjtcblxuXG5cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCIvLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgJy4uLy4uL2Jhc2UvYmFzZSc7XG5cbi5oYW1idXJnZXIge1xuICAvLyBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCl7IFxuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4gIFxuXG4gIC8vIE5vcm1hbGl6ZSAoPGJ1dHRvbj4pXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmOmhvdmVyIHtcbiAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yO1xuXG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICAgIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3F1ZWV6ZSkge1xuICAvKlxuICAgKiBTcXVlZXplXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcXVlZXplIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMDc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIDAuMTJzIGVhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIGdyaWQgZm9yIGhlYWRlclxuLy8gLmdsb2JhbC1oZWFkZXIgaXMgdGhlIGNvbnRhaW5lclxuLy8gZGlyZWN0IGRlc2NlbmRhbnRzIGFyZTpcbi8vICAuZ2xvYmFsLXRvcF9fbmF2IChyZW5hbWUgdGhpcylcbi8vICAuZ2xvYmFsLWhlYWRlcl9fbG9nb1xuLy8gIGJ1dHRvbi5oYW1idXJnZXJcbi8vICAuZ2xvYmFsLWhlYWRlcl9fbmF2XG4vLyAgLnNlYXJjaC1mb3JtXG5cbi8vIGFic3RyYWN0aW5nIHRoaXMgb3V0IGZvciBjbGFyaXR5XG5cbi5nbG9iYWwtdG9wX19uYXYge1xuICBncmlkLWFyZWE6IHN1Yi1uYXY7XG5cbiAgb3JkZXI6IDE7XG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBvcmRlcjogMDtcbiAgfVxufVxuXG4uZ2xvYmFsLWhlYWRlcl9fbG9nbyB7XG4gIGdyaWQtYXJlYTogbG9nbztcbn1cblxuLmhhbWJ1cmdlciB7XG4gIGdyaWQtYXJlYTogaGFtYnVyZ2VyO1xufVxuXG4uZ2xvYmFsLWhlYWRlcl9fbmF2IHtcbiAgZ3JpZC1hcmVhOiBtYWluLW5hdjtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1hcmdpbi1yaWdodDogMiU7XG4gIH1cbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgZ3JpZC1hcmVhOiBzZWFyY2g7XG59XG5cbi8vIC5nbG9iYWwtaGVhZGVyIHtcblxuLy8gXHRkaXNwbGF5OiBncmlkO1xuLy8gXHQvLyBjZW50ZXIgY2hpbGRyZW4gdmVydGljYWxseVxuLy8gXHRhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gXHQvLyBtb2JpbGUgMiBjb2xzXG4vLyBcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4vLyBcdC8vIGFzIG1hbnkgcm93cyBhcyBuZWVkZWRcbi8vIFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuLy8gXHQvLyB0aGlzIGlzIGZ1biBoZXJlXG4vLyBcdC8vIGVhY2ggbGluZSBpcyBhIHJvd1xuLy8gXHQvLyByZXBlYXQgYW4gZWwgaWYgeW91IHdhbnQgaXQgdG8gc3BhblxuLy8gXHRncmlkLXRlbXBsYXRlLWFyZWFzOlxuLy8gXHRcImxvZ28gaGFtYnVyZ2VyXCJcbi8vIFx0XCJzZWFyY2ggc2VhcmNoXCJcbi8vIFx0XCJtYWluLW5hdiBtYWluLW5hdlwiXG4vLyBcdFwic3ViLW5hdiBzdWItbmF2XCI7XG5cbi8vIFx0QGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuLy8gXHRcdC8vIDMgY29scyBmb3IgZGVza3RvcFxuLy8gXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjByZW0gYXV0byBtaW4tY29udGVudDtcblxuLy8gXHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4vLyBcdFx0XHRcInN1Yi1uYXYgc3ViLW5hdiBzdWItbmF2XCJcbi8vIFx0XHRcdFwibG9nbyBtYWluLW5hdiBzZWFyY2hcIjtcblxuLy8gXHR9XG5cbi8vIH1cblxuLmdsb2JhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZ2xvYmFsLWhlYWRlci1jb250YWluZXIge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJsb2dvIGhhbWJ1cmdlclwiXG4gICAgXCJzZWFyY2ggc2VhcmNoXCJcbiAgICBcIm1haW4tbmF2IG1haW4tbmF2XCI7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLmdsb2JhbC1oZWFkZXItLXBhcmVudGxvZ28tZW5hYmxlZCB7XG4gIC5nbG9iYWwtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgcGFkZGluZy1yaWdodDogOThweDtcbiAgICB9XG4gIH1cbn0iLCJAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gIC5uYXZfcG9zdCxcbiAgLm5hdl9mb3JtIHtcbiAgICAvLyBwYWRkaW5nLXJpZ2h0OiAkYXBwLXBhZGRpbmc7XG4gICAgZmxleC1iYXNpczogMjguNjYwMjIwOTk0NDc1MTQlO1xuICAgIC8vIHBhZGRpbmctbGVmdDogMiU7XG4gICAgLy8gaGFsZiBvZiAwNy4yNTEzODEyMTU0Njk2MTMlXG4gICAgLy8gcGFkZGluZy1yaWdodDogMy42MjU2OTA2MDc3MzQ4MDY0JTtcbiAgfVxuXG4gIC5mZWF0dXJlZC1jb250YWluZXIge1xuICAgIC8vIHBhZGRpbmctbGVmdDogJGFwcC1wYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogMy42MjU2OTA2MDc3MzQ4MDY0JTtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5cbi5uYXZfZm9ybSB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRhY2FkaWE7XG59XG5cbi5uYXZfcG9zdCB7XG4gIC5uYXZfcG9zdC0taW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAubmF2X3Bvc3QtLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJHNhcHBoaXJlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubmF2X3Bvc3QtLWV4Y2VycHQge1xuICAgIGNvbG9yOiAkc3V2YS1ncmV5O1xuICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5cbi5mZWF0dXJlZC1jb250YWluZXIge1xuICAvLyB0ZW1wIG5lZWQgYSB3YXkgdG8gdGFyZ2V0IHRoZXNlIGJldHRlclxuICB1bCB7XG4gICAgbGkge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkc2FwcGhpcmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuaDIuZmVhdHVyZWQtY29udGFpbmVyLWhlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICArIHVsLmRyb3Bkb3duIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgKyB1bC5kcm9wZG93biB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIHN1Ym1lbnVzIGluc2FuaXR5XG5cbi5kcm9wZG93bl9faXRlbSB7XG4gIC5tZW51LWNoaWxkLWNvbnRhaW5lciB7XG4gICAgLmZlYXR1cmVkLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICAgIHVsLmRyb3Bkb3duIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRhY2FkaWE7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gLmRyb3Bkb3duX19pdGVtLm1lbnUtYXV0b21vdGl2ZSB7XG4vLyAgIC5tZW51LWNoaWxkLWNvbnRhaW5lciB7XG4vLyAgICAgdWwuZHJvcGRvd24ge1xuLy8gICAgICAgdWwuZHJvcGRvd24ge1xuLy8gICAgICAgICBoZWlnaHQ6IDEwMCU7XG4vLyAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4vLyAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHJlbTtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuLy8gICAgIC5tZW51LWNoaWxkLWNvbnRhaW5lciB7XG4vLyAgICAgICAvLyBraWxsIHRoaXMgd2hlbiBkb25lIGRlYnVnZ2luZ1xuLy8gICAgICAgLy8gICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgIC8vIGtlZXAgdGhlIGZvbGxvd2luZ1xuLy8gICAgICAgLy8gbWluLWhlaWdodDogMTAwdmg7XG4vLyAgICAgICAvLyBzY3JvbGwgaWYgbmVlZGVkXG4vLyAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4vLyAgICAgICAvLyBnb25uYSBnZXQgaW50ZXJlc3RpbmcgaGVyZVxuLy8gICAgICAgdWwuZHJvcGRvd24ge1xuLy8gICAgICAgICBkaXNwbGF5OiBncmlkO1xuLy8gICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4vLyAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWF4LWNvbnRlbnQgMWZyO1xuLy8gICAgICAgICB3aWR0aDogMTAwJTtcblxuLy8gICAgICAgICBsaSB7XG4vLyAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG4vLyAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTByZW07XG5cbi8vICAgICAgICAgICAmLmRyb3Bkb3duX19pdGVtIHtcbi8vICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuLy8gICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4vLyAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuLy8gICAgICAgICAgICAgLm1lbnVfbGluayB7XG4vLyAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTByZW07XG4vLyAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4vLyAgICAgICAgICAgICAgIHNwYW4ge1xuLy8gICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgIC5tZW51LWNoaWxkLWNvbnRhaW5lciB7XG4vLyAgICAgICAgICAgICAgIC8vb3ZlcnJpZGVcbi8vICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMCBub25lO1xuLy8gICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRhY2FkaWE7XG4vLyAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4vLyAgICAgICAgICAgICAgIC5kcm9wZG93biB7XG4vLyAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbi8vICAgICAgICAgICAgICAgICAubWVudV9saW5rIHtcbi8vICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbi8vICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNhcHBoaXJlO1xuLy8gICAgICAgICAgICAgICAgIH1cblxuLy8gICAgICAgICAgICAgICAgIGxpIHtcbi8vICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgICB9XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG4iLCJsaS5jdXN0b20tZHJvcGRvd24ge1xuICAvLyBzZXQgcG9zaXRpb25pbmcgY29udGV4dCBmb3IgZHJvcGRvd25cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBzb21lIHJvb20gZm9yIGRyb3Bkb3duXG4gIG1hcmdpbi1yaWdodDogMC42cmVtO1xuXG4gIHVsLnN1Yi1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIHVsLnN1Yi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAwLjVyZW0pO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNoaXAtY292ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm9wZW5lZCB7XG4gICAgdWwuc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbmxpLmN1c3RvbS1kcm9wZG93biB7XG4gID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NhcmF0LnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDEuMnJlbTtcblxuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgaGVpZ2h0OiAycmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICBsaSB7XG4gICAgfVxuICB9XG59XG5cbmxpLmN1c3RvbS1kcm9wZG93biB7XG4gID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NhcmF0LnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDEuMnJlbTtcblxuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgaGVpZ2h0OiAycmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICBsaSB7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgbGkuY3VzdG9tLWRyb3Bkb3duIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuXG4gICAgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgIHJpZ2h0OiAtMC42cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9hcnJvdy1kb3duLXdoaXRlLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgbGkuY3VzdG9tLWRyb3Bkb3duIHtcbiAgICAmLm9wZW5lZCB7XG4gICAgICA+IGEge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stY29yZSB7XG4gICAgLy8gdG9kbyBuZXh0IDMgYXMgZXh0ZW5zaW9uXG5cdHdpZHRoOiAxMDAlO1xuXHRtYXgtd2lkdGg6ICRhcHAtd2lkdGg7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuLnBhZ2Utbm90LWZvdW5kLXBhZ2Uge1xuXHQuaGVyby1jb250YWluZXIuc2hvcnRlbmVkIGltZywgLmhlcm8tY29udGFpbmVyLnNob3J0ZW5lZCB2aWRlbyB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG59XG4uY29yZS1wYWdlLW5vdC1mb3VuZCB7XG5cdGgyIHtcblx0XHRwYWRkaW5nLXRvcDogNjBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cdC5wYWdlLW5vdC1mb3VuZC1zZWFyY2gge1xuXHRcdHBhZGRpbmctYm90dG9tOjQwcHg7XG5cdH1cbn1cbiIsIlxuLy8gRGF0ZSBhbmQgQXV0aG9yIFN0eWxlc1xuLnNpbmdsZS1wb3N0LCAuc2luZ2xlLXZpZGVvLCAuc2luZ2xlLWNhc2Vfc3R1ZHkge1xuXHQuc2luZ2xlLXBvc3QtaGVhZGVyLCAuY29yZS1jYXNlX3N0dWR5LWhlYWRlciB7XG4gICAgXHRmb250LXNpemU6IDQuNnJlbTtcbiAgICBcdGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgXHRmb250LXdlaWdodDogMTAwO1xuICAgIFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgICBcdGZvbnQtZmFtaWx5OiAkbXVzZW87XG5cdH1cblx0LmRhdGUge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0cGFkZGluZzogMXJlbSAwO1xuXHRcdGNvbG9yOiAkc3V2YS1ncmV5O1xuXHRcdGZvbnQtc2l6ZTogMS44cmVtO1xuXHR9XG5cdC5hdXRob3ItY2FyZCB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRwYWRkaW5nOjAgMCAycmVtO1xuXHRcdGZvbnQtc2l6ZTogMS44cmVtO1xuXHRcdHNwYW4uYXV0aG9yLWltZyB7XG5cdFx0XHRwYWRkaW5nOiAwIDFyZW07XG5cdFx0fVxuXHRcdHNwYW4uYXV0aG9yLW5hbWUge1xuXHRcdFx0Y29sb3I6ICRuaWdodC1yaWRlcjtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0fVxuXHRcdHNwYW4uYXV0aG9yLXRpdGxlIHtcblx0XHRcdGNvbG9yOiAkZGVlcC1za3ktYmx1ZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0fVxuXHR9XG5cdC5jb3JlLXJlc291cmNlLWhlYWRlciB7XG5cdFx0cGFkZGluZy10b3A6IDNyZW07XG5cdH1cblx0LmNvcmUtY2xhc3NpYyB7XG5cdFx0cGFkZGluZy1ib3R0b206IDhyZW07XG5cdFx0aW1nIHtcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDRyZW07XG5cdFx0XHQmLmFsaWdubGVmdCB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXHRcdFx0fVxuXHRcdFx0Ji5hbGlnbnJpZ2h0e1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogM3JlbTtcblx0XHRcdH1cblx0XHRcdCYuYWxpZ25jZW50ZXIge1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdH1cblx0XHRcdCYuYWxpZ25ub25lIHtcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLy8gZm9yIHBvc3QvbmV3cyBvbmx5IFxuLm5ld3MtY29udGVudCB7XG5cdGRpc3BsYXk6YmxvY2s7XG5cdEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG5cdHBhZGRpbmc6IDAgNi45MyU7XG5cdEBpbmNsdWRlIHJlc3BvbnNpdmVRdWVyeShtKSB7XG5cdFx0ZGlzcGxheTpmbGV4O1xuXHR9XG5cblx0LndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciwgLndwLWJsb2NrLWltYWdlIC5hbGlnbmxlZnQsIC53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0fVxuXG5cdC5zaW5nbGUtcG9zdHtcblx0XHRmbGV4LWJhc2lzOmF1dG87XG5cdFx0I21haW5fbWVudXtcblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5zaW5nbGUtcG9zdC1oZWFkZXJ7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0Zm9udC1zaXplOiAzOHB4O1xuXHRcdFx0Y29sb3I6ICRub3ZlbGlzLWJsdWUtc2Vjb25kYXJ5O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0fVxuXG5cdFx0LmJyZWFkY3J1bWJzLWJnLWNvbnRhaW5lcntcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0LmJyZWFkY3J1bWJzLWNvbnRhaW5lcntcblx0XHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRhY2FkaWE7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYWNhZGlhO1xuXHRcdFx0XHQuYnJlYWRjcnVtYnN7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXJrLWdyZWVuO1xuXHRcdFx0XHRcdGF7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstZ3JlZW47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmRhdGV7XG5cdFx0XHRAaW5jbHVkZSBmb250KGJvbGQsIDE4cHgpO1xuXHRcdH1cblxuXG5cdFx0Ji0tZmVhdHVyZWQtaW1hZ2Utd3JhcHtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDo1Ni4yNSU7XG5cdFx0XHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG5cdFx0XHRcdC8vIHdpZHRoOiAxMDAlO1xuXHRcdFx0XHQvLyBtYXJnaW46IGF1dG87XG5cdFx0XHR9XG5cdFx0XHRpbWcsIC52aWRlby1jb250YWluZXJ7XG5cdFx0XHRcdC8vIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHQvLyB3aWR0aDogMTAwJTtcblx0XHRcdFx0Ly8gbWFyZ2luOiA0MHB4IGF1dG8gMTBweCBhdXRvO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG4gICAgXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRcdGlmcmFtZSB7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0cHtcblx0XHRcdFx0Y29sb3I6ICRzdXZhLWdyZXk7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQocmVnLCAxMnB4LCB0cnVlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLS1jb250ZW50LXdyYXB7XG5cdFx0XHQvLyBtYXgtd2lkdGg6IDY5MnB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdC8vIG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0XHRcdHNlY3Rpb25bY2xhc3NePVwiY29yZS1cIl0ge1xuXHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbXtcblx0XHRcdHBhZGRpbmc6IDUlO1xuXHRcdFx0LnNlYXJjaC1yZXN1bHRzLWZpZ3VyZXtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdFx0LnRleHQtbGluay1hcnJvd3tcblx0XHRcdFx0Y29sb3I6ICRiYWhhbWEtYmx1ZTtcblx0XHRcdH1cblx0XHRcdGhlYWRlcntcblx0XHRcdFx0Y29sb3I6ICRiYWhhbWEtYmx1ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQudmlkZW8tY29udGFpbmVye1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDU2LjI1JTtcblx0XHRcdGhlaWdodDogMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRpZnJhbWV7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubmV3cy1zaWRlYmFyIHtcblx0XHRAaW5jbHVkZSByZXNwb25zaXZlUXVlcnkobSkge1xuXHRcdFx0ZmxleC1iYXNpczo1MCU7XG5cdFx0XHRtYXJnaW4tbGVmdDozcmVtO1xuXHRcdH1cblx0XHRAaW5jbHVkZSByZXNwb25zaXZlUXVlcnkobCkge1xuXHRcdFx0ZmxleC1iYXNpczozNSU7XG5cdFx0fVxuXG5cdFx0Lm5ld3Mtc2lkZWJhci1mb3JtIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTtcblx0XHRcdHBhZGRpbmc6MyU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjJyZW07XG5cblx0XHRcdC5idXR0b24ge1xuXHRcdFx0XHRwYWRkaW5nOiAxcmVtIDIuNXJlbTtcblx0XHRcdFx0bWluLXdpZHRoOnVuc2V0O1xuXHRcdFx0fVxuXG5cdFx0XHQubmV3cy1zaWdudXAtZm9ybS10aXRsZSB7XG5cdFx0XHRcdGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRmb250LWZhbWlseTokbXVzZW87XG5cdFx0XHRcdGZvbnQtc2l6ZToycmVtO1xuXHRcdFx0XHRmb250LXdlaWdodDpib2xkO1xuXHRcdFx0fVxuXG5cdFx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuXHRcdFx0XHRib3JkZXI6MXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZmVhdHVyZWQtbmV3c3tcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTtcblx0XHRcdHBhZGRpbmc6MyU7XG5cdFx0XHQuY29tcG9uZW50LWNvbnRhaW5lciB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOjA7XG5cdFx0XHRcdHBhZGRpbmctdG9wOjFyZW07XG5cdFx0XHRcdC5jb21wb25lbnQtaGVhZGVyIHtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0LmludHJvLXRpdGxle1xuXHRcdFx0XHRcdFx0Y29sb3I6JHByaW1hcnktY29sb3I7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTokbXVzZW87XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MnJlbTtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuZ3JpZC1uZXdzIHtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTAwJSwgMWZyKSk7XG5cdFx0XHRcdHBhZGRpbmctdG9wOjJyZW07XG5cdFx0XHRcdC5jb21wb25lbnQtY3RhLWNvbnRhaW5lciB7XG5cdFx0XHRcdFx0cGFkZGluZy10b3A6MDtcblx0XHRcdFx0XHQuaWNvbi1hcnJvd3tcblx0XHRcdFx0XHRcdHN0cm9rZTogI2ZmZjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0YnV0dG9uLnByaW1hcnktY3RhLWJ1dHRvbiwgLnByaW1hcnktY3RhLWJ1dHRvbiwgYnV0dG9uLnNlY29uZGFyeS1jdGEtYnV0dG9uLCAuc2Vjb25kYXJ5LWN0YS1idXR0b24sIGJ1dHRvbi5wcmltYXJ5LWxpbmstYnV0dG9uLCAucHJpbWFyeS1saW5rLWJ1dHRvbiAge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDFyZW0gMi41cmVtO1xuXHRcdFx0XHRcdG1pbi13aWR0aDp1bnNldDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc2luZ2xlLXBvc3Qge1xuXG5cdC5jb3JlLXJlc291cmNlLWhlYWRlcixcblx0Lm5ld3MtY29udGVudCB7XG5cdFx0Zm9udC1zaXplOiAzcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdGZvbnQtZmFtaWx5OiBNdXNlbywgc2Fucy1zZXJpZjtcblx0XHRjb2xvcjogIzBlMjk2MTtcblx0XHQvLyBtYXgtd2lkdGg6IDkwMHB4O1xuXHRcdG1heC13aWR0aDogMTI0NXB4O1xuXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjUwcHgpICB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1x0XG5cdFx0fVxuXHR9XG5cblxuXHQuZGF0ZSB7XG5cdFx0Y29sb3I6ICM2NjY2NjY7XG5cdFx0Zm9udC1zaXplOiAxLjNyZW07XG5cdH1cblxuXHQmLS1zb2NpYWwtc2hhcmUtaWNvbnMge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjogMTVweCAwIDMwcHg7XG5cdH1cblx0Ji0tc29jaWFsLXNoYXJlLWljb24ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR3aWR0aDogMjVweDtcblx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdFx0XG5cdFx0JiA+IGEge1xuXHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNTAlO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXG5cdFx0XHQmLmZhY2Vib29rLXNoYXJlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzQyNjdCMjtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zb2NpYWwvZmFjZWJvb2sucG5nKTtcblx0XHRcdH1cblx0XHRcdCYubGlua2VkaW4tc2hhcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIxO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3NvY2lhbC9saW5rZWRpbi5wbmcpO1xuXHRcdFx0fVxuXHRcdFx0Ji50d2l0dGVyLXNoYXJlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzFEQTFGMjtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zb2NpYWwvdHdpdHRlci5zdmcpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTogMC44O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5icmVhZGNydW1icy1iZy1jb250YWluZXIge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuXG5cdFx0LmJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG5cdFx0XHRib3JkZXItdG9wOiBub25lO1xuXG5cdFx0XHQuYnJlYWRjcnVtYnMsXG5cdFx0XHQuYnJlYWRjcnVtYnMgYSB7XG5cdFx0XHRcdGNvbG9yOiAjMzMzMzMzO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubmV3cy1zaWRlYmFyLXN1YnNjcmliZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgcGFkZGluZzogMjVweCAxNXB4O1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG5cblx0YS5idXR0b24ge1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRtaW4td2lkdGg6IDA7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMzU7XG5cdH1cbn1cbi5uZXdzLXNpZGViYXIge1xuXHQucXVlcnktcmVzdWx0cy1ncmlkLWNvbnRhaW5lciAuc2VhcmNoLXJlc3VsdHMtZ3JpZC1pdGVtIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcblx0XHRtYXJnaW46IDAgMCAzMHB4O1xuXHRcdG1pbi1oZWlnaHQ6IDA7XG5cblx0XHQuc2VhcmNoLXJlc3VsdHMtZmlndXJlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWluLWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRmaWdjYXB0aW9uIHtcblx0XHRcdG1hcmdpbjogMTBweCAwIDMwcHggMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0LnNlYXJjaC1yZXN1bHRzLWltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMDtcblx0XHRcdHBhZGRpbmctdG9wOiA1Ni4yNSU7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHQmID4gaW1nIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IC01MCU7XG5cdFx0XHRcdGJvdHRvbTogLTUwJTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0bWluLXdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW46IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCJcbi8vIERhdGUgYW5kIEF1dGhvciBTdHlsZXNcbi5zaW5nbGUtZG93bmxvYWQge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMGUyYTYyIDAlLCAjMDAxMjI0IDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcblx0LmNvcmUtZG93bmxvYWQtaGVhZGVyIHtcblx0XHRwYWRkaW5nLXRvcDogNHJlbTtcblx0XHRoMSB7XG5cdFx0XHRmb250LXNpemU6IDQuNnJlbTtcblx0XHQgICAgbGluZS1oZWlnaHQ6IDEuNTtcblx0XHQgICAgZm9udC13ZWlnaHQ6IDEwMDtcblx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdCAgICBjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0XHRoMiB7XG5cdFx0XHRmb250LXNpemU6IDQuNnJlbTtcblx0XHQgICAgbGluZS1oZWlnaHQ6IDEuNTtcblx0XHQgICAgZm9udC13ZWlnaHQ6IDEwMDtcblx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdCAgICBjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxuXHQuY29yZS12aWRlb19kZXRhaWwge1xuXHRcdHBhZGRpbmctYm90dG9tOiA4cmVtO1xuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAycmVtO1xuXHRcdFx0XHRtYXgtaGVpZ2h0OiA2MHZoO1xuXHRcdFx0fVxuXHRcdFx0LmRvd25sb2FkLWNvbnRhaW5lclx0e1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHQuZG93bmxvYWQge1xuXHRcdFx0XHRcdGNvbG9yOiRjaHJpc3RpO1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZG93bi1hcnJvdyB7XG5cdFx0XHRcdFx0c3Ryb2tlOiRjaHJpc3RpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0XHRcdHN2Zy5kb3duLWFycm93IHtcblx0XHRcdCAgICAgIFx0XHRhbmltYXRpb246IGRvd24tYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuXHRcdFx0ICAgIFx0fVxuXHRcdFx0ICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIjY29va2llU3BhY2Uge1xuICBcdHdpZHRoOiAxMDAlO1xuICBcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIFx0Y29sb3I6ICMwMDA7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICBcdHBhZGRpbmc6IDEycHggMiU7XG4gIFx0Zm9udC1zaXplOiAxMnB4O1xuICBcdHBvc2l0aW9uOiBmaXhlZDtcbiAgXHRib3R0b206IDA7XG4gIFx0bGVmdDogMDtcbiAgXHR6LWluZGV4OiA5OTk5OTtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdsb2JhbC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAubWVudV9saW5rIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgY29sb3I6JGNocmlzdGk7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXItY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcigkcGFkZGluZ1k6IDhyZW0pO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTg1cHggcmVwZWF0KDIsIDFmcikgMTEwcHg7XG5cbiAgICAvLyB0ZW1wIGIvYyBpIG5lZWQgYm9yZGVyXG4gICAgLy8gYnV0IGRvbid0IHdhbnQgaXQgdG8gYW5ub3kgbWVcbiAgICAvLyB3aGlsZSBpIG1vdmUgb24gdG8gY29tZSBiYWNrIGxhdGVyXG5cbiAgICBncmlkLWdhcDogNiU7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4uZm9vdGVyLW5hdi1jb250YWluZXIge1xuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHNhcHBoaXJlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzYXBwaGlyZTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGJvcmRlci1ib3R0b206IDAgbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ2xvYmFsLWZvb3Rlcl9fbG9nbyB7XG4gIGltZyB7XG4gICAgLy8gdGVtcCBoYWNrIHBvcyBsb2dvIGhhcyBzaGl0IGxvYWRcbiAgICAvLyBvZiB3aGl0ZSBzcGFjZSBvbiB0b3BcbiAgICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgfVxufVxuXG4uZ2xvYmFsLWZvb3Rlcl9fcGFyZW50bG9nbyB7XG4gIG1heC13aWR0aDogMTAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZm9vdGVyLWxvZ28tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cblxuLmZvb3Rlci1uYXYtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uY29tcGFueS1pbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgYSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiRjaHJpc3RpO1xuICAgIH1cbiAgfVxufVxuXG4uc29jaWFsLWxpbmtzLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4uc29jaWFsLWxpbmtzLWN0YSB7XG4gIGNvbG9yOiAkc3VtbWVyLXNreTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAvLyBhbGlnbiB0byB0b3BcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLy8gZW5kIGFsaWduIHRvIHRvcFxuICB9XG59XG5cbi5zb2NpYWwtbGlua3MtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zb2NpYWwtbGlua3MtaXRlbSB7XG4gIG1hcmdpbjogMCAxLjVyZW07XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnNvY2lhbC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAmLmZhY2Vib29rIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3NvY2lhbC9mYWNlYm9vay5wbmcpO1xuXG4gICAgd2lkdGg6IDExcHg7XG4gICAgaGVpZ2h0OiAyM3B4O1xuICB9XG5cbiAgJi5saW5rZWRpbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zb2NpYWwvbGlua2VkaW4ucG5nKTtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gIH1cblxuICAmLnlvdXR1YmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc29jaWFsL3lvdXR1YmUuc3ZnKTtcbiAgICB3aWR0aDogMjlweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cblxuICAmLnR3aXR0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc29jaWFsL3R3aXR0ZXIuc3ZnKTtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cblxuICAmLnR3aXR0ZXIteCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zb2NpYWwvdHdpdHRlci14LnBuZyk7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxufVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmJhY2stdG8tdG9wIHtcbiAgICB3aWR0aDogOHJlbTtcbiAgICBoZWlnaHQ6IDhyZW07XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1MiU7XG4gICAgcmlnaHQ6IDUlO1xuXG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgYm90dG9tOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICAgIHJpZ2h0OiAycmVtO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2Zy5iYWNrLXRvcC1hcnJvdyB7XG4gICAgICAgIGZpbGw6ICRjaHJpc3RpO1xuICAgICAgICBzdHJva2U6ICRkYXJrLWdyZWVuO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlYXJjaC1mb3JtIHtcbiAgZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgZm9ybSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXS5zZWFyY2gtZm9ybV9faW5wdXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMzRweDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgLy8gaGlkZSBvbiBsb2FkXG4gICAgICB3aWR0aDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IG9wZW4tc2VhcmNoO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL21hZ25pZnlpbmctbGVucy5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXS5zZWFyY2gtZm9ybV9faW5wdXQ6Zm9jdXMgKyAuc2VhcmNoLXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL3gtY2xvc2Uuc3ZnKTtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBvcGVuLXNlYXJjaCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgd2lkdGg6IDUwcmVtO1xuICB9XG59XG5cbi8vIG9wYWNpdHkgd2hlbiBzZWFyY2ggaXMgZXhwYW5kZWRcbkBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgLnN1YmR1ZWQge1xuICAgIC5tYWluLW5hdiB7XG4gICAgICAubWVudV9saW5rIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyB0ZW1wIGhhY2tzIEZQTyAhISEhXG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgJi5zZWFyY2gtZm9ybV9faW5wdXQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRhcHAtcGFkZGluZ30pO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICRhY2FkaWE7XG4gICAgYm9yZGVyLXJhZGl1czogM3JlbTtcbiAgICBtYXJnaW46IDJyZW0gMDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgfVxuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG5cbi5wYWdlLW51bWJlcnMge1xuICBjb2xvcjogJHN1dmEtZ3JleTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBtYXJnaW46IDAgMC41cmVtO1xuICAmLnByZXYsXG4gICYubmV4dCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGNocmlzdGk7XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBtYXJnaW46IDAgNC44cmVtO1xuICAgIH1cbiAgfVxuXG4gICYuY3VycmVudCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAzLjVyZW07XG4gICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNocmlzdGk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4iLCIiLCJAbWl4aW4gY29tcG9uZW50LXBhZGRpbmcge1xuICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xufVxuXG5AbWl4aW4gYmctY29sb3Itc2NoZW1lKCRiZy1jb2xvciwgJHRpdGxlLWNvbG9yLCAkc3VidGl0bGUtY29sb3IsICRkZXMtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICBoZWFkZXIge1xuICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XG4gIH1cbiAgLmludHJvLXRpdGxlLCAuYWx0LXRpdGxlIHtcbiAgICBjb2xvcjogJHRpdGxlLWNvbG9yO1xuICB9XG4gIC5pbnRyby1zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICRzdWJ0aXRsZS1jb2xvcjtcbiAgfVxuICAuaW50cm8tZGVzY3JpcHRpb24sIC50YWItY29tcG9uZW50LXRpdGxlLFxuICBwLCB1bCwgb2wsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGNvbG9yOiAkZGVzLWNvbG9yO1xuICAgIHAge1xuICAgICAgY29sb3I6ICRkZXMtY29sb3I7XG4gICAgfVxuICB9XG4gIHRhYmxlIHtcbiAgICBjb2xvcjogJGRlcy1jb2xvcjtcbiAgfVxuICBhOm5vdCgucHJpbWFyeS1jdGEtYnV0dG9uKSB7XG4gICAgY29sb3I6ICRkZXMtY29sb3I7XG4gIH1cbiAgLnF1ZXJ5LXJlc3VsdHMtZ3JpZC1jb250YWluZXIge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgaGVhZGVyIHtcbiAgICAgICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGRlcy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFic3tcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBiZy1jb2xvci1zY2hlbWUtZm9ybSgkdGl0bGUtY29sb3IsICRkZXMtY29sb3IsICRmaWVsZC1iZykge1xuICAuZ2Zvcm1faGVhZGluZyB7XG4gICAgLmdmb3JtX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XG4gICAgfVxuICAgIHNwYW4uZ2Zvcm1fZGVzY3JpcHRpb24sXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGRlcy1jb2xvcjtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGRlcy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdmb3JtX3dyYXBwZXIgbGFiZWwuZ2ZpZWxkX2xhYmVsLFxuICAuZ2Zvcm1fd3JhcHBlciBsYWJlbCB7XG4gICAgY29sb3I6ICRkZXMtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGRlcy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgLmdmb3JtX3dyYXBwZXJcbiAgICBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwiYnV0dG9uXCJdKTpub3QoW3R5cGU9XCJpbWFnZVwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSksXG4gIHRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtYmc7XG4gIH1cbiAgLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyIHtcbiAgICBjb2xvcjogJHRpdGxlLWNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBjb21wb25lbnQtaGVhZGVyKFxuICAkYWxpZ25tZW50OiBjZW50ZXIsXG4gICRwYWRkaW5nVG9wOiAwLFxuICAkcGFkZGluZ0JvdHRvbTogNHJlbSxcbiAgJHBhZGRpbmdYOiAzJSxcbiAgJGNvbG9yOiAkZGFyay1ncmVlblxuKSB7XG4gIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBjb2xvcjogJGNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB0ZXh0LWFsaWduOiAkYWxpZ25tZW50O1xuICBwYWRkaW5nOiAkcGFkZGluZ1RvcCAkcGFkZGluZ1ggJHBhZGRpbmdCb3R0b207XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIGZvbnQtc2l6ZTogNC42cmVtO1xuICB9XG59XG5AbWl4aW4gaW50cm8tdGl0bGUge1xuICBmb250LWZhbWlseTogJG11c2VvO1xuICBjb2xvcjogJGJhaGFtYS1ibHVlO1xuICBmb250LXNpemU6IDQuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA1cmVtO1xufVxuXG5AbWl4aW4gaW50cm8tc3VidGl0bGUge1xuICBmb250LXNpemU6IDIuNnJlbTtcbiAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgY29sb3I6ICRjaHJpc3RpO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5AbWl4aW4gaW50cm8tZGVzY3JpcHRpb24oJHBhZGRpbmdZOiAwLCAkcGFkZGluZ1g6IDApIHtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBjb2xvcjogJGRhcmstZ3JlZW47XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAkcGFkZGluZ1kgJHBhZGRpbmdYO1xuICAvLyBtYXJnaW4tdG9wOiA0cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY29tcG9uZW50LWhlYWRlciB7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1oZWFkZXI7XG5cbiAgLmludHJvLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBpbnRyby10aXRsZTtcbiAgfVxuXG4gIC5pbnRyby1zdWJ0aXRsZSB7XG4gICAgQGluY2x1ZGUgaW50cm8tc3VidGl0bGU7XG4gIH1cbiAgLmludHJvLWRlc2NyaXB0aW9uIHtcbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGludHJvLWRlc2NyaXB0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gY29tcG9uZW50LWN0YS1jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIGEgKyBhIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICBhICsgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5jb21wb25lbnQtY3RhLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1jdGEtY29udGFpbmVyO1xufVxuXG5AbWl4aW4gbW9kdWxlLXBhZGRpbmcge1xuICBwYWRkaW5nOiA0cmVtIDYlO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBwYWRkaW5nOiAwIDYlO1xuICB9XG59XG5cbkBtaXhpbiBtb2R1bGUtaGVhZGVyIHtcbiAgY29sb3I6ICRiYWhhbWEtYmx1ZTtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBmb250LXNpemU6IDIuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuQG1peGluIG1vZHVsZS1jYXJkLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG5AbWl4aW4gbW9kdWxlLWNhcmQtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDglIDglIDgyJSA4JTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZTtcblxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaW1hZ2UtZ3JhZGllbnQtb3ZlcmxheTtcbiAgfVxufVxuXG5AbWl4aW4gbW9kdWxlLWNhcmQtaXRlbS1oZWFkZXIge1xuICBjb2xvcjogJHdoaXRlO1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5vdmVyd3JpdGUtZXhjZXJwdCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1peGluIG1vZHVsZS1jYXJkLWl0ZW0tbGluayB7XG4gIGNvbG9yOiAkY2hyaXN0aTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLm1vZHVsZS1jYXJkLWl0ZW0ge1xuICBAaW5jbHVkZSBtb2R1bGUtY2FyZC1pdGVtO1xuXG4gIC5tb2R1bGUtY2FyZC1pdGVtLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgbW9kdWxlLWNhcmQtaXRlbS1oZWFkZXI7XG4gIH1cblxuICAubW9kdWxlLWNhcmQtaXRlbS1saW5rIHtcbiAgICBAaW5jbHVkZSBtb2R1bGUtY2FyZC1pdGVtLWxpbms7XG4gIH1cbn1cblxuLy8gcHJvZHVjdCBkZXRhaWxzXG5cbkBtaXhpbiBwcm9kdWN0LWRldGFpbHMtdGFibGUtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZ1ZWdvO1xuICBmb250LWZhbWlseTogJG11c2VvO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbkBtaXhpbiBwcm9kdWN0LWRldGFpbHMtdGFibGUtZGVzY3JpcHRpb24ge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LWZhbWlseTogJG11c2VvO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuQG1peGluIHByb2R1Y3QtZGV0YWlscy10YWJsZS1zdWItaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnktYmx1ZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuQG1peGluIHByb2R1Y3QtZGV0YWlscy10YWJsZSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGZ1ZWdvO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDAgbm9uZTtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIG5lZWQgdG8gbWF0Y2ggY3NzIGNsYXNzIGNvbG9yIHN0cmluZyAoYmctLVtjb2xvcl0pIHRvIHNjc3MgY29sb3IgdmFyXG4kYmctY29sb3JzOiAoJ3doaXRlJzogJHdoaXRlLCAnd2hpdGUtc21va2UnOiAkd2hpdGUtc21va2UsICdzYXBwaGlyZSc6ICRzYXBwaGlyZSwgJ3BydXNzaWFuLWJsdWUnOiAkcHJ1c3NpYW4tYmx1ZSwgJ2RhcmstZ3JlZW4nOiAkZGFyay1ncmVlbik7XG5cbi8vIG1hcCBjc3MgY29sb3IoJG5hbWUpIHRvICR2YXJcbkBlYWNoICRuYW1lLCAkdmFyIGluICRiZy1jb2xvcnMge1xuICAuYmctLXBhcnRpYWx7XG4gICAgJi5iZy0tI3skbmFtZX17XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHRvIGJvdHRvbSxcbiAgICAgICAgJHZhciAwIDUwJSxcbiAgICAgICAgdHJhbnNwYXJlbnQgNTAlIDEwMCVcbiAgICAgICk7XG4gICAgfVxuICB9XG59IiwiLy8gQmFja2dyb3VuZCBDb2xvcnNcbi5iZy0td2hpdGUge1xuICBAaW5jbHVkZSBiZy1jb2xvci1zY2hlbWUoJHdoaXRlLCAkYmFoYW1hLWJsdWUsICRjaHJpc3RpLCAkZGFyay1ncmVlbik7XG59XG4uYmctLXdoaXRlLXNtb2tlIHtcbiAgQGluY2x1ZGUgYmctY29sb3Itc2NoZW1lKCR3aGl0ZS1zbW9rZSwgJGJhaGFtYS1ibHVlLCAkY2hyaXN0aSwgJGRhcmstZ3JlZW4pO1xuICAmLmJnLS1oYWxmIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAkd2hpdGUtc21va2UgNTAlLCAkd2hpdGUgNTAlKTtcbiAgICAubmV3cyAuc2VhcmNoLXJlc3VsdHMtZmlndXJlOmFmdGVyIHtcbiAgICAgIC8vIGJveC1zaGFkb3c6IDBweCAxcHggMjBweCAjY2NjO1xuICAgICAgLy8gbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgLy8gY29udGVudDogXCJcIjtcbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vIHRvcDogMDtcbiAgICAgIC8vIHJpZ2h0OiAwO1xuICAgICAgLy8gbGVmdDogMDtcbiAgICAgIC8vIGJvdHRvbTogMDtcbiAgICB9XG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6JGFwcC10ZXh0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmJnLS1kYXJrLWdyZWVuIHtcbiAgQGluY2x1ZGUgYmctY29sb3Itc2NoZW1lKCRkYXJrLWdyZWVuLCAkd2hpdGUsICRjaHJpc3RpLCAkd2hpdGUpO1xuICAmLmNvbHVtbi1jb250ZW50LWNvbXBvbmVudCB7XG4gICAgaGVhZGVyIHtcbiAgICAgIGNvbG9yOiRjaHJpc3RpO1xuICAgIH1cbiAgfVxuICAud2l6LWNvbnRhaW5lciB7XG4gICAgaDQge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgIH1cbiAgfVxuICAmLmJnLS1oYWxmIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAkZGFyay1ncmVlbiA1MCUsICR3aGl0ZSA1MCUpO1xuICAgIC5uZXdzIC5zZWFyY2gtcmVzdWx0cy1maWd1cmU6YWZ0ZXIge1xuICAgICAgLy8gYm94LXNoYWRvdzogMHB4IDFweCAyMHB4ICNjY2M7XG4gICAgICAvLyBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gdG9wOiAwO1xuICAgICAgLy8gcmlnaHQ6IDA7XG4gICAgICAvLyBsZWZ0OiAwO1xuICAgICAgLy8gYm90dG9tOiAwO1xuICAgIH1cbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjokYXBwLXRleHQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYmctLXNhcHBoaXJlIHtcbiAgQGluY2x1ZGUgYmctY29sb3Itc2NoZW1lKCRzYXBwaGlyZSwgJHdoaXRlLCAkY2hyaXN0aSwgJHdoaXRlKTtcbiAgJi5jb2x1bW4tY29udGVudC1jb21wb25lbnQge1xuICAgIGhlYWRlciB7XG4gICAgICBjb2xvcjokY2hyaXN0aTtcbiAgICB9XG4gIH1cbiAgLndpei1jb250YWluZXIge1xuICAgIGg0IHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgJi5iZy0taGFsZiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJHNhcHBoaXJlIDUwJSwgJHdoaXRlIDUwJSk7XG4gICAgLm5ld3MgLnNlYXJjaC1yZXN1bHRzLWZpZ3VyZTphZnRlciB7XG4gICAgICAvLyBib3gtc2hhZG93OiAwcHggMXB4IDIwcHggI2NjYztcbiAgICAgIC8vIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAvLyB0b3A6IDA7XG4gICAgICAvLyByaWdodDogMDtcbiAgICAgIC8vIGxlZnQ6IDA7XG4gICAgICAvLyBib3R0b206IDA7XG4gICAgfVxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiRhcHAtdGV4dC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5iZy0tcHJ1c3NpYW4tYmx1ZSB7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXNjaGVtZSgkcHJ1c3NpYW4tYmx1ZSwgJHdoaXRlLCAkc3ByaW5nLWJ1ZCwgJHdoaXRlKTtcbiAgJi5jb2x1bW4tY29udGVudC1jb21wb25lbnQge1xuICAgIGhlYWRlciB7XG4gICAgICBjb2xvcjokY2hyaXN0aTtcbiAgICB9XG4gIH1cbiAgLndpei1jb250YWluZXIge1xuICAgIGg0IHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgJi5iZy0taGFsZiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJHBydXNzaWFuLWJsdWUgNTAlLCAkd2hpdGUgNTAlKTtcbiAgICAubmV3cyAuc2VhcmNoLXJlc3VsdHMtZmlndXJlOmFmdGVyIHtcbiAgICAgIC8vIGJveC1zaGFkb3c6IDBweCAxcHggMjBweCAjY2NjO1xuICAgICAgLy8gbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgLy8gY29udGVudDogXCJcIjtcbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vIHRvcDogMDtcbiAgICAgIC8vIHJpZ2h0OiAwO1xuICAgICAgLy8gbGVmdDogMDtcbiAgICAgIC8vIGJvdHRvbTogMDtcbiAgICB9XG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6JGFwcC10ZXh0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmJnLS1zdXZhLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMCwgMCUsIDU4JSk7XG59XG4uYmctLWNocmlzdGkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woOTYsIDY5JSwgNDQlKTtcbn1cbi5iZy0ta2VsbHktZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woOTUsIDg3JSwgNDAlKTtcbn1cbi5iZy0tc3ByaW5nLWJ1ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGhzbCg3NiwgMTAwJSwgNDMlKTtcbn1cbi5iZy0tYmFoYW1hLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMjIwLCA2NSUsIDMzJSk7XG59XG4uYmctLWRlZXAtc2t5LWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMTk5LCAxMDAlLCA0OSUpO1xufVxuLmJnLS1zdW1tZXItc2t5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaHNsKDE5MywgNzQlLCA0OCUpO1xufVxuLmJnLS1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IGhzbCgwLCAwJSwgMCUpO1xufVxuLndpei1jb250YWluZXIge1xuICBoMyB7XG4gICAgY29sb3I6ICRjaHJpc3RpO1xuICB9XG59XG5cblxuLndpei1jb250YWluZXIge1xuICB1bCB7XG4gICAgbGkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLmVsZW1lbnRvci1zZWN0aW9uIHtcblxuICAgIHVsLCBvbHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgdWx7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICB9XG5cbiAgICBvbHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsOyBcbiAgICB9XG5cbiAgICBzdHJvbmd7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIGVte1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZXtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHg7XG4gICAgfVxufSIsIi8vIFNWRyBTdHlsZXNcbi5zdmctc3ByaXRlcyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4uaWNvbiB7XG5cdGZpbGw6bm9uZTtcblx0c3Ryb2tlLWxpbmVjYXA6cm91bmQ7XG5cdHN0cm9rZS1saW5lam9pbjpyb3VuZDtcblx0c3Ryb2tlLW1pdGVybGltaXQ6MTA7XG59XG4uc3Ryb2tlLTIge1xuXHRzdHJva2Utd2lkdGg6Mjtcbn1cbi5zdHJva2UtMyB7XG5cdHN0cm9rZS13aWR0aDozO1xufVxuLnN0cm9rZS00IHtcblx0c3Ryb2tlLXdpZHRoOjQ7XG59XG4uc3Ryb2tlLTUge1xuXHRzdHJva2Utd2lkdGg6NTtcbn1cblxuLy8gU29jaWFsIFNoYXJlIEljb25zXG4uc3MtdHdpdHRlciB7XG5cdGZpbGwtcnVsZTpldmVub2RkO1xuXHRjbGlwLXJ1bGU6ZXZlbm9kZDtcblx0ZmlsbDojMkNBN0UwO1xufVxuLnNzLWxpbmtlZGluIHtcblx0ZmlsbDojMDA3QkI2O1xufVxuLnNzLWZhY2Vib29rIHtcblx0ZmlsbDojM0M1QTk5O1xufVxuLnNzLXBpbnRlcmVzdC1mIHtcblx0ZmlsbDojQ0IxRjI2O1xufVxuLnNzLXBpbnRlcmVzdC1zIHtcblx0ZmlsbDojRkZGRkZGO1xufSIsIlxuLmFjZi1hbHRlcm5hdGluZyB7XG5cdEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0Ly8gYWRqdXN0IGZvciBzY3JvbGwgZWZmZWN0XG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcblx0LmNvbXBvbmVudC1jb250YWluZXIge1xuXHRcdEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xuXHR9XG5cdGhlYWRlciB7XG4gICAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcihjZW50ZXIpO1xuXHR9XG5cdC8vIC5pbnRyby1kZXNjcmlwdGlvbiB7XG5cdC8vIFx0cCB7XG5cdC8vIFx0ICBcdEBpbmNsdWRlIGludHJvLWRlc2NyaXB0aW9uKDApO1xuXHQvLyBcdH1cblx0Ly8gfVxuXHQuaWNvbi1hcnJvdyB7XG5cdFx0c3Ryb2tlOiBoc2woMCwgMCUsIDEwMCUpO1xuXHR9XG5cdC5pY29uLXNoYXBlIHtcblx0XHRzdHJva2U6IGhzbCgxOTksIDEwMCUsIDQ5JSk7XG5cdH1cbn1cbi5yaWdodC1hbHQge1xuXHRwYWRkaW5nLWJvdHRvbTogNHJlbTtcblx0QGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHR9XG59XG4ubGVmdC1hbHQge1xuXHRwYWRkaW5nLWJvdHRvbTogNHJlbTtcblx0QGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0fVxufVxuLmFsdC1yb3c6Zmlyc3QtY2hpbGQge1xuXHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG5cdFx0LmNvbnRlbnQtYWx0LWNvbnRhaW5lciB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbToxMHJlbTtcblx0XHR9XG5cdH1cbn1cbi5uZWdNYXJnaW4ge1xuXHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG5cdFx0bWFyZ2luLXRvcDotMTFyZW07XG5cdFx0LmNvbnRlbnQtYWx0LWNvbnRhaW5lciB7XG5cdFx0XHRwYWRkaW5nLXRvcDo1cmVtO1xuXHRcdH1cblx0fVx0XG59XG4uaW1hZ2UtYWx0LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRmbGV4OiAxIDAgMTAwJTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG5cdFx0ZmxleDogMCAxIDQ1JTtcblx0fVxuXHRpbWcge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdC8vIHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0Ly8gdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIDUwbXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cblx0XHQvLyAmLm9mZnNjcmVlbiB7XG5cdFx0Ly8gXHR0cmFuc2Zvcm06IHNjYWxlKDAuODUpO1xuXHRcdC8vIH1cblx0fVxuXHRpZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4td2lkdGg6IDEwMCU7XG5cdFx0Ly8gYmVsb3cgYnJlYWtzIHZpZCBzaXplIGluIGlPUyBicm93c2Vyc1xuXHRcdC8vIG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0Lmh0bWwtdmlkZW8tY29udGFpbmVyIHtcblx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdH1cblx0LnNwbGlkZV9fcGFnaW5hdGlvbiB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRsZWZ0OiA5MCU7XG5cdFx0dG9wOiA5MiU7XG5cdFx0d2lkdGg6IDUwcHg7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0fVxuXHQmLnNwbGlkZSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cdH1cblx0LnNwbGlkZV9fdHJhY2sge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR6LWluZGV4OiAyO1xuXHR9XG5cdC5zcGxpZGVfX2xpc3Qge1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXHQuc3BsaWRlX19zbGlkZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLmNvbnRlbnQtYWx0LWNvbnRhaW5lciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAzcmVtIDUlO1xuXHQucHJpbWFyeS1jdGEtYnV0dG9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHR9XG5cdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcblx0XHR3aWR0aDogNTAlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRcdC5wcmltYXJ5LWN0YS1idXR0b24ge1xuXHRcdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcblx0XHR9XG5cdH1cbn1cbi5hbHQtdGl0bGUge1xuXHRjb2xvcjogJGJhaGFtYS1ibHVlO1xuXHRmb250LWZhbWlseTogJGxhdG87XG5cdGZvbnQtc2l6ZTogMjZweDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5hbHQtY29udGVudCB7XG5cdGNvbG9yOiAkbmlnaHQtcmlkZXI7XG5cdGZvbnQtZmFtaWx5OiAkbGF0bztcblx0Zm9udC1zaXplOiAxNHB4O1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRwYWRkaW5nOiAxMHB4IDMwcHggMzBweCAwO1xuXHRsaW5lLWhlaWdodDogMS41O1xufVxuLmFsdC1yb3cge1xuXHRzdmcuaWNvbi1zaGFwZSB7XG5cdFx0ZGlzcGxheTpub25lO1xuXHR9XG5cdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcblx0XHQuYWx0LWdyYXBoaWMtMSBzdmcuaWNvbi1zaGFwZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiA5MHB4O1xuXHRcdFx0dG9wOiAtMjBweDtcblx0XHRcdGxlZnQ6LTQwcHg7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblx0XHQuYWx0LWdyYXBoaWMtMiBzdmcuaWNvbi1zaGFwZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiA3MHB4O1xuXHRcdFx0Ym90dG9tOiAxMHB4O1xuXHRcdFx0cmlnaHQ6NTAlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cdH1cblx0JjpudGgtb2YtdHlwZSgyKSwgJjpudGgtb2YtdHlwZSg1KSB7XG5cdFx0LmFsdC1ncmFwaGljLTEgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0d2lkdGg6IDkwcHg7XG5cdFx0XHR0b3A6IC0yMHB4O1xuXHRcdFx0bGVmdDotNDBweDtcblx0XHR9XG5cdFx0LmFsdC1ncmFwaGljLTIgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0d2lkdGg6IDEzMHB4O1xuXHRcdFx0Ym90dG9tOiAtNjBweDtcblx0XHRcdHJpZ2h0Oi02MHB4O1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cdH1cblx0JjpudGgtb2YtdHlwZSgzKSB7XG5cdFx0LmFsdC1ncmFwaGljLTEgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0LmFsdC1ncmFwaGljLTIgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0d2lkdGg6IDEzMHB4O1xuXHRcdFx0Ym90dG9tOiAtNjBweDtcblx0XHRcdHJpZ2h0Oi02MHB4O1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cdH1cblx0JjpudGgtb2YtdHlwZSg0KSwgJjpudGgtb2YtdHlwZSg2KSB7XG5cdFx0LmFsdC1ncmFwaGljLTEgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0d2lkdGg6IDkwcHg7XG5cdFx0XHR0b3A6IC0yMHB4O1xuXHRcdFx0bGVmdDotNDBweDtcblx0XHR9XG5cdFx0LmFsdC1ncmFwaGljLTIgc3ZnLmljb24tc2hhcGUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cbnN2Zy5pY29uLWFycm93IHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG59XG5cblxuXG5cblxuXG5cblxuXG5cbiIsIi5oZXJvLXdyYXBwZXIge1xuICAvLyB0aGlzIGlzIHZlcnkgaW1wb3J0YW50XG4gIC8vIHNwbGlkZSB3aWxsIGJyZWFrIG91dCBvZiBib3VuZHNcbiAgLy8gd2l0aG91dCB0aGUgZm9sbG93aW5nIDIgcnVsZXM6XG4gIG1heC13aWR0aDogMTAwdnc7XG5cbiAgLy8gbW92ZSBoZXJvIHNsaWRlciB1cCBhbmQgYmVuZWF0aFxuICAvLyBtYWluIG5hdlxuICAvLyBidXQgbGFyZ2Ugc2NyZWVucyBvbmx5XG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBtYXJnaW4tdG9wOiAtOS40cmVtO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLnNwbGlkZV9fcGFnaW5hdGlvbiB7XG4gICAgLy8gbm90IHN1cmUgd2h5IGkgbmVlZCB0aGUgZXh0cmEgMSVcbiAgICB3aWR0aDogMTAxJTtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgdG8gdG9wLFxuICAgICAgcmdiYSgwLCAyMCwgNDAsIDEpIDAlLFxuICAgICAgcmdiYSgwLCAyMCwgNDAsIDAuOCkgMTAwJVxuICAgICk7XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGxlZnQ6IDk1JTtcbiAgICAgIHRvcDogNDQlO1xuICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgYmFja2dyb3VuZDogdW5zZXQ7XG5cbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gIC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2Uge1xuICAgIHdpZHRoOiA5cHg7XG4gICAgaGVpZ2h0OiA5cHg7XG4gICAgbWFyZ2luOiA2cHggMTBweDtcbiAgfVxuICAuc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlLmlzLWFjdGl2ZSB7XG4gICAgd2lkdGg6IDEzcHg7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwLXNreS1ibHVlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLy8gc3BsaWRlIG92ZXJyaWRlcywgb3Jcbi8vIG92ZXJzcGxpZGVzXG5cbiNoZXJvLXN0YXRpYyB7XG4gIC8vIEkga25vdy4uLlxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAuc3BsaWRlX19zbGlkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zcGxpZGUge1xuICAvLyBhbGxvdyBwYWdpbmF0aW9uIHRvIHNpdCBiZW5lYXRoXG4gIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uc3BsaWRlX19zbGlkZSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbn1cbiIsIi8vIGhvbWVwYWdlIG9ubHkgdGFsbGVyIGhlcm8gaW1nL3ZpZGVvXG5cbi5ob21lIHtcbiAgLmhlcm8tY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBoZWlnaHQ6IDc1dmg7XG4gICAgfVxuICB9XG59XG5cbi5oZXJvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC8vIGhlaWdodDogNTB2aDtcbiAgLy8gcGVyIHR1bTogbW9iaWxlIDE6MSBhc3BlY3QgcmF0aW9cbiAgaGVpZ2h0OiAxMDB2dztcbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgaGVpZ2h0OiA1NXZoO1xuICB9XG4gIGltZyxcbiAgdmlkZW8ge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vIGhlaWdodDogNTB2aDtcblxuICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgc3Ryb2tlOiBoc2woMCwgMCUsIDEwMCUpO1xuICB9XG59XG5cbi5oZXJvLWN0YS1iZy1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIG1heC13aWR0aDogMTAwdnc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgLy8gYm90dG9tOiA4cHg7XG4gICAgLy8gbm90IHN1cmUgd2hhdCBpcyBoYXBwZW5pbmcsIGJ1dCBub3cgZG9uJ3QgbmVlZCA4cHggPz8/P1xuICAgIGJvdHRvbTogLTFweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgLy8gICAwZGVnLFxuICAgIC8vICAgdHJhbnNwYXJlbnRpemUoJGRhcmstZ3JlZW4sIDApIDAlLFxuICAgIC8vICAgdHJhbnNwYXJlbnRpemUoJGRhcmstZ3JlZW4sIDAuMDIpIDE1JSxcbiAgICAvLyAgIHRyYW5zcGFyZW50aXplKCRkYXJrLWdyZWVuLCAwLjYpIDUwJSxcbiAgICAvLyAgIHRyYW5zcGFyZW50aXplKCRkYXJrLWdyZWVuLCAxKSAxMDAlXG4gICAgLy8gKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAwZGVnLFxuICAgICAgcmdiKDAsIDE4LCAzNikgMCUsXG4gICAgICByZ2JhKDAsIDE4LCAzNiwgMC4yKSAxNSUsXG4gICAgICByZ2JhKDAsIDE4LCAzNiwgMC4xKSAyMCUsXG4gICAgICByZ2JhKDAsIDE4LCAzNiwgMCkgMTAwJVxuICAgICk7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgfVxufVxuXG4uaGVyby1jdGEtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIG1hcmdpbi10b3A6IDEycmVtO1xuICB9XG59XG5cbi5oZXJvLWN0YS1oZWFkZXIge1xuICBmb250LWZhbWlseTogJG11c2VvO1xuICBmb250LXNpemU6IDMuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgZm9udC1zaXplOiA2LjVyZW07XG4gIH1cbn1cblxuLmhlcm8tY3RhLWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gIHAge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cbi5oZXJvLWN0YS1jb250ZW50LFxuLmhlcm8tY3RhLWZvb3RlciB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaGVyby1jdGEtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAuaGVyby1jdGEtaGVhZGVyLFxuICAuaGVyby1jdGEtY29udGVudCxcbiAgLmhlcm8tY3RhLWZvb3RlciB7XG4gICAgLy8gd2lkdGg6IDY1JTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIC5ob21lICYge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg5OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhlcm8tY29udGFpbmVyIHtcbiAgICBpbWcsXG4gICAgdmlkZW8ge1xuICAgICAgbWluLXdpZHRoOiAxMDB2dztcbiAgICAgIGhlaWdodDogODB2aDtcbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tY29udGFpbmVyIHtcbiAgJi5zaG9ydGVuZWQge1xuICAgIC5oZXJvLWN0YS1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBoZXJvY2hlY2suanNcblxuLy8gaWYgaGVybyBkb2Vzbid0IGhhdmUgYnJlYWRjcnVtYnMgb3IganVtcCBsaW5rc1xuLmFjZi1oZXJvOm5vdCguaGFzLWJyZWFkY3J1bWJzKTpub3QoLmhhcy1qdW1wKSArIHNlY3Rpb24ge1xuICAvLyB0aWVzIGluIHdpdGggLThweCBib3R0b20gcnVsZSBjaGFuZ2UgaW4gbG4gMTM2IG9mIC4vaGVyby5zY3NzXG4gIC8vIG1hcmdpbi10b3A6IC00LjVyZW07XG4gIC8vIHNvIG5vdyBhZGp1c3RlZFxuXG4gIG1hcmdpbi10b3A6IC01LjVyZW07XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmhlcm8tc3RhdGljLmhhcy1qdW1wIHtcbiAgLmp1bXAtbGlua3MtYmctY29udGFpbmVyIHtcbiAgICAvL21hcmdpbi10b3A6IC01LjVyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAvLyBuZWVkcyB0byBzaXQgb250b3Agb2YgaGVyb1xuICAgIC8vIG9yIGVsc2UgJ2JvcmRlcicgYXBwZWFyc1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5oZXJvLWNvbnRhaW5lciB7XG4gICYuc2hvcnRlbmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBoZWlnaHQ6IDM1dmg7XG4gICAgICBtaW4taGVpZ2h0OiAyMnJlbTtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctdG9wOiB1bnNldDtcbiAgICB9XG5cbiAgICBcblxuICAgIGltZyxcbiAgICB2aWRlbyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgICAgcG9zaXRpb246IHVuc2V0O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8tY3RhLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgJGFwcC1wYWRkaW5nO1xuXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmp1bXAtbGlua3MtYmctY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG5cbiAgLy8gYWRqdXN0IGZvciBzcGxpZGUgbGF5b3V0IGhhY2tcbiAgbWFyZ2luLXRvcDogLThweDtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uYmctLXdoaXRle1xuICAuanVtcC1saW5rcy1iZy1jb250YWluZXIsLmp1bXAtbGlua3MtbGlzdCB7YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO31cbn1cblxuLmJnLS13aGl0ZS1zbW9rZXtcbiAgLmp1bXAtbGlua3MtYmctY29udGFpbmVyLC5qdW1wLWxpbmtzLWxpc3Qge2JhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTt9XG59XG5cbi5iZy0tc2FwcGhpcmV7XG4gIC5qdW1wLWxpbmtzLWJnLWNvbnRhaW5lciwuanVtcC1saW5rcy1saXN0IHtiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmU7fVxufVxuXG4uYmctLXBydXNzaWFuLWJsdWV7XG4gIC5qdW1wLWxpbmtzLWJnLWNvbnRhaW5lciwuanVtcC1saW5rcy1saXN0IHtiYWNrZ3JvdW5kLWNvbG9yOiAkcHJ1c3NpYW4tYmx1ZTt9XG59XG5cbi5iZy0tZGFyay1ncmVlbntcbiAgLmp1bXAtbGlua3MtYmctY29udGFpbmVyLC5qdW1wLWxpbmtzLWxpc3Qge2JhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO31cbn1cblxuLmp1bXAtbGlua3MtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLy8gc2V0IHBvc2l0aW9uaW5nIGNvbnRleHQgZm9yIGRyb3Bkb3duIG1vYmlsZVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5qdW1wLWxpbmtzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAvLyBwYWRkaW5nOiAyLjRyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG5cbiAgLy8gc21hbGxlciBzY3JlZW5zXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gIGFuaW1hdGlvbi1kZWxheTogMjAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNjUwbXM7XG4gIC1tb3otYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcblxuICAmLm9wZW5lZCB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IG9wZW4tbWVudTtcbiAgfVxuXG4gIEBrZXlmcmFtZXMgb3Blbi1tZW51IHtcbiAgICBmcm9tIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgIGhlaWdodDogMjJyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBwYWRkaW5nOiAyLjRyZW0gMDtcbiAgICAvLyBuZWVkIHRoaXMgZm9yIGZ1bGwgd2lkdGhcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIC8vIGtlZXAgaXQgb24gdGhlIHJpZ2h0XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAvLyByZW1vdmUgcG9zaXRpb25pbmdcbiAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuJG1vYmlsZS1qdW1wLWxpbmstd2lkdGg6IDE1cmVtO1xuXG4uanVtcC1saW5rLWxpc3QtaXRlbSB7XG4gIG1hcmdpbjogMXJlbSAycmVtO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgbWFyZ2luOiAwIDJyZW07XG4gIH1cbn1cblxuYS5qdW1wLWxpbmssXG5idXR0b24uanVtcC10cmlnZ2VyIHtcbiAgY29sb3I6ICRjaHJpc3RpO1xuICBmb250LWZhbWlseTogJGxhdG87XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAuZG93bi1hcnJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaWNvbi1jYXJhdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZpbGw6ICRjaHJpc3RpO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDI1JSwgMjUlKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIC5pY29uLWNhcmF0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5kb3duLWFycm93IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHN0cm9rZTogJGNocmlzdGk7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCA0MCUpO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5kb3duLWFycm93IHtcbiAgICAgICAgYW5pbWF0aW9uOiBqdW1wLWRvd24tYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmFjdGl2ZS1saXN0IHtcbiAgLmljb24tY2FyYXQge1xuICAgIGFuaW1hdGlvbjogcmlnaHQtY2FyYXQtcm90YXRlIDAuNXMgZWFzZSBmb3J3YXJkcztcbiAgfVxufVxuXG5idXR0b24uanVtcC10cmlnZ2VyIHtcbiAgd2lkdGg6ICRtb2JpbGUtanVtcC1saW5rLXdpZHRoO1xuICAvLyByZXNldCBidXR0b24gdWEgc3R5bGVzXG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgLy8gZ2l2ZSByb29tIGZvciBmb2N1cyBzdGF0ZVxuICBtYXJnaW46IDAuNXJlbSAwO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJcbi5icmVhZGNydW1icy1iZy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgLy8gICBnaXZlIGl0IHNvbWUgc3BhY2UgaWYgbm8ganVtcCBsaW5rcyBtZW51XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuXG4uYmctLXdoaXRle1xuICAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7fVxufVxuXG4uYmctLXdoaXRlLXNtb2tle1xuICAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2U7fVxufVxuXG4uYmctLXNhcHBoaXJle1xuICAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmU7fVxufVxuXG4uYmctLXBydXNzaWFuLWJsdWV7XG4gIC5icmVhZGNydW1icy1iZy1jb250YWluZXIge2JhY2tncm91bmQtY29sb3I6ICRwcnVzc2lhbi1ibHVlO31cbn1cblxuLmJnLS1kYXJrLWdyZWVue1xuICAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjt9XG59XG5cbi8vIG5vIG5lZWQgZm9yIHRvcCBzcGFjZSBpZiBwcmVjZWRlZCBieSBsdW1wIGxpbmtzXG4uanVtcC1saW5rcy1iZy1jb250YWluZXIgKyAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5icmVhZGNydW1icy1jb250YWluZXIge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJhaGFtYS1ibHVlO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYnMge1xuICBmb250LWZhbWlseTogJGxhdG87XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIC8vIG92ZXJyaWRlIGdsb2JhbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogaHNsYSgwLCAxMDAlLCAxMDAlLCAwLjUpO1xuXG4gIGEge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkY29sb3I6ICR3aGl0ZSwgJGFtb3VudDogMC41KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLmJyZWFkY3J1bWJfbGFzdCB7XG4gICAgY29sb3I6ICRjaHJpc3RpO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgfVxufVxuXG4vLyBicmVhZGNydW1icyB3L28ganVtcC1saW5rc1xuLy8gdG9kbzogZml4IGZvciBzYnMgbW9iaWxlXG5cbi5oZXJvLXdyYXBwZXIgKyAuYnJlYWRjcnVtYnMtYmctY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW4tdG9wOiAtNTFweDtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuIiwiLmxvZ28td3JhcHBlciB7XG4gIC8vIHRoaXMgaXMgdmVyeSBpbXBvcnRhbnRcbiAgLy8gc3BsaWRlIHdpbGwgYnJlYWsgb3V0IG9mIGJvdW5kc1xuICAvLyB3aXRob3V0IHRoZSBmb2xsb3dpbmcgMiBydWxlczpcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gIC8vIG1vdmUgaGVybyBzbGlkZXIgdXAgYW5kIGJlbmVhdGhcbiAgLy8gbWFpbiBuYXZcbiAgLy8gYnV0IGxhcmdlIHNjcmVlbnMgb25seVxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogLTkuNHJlbTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIHNwbGlkZSBvdmVycmlkZXMsIG9yXG4gIC8vIG92ZXJzcGxpZGVzXG5cbiAgI2xvZ28tc3RhdGljIHtcbiAgICAvLyBJIGtub3cuLi5cbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC5zcGxpZGVfX3NsaWRlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAuc2xpZGUtY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gIH1cbiAgLnNsaWRlLWNvbXAtcGFkZGluZyB7XG4gICAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206NHJlbTtcbiAgfVxuICAuc3BsaWRlIHtcbiAgICAvLyBhbGxvdyBwYWdpbmF0aW9uIHRvIHNpdCBiZW5lYXRoXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICB9XG4gIH1cblxuICAuc3BsaWRlX19zbGlkZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICBpbWcge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgfVxuICB9XG4gIC5zcGxpZGVfX2Fycm93IHtcbiAgICB3aWR0aDo2ZW07XG4gICAgaGVpZ2h0OjZlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIGZpbGw6I2ZmZmZmZjtcbiAgICBzdmcge1xuICAgICAgd2lkdGg6NGVtO1xuICAgICAgaGVpZ2h0OjRlbTtcbiAgICB9XG4gIH1cbiAgLnNwbGlkZV9fcGFnaW5hdGlvbiB7XG4gICAgLy8gbm90IHN1cmUgd2h5IGkgbmVlZCB0aGUgZXh0cmEgMSVcbiAgICB3aWR0aDogMTAxJTtcbiAgICBib3R0b206IDEuNXJlbTtcblxuICAgIEBpbmNsdWRlIGZvci1zaXplKGRlc2t0b3AtdXApIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZSB7XG4gICAgd2lkdGg6IDlweDtcbiAgICBoZWlnaHQ6IDlweDtcbiAgICBtYXJnaW46IDIwcHggMTBweDtcbiAgfVxuICAuc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlLmlzLWFjdGl2ZSB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwLXNreS1ibHVlO1xuICB9XG4gIC5zcGxpZGVfX2xpc3Qge1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgfVxufSIsIi8vIFRhYmJlZCBTZWN0aW9uXG4uYWNmLXRhYmJlZCB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IGhzbCgyMTQsIDEwMCUsIDEyJSk7XG5cbi5jb21wb25lbnQtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29tcG9uZW50LXBhZGRpbmc7XG59XG4gIC8vIE1haW4gVGl0bGVcbiAgLnRhYi1jb21wb25lbnQtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDU2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICAvLyBjb2xvcjogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxuICAvLyBDb250ZW50IFdyYXBwZXIgZm9yIGV2ZXJ5dGhpbmcgYnV0IHRoZSBtYWluIHRpdGxlXG4gIC50YWJzLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGhzbCg4MCwgMTAwJSwgMzklKTtcbiAgfVxuICAvLyBNYWluIFRhYnNcbiAgLnRhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgIGxpIHtcbiAgICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICAgIGJvcmRlci1yaWdodDogM3B4IHNvbGlkIGhzbCg4MCwgMTAwJSwgMzklKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMjBweCAwIDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCgyMTQsIDEwMCUsIDE5JSk7XG4gICAgICB9XG4gICAgICAmLmluYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5pbmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhYi1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRcbiAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIGhzbCgyMTQsIDEwMCUsIDE5JSkgMCUsIGhzbCgyMTUsIDEwMCUsIDQlKSAxMDAlKVxuICAgICAgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICB9XG4gIC8vIENvbnRlbnQgc2VjdGlvbiB3cmFwcGVyIGZvciBlYWNoIHRhYlxuICAudGFiLXBhbmUge1xuICAgIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gICAgJi5oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zbGlkZSB7XG4gICAgICB3aWR0aDogMTAxJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICBjb2xvcjogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFkZmI7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgJi5iaW9fb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICBhbmltYXRpb246IGV4cGFuZCAxcyBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgIH1cbiAgICAgIC5jbG9zZSB7XG4gICAgICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDI5cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICAgIC5zbGlkZS1jb250ZW50LXdyYXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vVGFiIGRlc2NyaXB0aW9uXG4gIC50YWItZGVzY3JpcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4IDE1JSA0MHB4O1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMTAwJSk7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgfVxuICB9XG4gIC8vIFBvc3RzIGNvbnRhaW5lclxuICAudGFiLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG4gIC8vIFBvc3RcbiAgLnRhYmJlZC1wb3N0LXdyYXAge1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcbiAgICAgIGZsZXgtYmFzaXM6IDQ5JTtcbiAgICAgIG1hcmdpbi1yaWdodDogMiU7XG4gICAgICAmOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBmbGV4LWJhc2lzOiAzMy42NiU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNDklO1xuICAgICAgJjpudGgtY2hpbGQoM24gKyAzKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9yLXNpemUoZGVza3RvcC11cCkge1xuICAgICAgZmxleC1iYXNpczogMTYlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjc1JTtcbiAgICAgICY6bnRoLWNoaWxkKDZuICsgNikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC8vUG9zdCBpbWFnZVxuICAgIC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAvLyBQb3N0IGZpcnN0IGFuZCBsYXN0IG5hbWVcbiAgICAudGV4dF90aXRsZSB7XG4gICAgICBjb2xvcjogaHNsKDgwLCAxMDAlLCAzOSUpO1xuICAgICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XG4gICAgfVxuICAgIC5kbC13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLnRhYmJlZC1saW5rIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAuZGwtd3JhcHBlciB7XG4gICAgICAgICAgLmRvd24tYXJyb3cge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBkb3duLWFycm93LXRhYmJlZCAwLjVzIGVhc2UgZm9yd2FyZHM7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pY29uLWFycm93IHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcmlnaHQtYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBQb3N0IFN1YnRpdGxlXG4gICAgLnRleHQtc3ViLXRpdGxlIHtcbiAgICAgIGNvbG9yOiBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XG4gICAgfVxuICAgIC50ZXh0LWV4Y2VycHQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB9XG4gICAgLmljb24tdGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgIC5kb3dubG9hZC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gICAgICBjb2xvcjogJGNocmlzdGk7XG4gICAgICBzdmcuZG93bi1hcnJvdyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAyNSUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZG93bi1hcnJvdyB7XG4gICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgfVxufVxuIiwiLy8gVGFiYmVkIEJpb3MgU2VjdGlvblxuLmFjZi10YWJiZWQtYmlvcywgLmFjZi10YWJiZWQtbG9jYXRpb25zIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogaHNsKDIxNCwgMTAwJSwgMTIlKTtcbn1cbi5jb21wb25lbnQtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29tcG9uZW50LXBhZGRpbmc7XG59XG4vLyBNYWluIFRpdGxlXG4udGFiLWNvbXBvbmVudC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiA1NnB4O1xuICBsaW5lLWhlaWdodDogNDVweDtcbiAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgLy8gY29sb3I6IGhzbCgwLCAwJSwgMTAwJSk7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGxldHRlci1zcGFjaW5nOiAxLjEycHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG4vLyBDb250ZW50IFdyYXBwZXIgZm9yIGV2ZXJ5dGhpbmcgYnV0IHRoZSBtYWluIHRpdGxlXG4udGFicy1jb250YWluZXIge1xuICBib3JkZXItYm90dG9tOjNweCBzb2xpZCBoc2woODAsIDEwMCUsIDM5JSk7XG59XG4vLyBNYWluIFRhYnNcbi50YWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gIGxpIHtcbiAgICBjb2xvcjogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICBmb250LXNpemU6MjFweDtcbiAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGJvcmRlcjpub25lO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi1ib3R0b206LTNweDtcbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgYm9yZGVyLXRvcDozcHggc29saWQgaHNsKDgwLCAxMDAlLCAzOSUpO1xuICAgICAgYm9yZGVyLXJpZ2h0OjNweCBzb2xpZCBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICBib3JkZXItbGVmdDozcHggc29saWQgaHNsKDgwLCAxMDAlLCAzOSUpO1xuICAgICAgYm9yZGVyLWJvdHRvbTpub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweCAyMHB4IDAgMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCgyMTQsIDEwMCUsIDE5JSk7XG4gICAgfVxuICAgICYuaW5hY3RpdmUge1xuICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBhLmluYWN0aXZlIHtcbiAgICAgIGNvbG9yOiBoc2woODAsIDEwMCUsIDM5JSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG4udGFiLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIGhzbCgyMTQsIDEwMCUsIDE5JSkgMCUsIGhzbCgyMTUsIDEwMCUsIDQlKSAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG59XG4vLyBDb250ZW50IHNlY3Rpb24gd3JhcHBlciBmb3IgZWFjaCB0YWJcbi50YWItcGFuZSB7XG4gIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gICYuaW5hY3RpdmUtbWFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNsaWRlIHtcbiAgICB3aWR0aDoxMDElO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCgxOTksIDEwMCUsIDQ5JSk7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICAmLmJpb19vcGVuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIGFuaW1hdGlvbjogZXhwYW5kIDEuNXMgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgfVxuICAgIC5jbG9zZSB7XG4gICAgICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDI5cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgLnNsaWRlLWNvbnRlbnQtd3JhcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIC50ZXh0X2NvbnRlbnQge1xuICAgICAgICBwIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy9UYWIgZGVzY3JpcHRpb25cbi50YWItZGVzY3JpcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHggMTUlIDQwcHg7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBjb2xvcjogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmb250LWZhbWlseTogJGxhdG87XG4gIH1cbn1cbi8vIFBvc3RzIGNvbnRhaW5lclxuLnRhYi1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4vLyBQb3N0XG4udGFiYmVkLXBvc3Qtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlO1xuICBAaW5jbHVkZSBmb3Itc2l6ZShwaG9uZS1vbmx5KSB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gIH1cbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzJTtcbiAgfVxuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICB9XG4gIC8vUG9zdCBpbWFnZVxuICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiBcbiAgfVxuICAucG9zdC10ZXh0LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLnRleHQtY29udGFpbmVyIHtcbiAgICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICB9XG4gIH1cbiAgLy8gUG9zdCBmaXJzdCBhbmQgbGFzdCBuYW1lXG4gIC50ZXh0X3RpdGxlIHtcbiAgICBjb2xvcjogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxuICAvLyBQb3N0IEpvYiB0aXRsZVxuICAudGV4dC1qb2ItdGl0bGUge1xuICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIC8vIFBvc3QgZXhwYW5kYWJsZSBjb250ZW50IGFycm93XG4gICYgLnRleHQtbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMC41cmVtO1xuICAgICAuYnV0dG9uIHtcbiAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICBzdmcge1xuICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgIH1cbiAgICAgICAgICYuY2xpY2tlZCB7XG4gICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICB9IFxuICB9XG59XG4udGFiYmVkLWV4cGFuZGVkLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFuaW1hdGlvbjogZXhwYW5kLWJnLWNvbG9yIDEuNXMgZWFzZS1vdXQgZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgZXhwYW5kIHtcbiAgMCUge3BhZGRpbmc6IDAgMi41JTsgbWF4LWhlaWdodDogMDsgb3BhY2l0eTogMDt9XG4gIDIwJSB7cGFkZGluZzogMi41JTsgbWF4LWhlaWdodDogMTAwJTsgb3BhY2l0eTogMDt9XG4gIDU1JSB7cGFkZGluZzogMi41JTsgbWF4LWhlaWdodDogMTAwJTsgb3BhY2l0eTogMDt9XG4gIDEwMCUge3BhZGRpbmc6IDIuNSU7IG1heC1oZWlnaHQ6MTAwJTsgb3BhY2l0eTogMTt9XG59XG5Aa2V5ZnJhbWVzIGV4cGFuZC1iZy1jb2xvciB7XG4gIDAlIHtiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDt9XG4gIDU1JSB7YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7fVxuICAxMDAlIHtiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMTk5LCAxMDAlLCA0OSUpO31cbn0iLCIuYWNmLXNicyB7XG4gIC5pY29uLWFycm93IHtcbiAgICBzdHJva2U6IGhzbCgwLCAwJSwgMTAwJSk7XG4gIH1cbiAgLmRvd24tYXJyb3cge1xuICAgIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgICBzdHJva2U6IGhzbCgwLCAwJSwgMTAwJSk7XG4gIH1cbn1cbi5zYnMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMCA3JTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAgMyU7XG5cbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgLnNicy1hc3NldCxcbiAgICAuc2JzLWRldGFpbHMge1xuICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4uc2JzLWFzc2V0IHtcbiAgLy8gcGFkZGluZzogMCAzJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICYuc3RhdGljLWltZyB7XG4gICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG4gICYuYXR0YWNobWVudC1pbWFnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgIHBhZGRpbmc6IDEwcmVtIDAgMTVyZW07XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIGNvbG9yOiRjaHJpc3RpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgLmRvd24tYXJyb3cge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgNDAlKTtcbiAgICAgICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuZG93bi1hcnJvdyB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBqdW1wLWRvd24tYXJyb3cgMC41cyBlYXNlIGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zYnMtZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA3JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBwYWRkaW5nOiAwIDMlO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggMjBweCBoc2xhKDAsIDAlLCAwJSwgMC4wNzgpO1xuICB9XG5cbiAgLy8gVE9ETyBtYWtlIHRoZSBmb2xsb3dpbmcgaW50byBtaXhpblxuICBoZWFkZXIge1xuICAgIEBpbmNsdWRlIGNvbXBvbmVudC1oZWFkZXIoJGFsaWdubWVudDogbGVmdCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4uc2JzLWRlc2NyaXB0aW9uIHtcbiAgLnNicy1jb250ZW50LFxuICAud2l6LWNvbnRhaW5lciB7XG4gICAgY29sb3I6ICRuaWdodC1yaWRlcjtcbiAgICAqIHtcbiAgICAgIGNvbG9yOiAkbmlnaHQtcmlkZXI7XG4gICAgfVxuICB9XG4gIC5jb21wb25lbnQtY3RhLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgLy8gb3ZlcnJpZGVzXG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5hY2YtY29sdW1uLWNvbnRlbnQge1xuICAuY29sdW1uLWNvbnRlbnQtY29tcG9uZW50IHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIC5jb21wb25lbnQtY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gICAgICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcbiAgICAgIC5jb21wb25lbnQtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDByZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG4gIC5jb2x1bW4tY29udGVudC1ncmlkIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAuZ3JpZC1jb2x1bW5zLTIge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5ncmlkLWNvbHVtbnMtMyB7XG4gICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcbiAgICAgICAgZmxleDogMCAxIDUwJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgICAgZmxleDogMCAxIDMzJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmdyaWQtY29sdW1ucy00IHtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuICAgICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgICBmbGV4OiAwIDEgMjUlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZ3JpZC1jb2x1bW5zLTUge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgICAgIGZsZXg6IDAgMSAzMyU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICAgIGZsZXg6IDAgMSAyMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb2x1bW4tY29udGVudC1ncmlkLWl0ZW0tY29udGFpbmVyIHtcbiAgICBoZWFkZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDMuNnJlbTtcbiAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuICB9XG4gIC5jb2x1bW4tY29udGVudC1jdGEtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTByZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgcHJpbWFyeS1jdGEtYnV0dG9uO1xuICAgIH1cbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgc3Ryb2tlOiAkd2hpdGU7XG4gIH1cbiAgLmljb24tY29udGFpbmVyIHtcbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLmFjZi1jb2x1bW4tcGFnZSB7XG4gIC5hcHAtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyKCRwYWRkaW5nWDogMCk7XG4gICAgQGluY2x1ZGUgY29tcG9uZW50LXBhZGRpbmc7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMlO1xuICAgICAgcGFkZGluZy1yaWdodDogMyU7XG4gICAgfVxuXG4gICAgPiBoZWFkZXIge1xuICAgICAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcigkYWxpZ25tZW50OiBjZW50ZXIpO1xuICAgICAgLy8gcCB7XG4gICAgICAvLyAgIEBpbmNsdWRlIGNvbXBvbmVudC1oZWFkZXItZGVzY3JpcHRpb247XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG4gIC5tb2R1bGUtY2FyZC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJi5kb3dubG9hZC1maWxlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogaW5pdGlhbDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAyMCU7XG4gICAgfVxuICAgIC5wb3N0LXR5cGUtdGV4dCB7XG4gICAgICBjb2xvcjogJGRlZXAtc2t5LWJsdWU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuNTtcbiAgICB9XG4gIH1cbiAgLmljb24tYXJyb3csXG4gIC5kb3duLWFycm93IHtcbiAgICBzdHJva2U6ICR3aGl0ZTtcbiAgfVxuICAubW9kdWxlLWNhcmQtaXRlbS1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAuaWNvbi1hcnJvdyxcbiAgICAuZG93bi1hcnJvdyB7XG4gICAgICBzdHJva2U6ICRjaHJpc3RpO1xuICAgIH1cbiAgfVxufVxuXG4uY29sdW1uLXBhZ2UtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgLy8gVE9ETyBwdXQgaW4gYSBsb29wXG4gIC8vIHdpbGwgYmUgZnVuIGxlc3NvbiBmb3IgbWF0dCBhbmQgbXlzZWxmXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAmLmNvbHVtbnMtMiB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgICYuY29sdW1ucy0zIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuXG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbHVtbi1wYWdlLWdyaWQtaXRlbSB7XG59XG5cbi5jb2x1bW4tcGFnZS1ncmlkLWl0ZW0tY29udGFpbmVyIHtcbn1cbiIsIi5hY2YtYmFubmVyLWltYWdlIHtcbiAgLmJhbm5lci1pbWFnZS1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gICAgQGluY2x1ZGUgY29tcG9uZW50LXBhZGRpbmc7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuICB9XG4gIC5iYW5uZXItaW1hZ2UtY29udGFpbmVyIHtcbiAgICBmaWd1cmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5iYW5uZXItaW1hZ2UtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMyU7XG4gICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIH1cbiAgICAuaW50cm8tdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6ICRtdXNlbztcbiAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5pbnRyby1zdWJ0aXRsZSB7XG4gICAgfVxuICAgIC5pbnRyby1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIGEge1xuICAgIH1cbiAgfVxuXG4gIC5wcmltYXJ5LWN0YS1idXR0b24sXG4gIC5zZWNvbmRhcnktY3RhLWJ1dHRvbixcbiAgLnByaW1hcnktbGluay1idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5wcmltYXJ5LWN0YS1idXR0b24ge1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIHN0cm9rZTogaHNsKDAsIDAlLCAxMDAlKTtcbiAgICB9XG4gIH1cbiAgLnNlY29uZGFyeS1jdGEtYnV0dG9uIHtcbiAgICAuZG93bi1hcnJvdyB7XG4gICAgICBzdHJva2U6IGhzbCg5NiwgNjklLCA0NCUpO1xuICAgIH1cbiAgfVxuICAucHJpbWFyeS1saW5rLWJ1dHRvbiB7XG4gICAgY29sb3I6IGhzbCg5NiwgNjklLCA0NCUpO1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIHN0cm9rZTogaHNsKDk2LCA2OSUsIDQ0JSk7XG4gICAgfVxuICAgIC5kb3duLWFycm93IHtcbiAgICAgIHN0cm9rZTogaHNsKDk2LCA2OSUsIDQ0JSk7XG4gICAgfVxuICB9XG59XG4iLCIuYWNmLWNvbnRlbnQge1xuICAuY29tcG9uZW50LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcbiAgICAvLyBwYWRkaW5nOiA2MHB4IDE1JTtcbiAgICAuY29tcG9uZW50LWhlYWRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgIH1cbiAgfVxuXG5cblxuXG5cblxuICAuY29udGVudC1jb21wb25lbnQtY29udGVudCB7XG4gICAgLy8gc3RhbmRhcmRpemUgd2l0aCByZXN0IG9mIHNpdGVcbiAgICBwYWRkaW5nOiAwIDMlO1xuICB9XG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgZm9udC1zaXplOiA0LjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDYycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDIuNnJlO1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBwIHtcbiAgICBmb250LWZhbWlseTogJGxhdG87XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG4gIC5pY29uLWFycm93IHtcbiAgICBzdHJva2U6ICR3aGl0ZTtcbiAgfVxufVxuIiwiLmFjZi1pbmZvZ3JhcGhpYyB7XG4gIC5pY29uLWFycm93IHtcbiAgICBzdHJva2U6IGhzbCgwLCAwJSwgMTAwJSk7XG4gIH1cbiAgLmRvd24tYXJyb3cge1xuICAgIHN0cm9rZTogaHNsKDAsIDAlLCAxMDAlKTtcbiAgfVxufVxuLmluZm9ncmFwaGljLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGFwcC1jb250YWluZXI7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xuICBoZWFkZXIge1xuICAgIEBpbmNsdWRlIGNvbXBvbmVudC1oZWFkZXIoY2VudGVyKTtcbiAgfVxuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBpbnRyby1kZXNjcmlwdGlvbigwLCAkYXBwLXBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBncmlkXG5cbi5pbmZvZ3JhcGhpYy1ncmlkLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcblxuICAuaW5mb2dyYXBoaWMtaW1hZ2Uge1xuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBvcmRlcjogNDtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICBvcmRlcjogNTtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICBvcmRlcjogODtcbiAgICB9XG4gIH1cblxuICAuaW5mb2dyYXBoaWMtY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIHN0cm9uZywgYiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIH1cbiAgICAgIGVtLCBpIHtcbiAgICAgICAgZm9udC1zdHlsZTppdGFsaWM7XG4gICAgICB9XG4gICAgfVxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBvcmRlcjogMztcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICBvcmRlcjogNjtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICBvcmRlcjogNztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcblxuICAgIC5pbmZvZ3JhcGhpYy1pbWFnZSB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICBvcmRlcjogMztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICBvcmRlcjogNjtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICBvcmRlcjogODtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5mb2dyYXBoaWMtY29udGVudC1jb250YWluZXIge1xuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgb3JkZXI6IDQ7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgb3JkZXI6IDU7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKDQpIHtcbiAgICAgICAgb3JkZXI6IDc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGNlbGxzXG4uaW5mb2dyYXBoaWMtY29udGVudC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBmb250LXdlaWdodDogOTAwO1xuXG4gIC5pbmZvZ3JhcGhpYy1jb250ZW50LWZpZ3VyZSxcbiAgLmluZm9ncmFwaGljLWNvbnRlbnQtZGVzY3JpcHRpb24ge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLmluZm9ncmFwaGljLWNvbnRlbnQtZmlndXJlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICBpbWcge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgbWF4LWhlaWdodDogNnJlbTtcblxuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LXBvcnRyYWl0LXVwKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDlyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmluZm9ncmFwaGljLWNvbnRlbnQtZGVzY3JpcHRpb24ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuXG4iLCIuZm9ybS1iZy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIHBhZGRpbmc6IDVyZW0gMCA5cmVtO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi5ncmFkaWVudC1vdmVybGF5IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHRvIHRvcCxcbiAgICAgICAgcmdiYSgwLCAyMCwgNDAsIDEpIDAlLFxuICAgICAgICByZ2JhKDAsIDIwLCA0MCwgMC45OSkgMiUsXG4gICAgICAgIHJnYmEoMCwgMjAsIDQwLCAwLjk1KSAxMCUsXG4gICAgICAgIHJnYmEoMCwgMjAsIDQwLCAwLjgpIDIwJSxcbiAgICAgICAgcmdiYSgwLCAyMCwgNDAsIDAuNikgNDAlLFxuICAgICAgICByZ2JhKDAsIDIwLCA0MCwgMC41KSA4MCUsXG4gICAgICAgIHJnYmEoMCwgMjAsIDQwLCAwLjQpIDEwMCVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLmdmb3JtX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi8vIG92ZXJyaWRlIGdyYXZpdHlcbi5hY2YtZm9ybSB7XG4gIC5nZm9ybV93cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICB9XG59XG5cbi5nZm9ybV9oZWFkaW5nIHtcbiAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcigkcGFkZGluZ1RvcDogOHJlbSk7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIC8vIGRpc3BsYXk6IGdyaWQ7XG4gICAgLy8gZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MCUgMWZyO1xuICB9XG5cbiAgaDMuZ2Zvcm1fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDAgIWltcG9ydGFudDtcbiAgICAvLyBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC5nZm9ybV9kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgaW50cm8tZGVzY3JpcHRpb247XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDRyZW0gMCAwO1xuICB9XG59XG4uZ3Jhdml0eWZvcm1zLWZvcm0ge1xuICAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcigkcGFkZGluZ1g6ICRhcHAtcGFkZGluZyk7XG4gIH1cblxuICAuZ2Zvcm1fd3JhcHBlclxuICAgIC5naW5wdXRfY29tcGxleFxuICAgIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJpbWFnZVwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSksXG4gIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCBzZWxlY3QsXG4gIC5nZm9ybV93cmFwcGVyXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwiaW1hZ2VcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItc3R5bGU6ICRpbnB1dC1ib3JkZXItc3R5bGU7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4gIH1cblxuICAuZ2Zvcm1fd3JhcHBlciBsYWJlbC5nZmllbGRfbGFiZWwsXG4gIC5nZm9ybV93cmFwcGVyIGxlZ2VuZC5nZmllbGRfbGFiZWwsXG4gIC5nZm9ybV93cmFwcGVyIC50b3BfbGFiZWwgLmdmaWVsZF9sYWJlbCB7XG4gICAgY29sb3I6ICRsYWJlbC10ZXh0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGFiZWwtbGluZS1oZWlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICRsYWJlbC1mb250LWZhbWlseTtcbiAgICBtYXJnaW46ICRsYWJlbC1tYXJnaW47XG4gIH1cblxuICAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbXBsZXggc2VsZWN0LFxuICBzZWxlY3QsXG4gIC5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQgc2VsZWN0IHtcbiAgICBwYWRkaW5nOiBjYWxjKDAuNzUgKiAjeyRpbnB1dC1wYWRkaW5nfSk7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMCBub25lO1xuICB9XG59XG5cbi5mb3JtLWJnLWNvbnRhaW5lcixcbi5hY2YtZm9ybSB7XG4gIC5nZm9ybV93cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyKCRwYWRkaW5nWDogJGFwcC1wYWRkaW5nKTtcbiAgICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuZ2Zvcm1fd3JhcHBlclxuICAgIC5naW5wdXRfY29tcGxleFxuICAgIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJpbWFnZVwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSksXG4gIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCBzZWxlY3QsXG4gIC5nZm9ybV93cmFwcGVyXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwiaW1hZ2VcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItc3R5bGU6ICRpbnB1dC1ib3JkZXItc3R5bGU7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4gIH1cblxuICAuZ2Zvcm1fd3JhcHBlciBsYWJlbC5nZmllbGRfbGFiZWwsXG4gIC5nZm9ybV93cmFwcGVyIGxlZ2VuZC5nZmllbGRfbGFiZWwge1xuICAgIGNvbG9yOiAkbGFiZWwtdGV4dC1jb2xvcjtcbiAgICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRsYWJlbC1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGxhYmVsLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkbGFiZWwtZm9udC1mYW1pbHk7XG4gICAgbWFyZ2luOiAkbGFiZWwtbWFyZ2luO1xuICB9XG5cbiAgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IHNlbGVjdCxcbiAgc2VsZWN0LFxuICAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkIHNlbGVjdCB7XG4gICAgcGFkZGluZzogY2FsYygwLjc1ICogI3skaW5wdXQtcGFkZGluZ30pO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgfVxuXG4gIC5nZm9ybV93cmFwcGVyIHtcbiAgICAuZ2Zvcm1fZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGNvbXBvbmVudC1jdGEtY29udGFpbmVyO1xuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZXM7XG4gICAgICAgIEBpbmNsdWRlIHByaW1hcnktY3RhLWJ1dHRvbjtcbiAgICAgIH1cbiAgICAgIC5pY29uLWFycm93IHtcbiAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEhBQ0tcblxuLmJnLS13aGl0ZSB7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXNjaGVtZS1mb3JtKCRiYWhhbWEtYmx1ZSwgJGRhcmstZ3JlZW4sICR3aGl0ZS1zbW9rZSk7XG59XG4uYmctLXdoaXRlLXNtb2tlIHtcbiAgQGluY2x1ZGUgYmctY29sb3Itc2NoZW1lLWZvcm0oJHN1dmEtZ3JleSwgJGRhcmstZ3JlZW4sICR3aGl0ZSk7XG59XG4uYmctLXNhcHBoaXJlIHtcbiAgQGluY2x1ZGUgYmctY29sb3Itc2NoZW1lLWZvcm0oJHdoaXRlLCAkd2hpdGUsICR3aGl0ZS1zbW9rZSk7XG59XG4uYmctLXBydXNzaWFuLWJsdWUge1xuICBAaW5jbHVkZSBiZy1jb2xvci1zY2hlbWUtZm9ybSgkd2hpdGUsICR3aGl0ZSwgJHdoaXRlLXNtb2tlKTtcbn1cbi5iZy0tZGFyay1ncmVlbiB7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXNjaGVtZS1mb3JtKCR3aGl0ZSwgJHdoaXRlLCAkd2hpdGUtc21va2UpO1xufVxuLmdmb3JtX2hlYWRpbmcge1xuICBAaW5jbHVkZSBjb21wb25lbnQtaGVhZGVyKCRwYWRkaW5nVG9wOiA4cmVtKTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgaDMuZ2Zvcm1fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuXG4gIC5nZm9ybV9kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgaW50cm8tZGVzY3JpcHRpb247XG4gIH1cbn1cbi5nZm9ybV9ib2R5IHtcbiAgdWwuZ2Zvcm1fZmllbGRzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGxpIHtcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgICYuZnVsbF93aWR0aF9maWVsZCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBncmlkLWFyZWE6IG5hbWU7XG4gICAgfVxuXG4gICAgbGk6bnRoLW9mLXR5cGUoMikge1xuICAgICAgZ3JpZC1hcmVhOiBlbWFpbDtcbiAgICB9XG5cbiAgICBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICBncmlkLWFyZWE6IG1lc3NhZ2U7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwibmFtZSBlbWFpbFwiXG4gICAgICAgIFwibWVzc2FnZSBtZXNzYWdlXCI7XG4gICAgfVxuICB9XG59XG5sYWJlbCB7XG4gIGEge1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgY29sb3I6JGNocmlzdGkhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIC5nZm9ybV9mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgICBidXR0b24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlcztcbiAgICAgIEBpbmNsdWRlIHByaW1hcnktY3RhLWJ1dHRvbjtcbiAgICB9XG4gICAgLmljb24tYXJyb3cge1xuICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC5nZm9ybV92YWxpZGF0aW9uX2Vycm9yc3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyMjMsMjI0LC4yNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4IWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2M4OTc5NztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M4OTc5NztcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIHRleHRhcmVhLmxhcmdlIHtcbiAgICBoZWlnaHQ6IDEycmVtO1xuICB9XG59XG5cbi5nZmllbGRfcmFkaW8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBsaSB7XG4gICAgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIGdyaWRcbi5hY2YtZm9ybSB7XG4gIC5nZm9ybV93cmFwcGVyIHtcbiAgICB1bC5nZm9ybV9maWVsZHMge1xuICAgICAgbGkge1xuICAgICAgICBkaXYuZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB7XG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBAaW5jbHVkZSBjb21wb25lbnQtaGVhZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgY2VudGVyIHtcbiAgICAgICAgICBwYWRkaW5nOiA5cmVtIDAgMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkuZ2ZpZWxkX2h0bWwge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuXG4gICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBsYWJlbC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpdi5naW5wdXRfY29udGFpbmVyX3JhZGlvIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzM3JlbTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gdW5pdmVyc2FsIHN1Ym1pdCBidXR0b25cblxuLmdmb3JtX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBidXR0b24uZ2Zvcm1fYnV0dG9ue1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZXM7XG4gICAgQGluY2x1ZGUgcHJpbWFyeS1jdGEtYnV0dG9uO1xuICB9XG59XG5cblxuXG4vLyBwYXNzd29yZCBwcm90ZWN0ZWRcbi5wb3N0LXBhc3N3b3JkLWZvcm0ge1xuXG4gIHBhZGRpbmc6IDEwcmVtIDAgOHJlbTtcblxuICBsYWJlbCB7XG5cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgY29sb3I6ICRpbnB1dC10ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXN0eWxlOiAkaW5wdXQtYm9yZGVyLXN0eWxlO1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gICAgLy8gcHV0IG9uIG5ldyBsaW5lXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLXdpZHRoOiAyNS41cmVtO1xuICAgIG1hcmdpbjogMnJlbSAwO1xuICB9XG5cblxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGVzO1xuICAgIEBpbmNsdWRlIHByaW1hcnktY3RhLWJ1dHRvbjtcbiAgfVxufVxuXG5cbi8vIGNvbmZpcm1hdGlvbiBtZXNzYWdlXG4uZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXIge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICBAaW5jbHVkZSBjb21wb25lbnQtaGVhZGVyO1xuICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59IiwiLy8gaGVybyBzZWN0aW9uXG4uc2VhcmNoLXJlc3VsdHMtcGFnZSB7XG4gIC5oZXJvLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG4gIH1cbiAgLmhlcm8tY3RhLWNvbnRhaW5lciB7XG4gIH1cblxuICAuaGVyby1jdGEtaGVhZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICA+IGRpdiB7XG4gICAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cy1zZWFyY2gge1xuICAvLyBvdmVycmlkZVxuICBsaW5lLWhlaWdodDogMTtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0uc2VhcmNoLWZvcm1fX2lucHV0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLXNlYXJjaC1sYWJlbCB7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1oZWFkZXIoJGNvbG9yOiAkd2hpdGUpO1xuICBmb250LXdlaWdodDogMjAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBmb3Itc2l6ZShkZXNrdG9wLXVwKSB7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogMC43NTtcbiAgICBmb250LXNpemU6IDMuNnJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cy1zZWN0aW9uIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcblxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXG4gIHBhZGRpbmc6IDdyZW0gMyUgOXJlbTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoYXV0bywgMjIycHgpIDFmcjtcbiAgICBjb2x1bW4tZ2FwOiAzcmVtO1xuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuc2VhcmNoLXJlc3VsdHMtc29ydC1zZWxlY3Qge1xuICAgICAgbWF4LXdpZHRoOiAyMnJlbTtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoLXJlc3VsdHMtc29ydC1zZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zZWFyY2gtcmVzdWx0cy1xdWVyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICArIGZvcm0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtbm8tcmVzdWx0cy1tZXNzYWdlIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcbn1cbiIsIi5zZWFyY2gtcmVzdWx0cy1maWx0ZXJzLWNvbnRhaW5lciB7XG4gIGhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGhzbCgwLCAwJSwgNDklKTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG5cbiAgICBidXR0b24ge1xuICAgICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcblxuICAgICAgJi5jbGVhci1maWx0ZXJzLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAkaGFybGVxdWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5maWx0ZXItdHlwZSB7XG4gICAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICB9XG59XG5cbi5maWx0ZXJzLWlucHV0cy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG59XG4iLCIuc2VhcmNoLXJlc3VsdHMtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjQ4cHgsIDFmcikpO1xuICByb3ctZ2FwOiAxcmVtO1xuICBjb2x1bW4tZ2FwOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiA5cmVtO1xuXG4gIC8vICAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAvLyAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgLy8gICB9XG59XG5cbiRzZWFyY2gtcmVzdWx0LWNhcmQtbWluLWhlaWdodDogMzJyZW07XG4uc2VhcmNoLXJlc3VsdHMtZ3JpZC1pdGVtIHtcbiAgbWluLWhlaWdodDogJHNlYXJjaC1yZXN1bHQtY2FyZC1taW4taGVpZ2h0O1xuXG4gICYucG9zdCxcbiAgJi5wYWdlIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2U7XG4gIH1cblxuICAmLmRvd25sb2FkIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgfVxuXG4gICYudmlkZW8sXG4gICYuY2FzZV9zdHVkeSB7XG4gICAgcGFkZGluZzogNyU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLy8gd2hlbiBubyBpbWFnZVxuICAgIGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgaGVhZGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbXVzZW87XG4gICAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxuICAuc2Vjb25kYXJ5LWRvd25sb2FkLWJ1dHRvbixcbiAgLnRleHQtbGluay1hcnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLmljb24tYXJyb3csXG4gICAgLmRvd24tYXJyb3cge1xuICAgICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgICB9XG4gIH1cblxuICAvLyAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgLy8gICAgIHdpZHRoOiAyNDhweDtcbiAgLy8gICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cy1maWd1cmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6ICRzZWFyY2gtcmVzdWx0LWNhcmQtbWluLWhlaWdodDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5maWdjYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogNSU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgaGVhZGVyIHtcbiAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAucHJpbWFyeS1saW5rLWJ1dHRvbixcbiAgLnNlY29uZGFyeS1kb3dubG9hZC1idXR0b24ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtYXgtY29udGVudCAyLjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbSB7XG4gICYuZG93bmxvYWQge1xuICAgIGZpZ3VyZSB7XG4gICAgICBwYWRkaW5nOiA3JTtcblxuICAgICAgLnNlYXJjaC1yZXN1bHRzLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyB0ZW1wIGhhY2sgbmQtMjk0XG4vLyBuZWVkIHRvIHVwZGF0ZSBpbWFnZSBzaXplc1xuLnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbSB7XG4gICYucG9zdCB7XG4gICAgLnNlYXJjaC1yZXN1bHRzLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gc2l6ZXMgZm9yIHJlc291cmNlczpcbi8vIGRvd25sb2FkOiAxOTBweDtcbi8vIGNhc2Ugc3R1ZGllcyA0NDJweDtcbi8vIG5ld3MvYmxvZyAzMjNweDtcbi8vIHZpZGVvIDQ0MnB4O1xuIiwiLmFjZi1zb2NpYWwge1xuXHRAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuXHRwYWRkaW5nOjJyZW0gMTUlIDZyZW07XG5cdGNvbG9yOiRkZWVwLXNreS1ibHVlO1xuXHRmb250LWZhbWlseTogJGxhdG87XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczpjZW50ZXI7XG5cdC5zcy1pY29ucyB7XG5cdFx0d2lkdGg6IDNyZW07XG5cdFx0aGVpZ2h0OiAzcmVtO1xuXHRcdG1hcmdpbjogMCAxcmVtO1xuXHR9XG59IiwiLmFjZi1vbmUtdGhpcmQge1xuICAuaWNvbi1hcnJvdyB7XG4gICAgc3Ryb2tlOiAkd2hpdGU7XG4gIH1cbiAgLmRvd24tYXJyb3cge1xuICAgIHN0cm9rZTogJHdoaXRlO1xuICB9XG4gIC5wcmltYXJ5LWxpbmstYnV0dG9uIHtcbiAgICAuaWNvbi1hcnJvdyB7XG4gICAgICBzdHJva2U6ICRjaHJpc3RpO1xuICAgIH1cbiAgICAuZG93bi1hcnJvdyB7XG4gICAgICBzdHJva2U6ICRjaHJpc3RpO1xuICAgIH1cbiAgfVxufVxuLm9uZS10aGlyZC1iYWNrZ3JvdW5kLWNvbnRhaW5lciB7XG4gIC8vcGFkZGluZzogM3JlbSAwO1xuXG4gIC8vIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgLy8gICBwYWRkaW5nOiAxMHJlbSAwO1xuICAvLyAgIC8vIGNvbW1lbnRcbiAgLy8gfVxufVxuXG4ub25lLXRoaXJkLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGFwcC1jb250YWluZXIoJHBhZGRpbmdYOiAzJSk7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xuXG4gIC5idXR0b24sXG4gIC5idXR0b24tZG93bmxvYWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZXM7XG4gICAgQGluY2x1ZGUgcHJpbWFyeS1jdGEtYnV0dG9uO1xuICB9XG59XG5cbi5vbmUtdGhpcmQtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcblxuICBAaW5jbHVkZSBjb21wb25lbnQtaGVhZGVyKCRhbGlnbm1lbnQ6IGNlbnRlcik7XG5cbiAgLm9uZS10aGlyZC1oZWFkZXItZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGJvZHktdGV4dDtcbiAgfVxufVxuXG4ub25lLXRoaXJkLWdyaWQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgcm93LWdhcDogMnJlbTtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoYXV0bywgNDM2cHgpIDFmcjtcbiAgfVxufVxuXG4ub25lLXRoaXJkLWdyaWQtaXRlbS1kZXRhaWxzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBAaW5jbHVkZSBtb2R1bGUtcGFkZGluZztcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBwIHtcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxufVxuLmFjZi1vbmUtdGhpcmQge1xuICAub25lLXRoaXJkLWdyaWQtaXRlbS1kZXRhaWxzLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgbW9kdWxlLWhlYWRlcjtcbiAgICBjb2xvcjogJGJhaGFtYS1ibHVlO1xuICB9XG4gIC5vbmUtdGhpcmQtY29udGVudC53aXotY29udGFpbmVyIHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNixcbiAgICBwLFxuICAgIGxpLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgIH1cbiAgfVxufVxuIiwiLnByb2R1Y3QtZGV0YWlscy1wYWdlLXNlY3Rpb24ge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICBwYWRkaW5nOiAkYXBwLXBhZGRpbmc7XG4gIEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzLXBhZ2UtaGVhZGVyIHtcbiAgY29sb3I6ICRibGFjaztcbiAgZm9udC1zaXplOiAyLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG5cbiAgcCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4ucHJvZHVjdC1kZXRhaWxzLXRhYmxlcy1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGNvbHVtbi1nYXA6IDMlO1xuICB9XG59XG5cbi5wcm9kdWN0LWRldGFpbHMtcHJvcGVydGllcy1oZWFkZXIge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtaGVhZGVyO1xuXG4gICYucGh5c2ljYWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnByb2R1Y3QtZGV0YWlscy1wcm9wZXJ0aWVzLWRlc2NyaXB0aW9uIHtcbiAgQGluY2x1ZGUgcHJvZHVjdC1kZXRhaWxzLXRhYmxlLWRlc2NyaXB0aW9uO1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzLXBhZ2Utc2VjdGlvbiB7XG4gIHRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzcHJpbmctYnVkO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAwLjZyZW07XG4gICAgICB9XG5cbiAgICAgIHRoIHtcbiAgICAgICAgQGluY2x1ZGUgcHJvZHVjdC1kZXRhaWxzLXRhYmxlLXN1Yi1oZWFkZXI7XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zaWRlLWhlYWRlci10YWJsZSB7XG4gICAgdHIge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3ByaW5nLWJ1ZDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGgge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAucHJvZHVjdC1kZXRhaWxzLWF2YWlsYWJsZS1vcHRpb25zLXRhYmxlIHtcbiAgICB0ciB7XG4gICAgICB0ZCB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRkZWVwLXNreS1ibHVlO1xuICAgICAgICAvLyB3aWR0aDogNTAlO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwIG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3QtZGV0YWlscy1hdmFpbGFibGUtb3B0aW9ucy1oZWFkZXIge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtc3ViLWhlYWRlcjtcbiAgcGFkZGluZzogMC42cmVtO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG5wLmRldGFpbHMtZGlzY2xhaW1lciB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi8vIC5zaWRlLWhlYWRlci10YWJsZVxuLy8gdHJ7XG4vLyAgICAgJjpmaXJzdC1jaGlsZCB7XG4vLyAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNwcmluZy1idWQ7XG4vLyAgICAgfVxuLy8gICB9XG5cblxuXG4uZG93bmxvYWQtYnV0dG9uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA4cmVtO1xuICBcbiAgYSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlcztcbiAgICBAaW5jbHVkZSBzZWNvbmRhcnktY3RhLWJ1dHRvbjtcbiAgfVxufVxuIiwiLmFjZi1yZXNvdXJjZXMge1xuICAuaWNvbi1hcnJvdywgLmRvd24tYXJyb3cge1xuICAgIHN0cm9rZTogJGNocmlzdGk7XG4gIH1cbiAgLmNvbXBvbmVudC1jdGEtY29udGFpbmVyIHtcbiAgICAuaWNvbi1hcnJvdywgLmRvd24tYXJyb3cge1xuICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC5tb2R1bGUtY2FyZC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJi5kb3dubG9hZC1maWxlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogaW5pdGlhbDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAyMCU7XG4gICAgfVxuXG4gICAgJi5kb3dubG9hZHtcbiAgICAgIHBhZGRpbmc6IDgyJSA4JSA4JSA4JTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaW1hZ2UtZ3JhZGllbnQtb3ZlcmxheS1hbHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4gIC5yZXNvdXJjZXMtYmFja2dyb3VuZC1jb250YWluZXIge1xuICAvLyBwYWRkaW5nOiAzcmVtIDA7XG59XG5cbi5yZXNvdXJjZXMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgYXBwLWNvbnRhaW5lcigkcGFkZGluZ1g6IDMlKTtcbiAgQGluY2x1ZGUgY29tcG9uZW50LXBhZGRpbmc7XG59XG5cbi5yZXNvdXJjZXMtaGVhZGVyIHtcbiAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcigkYWxpZ25tZW50OiBjZW50ZXIpO1xuXG4gIC5yZXNvdXJjZXMtaGVhZGVyLWRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBib2R5LXRleHQ7XG4gIH1cbn1cblxuLnJlc291cmNlcy1ncmlkLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgQGluY2x1ZGUgZm9yLXNpemUodGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cbn1cbiIsIi5hY2YtdmlkZW8ge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcblx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXHR9XG5cdC52aWRlby1jb21wb25lbnQtY29udGFpbmVyIHtcblx0XHRAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuXHRcdEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xuXHR9XG5cdC52aWRlby1jb250YWluZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHRcdGhlaWdodDogMDtcblx0XHRzdmcge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMTBweDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHdpZHRoOiAxOCU7XG5cdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdGlmcmFtZSwgdmlkZW8ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0cGFkZGluZzogMDtcblx0XHR6LWluZGV4OiAyO1xuXHRcdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuXHRcdFx0cGFkZGluZzogNSUgOCUgNyU7XG5cdFx0fVxuXHR9XG5cdC5wb3N0ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0cGFkZGluZzogMDtcblx0XHR6LWluZGV4OiAzO1xuXHRcdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuXHRcdFx0cGFkZGluZzogNSUgOCUgNyU7XG5cdFx0fVxuXHR9XG5cdC5pY29uLXZpZGVvIHtcblx0XHR3aWR0aDogMTAwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHR6LWluZGV4OiA0O1xuXHR9XG59IiwiLnRhYmxlLXNlY3Rpb24ge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyKCRwYWRkaW5nWDogMyUpO1xuICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcbiAgLy8gbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnRhYmxlcy1ncmlkLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDQwcmVtLCAxZnIpKTtcbiAgY29sdW1uLWdhcDogMnJlbTtcbn1cblxuLnRhYmxlLXRpdGxlLWJsdWUge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtaGVhZGVyO1xufVxuXG4udGFibGUtdGl0bGUtZ3JlZW4ge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtaGVhZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eS1ibHVlO1xufVxuLnRhYmxlLXRpdGxlLWJsdWUsXG4udGFibGUtdGl0bGUtZ3JlZW4ge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGZ1ZWdvO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi50YWJsZS1oZWFkZXItYmx1ZSxcbi50YWJsZS1oZWFkZXItZ3JlZW4ge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGU7XG5cbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNiUpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB3aWR0aDogMTAwJTtcblxuICB0cjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMCBub25lO1xuICB9XG5cbn1cblxuLnRhYmxlLWhlYWRlci1ibHVlIHtcbiAgdGgge1xuICAgIEBpbmNsdWRlIHByb2R1Y3QtZGV0YWlscy10YWJsZS1zdWItaGVhZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmdWVnbztcbiAgfVxuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRuYXZ5LWJsdWU7XG4gIH1cbn1cblxuLnRhYmxlLWhlYWRlci1ncmVlbiB7XG4gIHRoIHtcbiAgICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtc3ViLWhlYWRlcjtcbiAgfVxufVxuXG4ubGFiZWxfY29sIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG4udGFibGUtZGVzY3JpcHRpb24ge1xuICBAaW5jbHVkZSBwcm9kdWN0LWRldGFpbHMtdGFibGUtZGVzY3JpcHRpb247XG4gIG1hcmdpbi10b3A6IDJyZW07XG59IiwiLy8gLmFjZi1tYXAge1xuLy8gICBtYXgtd2lkdGg6IDEwMCU7XG4vLyAgIGhlaWdodDogYXV0bztcblxuLy8gfVxuXG4vLyAuYWNmLW1hcCBpbWcge1xuLy8gICBtYXgtd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbi8vIH1cblxuLm1hcHMtYmctY29udGFpbmVyIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG59XG5cbi5tYXBzLWNvbnRhaW5lciB7XG4gIC50YWItY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgaHNsKDIxNCwgMTAwJSwgMTklKSAwJSwgaHNsKDIxMCwgMTAwJSwgNyUpIDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcbiAgfVxufVxuXG4ubWFwcy1jb21wb25lbnQtaGVhZGVyIHtcbiAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcigkYWxpZ25tZW50OiBjZW50ZXIsICRjb2xvcjogJHdoaXRlKTtcbn1cblxuLm1hcHMtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA1MHJlbSBhdXRvO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3NSUgMjUlO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KGF1dG8sIDU0LjdyZW0pO1xuICAgIGNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG5cbi5tYXBzLXRhYi1jb250ZW50IHtcbiAgcGFkZGluZzogNXJlbSA0JTtcbiAgLnRhYi1wYW5lIHtcbiAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICB9XG59XG5cbi8vIGxvY2F0aW9ucyBsaXN0XG5cbi5sb2NhdGlvbnMtbGlzdC1jb250YWluZXIge1xuICBwYWRkaW5nOiA3JTtcbn1cbi5sb2NhdGlvbnMtbGlzdCB7XG4gIC8vIHRoZXNlIDMgdG8gc2V0IHVwIHNjcm9sbCBpZiBuZWVkZWRcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvLyBkb25lIHNldCB1cCBzY3JvbGwgaWYgbmVlZGVkXG4gIC8vIGdpdmUgcm9vbSBmb3Igc2Nyb2xsYmFyXG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5cbi8vIGN1c3RvbSBzY3JvbGxiYXJcblxuLmxvY2F0aW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiAxcmVtO1xufVxuXG4ubG9jYXRpb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG59XG5cbi5sb2NhdGlvbnMtbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcC1za3ktYmx1ZTtcbn1cblxuLy8gZW5kIGN1c3RvbSBzY3JvbGxiYXJcblxuLmxvY2F0aW9ucy1saXN0LWl0ZW0ge1xuICBjb2xvcjogJHdoaXRlO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAubWFya2VyLXBob25lIHtcbiAgICBjb2xvcjokc3V2YS1ncmV5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4ubG9jYXRpb25zLWxpc3QtaXRlbS10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkZGVlcC1za3ktYmx1ZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbi5sb2NhdGlvbnMtbGlzdC1pdGVtLWFkZHJlc3Mge1xuICBjb2xvcjokc3V2YS1ncmV5O1xufVxuXG4ubG9jYXRpb25zLWxpc3QtaXRlbS1kZXNjcmlwdGlvbiB7XG59XG5cbi52aWV3LWxvY2F0aW9uLWxpbmsge1xuICBAaW5jbHVkZSB0ZXh0LWxpbms7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgY29sb3I6JHN1dmEtZ3JleTtcbiAgaW1nIHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjokY2hyaXN0aTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cbi5nbS1zdHlsZS1pdy1kIHtcbiAgZm9udC1mYW1pbHk6ICRsYXRvO1xuICBjb2xvcjogJG5pZ2h0LXJpZGVyO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgaDMge1xuICAgIGNvbG9yOiAka2VsbHktZ3JlZW47XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICAubWFya2VyLXBob25lIHtcbiAgICBjb2xvcjogJG5pZ2h0LXJpZGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjaHJpc3RpO1xuICAgIH1cbiAgfVxuICAubWFya2VyLWRpcmVjdGlvbnMge1xuICAgIGNvbG9yOiAka2VsbHktZ3JlZW47XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuIiwiLnF1ZXJ5LXJlc3VsdHMtcGFnZS1jb250YWluZXIge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICBAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcblxuICAuY29tcG9uZW50LWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmludHJvLXN1YnRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbGF0bztcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgY29sb3I6ICRzdXZhLWdyZXk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5wcmltYXJ5LWN0YS1idXR0b24ge1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIHN0cm9rZTogJHdoaXRlO1xuICAgIH1cbiAgICAuZG93bi1hcnJvdyB7XG4gICAgICBzdHJva2U6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLnNlY29uZGFyeS1jdGEtYnV0dG9uLFxuICAucHJpbWFyeS1saW5rLWJ1dHRvbiB7XG4gICAgLmljb24tYXJyb3cge1xuICAgICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgICB9XG4gICAgLmRvd24tYXJyb3cge1xuICAgICAgc3Ryb2tlOiAkY2hyaXN0aTtcbiAgICB9XG4gIH1cbn1cbi5iZy0td2hpdGUtc21va2Uge1xuICAuc2VhcmNoLXJlc3VsdHMtZ3JpZC1pdGVtLnBvc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuLnF1ZXJ5LXJlc3VsdHMtZ3JpZC1jb250YWluZXIge1xuICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDQwcmVtLCAxZnIpKTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICAmLmdyaWQtZG93bmxvYWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIwcmVtLCAxZnIpKTtcbiAgfVxuXG4gICYuZ3JpZC1wb3N0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHJlbSwgMWZyKSk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc2l6ZSh0YWJsZXQtcG9ydHJhaXQtdXApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOXJlbTtcblxuICAgICYuZ3JpZC1kb3dubG9hZCB7XG4gICAgICAuZG93bi1hcnJvdyB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC1wb3N0IHtcbiAgICAgIGdhcDogMnJlbSAxcmVtO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLFxuICAgIC5jb21wb25lbnQtY3RhLWNvbnRhaW5lciB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgcGFkZGluZy10b3A6IDlyZW07XG4gICAgfVxuICB9XG4gIC5tb2R1bGUtY2FyZC1pdGVtLWxpbmsge1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIHN0cm9rZTogJGNocmlzdGk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxuICAubW9kdWxlLWNhcmQtaXRlbSxcbiAgLnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgc3ZnLmljb24tYXJyb3cge1xuICAgICAgICBhbmltYXRpb246IHJpZ2h0LWFycm93IDAuNXMgZWFzZSBmb3J3YXJkcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnF1ZXJ5LXJlc3VsdHMtZ3JpZC1jb250YWluZXIge1xuICAuZG93bmxvYWQge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgaGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHRlbXAgaGFja1xuLy8gdG9kbzogZGlzY3VzcyBpZiBpbXBvcnRhbnRcblxuLnF1ZXJ5LXJlc3VsdHMtYmctY29udGFpbmVyIHtcbiAgJi5iZy0tc2FwcGhpcmUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50XG4gICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAkc2FwcGhpcmUgMCUsICRkYXJrLWdyZWVuIDEwMCUpIDAlIDAlIG5vLXJlcGVhdFxuICAgICAgcGFkZGluZy1ib3g7XG4gIH1cbn1cblxuLy8gc2l6ZXMgZm9yIHJlc291cmNlczpcbi8vIGRvd25sb2FkOiAxOTBweDtcbi8vIGNhc2Ugc3R1ZGllcyA0NDJweDtcbi8vIG5ld3MvYmxvZyAzMjNweDtcbi8vIHZpZGVvIDQ0MnB4O1xuIiwiLmFjZi1mZWF0dXJlZC1uZXdzIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2U7XG4gICAgLmNvbXBvbmVudC1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBhcHAtY29udGFpbmVyO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIC8vIEBpbmNsdWRlIGNvbXBvbmVudC1wYWRkaW5nO1xuICAgICAgICAvLyBwYWRkaW5nOiA2MHB4IDE1JTtcbiAgICAgICAgLmNvbXBvbmVudC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdWVyeS1yZXN1bHRzLWdyaWQtY29udGFpbmVye1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAmLmdyaWQtNHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMHJlbSwgMWZyKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA4MjBweCkge1xuICAgICAgICAgICAgICAgICYuZ3JpZC0ze1xuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuXG4gICAgICAgICAgICAuc2VhcmNoLXJlc3VsdHMtZ3JpZC1pdGVte1xuICAgICAgICAgICAgICAgIG1hcmdpbjogNSU7XG4gICAgICAgICAgICAgICAgLnNlYXJjaC1yZXN1bHRzLWZpZ3VyZXtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmaWdjYXB0aW9uIGhlYWRlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2FwcGhpcmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnNlYXJjaC1yZXN1bHRzLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6dW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAudGV4dC1saW5rLWFycm93e1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBydXNzaWFuLWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbXBvbmVudC1jdGEtY29udGFpbmVye1xuICAgICAgICAgICAgLmljb24tYXJyb3d7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSBcbn0iLCJib2R5IC5sZWFmbGV0LXBhbmUubGVhZmxldC10b29sdGlwLXBhbmUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5IC5ob3RzcG90LWluZm8gLmhvdHNwb3QtdGl0bGUsXG5ib2R5IC5ob3RzcG90LWluaXRpYWwgLmhvdHNwb3QtdGl0bGUge1xuXHRmb250LWZhbWlseTogXCJNdXNlb1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbmJvZHkgLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogOTAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjYwMHB4KSB7XG4gICAgYm9keSAuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk4MHB4KSB7XG4gICAgYm9keSAuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgfVxufSIsIi5uZXdzLWZpbHRlcnMtd3JhcHBlciB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG4gICAgLnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbSB7XG4gICAgICAgICYgPiBhLnNlYXJjaC1yZXN1bHRzLWdyaWQtaXRlbS1hbmNob3Ige1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTVEFSVDogQ29kZSBwcm92aWRlZCBieSBjbGllbnQgdGhhdCBuZWVkZWQgdG8gYmUgYWRkZWRcbiAgICAuc2VhcmNoLXJlc3VsdHMtZmlndXJlIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zZWFyY2gtcmVzdWx0cy1pbWFnZS1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgIGhlaWdodDogMTY4cHggIWltcG9ydGFudDsgXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjIwMHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICBoZWlnaHQ6IDIyNXB4ICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBFTkQ6IENvZGUgcHJvdmlkZWQgYnkgY2xpZW50IHRoYXQgbmVlZGVkIHRvIGJlIGFkZGVkXG5cbiAgICAuc2VhcmNoLXJlc3VsdHMtZmlndXJlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgLm5ld3MtZmlsdGVycy13aWRnZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY2FkaWE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkc2FwcGhpcmU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJG11c2VvO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cbiAgICAgICAgLm5ld3MtZmlsdGVycy13aWRnZXQtaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4IDI0cHggMjVweDtcbiAgICAgICAgfVxuICAgICAgICAuZmFjZXR3cC1mYWNldCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEuZmFjZXR3cC1wYWdlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgICB3aWR0aDogMy41cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMuNXJlbTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hyaXN0aTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgICAgLm5ld3MtZmlsdGVycyB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnF1ZXJ5LXJlc3VsdHMtZ3JpZC1jb250YWluZXIuZ3JpZC1wb3N0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmhlcm8tY29udGFpbmVyIHtcbiAgICAmLnNob3J0ZW5lZCB7XG4gICAgICAgIEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgICAgICAgIGhlaWdodDogMjh2aDtcbiAgICAgICAgfVxuICAgIH1cbiAgfSIsIi5zYnMtYW5pbWF0ZWQge1xuICAmLS1jb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgJi1yZWFkeSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYtdGV4dGhpZGRlbiB7XG4gICAgICAuc2JzLWFuaW1hdGVkLS1pbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5zYnMtYW5pbWF0ZWQtLXRleHQge1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICB3aWR0aDogMCU7XG4gICAgICAgICAgLy8gaGVpZ2h0OiAwO1xuICAgICAgICAgIC8vIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0taW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNXMgbGluZWFyO1xuICAgIH1cblxuICAgICYgPiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXRleHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICB3aWR0aDogNTUlO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBsaW5lYXI7XG4gICAgfVxuXG4gICAgJi1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBsaW5lYXI7XG4gICAgICBwYWRkaW5nOiA0MHB4IDQwcHg7XG5cbiAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDQwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgY29tcG9uZW50LWhlYWRlcigkYWxpZ25tZW50OiBsZWZ0KTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJi1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG5cdFx0XHRwLCB1bCwgb2wge1xuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG4gIH1cblxuICAmLS1jdGEge1xuICAgIGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iZy0tc2FwcGhpcmUsXG4gIC5iZy0tcHJ1c3NpYW4tYmx1ZSxcbiAgLmJnLS1kYXJrLWdyZWVuIHtcbiAgICAuc2JzLWFuaW1hdGVkLS10ZXh0IGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4uc2JzLWFuaW1hdGVkLS1jb2xzLXJldmVyc2VkIHtcbiAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLnNicy1hbmltYXRlZC0taW1nIHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgfVxuICAuc2JzLWFuaW1hdGVkLS10ZXh0IHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICYuc2JzLWFuaW1hdGVkLS1jb2xzLXJlYWR5IHtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5zYnMtYW5pbWF0ZWQtLXRleHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5zYnMtYW5pbWF0ZWQtLXRleHQtaW5uZXIge1xuICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIH1cbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC41cyBsaW5lYXI7XG4gICAgfVxuXG4gICAgJi5zYnMtYW5pbWF0ZWQtLWNvbHMtdGV4dGhpZGRlbiB7XG4gICAgICAuc2JzLWFuaW1hdGVkLS10ZXh0LWlubmVyIHtcbiAgICAgICAgcmlnaHQ6IC0xMDAlO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59IiwiLy8gVmlkZW8gTW9kYWxcblxuLnZpZGVvbW9kYWwge1xuXHQmLS1vdXRlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblx0Ji0td3JhcHBlciB7XG5cdFx0QGluY2x1ZGUgYXBwLWNvbnRhaW5lcjtcblx0XHRAaW5jbHVkZSBjb21wb25lbnQtcGFkZGluZztcblx0fSBcblx0Ji0tYmd2aWRlbyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXG5cdFx0Ji1pbm5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cblx0XHRcdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuXHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiA1Ni41JTtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cblx0XHR2aWRlbyxcblx0XHRpZnJhbWUge1xuXHRcdFx0d2lkdGg6IDEwMHZ3O1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0XHQmOjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjI1KTtcblx0XHRcdGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcblx0XHRcdC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0fVxuXG5cdCYtLWlubmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdEBpbmNsdWRlIGZvci1zaXplKHRhYmxldC1wb3J0cmFpdC11cCkge1xuXHRcdFx0bWF4LXdpZHRoOiA3NSU7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cblx0XHQmLnZpZGVvbW9kYWwtLWlubmVyLWxlZnRhbGlnbiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXG5cdFx0Ji52aWRlb21vZGFsLS1pbm5lci1jZW50ZXJhbGlnbiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0aDIge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji52aWRlb21vZGFsLS1pbm5lci1yaWdodGFsaWduIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHRcdGgyLFxuXHRcdFx0LnZpZGVvbW9kYWwtLWlubmVyLWN0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRoMiB7XG5cdFx0XHRAaW5jbHVkZSBjb21wb25lbnQtaGVhZGVyKCRhbGlnbm1lbnQ6IGxlZnQpO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblxuXHRcdCYtY29udGVudCB7XG5cdFx0XHRwLCB1bCwgb2wge1xuXHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLWN0YSB7XG5cdFx0XHQvLyBhIHtcblx0XHRcdC8vIFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdFx0Ly8gXHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdC8vIFx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcblx0XHRcdC8vIH1cblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS12aW1lbyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMDtcblx0XHRwYWRkaW5nLXRvcDogNTYuNSU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdGlmcmFtZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG59XG5cblxuXG4udmlkZW9tb2RhbC1tb2RhbHdycmFwcGVyIHtcblx0LmNsb3NlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAtMjVweDtcblx0XHRyaWdodDogLTI1cHg7XG5cdFx0Zm9udC1zaXplOiAzcmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0Y29sb3I6ICNmZmY7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHRAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuXHRcdFx0dG9wOiAtMzBweDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0fVxuXHRcblx0LmNsb3NlOmhvdmVyIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0b3BhY2l0eTogMC44O1xuXHR9XG5cdFxuXHQuY2xvc2U6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsXG5cdC5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpmb2N1cyB7XG5cdFx0b3BhY2l0eTogLjc1O1xuXHR9XG5cdFxuXHRidXR0b24uY2xvc2Uge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAwO1xuXHR9XG5cdFxuXHRhLmNsb3NlLmRpc2FibGVkIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXHRcblx0Lm1vZGFsLW9wZW4ge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblx0XG5cdC5tb2RhbC1vcGVuIC5tb2RhbCB7XG5cdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdH1cblx0XG5cdC5tb2RhbCB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHotaW5kZXg6IDEwNTA7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRvdXRsaW5lOiAwO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0bWFyZ2luOiAwLjVyZW07XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdH1cblx0XG5cdC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuXHRcdHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xuXHR9XG5cdFxuXHRAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuXHRcdC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuXHRcdFx0dHJhbnNpdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblx0XG5cdC5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0fVxuXHRcblx0Lm1vZGFsLm1vZGFsLXN0YXRpYyAubW9kYWwtZGlhbG9nIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcblx0fVxuXHRcblx0Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcblx0XHRkaXNwbGF5OiAtbXMtZmxleGJveDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuXHRcdG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxcmVtKTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWhlYWRlcixcblx0Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1mb290ZXIge1xuXHRcdC1tcy1mbGV4LW5lZ2F0aXZlOiAwO1xuXHRcdGZsZXgtc2hyaW5rOiAwO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWJvZHkge1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdH1cblx0XG5cdC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuXHRcdGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0LW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDFyZW0pO1xuXHRcdGhlaWdodDogLXdlYmtpdC1taW4tY29udGVudDtcblx0XHRoZWlnaHQ6IC1tb3otbWluLWNvbnRlbnQ7XG5cdFx0aGVpZ2h0OiBtaW4tY29udGVudDtcblx0XHRjb250ZW50OiBcIlwiO1xuXHR9XG5cdFxuXHQubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcblx0XHQtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblx0XG5cdC5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuXHRcdG1heC1oZWlnaHQ6IG5vbmU7XG5cdH1cblx0XG5cdC5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGU6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxuXHRcblx0Lm1vZGFsLWNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiAtbXMtZmxleGJveDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0d2lkdGg6IDc1JTtcblx0XHRtYXgtd2lkdGg6IDE5MjBweDtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdG91dGxpbmU6IDA7XG5cdH1cblx0XG5cdC5tb2RhbC1ib2R5IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLWZsZXg6IDEgMSBhdXRvO1xuXHRcdGZsZXg6IDEgMSBhdXRvO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblx0XG5cdC5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogLTk5OTlweDtcblx0XHR3aWR0aDogNTBweDtcblx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0b3ZlcmZsb3c6IHNjcm9sbDtcblx0fVxuXG5cdC5tb2RhbC1kaWFsb2cge1xuXHRcdG1hcmdpbjogYXV0bztcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXHRcblx0QG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG5cdFxuXHRcdC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuXHRcdH1cblx0XG5cdFx0Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcblx0XHRcdG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzLjVyZW0pO1xuXHRcdH1cblx0XG5cdFx0Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG5cdFx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuXHRcdH1cblx0XG5cdFx0Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZDo6YmVmb3JlIHtcblx0XHRcdGhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG5cdFx0XHRoZWlnaHQ6IC13ZWJraXQtbWluLWNvbnRlbnQ7XG5cdFx0XHRoZWlnaHQ6IC1tb3otbWluLWNvbnRlbnQ7XG5cdFx0XHRoZWlnaHQ6IG1pbi1jb250ZW50O1xuXHRcdH1cblx0XG5cdFx0Lm1vZGFsLXNtIHtcblx0XHRcdG1heC13aWR0aDogMzAwcHg7XG5cdFx0fVxuXHR9XG5cdFxuXHRAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblx0XG5cdFx0Lm1vZGFsLWxnLFxuXHRcdC5tb2RhbC14bCB7XG5cdFx0XHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRcdH1cblx0fVxuXHRcblx0QG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHRcdC5tb2RhbC14bCB7XG5cdFx0XHRtYXgtd2lkdGg6IDExNDBweDtcblx0XHR9XG5cdH1cbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDEwNDA7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xuXHRvcGFjaXR5OiAwO1xufVxuXG4ubW9kYWwtYmFja2Ryb3Auc2hvdyB7XG5cdG9wYWNpdHk6IDAuOTtcbn0iLCJAbWVkaWEgcHJpbnQge1xuXHQqIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcblx0XHR0cmFuc2Zvcm06IG1hdHJpeDNkKDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpICFpbXBvcnRhbnQ7XG5cdFx0dG9wOiAwO1xuXHR9XG5cdGEsXG5cdGE6dmlzaXRlZCB7XG5cdFx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0fVxuXHRhYmJyW3RpdGxlXTphZnRlciB7XG5cdFx0Y29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuXHR9XG5cdC5pciBhOmFmdGVyLFxuXHQgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuXHQgYVtocmVmXj1cIiNcIl06YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdH1cblx0YVtocmVmKj0nLy8nXTphZnRlciB7XG5cdFx0Y29udGVudDpcIiAoXCIgYXR0cihocmVmKSBcIikgXCI7XG5cdFx0d29yZC13cmFwOiBicmVhay13b3JkO1xuXHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHQudGV4dF90aXRsZSB7XG5cdFx0YSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0cHJlLFxuXHRibG9ja3F1b3RlIHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuXHRcdHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcblx0fVxuXHR0aGVhZCB7XG5cdFx0ZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuXHR9XG5cdHRyLFxuXHRpbWcge1xuXHRcdHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcblx0fVxuXHRpbWcge1xuXHRcdG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHR9XG5cdEBwYWdlIHtcblx0XHRtYXJnaW46IDAuNWNtO1xuXHR9XG5cdHAsXG5cdGgyLFxuXHRoMyB7XG5cdFx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcblx0XHRvcnBoYW5zOiAzO1xuXHRcdHdpZG93czogMztcblx0fVxuXHRoMixcblx0aDMge1xuXHRcdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG5cdH1cblx0aGVhZGVyLCBmb290ZXIsICNicmVhZGNydW1icywgI2JyZWFkY3J1bWJzLXBsYWNlaG9sZGVyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdC5oZXJvIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG1hcmdpbjogMzBweCBhdXRvO1xuXHRcdCoge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG5cdFx0XHR0b3A6IDAgIWltcG9ydGFudDtcblx0XHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0aGVpZ2h0OiBhdXRvICAhaW1wb3J0YW50O1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdH1cblx0XHQucHJvZHVjdF9oZXJvIHtcblx0XHRcdC5ncmlkX19pdGVtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdC5zbGljay1kb3RzIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0LnNsaWRlci0tc2xpZGUge1xuXHRcdFx0XHR3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0Lmhlcm9fY29udGVudCB7XG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogIzAwMCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdHNlY3Rpb24ge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0fVxuXHQubG9nZ2VkLWluLW5hdiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQuYmVuZWZpdHMge1xuXHRcdC5ncmlkX19pdGVtIHtcblx0XHRcdHdpZHRoOiAyNSUgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblx0Lm1hc29ucnktZ3JpZCB7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxuXHQubWFzb25yeS1ncmlkX19pdGVtIHtcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdG1pbi1oZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcblx0XHR0b3A6IDAgIWltcG9ydGFudDtcblx0XHRsZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHQubWFzb25yeS0tYmxvY2stdGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcblx0XHRcdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdC5tYXNvbnJ5LS1ibG9jay1jb250ZW50IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdC5yZXNvdXJjZSwgLnByb2R1Y3Qge1xuXHRcdC5ncmlkX19pdGVtIHtcblx0XHRcdHdpZHRoOiAzMyUgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblx0LmZlYXR1cmVkX3Jlc291cmNlcyB7XG5cdFx0LmdyaWRfX2l0ZW0ge1xuXHRcdFx0d2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXHQuZ3JpZF9jb250ZW50IHtcblx0XHQudGFiLWhlYWRlciB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGVYKC0xODBkZWcpO1xuICAgIFx0XHRcdGNvbG9yOiAjRkZEQTI3O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQudGFiLWNvbnRlbnQge1xuXHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdC5ncmlkIHtcblx0XHRcdFx0LmdyaWRfX2l0ZW0ge1xuXHRcdFx0XHRcdHdpZHRoOiAyNSUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQudHJpZ2dlci13dGIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbiIsIkBpbXBvcnQgJ3ZhcnMnO1xuXG4vKiBJRS9FREdFIHJ1bGUgc2V0cyBnbyBoZXJlICovXG5cbl86LW1zLWxhbmcoeCksXG4uaGVybyB7XG4gICAgJi5zdHlsZS1MYW5kaW5nIHtcbiAgICAgICAgLmFuaW1hdGVkLXRleHQge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFuaW1hdGVkLXRleHQtc2Vjb25kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTgwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSByb3RhdGVaKDQ1ZGVnKSk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc3R5bGUtU2xpZGVyIHtcbiAgICAgICAgLmhlcm9fc2xpZGVyLS13cmFwIHtcbiAgICAgICAgICAgIC5oZXJvX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGVaKDEwZGVnKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oZXJvX3NsaWRlci0tc2xpZGUge1xuXHRcdFx0XHQuaGVyb19jb250ZW50LS13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgJi5hbmltYXRpbmdGYWRlT3V0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbigwcywgMTAwbXMsIGllLWZhZGVvdXQsIGxpbmVhcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5hbmltYXRpbmdGYWRlSW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKDBzLCAxMDBtcywgaWUtZmFkZWluLCBsaW5lYXIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbl86LW1zLWxhbmcoeCksXG4jaG9tZS13cmFwcGVyIHtcbiAgICAuaG9tZS0xIHtcbiAgICAgICAgLmhvbWUtMS1sZWZ0IHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5fOi1tcy1sYW5nKHgpLFxuLmdyaWRfY29udGVudCB7XG4gICAgLmdyaWRfX2l0ZW0tLXRleHR1cmUge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWluLWhlaWdodDoxcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyoqKioqIFJ1bGVzIGZvciBFZGdlIE9OTFkgKioqL1xuQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOmF1dG8pIHtcbiAgICAjaG9tZS13cmFwcGVyIHtcbiAgICAgICAgLmhvbWUtMSB7XG4gICAgICAgICAgICAuaG9tZS0xLWxlZnQge1xuICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8ge1xuICAgICAgICAmLnN0eWxlLVNsaWRlciB7XG4gICAgICAgICAgICAuaGVyb19zbGlkZXItLXdyYXAge1xuICAgICAgICAgICAgICAgIC5oZXJvX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzMiU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhpZS1mYWRlb3V0KSB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAuNTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoaWUtZmFkZWluKSB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAuNTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxufVxuXG4vLyBJRSBiYW5uZXJcbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAjaWUtYmFubmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNocmlzdGk7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggODBweDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB6LWluZGV4OiA5OTk5O1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNjBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODMwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5pZS1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc5JTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuaWUtYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5pZS1idG4tY29udGFpbmVyIGJ1dHRvbiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI1MXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjaHJpc3RpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5pZS1iYW5uZXItbWFyZ2luLW1vYmlsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4O1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM2MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MzBweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNjBweDtcbiAgICAgICAgfVxuICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pZS1iYW5uZXItbWFyZ2luLWRlc2t0b3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI2MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pZS1icm93c2VyLWFsdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgICAgIC5icm93c2VyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBRWdDQSxPQUFPLENBQUMsK0RBQUk7QUFDWixPQUFPLENBQUMscUVBQUk7QUFDWixPQUFPLENBQUMsa0VBQUk7QUFGWixPQUFPLENBQUMsK0RBQUk7QUFDWixPQUFPLENBQUMscUVBQUk7QUFDWixPQUFPLENBQUMsa0VBQUk7QURsQ1osVUFBVTtFQUNOLFdBQVcsRUFBRSw0QkFBNEI7RUFDekMsR0FBRyxFQUFFLDRDQUE0QyxDQUFDLGVBQWUsRUFDNUQsMkNBQTJDLENBQUMsY0FBYztFQUMvRCxXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFBTTs7QUFJdEIsVUFBVTtFQUNOLFdBQVcsRUFBRSw2QkFBNkI7RUFDMUMsR0FBRyxFQUFFLCtDQUErQyxDQUFDLGVBQWUsRUFD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QUFBLFFBQVEsQ0FBMkI7RUFBRSxLQUFLLEVBQUMsT0FBTyxHQUFJOztBQUN0RCxBQUFBLFFBQVEsQ0FBMkI7RUFBRSxLQUFLLEVBQUMsT0FBTyxHQUFJOztBQUd0RDs7SUFFRztBQUNILEFBQUEsU0FBUyxDQUEyQjtFQUFFLEtBQUssRUFBQyxHQUFHLEdBQUk7O0FBRW5ELEFBQUEsU0FBUyxDQUEwQjtFQUFFLEtBQUssRUFBQyxHQUFHLEdBQUk7O0FBSWxELEFBQUEsU0FBUyxDQUEwQjtFQUFFLEtBQUssRUFBQyxHQUFHLEdBQUk7O0FBRWxELEFBQUEsU0FBUyxDQUEwQjtFQUFFLEtBQUssRUFBQyxHQUFHLEdBQUk7O0FBR2xEOztJQUVHO0FBQ0gsQUFBQSxTQUFTLENBQTRCO0VBQUUsS0FBSyxFQUFDLE9BQU8sR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxTQUFTLENBQTJCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFDeEQsQUFBQSxVQUFVLENBQTBCO0VBQUUsS0FBSyxFQUFDLFFBQVEsR0FBSTs7QUFHeEQ7O0lBRUc7QUFDSCxBQUFBLFNBQVMsQ0FBMkI7RUFBRSxLQUFLLEVBQUMsTUFBTSxHQUFJOztBQUN0RCxBQUFBLFNBQVMsQ0FBMEI7RUFBRSxLQUFLLEVBQUMsT0FBTyxHQUFJOztBQUd0RCxBQUFB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 */
