.icon-with-text.medium,
.icon-with-text.medium .material-icons:last-of-type {
  font-size: var(--font-size--lg)
}
.social-icon:focus,
a:focus,
button:focus,
input[type=submit]:focus {
  outline: dotted var(--border-width--md)
}
a,
dl dt,
label,
legend {
  font-weight: var(--font-weight--semibold)
}
.black-overlay:after,
.blue-overlay .background-image,
.dark-blue-overlay .background-image {
  filter: brightness(.5)
}
.flowchart figcaption,
.icon-with-text,
.my-western-icon,
.status-alert h2,
.status-alert h3,
.status-alert h4,
.status-alert h5,
.status-alert h6,
th[colspan] {
  text-align: center
}
caption,
h1 {
  padding-bottom: var(--space--md)
}
a,
h4 {
  color: var(--blue--darker--20)
}
.big-bold-headings h1:after,
.headings--big-and-bold h1:after,
.headings--sans-serif--alt h1:after {
  display: none
}
#drupal-off-canvas .button,
.ultimenu > li {
  min-width: initial
}
#rockingwaves,
#tossingboat {
  -webkit-animation-iteration-count: infinite;
  transform-origin: 50% 50%
}
#backrock_waves,
#over_waves,
#rockingwaves,
#tossingboat {
  transform-origin: 50% 50%
}
.flowchart ol,
.view-virtual-collection-grid ul.db-row {
  list-style-type: none
}
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/material-icons.woff2) format("woff2")
}
@font-face {
  font-family: 'Fira Sans';
  font-style: italic;
  font-weight: 300;
  src: local("Fira Sans Light Italic"),local("FiraSans-LightItalic"),url(../fonts/fira-sans-light-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: italic;
  font-weight: 400;
  src: local("Fira Sans Italic"),local("FiraSans-Italic"),url(../fonts/fira-sans-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 300;
  src: local("Fira Sans Light"),local("FiraSans-Light"),url(../fonts/fira-sans-normal-300.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 400;
  src: local("Fira Sans Regular"),local("FiraSans-Regular"),url(../fonts/fira-sans-normal-400.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 600;
  src: local("Fira Sans SemiBold"),local("FiraSans-SemiBold"),url(../fonts/fira-sans-normal-600.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 700;
  src: local("Fira Sans Bold"),local("FiraSans-Bold"),url(../fonts/fira-sans-normal-700.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 900;
  src: local("Fira Sans Black"),local("FiraSans-Black"),url(../fonts/fira-sans-normal-900.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans Extra Condensed';
  font-style: normal;
  font-weight: 300;
  src: local("Fira Sans Extra Condensed Light"),local("FiraSansExtraCondensed-Light"),url(../fonts/fira-sans-extra-condensed-300.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Fira Sans Extra Condensed';
  font-style: normal;
  font-weight: 400;
  src: local("Fira Sans Extra Condensed Regular"),local("FiraSansExtraCondensed-Regular"),url(../fonts/fira-sans-extra-condensed-400.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  src: local("Montserrat Bold"),local("Montserrat-Bold"),url(../fonts/montserrat-700.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 900;
  src: local("Montserrat Black"),local("Montserrat-Black"),url(../fonts/montserrat-900.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 400;
  src: local("PT Serif"),local("PTSerif-Regular"),url(../fonts/pt-serif-400.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 700;
  src: local("PT Serif Bold"),local("PTSerif-Bold"),url(../fonts/pt-serif-700.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Open Dyslexic';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/OpenDyslexic3-Regular.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Atkinson-Hyperlegible-Regular-102a.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/Atkinson-Hyperlegible-Bold-102a.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/Atkinson-Hyperlegible-Italic-102a.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: italic;
  font-weight: 700;
  src: url(../fonts/Atkinson-Hyperlegible-BoldItalic-102a.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD
}
:root {
  --black: #262b2f;
  --gray--darker--80: #14181b;
  --gray--darker--60: #293036;
  --gray--darker--40: #3d4950;
  --gray--darker--20: #52616b;
  --gray: #667986;
  --gray--lighter--20: #8394a0;
  --gray--lighter--40: #a2afb8;
  --gray--lighter--60: #c1cad0;
  --gray--lighter--80: #e0e4e7;
  --gray--lighter--90: #f0f2f3;
  --white: #fff;
  --dark-blue--darker--80: #000d1b;
  --dark-blue--darker--60: #001936;
  --dark-blue--darker--40: #002651;
  --dark-blue--darker--20: #00326c;
  --dark-blue: #003f87;
  --dark-blue--lighter--20: #0062d2;
  --dark-blue--lighter--40: #1e87ff;
  --dark-blue--lighter--60: #69afff;
  --dark-blue--lighter--80: #b4d7ff;
  --blue--darker--80: #001828;
  --blue--darker--60: #003150;
  --blue--darker--40: #004978;
  --blue--darker--20: #0062a0;
  --blue: #007ac8;
  --blue--lighter--20: #079eff;
  --blue--lighter--40: #45b6ff;
  --blue--lighter--60: #83cfff;
  --blue--lighter--80: #c1e7ff;
  --dark-green--darker--80: #00150d;
  --dark-green--darker--60: #002b19;
  --dark-green--darker--40: #004026;
  --dark-green--darker--20: #005632;
  --dark-green: #006b3f;
  --dark-green--lighter--20: #338965;
  --dark-green--lighter--40: #66a68c;
  --dark-green--lighter--60: #99c4b2;
  --dark-green--lighter--80: #cce1d9;
  --green--darker--80: #0f1a06;
  --green--darker--60: #1e340c;
  --green--darker--40: #2c4e12;
  --green--darker--20: #3b6818;
  --green: #4a821e;
  --green--lighter--20: #6e9b4b;
  --green--lighter--40: #92b478;
  --green--lighter--60: #b7cda5;
  --green--lighter--80: #dbe6d2;
  --light-green--darker--80: #252b02;
  --light-green--darker--60: #4a5604;
  --light-green--darker--40: #708206;
  --light-green--darker--20: #95ad08;
  --light-green: #bad80a;
  --light-green--lighter--20: #c8e03b;
  --light-green--lighter--40: #d6e86c;
  --light-green--lighter--60: #e3ef9d;
  --light-green--lighter--80: #f1f7ce;
  --red: #cc2d30;
  --yellow: #ffc61e;
  --yellow--lighter--40: #ffe38f;
  --purple--lighter--80: #ebcfee;
  --purple--lighter--60: #d79fdc;
  --purple--lighter--40: #c26fcb;
  --purple--lighter--20: #ae3fb9;
  --purple: #9a0fa8;
  --black--rgb: 28,32,35;
  --blue--rgb: 0,122,200;
  --dark-blue--darker--40--rgb: 0,38,81;
  --green--rgb: 93,162,37;
  --light-green--rgb: 186,216,10;
  --red--rgb: 204,45,48;
  --yellow--rgb: 255,198,30;
  --white--rgb: 255,255,255;
  --gradient--vertical--light-blue: linear-gradient(
  to bottom,
  var(--blue--lighter--40) 0,
  var(--blue--lighter--60) 100%
);
  --gradient--vertical--dark-blue: linear-gradient(
  to bottom,
  var(--dark-blue--darker--40) 0,
  var(--dark-blue) 100%
);
  --gradient--vertical--light-green: linear-gradient(
  to bottom,
  var(--light-green--lighter--20) 0,
  var(--light-green) 100%
);
  --gradient--vertical--blue-to-dark-blue: linear-gradient(
  to bottom,
  var(--blue),
  rgba(var(--dark-blue--darker--40--rgb), 0.9)
);
  --gradient--horizontal--dark-blue-to-transparent: linear-gradient(
  to right,
  rgba(var(--dark-blue--darker--40--rgb), 1) 0%,
  rgba(var(--dark-blue--darker--40--rgb), 0.5) 100%
);
  --gradient--diagonal--blue-to-dark-blue: linear-gradient(
  to right bottom,
  #002f5e,
  #003266,
  #00356d,
  #003875,
  #003b7d,
  #004186,
  #01478e,
  #004d97,
  #0058a3,
  #0063b0,
  #006ebc,
  #007ac8
);
  --gradient--diagonal--dark-blue-to-black: linear-gradient(
  to left bottom,
  #1c2023,
  #18242d,
  #122738,
  #0a2a44,
  #022d4f,
  #00335c,
  #013a69,
  #044077,
  #074e8b,
  #085c9f,
  #066bb3,
  #007ac8
);
  --font--sans-serif: "Fira Sans",sans-serif;
  --font--serif: "PT Serif",serif;
  --font--hyperlegible: "Atkinson Hyperlegible",sans-serif;
  --font--dyslexia-friendly: "Open Dyslexic",sans-serif;
  --font--title: "Montserrat",sans-serif;
  --font--condensed: "Fira Sans Extra Condensed",sans-serif;
  --font-weight--light: 300;
  --font-weight--regular: 400;
  --font-weight--semibold: 600;
  --font-weight--bold: 700;
  --font-weight--black: 900;
  --font-size--xs: 0.6em;
  --font-size--sm: 0.9em;
  --font-size--md: 1em;
  --font-size--lg: 1.125em;
  --font-size--xl: 1.266em;
  --font-size--2xl: 1.424em;
  --font-size--3xl: 1.602em;
  --font-size--4xl: 1.802em;
  --font-size--5xl: 2.027em;
  --font-size--6xl: 2.281em;
  --font-size--7xl: 2.566em;
  --font-size--8xl: 3.653em;
  --font-size--9xl: 4.11em;
  --space--2xs: 0.25rem;
  --space--xs: 0.5rem;
  --space--sm: 0.75rem;
  --space--md: 1rem;
  --space--lg: 1.5rem;
  --space--xl: 2rem;
  --space--2xl: 3rem;
  --space--3xl: 4rem;
  --content-area-max-width: 60rem;
  --content-area-max-width--sm: 40rem;
  --grid-columns--sm: var(--space--sm) 1fr var(--space--sm);
  --grid-columns--lg: 1fr var(--content-area-max-width) 1fr;
  --border-width--sm: 0.0625rem;
  --border-width--md: 0.125rem;
  --border-width--lg: 0.1875rem;
  --border-radius--roundest: 6.25rem;
  --border-radius--rounder: 0.625rem;
  --border-radius--round: 0.125rem;
  --shadow--hard: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.4),0 0.0625rem 0.125rem rgba(0, 0, 0, 0.5);
  --shadow--soft: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16),0 0.1875rem 0.375rem rgba(0, 0, 0, 0.23);
  --shadow--soft--hover: 0 0.0625rem 0.1875rem rgba(0, 0, 0, 0.12),0 0.0625rem 0.125rem rgba(0, 0, 0, 0.24);
  --shadow--dark-mode: 0 0.1875rem 0.375rem rgba(0, 122, 200, 0.7),0 0.1875rem 0.375rem rgba(0, 63, 135, 0.9);
  --shadow--dark-mode--hover: 0 0.0625rem 0.1875rem rgba(0, 122, 200, 0.12),0 0.0625rem 0.125rem rgba(0, 63, 135, 0.24);
  --icon-size--xs: 1.125rem;
  --icon-size--sm: 1.5rem;
  --icon-size--md: 2.25rem;
  --icon-size--lg: 3rem;
  --toggle-size--sm: 3rem;
  --toggle-size--md: 3.5rem;
  --toggle-size--lg: 4.5rem;
  --toggle-size--xl: 5.5rem;
  --toggle-size--2xl: 6.5rem;
  --touch-target--min: 44px;
  --logo-size: 8rem;
  --logo--horizontal--width: 25rem;
  --logo--horizontal--height: 6.25rem;
  --checkbox-size: 1rem;
  --transition-speed--slow: 800ms;
  --transition-speed--md: 400ms;
  --transition-speed--fast: 200ms;
  --ease--standard: ease
}
.pattern-lab-bg {
  padding: var(--space--md)
}
.black-bg,
.black-gradient-overlay,
.black-overlay,
.dark-mode blockquote.pullquote {
  color: var(--white);
  background: var(--black)
}
.black-bg h1,
.black-bg h6,
.black-gradient-overlay h1,
.black-gradient-overlay h6,
.black-overlay h1,
.black-overlay h6,
.cta.outline.light-green:visited,
.dark-blue-bg h1,
.dark-blue-bg h6,
.dark-blue-overlay h1,
.dark-blue-overlay h6,
.dark-green-bg h1,
.dark-green-bg h6,
.dark-mode blockquote.pullquote h1,
.dark-mode blockquote.pullquote h6,
.dark-mode h1,
.dark-mode h6,
.darkest-blue-bg h1,
.darkest-blue-bg h6,
.job-title h1,
.job-title h6,
.pronouns h1,
.pronouns h6,
.taxonomy-term h1,
.taxonomy-term h6,
.user-login-form .outline.light-green.cas-login-link:visited,
a.button.outline.light-green:visited {
  color: var(--light-green)
}
.black-bg h1:after,
.black-gradient-overlay h1:after,
.black-overlay h1:after,
.dark-blue-bg h1:after,
.dark-blue-overlay h1:after,
.dark-green-bg h1:after,
.dark-mode blockquote.pullquote h1:after,
.dark-mode h1:after,
.darkest-blue-bg h1:after,
.job-title h1:after,
.pronouns h1:after,
.taxonomy-term h1:after {
  border-color: var(--white)
}
.black-bg h2,
.black-gradient-overlay h2,
.black-overlay h2,
.blue-bg h1,
.blue-gradient-bg h1,
.blue-overlay h1,
.dark-blue-bg h2,
.dark-blue-gradient-bg h1,
.dark-blue-overlay h2,
.dark-green-bg h2,
.dark-mode .gray-bg h1,
.dark-mode .green-bg h1,
.dark-mode .light-blue-bg h1,
.dark-mode .light-gray-bg h1,
.dark-mode .light-green-bg h1,
.dark-mode .lightest-blue-bg h1,
.dark-mode .lightest-gray-bg h1,
.dark-mode blockquote.pullquote h2,
.dark-mode blockquote:not([class]) h1,
.dark-mode h2,
.dark-mode table h1,
.dark-mode table.light-blue h1,
.dark-mode table.lightest-gray h1,
.darkest-blue-bg h2,
.gray-bg h1,
.green-bg h1,
.job-title h2,
.pronouns h2,
.taxonomy-term h2 {
  color: var(--light-green--lighter--20)
}
.black-bg .intro,
.black-bg .tagline,
.black-bg h3,
.black-gradient-overlay .intro,
.black-gradient-overlay .tagline,
.black-gradient-overlay h3,
.black-overlay .intro,
.black-overlay .tagline,
.black-overlay h3,
.blue-bg h2,
.blue-gradient-bg h2,
.blue-overlay h2,
.dark-blue-bg .intro,
.dark-blue-bg .tagline,
.dark-blue-bg h3,
.dark-blue-gradient-bg h2,
.dark-blue-overlay .intro,
.dark-blue-overlay .tagline,
.dark-blue-overlay h3,
.dark-green-bg .intro,
.dark-green-bg .tagline,
.dark-green-bg h3,
.dark-mode .gray-bg h2,
.dark-mode .green-bg h2,
.dark-mode .intro,
.dark-mode .light-blue-bg h2,
.dark-mode .light-gray-bg h2,
.dark-mode .light-green-bg h2,
.dark-mode .lightest-blue-bg h2,
.dark-mode .lightest-gray-bg h2,
.dark-mode .tagline,
.dark-mode blockquote.pullquote .intro,
.dark-mode blockquote.pullquote .tagline,
.dark-mode blockquote.pullquote h3,
.dark-mode blockquote:not([class]) h2,
.dark-mode h3,
.dark-mode table h2,
.dark-mode table.light-blue h2,
.dark-mode table.lightest-gray h2,
.darkest-blue-bg .intro,
.darkest-blue-bg .tagline,
.darkest-blue-bg h3,
.gray-bg h2,
.green-bg h2,
.job-title .intro,
.job-title .tagline,
.job-title h3,
.pronouns .intro,
.pronouns .tagline,
.pronouns h3,
.taxonomy-term .intro,
.taxonomy-term .tagline,
.taxonomy-term h3 {
  color: var(--light-green--lighter--40)
}
.black-bg h4,
.black-gradient-overlay h4,
.black-overlay h4,
.blue-bg h3,
.blue-gradient-bg h3,
.blue-overlay h3,
.dark-blue-bg h4,
.dark-blue-gradient-bg h3,
.dark-blue-overlay h4,
.dark-green-bg h4,
.dark-mode .gray-bg h3,
.dark-mode .green-bg h3,
.dark-mode .light-blue-bg h3,
.dark-mode .light-gray-bg h3,
.dark-mode .light-green-bg h3,
.dark-mode .lightest-blue-bg h3,
.dark-mode .lightest-gray-bg h3,
.dark-mode blockquote.pullquote h4,
.dark-mode blockquote:not([class]) h3,
.dark-mode h4,
.dark-mode table h3,
.dark-mode table.light-blue h3,
.dark-mode table.lightest-gray h3,
.darkest-blue-bg h4,
.gray-bg h3,
.green-bg h3,
.job-title h4,
.pronouns h4,
.taxonomy-term h4 {
  color: var(--light-green--lighter--60)
}
.black-bg h5,
.black-gradient-overlay h5,
.black-overlay h5,
.blue-bg .intro,
.blue-bg .tagline,
.blue-bg h4,
.blue-gradient-bg .intro,
.blue-gradient-bg .tagline,
.blue-gradient-bg h4,
.blue-overlay .intro,
.blue-overlay .tagline,
.blue-overlay h4,
.dark-blue-bg h5,
.dark-blue-gradient-bg .intro,
.dark-blue-gradient-bg .tagline,
.dark-blue-gradient-bg h4,
.dark-blue-overlay h5,
.dark-green-bg h5,
.dark-mode .gray-bg .intro,
.dark-mode .gray-bg .tagline,
.dark-mode .gray-bg h4,
.dark-mode .green-bg .intro,
.dark-mode .green-bg .tagline,
.dark-mode .green-bg h4,
.dark-mode .light-blue-bg .intro,
.dark-mode .light-blue-bg .tagline,
.dark-mode .light-blue-bg h4,
.dark-mode .light-gray-bg .intro,
.dark-mode .light-gray-bg .tagline,
.dark-mode .light-gray-bg h4,
.dark-mode .light-green-bg .intro,
.dark-mode .light-green-bg .tagline,
.dark-mode .light-green-bg h4,
.dark-mode .lightest-blue-bg .intro,
.dark-mode .lightest-blue-bg .tagline,
.dark-mode .lightest-blue-bg h4,
.dark-mode .lightest-gray-bg .intro,
.dark-mode .lightest-gray-bg .tagline,
.dark-mode .lightest-gray-bg h4,
.dark-mode blockquote.pullquote h5,
.dark-mode blockquote:not([class]) .intro,
.dark-mode blockquote:not([class]) .tagline,
.dark-mode blockquote:not([class]) h4,
.dark-mode h5,
.dark-mode table .intro,
.dark-mode table .tagline,
.dark-mode table h4,
.dark-mode table.light-blue .intro,
.dark-mode table.light-blue .tagline,
.dark-mode table.light-blue h4,
.dark-mode table.lightest-gray .intro,
.dark-mode table.lightest-gray .tagline,
.dark-mode table.lightest-gray h4,
.darkest-blue-bg h5,
.gray-bg .intro,
.gray-bg .tagline,
.gray-bg h4,
.green-bg .intro,
.green-bg .tagline,
.green-bg h4,
.job-title h5,
.pronouns h5,
.taxonomy-term h5 {
  color: var(--light-green--lighter--80)
}
.black-bg a.patternLink,
.black-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.black-gradient-overlay a.patternLink,
.black-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.black-overlay a.patternLink,
.black-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.cta.outline.light-blue:visited,
.dark-blue-bg a.patternLink,
.dark-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-blue-overlay a.patternLink,
.dark-blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-green-bg a.patternLink,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .accordion-set:not([class$="-bg"]) .item .title .expand,
.dark-mode .accordion-set:not([class$="-bg"]) .item .title .expand .material-icons,
.dark-mode .page-content a.icon-with-text,
.dark-mode .sg-pattern-example a.icon-with-text,
.dark-mode a.patternLink,
.dark-mode a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode blockquote.pullquote a.patternLink,
.dark-mode blockquote.pullquote a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.darkest-blue-bg a.patternLink,
.darkest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.job-title a.patternLink,
.job-title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.pronouns a.patternLink,
.pronouns a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.taxonomy-term a.patternLink,
.taxonomy-term a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.user-login-form .outline.light-blue.cas-login-link:visited,
a.button.outline.light-blue:visited {
  color: var(--blue--lighter--40)
}
.black-bg a.patternLink:visited,
.black-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.black-gradient-overlay a.patternLink:visited,
.black-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.black-overlay a.patternLink:visited,
.black-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-blue-bg a.patternLink:visited,
.dark-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-blue-overlay a.patternLink:visited,
.dark-blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-green-bg a.patternLink:visited,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode a.patternLink:visited,
.dark-mode a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode blockquote.pullquote a.patternLink:visited,
.dark-mode blockquote.pullquote a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.darkest-blue-bg a.patternLink:visited,
.darkest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.job-title a.patternLink:visited,
.job-title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.pronouns a.patternLink:visited,
.pronouns a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.taxonomy-term a.patternLink:visited,
.taxonomy-term a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.black-bg a.patternLink:active,
.black-bg a.patternLink:focus,
.black-bg a.patternLink:hover,
.black-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.black-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.black-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.black-gradient-overlay a.patternLink:active,
.black-gradient-overlay a.patternLink:focus,
.black-gradient-overlay a.patternLink:hover,
.black-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.black-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.black-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.black-overlay a.patternLink:active,
.black-overlay a.patternLink:focus,
.black-overlay a.patternLink:hover,
.black-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.black-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.black-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-blue-bg a.patternLink:active,
.dark-blue-bg a.patternLink:focus,
.dark-blue-bg a.patternLink:hover,
.dark-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-blue-overlay a.patternLink:active,
.dark-blue-overlay a.patternLink:focus,
.dark-blue-overlay a.patternLink:hover,
.dark-blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-green-bg a.patternLink:active,
.dark-green-bg a.patternLink:focus,
.dark-green-bg a.patternLink:hover,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode a.patternLink:active,
.dark-mode a.patternLink:focus,
.dark-mode a.patternLink:hover,
.dark-mode a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode blockquote.pullquote a.patternLink:active,
.dark-mode blockquote.pullquote a.patternLink:focus,
.dark-mode blockquote.pullquote a.patternLink:hover,
.dark-mode blockquote.pullquote a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode blockquote.pullquote a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode blockquote.pullquote a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.darkest-blue-bg a.patternLink:active,
.darkest-blue-bg a.patternLink:focus,
.darkest-blue-bg a.patternLink:hover,
.darkest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.darkest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.darkest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.job-title a.patternLink:active,
.job-title a.patternLink:focus,
.job-title a.patternLink:hover,
.job-title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.job-title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.job-title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.pronouns a.patternLink:active,
.pronouns a.patternLink:focus,
.pronouns a.patternLink:hover,
.pronouns a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.pronouns a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.pronouns a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.taxonomy-term a.patternLink:active,
.taxonomy-term a.patternLink:focus,
.taxonomy-term a.patternLink:hover,
.taxonomy-term a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.taxonomy-term a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.taxonomy-term a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.black-bg .menu li,
.black-gradient-overlay .menu li,
.black-overlay .menu li,
.dark-blue-bg .menu li,
.dark-blue-overlay .menu li,
.dark-green-bg .menu li,
.dark-mode .menu li,
.dark-mode blockquote.pullquote .menu li,
.darkest-blue-bg .menu li,
.job-title .menu li,
.pronouns .menu li,
.taxonomy-term .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.black-bg .play-button,
.black-bg .social-icon,
.black-gradient-overlay .play-button,
.black-gradient-overlay .social-icon,
.black-overlay .play-button,
.black-overlay .social-icon,
.blue-bg .play-button,
.blue-bg .social-icon,
.blue-gradient-bg .play-button,
.blue-gradient-bg .social-icon,
.blue-overlay .play-button,
.blue-overlay .social-icon,
.cta.white,
.dark-blue-bg .play-button,
.dark-blue-bg .social-icon,
.dark-blue-gradient-bg .play-button,
.dark-blue-gradient-bg .social-icon,
.dark-blue-overlay .play-button,
.dark-blue-overlay .social-icon,
.dark-green-bg .play-button,
.dark-green-bg .social-icon,
.dark-mode .gray-bg .play-button,
.dark-mode .gray-bg .social-icon,
.dark-mode .green-bg .play-button,
.dark-mode .green-bg .social-icon,
.dark-mode .light-blue-bg .play-button,
.dark-mode .light-blue-bg .social-icon,
.dark-mode .light-gray-bg .play-button,
.dark-mode .light-gray-bg .social-icon,
.dark-mode .light-green-bg .play-button,
.dark-mode .light-green-bg .social-icon,
.dark-mode .lightest-blue-bg .play-button,
.dark-mode .lightest-blue-bg .social-icon,
.dark-mode .lightest-gray-bg .play-button,
.dark-mode .lightest-gray-bg .social-icon,
.dark-mode .play-button,
.dark-mode .social-icon,
.dark-mode blockquote.pullquote .play-button,
.dark-mode blockquote.pullquote .social-icon,
.dark-mode blockquote:not([class]) .play-button,
.dark-mode blockquote:not([class]) .social-icon,
.dark-mode table .play-button,
.dark-mode table .social-icon,
.dark-mode table.light-blue .play-button,
.dark-mode table.light-blue .social-icon,
.dark-mode table.lightest-gray .play-button,
.dark-mode table.lightest-gray .social-icon,
.darkest-blue-bg .play-button,
.darkest-blue-bg .social-icon,
.gray-bg .play-button,
.gray-bg .social-icon,
.green-bg .play-button,
.green-bg .social-icon,
.job-title .play-button,
.job-title .social-icon,
.pronouns .play-button,
.pronouns .social-icon,
.taxonomy-term .play-button,
.taxonomy-term .social-icon,
.user-login-form .white.cas-login-link,
a.button.white {
  color: var(--dark-blue);
  background: var(--white)
}
.black-bg .play-button svg,
.black-bg .social-icon svg,
.black-gradient-overlay .play-button svg,
.black-gradient-overlay .social-icon svg,
.black-overlay .play-button svg,
.black-overlay .social-icon svg,
.blue-bg .play-button svg,
.blue-bg .social-icon svg,
.blue-gradient-bg .play-button svg,
.blue-gradient-bg .social-icon svg,
.blue-overlay .play-button svg,
.blue-overlay .social-icon svg,
.dark-blue-bg .play-button svg,
.dark-blue-bg .social-icon svg,
.dark-blue-gradient-bg .play-button svg,
.dark-blue-gradient-bg .social-icon svg,
.dark-blue-overlay .play-button svg,
.dark-blue-overlay .social-icon svg,
.dark-green-bg .play-button svg,
.dark-green-bg .social-icon svg,
.dark-mode .gray-bg .play-button svg,
.dark-mode .gray-bg .social-icon svg,
.dark-mode .green-bg .play-button svg,
.dark-mode .green-bg .social-icon svg,
.dark-mode .light-blue-bg .play-button svg,
.dark-mode .light-blue-bg .social-icon svg,
.dark-mode .light-gray-bg .play-button svg,
.dark-mode .light-gray-bg .social-icon svg,
.dark-mode .light-green-bg .play-button svg,
.dark-mode .light-green-bg .social-icon svg,
.dark-mode .lightest-blue-bg .play-button svg,
.dark-mode .lightest-blue-bg .social-icon svg,
.dark-mode .lightest-gray-bg .play-button svg,
.dark-mode .lightest-gray-bg .social-icon svg,
.dark-mode .play-button svg,
.dark-mode .social-icon svg,
.dark-mode blockquote.pullquote .play-button svg,
.dark-mode blockquote.pullquote .social-icon svg,
.dark-mode blockquote:not([class]) .play-button svg,
.dark-mode blockquote:not([class]) .social-icon svg,
.dark-mode table .play-button svg,
.dark-mode table .social-icon svg,
.dark-mode table.light-blue .play-button svg,
.dark-mode table.light-blue .social-icon svg,
.dark-mode table.lightest-gray .play-button svg,
.dark-mode table.lightest-gray .social-icon svg,
.darkest-blue-bg .play-button svg,
.darkest-blue-bg .social-icon svg,
.gray-bg .play-button svg,
.gray-bg .social-icon svg,
.green-bg .play-button svg,
.green-bg .social-icon svg,
.job-title .play-button svg,
.job-title .social-icon svg,
.pronouns .play-button svg,
.pronouns .social-icon svg,
.taxonomy-term .play-button svg,
.taxonomy-term .social-icon svg {
  fill: var(--dark-blue)
}
.black-bg .play-button:active,
.black-bg .play-button:focus,
.black-bg .play-button:hover,
.black-bg .social-icon:active,
.black-bg .social-icon:focus,
.black-bg .social-icon:hover,
.black-gradient-overlay .play-button:active,
.black-gradient-overlay .play-button:focus,
.black-gradient-overlay .play-button:hover,
.black-gradient-overlay .social-icon:active,
.black-gradient-overlay .social-icon:focus,
.black-gradient-overlay .social-icon:hover,
.black-overlay .play-button:active,
.black-overlay .play-button:focus,
.black-overlay .play-button:hover,
.black-overlay .social-icon:active,
.black-overlay .social-icon:focus,
.black-overlay .social-icon:hover,
.blue-bg .play-button:active,
.blue-bg .play-button:focus,
.blue-bg .play-button:hover,
.blue-bg .social-icon:active,
.blue-bg .social-icon:focus,
.blue-bg .social-icon:hover,
.blue-gradient-bg .play-button:active,
.blue-gradient-bg .play-button:focus,
.blue-gradient-bg .play-button:hover,
.blue-gradient-bg .social-icon:active,
.blue-gradient-bg .social-icon:focus,
.blue-gradient-bg .social-icon:hover,
.blue-overlay .play-button:active,
.blue-overlay .play-button:focus,
.blue-overlay .play-button:hover,
.blue-overlay .social-icon:active,
.blue-overlay .social-icon:focus,
.blue-overlay .social-icon:hover,
.dark-blue-bg .play-button:active,
.dark-blue-bg .play-button:focus,
.dark-blue-bg .play-button:hover,
.dark-blue-bg .social-icon:active,
.dark-blue-bg .social-icon:focus,
.dark-blue-bg .social-icon:hover,
.dark-blue-gradient-bg .play-button:active,
.dark-blue-gradient-bg .play-button:focus,
.dark-blue-gradient-bg .play-button:hover,
.dark-blue-gradient-bg .social-icon:active,
.dark-blue-gradient-bg .social-icon:focus,
.dark-blue-gradient-bg .social-icon:hover,
.dark-blue-overlay .play-button:active,
.dark-blue-overlay .play-button:focus,
.dark-blue-overlay .play-button:hover,
.dark-blue-overlay .social-icon:active,
.dark-blue-overlay .social-icon:focus,
.dark-blue-overlay .social-icon:hover,
.dark-green-bg .play-button:active,
.dark-green-bg .play-button:focus,
.dark-green-bg .play-button:hover,
.dark-green-bg .social-icon:active,
.dark-green-bg .social-icon:focus,
.dark-green-bg .social-icon:hover,
.dark-mode .gray-bg .play-button:active,
.dark-mode .gray-bg .play-button:focus,
.dark-mode .gray-bg .play-button:hover,
.dark-mode .gray-bg .social-icon:active,
.dark-mode .gray-bg .social-icon:focus,
.dark-mode .gray-bg .social-icon:hover,
.dark-mode .green-bg .play-button:active,
.dark-mode .green-bg .play-button:focus,
.dark-mode .green-bg .play-button:hover,
.dark-mode .green-bg .social-icon:active,
.dark-mode .green-bg .social-icon:focus,
.dark-mode .green-bg .social-icon:hover,
.dark-mode .light-blue-bg .play-button:active,
.dark-mode .light-blue-bg .play-button:focus,
.dark-mode .light-blue-bg .play-button:hover,
.dark-mode .light-blue-bg .social-icon:active,
.dark-mode .light-blue-bg .social-icon:focus,
.dark-mode .light-blue-bg .social-icon:hover,
.dark-mode .light-gray-bg .play-button:active,
.dark-mode .light-gray-bg .play-button:focus,
.dark-mode .light-gray-bg .play-button:hover,
.dark-mode .light-gray-bg .social-icon:active,
.dark-mode .light-gray-bg .social-icon:focus,
.dark-mode .light-gray-bg .social-icon:hover,
.dark-mode .light-green-bg .play-button:active,
.dark-mode .light-green-bg .play-button:focus,
.dark-mode .light-green-bg .play-button:hover,
.dark-mode .light-green-bg .social-icon:active,
.dark-mode .light-green-bg .social-icon:focus,
.dark-mode .light-green-bg .social-icon:hover,
.dark-mode .lightest-blue-bg .play-button:active,
.dark-mode .lightest-blue-bg .play-button:focus,
.dark-mode .lightest-blue-bg .play-button:hover,
.dark-mode .lightest-blue-bg .social-icon:active,
.dark-mode .lightest-blue-bg .social-icon:focus,
.dark-mode .lightest-blue-bg .social-icon:hover,
.dark-mode .lightest-gray-bg .play-button:active,
.dark-mode .lightest-gray-bg .play-button:focus,
.dark-mode .lightest-gray-bg .play-button:hover,
.dark-mode .lightest-gray-bg .social-icon:active,
.dark-mode .lightest-gray-bg .social-icon:focus,
.dark-mode .lightest-gray-bg .social-icon:hover,
.dark-mode .play-button:active,
.dark-mode .play-button:focus,
.dark-mode .play-button:hover,
.dark-mode .social-icon:active,
.dark-mode .social-icon:focus,
.dark-mode .social-icon:hover,
.dark-mode blockquote.pullquote .play-button:active,
.dark-mode blockquote.pullquote .play-button:focus,
.dark-mode blockquote.pullquote .play-button:hover,
.dark-mode blockquote.pullquote .social-icon:active,
.dark-mode blockquote.pullquote .social-icon:focus,
.dark-mode blockquote.pullquote .social-icon:hover,
.dark-mode blockquote:not([class]) .play-button:active,
.dark-mode blockquote:not([class]) .play-button:focus,
.dark-mode blockquote:not([class]) .play-button:hover,
.dark-mode blockquote:not([class]) .social-icon:active,
.dark-mode blockquote:not([class]) .social-icon:focus,
.dark-mode blockquote:not([class]) .social-icon:hover,
.dark-mode table .play-button:active,
.dark-mode table .play-button:focus,
.dark-mode table .play-button:hover,
.dark-mode table .social-icon:active,
.dark-mode table .social-icon:focus,
.dark-mode table .social-icon:hover,
.dark-mode table.light-blue .play-button:active,
.dark-mode table.light-blue .play-button:focus,
.dark-mode table.light-blue .play-button:hover,
.dark-mode table.light-blue .social-icon:active,
.dark-mode table.light-blue .social-icon:focus,
.dark-mode table.light-blue .social-icon:hover,
.dark-mode table.lightest-gray .play-button:active,
.dark-mode table.lightest-gray .play-button:focus,
.dark-mode table.lightest-gray .play-button:hover,
.dark-mode table.lightest-gray .social-icon:active,
.dark-mode table.lightest-gray .social-icon:focus,
.dark-mode table.lightest-gray .social-icon:hover,
.darkest-blue-bg .play-button:active,
.darkest-blue-bg .play-button:focus,
.darkest-blue-bg .play-button:hover,
.darkest-blue-bg .social-icon:active,
.darkest-blue-bg .social-icon:focus,
.darkest-blue-bg .social-icon:hover,
.gray-bg .play-button:active,
.gray-bg .play-button:focus,
.gray-bg .play-button:hover,
.gray-bg .social-icon:active,
.gray-bg .social-icon:focus,
.gray-bg .social-icon:hover,
.green-bg .play-button:active,
.green-bg .play-button:focus,
.green-bg .play-button:hover,
.green-bg .social-icon:active,
.green-bg .social-icon:focus,
.green-bg .social-icon:hover,
.job-title .play-button:active,
.job-title .play-button:focus,
.job-title .play-button:hover,
.job-title .social-icon:active,
.job-title .social-icon:focus,
.job-title .social-icon:hover,
.pronouns .play-button:active,
.pronouns .play-button:focus,
.pronouns .play-button:hover,
.pronouns .social-icon:active,
.pronouns .social-icon:focus,
.pronouns .social-icon:hover,
.taxonomy-term .play-button:active,
.taxonomy-term .play-button:focus,
.taxonomy-term .play-button:hover,
.taxonomy-term .social-icon:active,
.taxonomy-term .social-icon:focus,
.taxonomy-term .social-icon:hover {
  background: var(--blue--lighter--60)
}
.black-bg .block--countdown,
.black-bg caption,
.black-gradient-overlay .block--countdown,
.black-gradient-overlay caption,
.black-overlay .block--countdown,
.black-overlay caption,
.blue-bg .block--countdown,
.blue-bg caption,
.blue-bg h5,
.blue-bg h6,
.blue-gradient-bg .block--countdown,
.blue-gradient-bg caption,
.blue-gradient-bg h5,
.blue-gradient-bg h6,
.blue-overlay .block--countdown,
.blue-overlay caption,
.blue-overlay h5,
.blue-overlay h6,
.color-swatch.black,
.color-swatch.black h3,
.color-swatch.blue,
.color-swatch.blue h3,
.color-swatch.dark-blue,
.color-swatch.dark-blue h3,
.color-swatch.dark-green,
.color-swatch.dark-green h3,
.color-swatch.gray,
.color-swatch.gray h3,
.color-swatch.green,
.color-swatch.green h3,
.color-swatch.red,
.color-swatch.red h3,
.cta.dark-green:active:visited,
.cta.dark-green:focus:visited,
.cta.dark-green:hover:visited,
.cta.green:active:visited,
.cta.green:focus:visited,
.cta.green:hover:visited,
.cta.outline.dark-blue:active:visited,
.cta.outline.dark-blue:focus:visited,
.cta.outline.dark-blue:hover:visited,
.cta.outline.dark-green:active:visited,
.cta.outline.dark-green:focus:visited,
.cta.outline.dark-green:hover:visited,
.cta.outline.green:active:visited,
.cta.outline.green:focus:visited,
.cta.outline.green:hover:visited,
.cta:active:visited,
.cta:focus:visited,
.cta:hover:visited,
.cta:visited,
.dark-blue-bg .block--countdown,
.dark-blue-bg caption,
.dark-blue-gradient-bg .block--countdown,
.dark-blue-gradient-bg caption,
.dark-blue-gradient-bg h5,
.dark-blue-gradient-bg h6,
.dark-blue-overlay .block--countdown,
.dark-blue-overlay caption,
.dark-green-bg .block--countdown,
.dark-green-bg caption,
.dark-mode .accordion-set:not([class$="-bg"]) .item .title .expand:active,
.dark-mode .accordion-set:not([class$="-bg"]) .item .title .expand:focus,
.dark-mode .accordion-set:not([class$="-bg"]) .item .title .expand:hover,
.dark-mode .block--countdown,
.dark-mode .gray-bg .block--countdown,
.dark-mode .gray-bg caption,
.dark-mode .gray-bg h5,
.dark-mode .gray-bg h6,
.dark-mode .green-bg .block--countdown,
.dark-mode .green-bg caption,
.dark-mode .green-bg h5,
.dark-mode .green-bg h6,
.dark-mode .light-blue-bg .block--countdown,
.dark-mode .light-blue-bg caption,
.dark-mode .light-blue-bg h5,
.dark-mode .light-blue-bg h6,
.dark-mode .light-gray-bg .block--countdown,
.dark-mode .light-gray-bg caption,
.dark-mode .light-gray-bg h5,
.dark-mode .light-gray-bg h6,
.dark-mode .light-green-bg .block--countdown,
.dark-mode .light-green-bg caption,
.dark-mode .light-green-bg h5,
.dark-mode .light-green-bg h6,
.dark-mode .lightest-blue-bg .block--countdown,
.dark-mode .lightest-blue-bg caption,
.dark-mode .lightest-blue-bg h5,
.dark-mode .lightest-blue-bg h6,
.dark-mode .lightest-gray-bg .block--countdown,
.dark-mode .lightest-gray-bg caption,
.dark-mode .lightest-gray-bg h5,
.dark-mode .lightest-gray-bg h6,
.dark-mode .page-content a.icon-with-text.blue-bg,
.dark-mode .page-content a.icon-with-text.dark-blue-bg,
.dark-mode .sg-pattern-example a.icon-with-text.blue-bg,
.dark-mode .sg-pattern-example a.icon-with-text.dark-blue-bg,
.dark-mode blockquote.pullquote .block--countdown,
.dark-mode blockquote.pullquote caption,
.dark-mode blockquote:not([class]) .block--countdown,
.dark-mode blockquote:not([class]) caption,
.dark-mode blockquote:not([class]) h5,
.dark-mode blockquote:not([class]) h6,
.dark-mode caption,
.dark-mode table .block--countdown,
.dark-mode table caption,
.dark-mode table h5,
.dark-mode table h6,
.dark-mode table.light-blue .block--countdown,
.dark-mode table.light-blue caption,
.dark-mode table.light-blue h5,
.dark-mode table.light-blue h6,
.dark-mode table.lightest-gray .block--countdown,
.dark-mode table.lightest-gray caption,
.dark-mode table.lightest-gray h5,
.dark-mode table.lightest-gray h6,
.darkest-blue-bg .block--countdown,
.darkest-blue-bg caption,
.gray-bg .block--countdown,
.gray-bg caption,
.gray-bg h5,
.gray-bg h6,
.green-bg .block--countdown,
.green-bg caption,
.green-bg h5,
.green-bg h6,
.job-title .block--countdown,
.job-title caption,
.pronouns .block--countdown,
.pronouns caption,
.taxonomy-term .block--countdown,
.taxonomy-term caption,
.user-login-form .cas-login-link:active:visited,
.user-login-form .cas-login-link:focus:visited,
.user-login-form .cas-login-link:hover:visited,
.user-login-form .cas-login-link:visited,
.user-login-form .dark-green.cas-login-link:active:visited,
.user-login-form .dark-green.cas-login-link:focus:visited,
.user-login-form .dark-green.cas-login-link:hover:visited,
.user-login-form .green.cas-login-link:active:visited,
.user-login-form .green.cas-login-link:focus:visited,
.user-login-form .green.cas-login-link:hover:visited,
.user-login-form .outline.dark-blue.cas-login-link:active:visited,
.user-login-form .outline.dark-blue.cas-login-link:focus:visited,
.user-login-form .outline.dark-blue.cas-login-link:hover:visited,
.user-login-form .outline.dark-green.cas-login-link:active:visited,
.user-login-form .outline.dark-green.cas-login-link:focus:visited,
.user-login-form .outline.dark-green.cas-login-link:hover:visited,
.user-login-form .outline.green.cas-login-link:active:visited,
.user-login-form .outline.green.cas-login-link:focus:visited,
.user-login-form .outline.green.cas-login-link:hover:visited,
a.button.dark-green:active:visited,
a.button.dark-green:focus:visited,
a.button.dark-green:hover:visited,
a.button.green:active:visited,
a.button.green:focus:visited,
a.button.green:hover:visited,
a.button.outline.dark-blue:active:visited,
a.button.outline.dark-blue:focus:visited,
a.button.outline.dark-blue:hover:visited,
a.button.outline.dark-green:active:visited,
a.button.outline.dark-green:focus:visited,
a.button.outline.dark-green:hover:visited,
a.button.outline.green:active:visited,
a.button.outline.green:focus:visited,
a.button.outline.green:hover:visited,
a.button:active:visited,
a.button:focus:visited,
a.button:hover:visited,
a.button:visited {
  color: var(--white)
}
.dark-blue-bg,
.dark-blue-overlay {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue)
}
.dark-mode .timeline-block:nth-of-type(even),
.darkest-blue-bg {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue--darker--20)
}
.dark-green-bg {
  color: var(--white);
  background: var(--black);
  background: var(--dark-green)
}
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--light-green--lighter--20);
  color: var(--green--lighter--80)
}
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  outline-color: var(--light-green);
  background-image: var(--gradient--vertical--light-green)
}
.dark-green-bg .menu li,
.dark-green-bg.pullquote {
  border-left-color: var(--green--lighter--80)
}
.dark-mode .green-bg,
.dark-mode .light-green-bg,
.green-bg {
  color: var(--white);
  background: var(--gray);
  background: var(--green)
}
.blue-bg h1:after,
.blue-gradient-bg h1:after,
.blue-overlay h1:after,
.dark-blue-gradient-bg h1:after,
.dark-mode .accordion-set:not([class$="-bg"]) .item,
.dark-mode .gray-bg h1:after,
.dark-mode .green-bg h1:after,
.dark-mode .light-blue-bg h1:after,
.dark-mode .light-gray-bg h1:after,
.dark-mode .light-green-bg h1:after,
.dark-mode .lightest-blue-bg h1:after,
.dark-mode .lightest-gray-bg h1:after,
.dark-mode blockquote:not([class]) h1:after,
.dark-mode table h1:after,
.dark-mode table.light-blue h1:after,
.dark-mode table.lightest-gray h1:after,
.gray-bg h1:after,
.green-bg h1:after {
  border-color: var(--blue--lighter--40)
}
.dark-mode .green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white);
  text-decoration-color: var(--light-green--lighter--20)
}
.blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode table.light-blue a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode table.lightest-gray a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--white);
  text-decoration-color: var(--purple--lighter--60)
}
a,
a:active,
a:focus,
a:hover {
  text-decoration-color: var(--blue--lighter--60)
}
.dark-mode .green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue);
  outline-color: var(--light-green--lighter--20);
  background-image: var(--gradient--vertical--light-green)
}
.blue-bg .menu li,
.blue-gradient-bg .menu li,
.blue-overlay .menu li,
.dark-blue-gradient-bg .menu li,
.dark-mode .gray-bg .menu li,
.dark-mode .green-bg .menu li,
.dark-mode .light-blue-bg .menu li,
.dark-mode .light-gray-bg .menu li,
.dark-mode .light-green-bg .menu li,
.dark-mode .lightest-blue-bg .menu li,
.dark-mode .lightest-gray-bg .menu li,
.dark-mode blockquote:not([class]) .menu li,
.dark-mode table .menu li,
.dark-mode table.light-blue .menu li,
.dark-mode table.lightest-gray .menu li,
.gray-bg .menu li,
.green-bg .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--60)
}
.dark-mode .green-bg h1:after,
.dark-mode .light-green-bg h1:after,
.green-bg h1:after {
  border-color: var(--light-green--lighter--80)
}
.dark-mode .green-bg.pullquote,
.dark-mode .light-green-bg.pullquote,
.green-bg.pullquote {
  border-left-color: var(--light-green--lighter--40)
}
.dark-mode .gray-bg,
.dark-mode .light-blue-bg,
.dark-mode .light-gray-bg,
.dark-mode .lightest-blue-bg,
.dark-mode .lightest-gray-bg,
.dark-mode blockquote:not([class]),
.dark-mode table,
.dark-mode table.lightest-gray,
.gray-bg,
button:focus,
button:hover,
input[type=submit]:focus,
input[type=submit]:hover {
  color: var(--white);
  background: var(--gray)
}
.blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode table.light-blue a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode table.lightest-gray a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white)
}
.blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.blue-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-blue-gradient-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode table.light-blue a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode table.light-blue a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode table.light-blue a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode table.lightest-gray a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode table.lightest-gray a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode table.lightest-gray a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue)
}
.blue-bg,
.blue-overlay,
.dark-mode table.light-blue {
  color: var(--white);
  background: var(--gray);
  background: var(--blue)
}
.gray-overlay:after,
.light-gray-bg,
.org-chart ul li>span {
  background: var(--gray--lighter--60)
}
.gray-overlay h1,
.light-blue-bg h1,
.light-gray-bg h1,
.light-green-bg h1,
.lightest-blue-bg h1,
.lightest-gray-bg h1,
.white-gradient-overlay h1,
[class$="-bg"] table h1,
blockquote:not([class]) h1,
table h1 {
  color: var(--dark-blue--darker--80)
}
.gray-overlay h1:after,
.light-blue-bg h1:after,
.light-gray-bg h1:after,
.light-green-bg h1:after,
.lightest-blue-bg h1:after,
.lightest-gray-bg h1:after,
.white-gradient-overlay h1:after,
[class$="-bg"] table h1:after,
blockquote:not([class]) h1:after,
table h1:after {
  border-color: var(--dark-blue--darker--80)
}
.gray-overlay h2,
.light-blue-bg h2,
.light-gray-bg h2,
.light-green-bg h2,
.lightest-blue-bg h2,
.lightest-gray-bg h2,
.white-gradient-overlay h2,
[class$="-bg"] table h2,
blockquote:not([class]) h2,
table h2 {
  color: var(--dark-blue--darker--60)
}
.gray-overlay h3,
.light-blue-bg h3,
.light-gray-bg h3,
.light-green-bg h3,
.lightest-blue-bg h3,
.lightest-gray-bg h3,
.white-gradient-overlay h3,
[class$="-bg"] table h3,
blockquote:not([class]) h3,
table h3 {
  color: var(--dark-blue--darker--40)
}
.accordion-set:not([class$="-bg"]) .title .expand,
.gray-overlay h4,
.light-blue-bg h4,
.light-gray-bg h4,
.light-green-bg h4,
.lightest-blue-bg h4,
.lightest-gray-bg h4,
.white-gradient-overlay h4,
[class$="-bg"] table h4,
blockquote:not([class]) h4,
table h4 {
  color: var(--dark-blue--darker--20)
}
.accordion-set:not([class$="-bg"]) .title .expand .material-icons,
.cta.light-green:visited,
.cta.outline.dark-blue:visited,
.cta.outline.light-green:active:visited,
.cta.outline.light-green:focus:visited,
.cta.outline.light-green:hover:visited,
.cta.outline.white:active:visited,
.cta.outline.white:focus:visited,
.cta.outline.white:hover:visited,
.cta.white:active:visited,
.cta.white:focus:visited,
.cta.white:hover:visited,
.cta.white:visited,
.dark-mode .page-content a.icon-with-text:active,
.dark-mode .page-content a.icon-with-text:focus,
.dark-mode .page-content a.icon-with-text:hover,
.dark-mode .sg-pattern-example a.icon-with-text:active,
.dark-mode .sg-pattern-example a.icon-with-text:focus,
.dark-mode .sg-pattern-example a.icon-with-text:hover,
.gray-overlay h5,
.gray-overlay h6,
.light-blue-bg h5,
.light-blue-bg h6,
.light-gray-bg h5,
.light-gray-bg h6,
.light-green-bg h5,
.light-green-bg h6,
.lightest-blue-bg h5,
.lightest-blue-bg h6,
.lightest-gray-bg h5,
.lightest-gray-bg h6,
.user-login-form .light-green.cas-login-link:visited,
.user-login-form .outline.dark-blue.cas-login-link:visited,
.user-login-form .outline.light-green.cas-login-link:active:visited,
.user-login-form .outline.light-green.cas-login-link:focus:visited,
.user-login-form .outline.light-green.cas-login-link:hover:visited,
.user-login-form .outline.white.cas-login-link:active:visited,
.user-login-form .outline.white.cas-login-link:focus:visited,
.user-login-form .outline.white.cas-login-link:hover:visited,
.user-login-form .white.cas-login-link:active:visited,
.user-login-form .white.cas-login-link:focus:visited,
.user-login-form .white.cas-login-link:hover:visited,
.user-login-form .white.cas-login-link:visited,
.white-gradient-overlay h5,
.white-gradient-overlay h6,
[class$="-bg"] table h5,
[class$="-bg"] table h6,
a.button.light-green:visited,
a.button.outline.dark-blue:visited,
a.button.outline.light-green:active:visited,
a.button.outline.light-green:focus:visited,
a.button.outline.light-green:hover:visited,
a.button.outline.white:active:visited,
a.button.outline.white:focus:visited,
a.button.outline.white:hover:visited,
a.button.white:active:visited,
a.button.white:focus:visited,
a.button.white:hover:visited,
a.button.white:visited,
a:active:visited,
a:focus:visited,
a:hover:visited,
blockquote:not([class]) h5,
blockquote:not([class]) h6,
table h5,
table h6 {
  color: var(--dark-blue)
}
.gray-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.white-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
[class$="-bg"] table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--dark-blue);
  color: var(--blue--darker--40)
}
.gray-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.white-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
[class$="-bg"] table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
a:visited,
blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple)
}
.gray-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.gray-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.gray-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.light-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.light-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.light-green-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.lightest-blue-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.lightest-gray-bg a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.white-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.white-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.white-gradient-overlay a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
[class$="-bg"] table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
[class$="-bg"] table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
[class$="-bg"] table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
blockquote:not([class]) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
table a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.gray-overlay .menu li,
.light-blue-bg .menu li,
.light-gray-bg .menu li,
.light-green-bg .menu li,
.lightest-blue-bg .menu li,
.lightest-gray-bg .menu li,
.white-gradient-overlay .menu li,
[class$="-bg"] table .menu li,
blockquote:not([class]) .menu li,
table .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
.gray-overlay.pullquote,
.light-blue-bg.pullquote,
.light-gray-bg.pullquote,
.light-green-bg.pullquote,
.lightest-blue-bg.pullquote,
.lightest-gray-bg.pullquote,
.white-gradient-overlay.pullquote,
[class$="-bg"] table.pullquote,
blockquote:not([class]).pullquote,
table.pullquote {
  border-left-color: var(--dark-blue)
}
.lightest-gray-bg,
blockquote:not([class]) {
  background: var(--gray--lighter--60);
  background: var(--gray--lighter--80)
}
.light-blue-bg,
.lightest-blue-bg {
  background: var(--gray--lighter--60)
}
.light-blue-bg {
  background: var(--blue--lighter--60)
}
.lightest-blue-bg {
  background: var(--gray--lighter--80);
  background: var(--blue--lighter--80)
}
.light-green-bg {
  background: var(--gray--lighter--60);
  background: var(--light-green)
}
.dark-blue-gradient-bg {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  background-image: var(--gradient--diagonal--dark-blue-to-black)
}
.blue-gradient-bg {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  background-image: var(--gradient--diagonal--blue-to-dark-blue)
}
.dark-mode {
  color: var(--white);
  background: var(--black);
  background-color: var(--gray--darker--80)
}
.color-swatch.blue.shade-40,
.dark-mode .blue-bg,
.dark-mode table.light-blue th,
.dark-mode table.light-blue th:after {
  background-color: var(--blue--darker--40)
}
button,
input[type=submit] {
  padding: var(--space--xs);
  transition: background var(--transition-speed--fast),color var(--transition-speed--fast),box-shadow var(--transition-speed--fast);
  color: var(--black);
  border: var(--border-width--md) outset var(--gray--lighter--80);
  border-radius: var(--border-radius--round);
  background: var(--gray--lighter--80)
}
.my-western-icon svg,
.social-icon svg {
  transition: var(--ease-standard) var(--transition-speed--fast) fill
}
button:focus,
input[type=submit]:focus {
  outline-offset: calc(-1 * var(--border-width--lg))
}
button:focus:not(:focus-visible),
input[type=submit]:focus:not(:focus-visible) {
  outline: 0
}
button:active,
input[type=submit]:active {
  border-style: inset
}
button.alt,
input[type=submit].alt {
  color: var(--white);
  border-color: var(--blue--lighter--20);
  background: var(--blue)
}
.cta.dark-blue,
.dark-blue-overlay:after,
.social-icon:active,
.social-icon:focus,
.social-icon:hover,
.user-login-form .dark-blue.cas-login-link,
.wrapper--404,
a.button.dark-blue,
button.alt:focus,
button.alt:hover,
input[type=submit].alt:focus,
input[type=submit].alt:hover {
  background: var(--dark-blue)
}
button.warning,
input[type=submit].warning {
  color: var(--black);
  border-color: var(--yellow--lighter--40);
  background: var(--yellow)
}
button.warning:focus,
button.warning:hover,
input[type=submit].warning:focus,
input[type=submit].warning:hover {
  background: var(--yellow--lighter--40)
}
.si-button,
.toolbar-bar button,
button.warning:active,
input[type=submit].warning:active {
  box-shadow: none
}
button:disabled,
input[type=submit]:disabled {
  color: var(--gray--darker--40);
  border-style: solid;
  border-color: var(--gray--lighter--60);
  background: var(--gray--lighter--60);
  box-shadow: none
}
button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: default
}
.play-button,
.play-link {
  width: var(--toggle-size--sm);
  height: var(--toggle-size--sm);
  padding: var(--space--sm) var(--space--sm) var(--space--md) var(--space--md);
  color: var(--white);
  border-style: none;
  border-radius: 50%;
  background-color: var(--blue)
}
.color-swatch,
figcaption {
  padding: var(--space--md)
}
.play-button svg,
.play-link svg {
  fill: var(--white);
  width: 100%
}
#molecules-wwu-menu-html,
#molecules-wwu-mobile-menu-html,
.color-swatch.dark-blue,
.play-button:active,
.play-button:focus,
.play-button:hover,
.play-link:active,
.play-link:focus,
.play-link:hover {
  background-color: var(--dark-blue)
}
.play-button .play-icon,
.play-link .play-icon {
  position: relative;
  left: .14rem
}
#drupal-off-canvas .field--name-field-accordion-item tr.draggable,
#drupal-off-canvas .field--name-field-content-switcher-item tr.draggable,
#drupal-off-canvas .field--name-field-schedule-item tr.draggable,
#drupal-off-canvas .field--name-field-statistic tr.draggable,
.display-settings .wwu-menu,
.search-wrapper .simple-search .search-area,
.swatch-wrapper,
.western-menu .wwu-menu {
  display: flex
}
.color-swatch {
  margin-top: var(--space--md);
  color: var(--white);
  font-size: var(--font-size--xl)
}
.my-western-icon,
input,
select,
td,
textarea,
th {
  padding: var(--space--xs)
}
.color-swatch h3,
h1+h2,
h2+h3,
h3+h4,
h4+h5,
h5+h6 {
  margin-top: 0
}
.color-swatch.light-green,
.color-swatch.light-green h3,
.color-swatch.white,
.color-swatch.white h3,
.color-swatch.yellow,
.color-swatch.yellow h3,
.cta.light-blue:active:visited,
.cta.light-blue:focus:visited,
.cta.light-blue:hover:visited,
.cta.light-blue:visited,
.cta.outline.light-blue:active:visited,
.cta.outline.light-blue:focus:visited,
.cta.outline.light-blue:hover:visited,
.user-login-form .light-blue.cas-login-link:active:visited,
.user-login-form .light-blue.cas-login-link:focus:visited,
.user-login-form .light-blue.cas-login-link:hover:visited,
.user-login-form .light-blue.cas-login-link:visited,
.user-login-form .outline.light-blue.cas-login-link:active:visited,
.user-login-form .outline.light-blue.cas-login-link:focus:visited,
.user-login-form .outline.light-blue.cas-login-link:hover:visited,
a.button.light-blue:active:visited,
a.button.light-blue:focus:visited,
a.button.light-blue:hover:visited,
a.button.light-blue:visited,
a.button.outline.light-blue:active:visited,
a.button.outline.light-blue:focus:visited,
a.button.outline.light-blue:hover:visited {
  color: var(--black)
}
.color-swatch.dark-blue.tint-80 {
  color: var(--black);
  background-color: var(--dark-blue--lighter--80)
}
.color-swatch.dark-blue.tint-60 {
  color: var(--black);
  background-color: var(--dark-blue--lighter--60)
}
.color-swatch.dark-blue.tint-40 {
  color: var(--black);
  background-color: var(--dark-blue--lighter--40)
}
.color-swatch.dark-blue.tint-20 {
  background-color: var(--dark-blue--lighter--20)
}
.color-swatch.dark-blue.shade-80 {
  background-color: var(--dark-blue--darker--80)
}
.color-swatch.dark-blue.shade-60 {
  background-color: var(--dark-blue--darker--60)
}
.color-swatch.dark-blue.shade-40 {
  background-color: var(--dark-blue--darker--40)
}
.color-swatch.dark-blue.shade-20 {
  background-color: var(--dark-blue--darker--20)
}
.color-swatch.blue,
.dark-mode .page-content a.icon-with-text.blue-bg:active,
.dark-mode .page-content a.icon-with-text.blue-bg:focus,
.dark-mode .page-content a.icon-with-text.blue-bg:hover,
.dark-mode .page-content a.icon-with-text.dark-blue-bg:active,
.dark-mode .page-content a.icon-with-text.dark-blue-bg:focus,
.dark-mode .page-content a.icon-with-text.dark-blue-bg:hover,
.dark-mode .sg-pattern-example a.icon-with-text.blue-bg:active,
.dark-mode .sg-pattern-example a.icon-with-text.blue-bg:focus,
.dark-mode .sg-pattern-example a.icon-with-text.blue-bg:hover,
.dark-mode .sg-pattern-example a.icon-with-text.dark-blue-bg:active,
.dark-mode .sg-pattern-example a.icon-with-text.dark-blue-bg:focus,
.dark-mode .sg-pattern-example a.icon-with-text.dark-blue-bg:hover,
.dark-mode table.light-blue tr:nth-of-type(odd),
.webform-progress-tracker .progress-step.is-active .progress-marker {
  background-color: var(--blue)
}
.color-swatch.blue.tint-80 {
  color: var(--black);
  background-color: var(--blue--lighter--80)
}
.color-swatch.blue.tint-60 {
  color: var(--black);
  background-color: var(--blue--lighter--60)
}
.color-swatch.blue.tint-40 {
  color: var(--black);
  background-color: var(--blue--lighter--40)
}
.color-swatch.blue.tint-20 {
  color: var(--black);
  background-color: var(--blue--lighter--20)
}
.color-swatch.blue.shade-80 {
  background-color: var(--blue--darker--80)
}
.color-swatch.blue.shade-60,
.dark-mode table.light-blue th[colspan],
.dark-mode table.light-blue th[rowspan] {
  background-color: var(--blue--darker--60)
}
.color-swatch.blue.shade-20,
.dark-mode table.light-blue tr:nth-of-type(even),
.webform-progress-tracker .progress-step .progress-marker:focus,
.webform-progress-tracker .progress-step .progress-marker:hover {
  background-color: var(--blue--darker--20)
}
.color-swatch.dark-green {
  background-color: var(--dark-green)
}
.color-swatch.dark-green.tint-80 {
  color: var(--black);
  background-color: var(--dark-green--lighter--80)
}
.color-swatch.dark-green.tint-60 {
  color: var(--black);
  background-color: var(--dark-green--lighter--60)
}
.color-swatch.dark-green.tint-40 {
  color: var(--black);
  background-color: var(--dark-green--lighter--40)
}
.color-swatch.dark-green.tint-20 {
  color: var(--black);
  background-color: var(--dark-green--lighter--20)
}
.color-swatch.dark-green.shade-80 {
  background-color: var(--dark-green--darker--80)
}
.color-swatch.dark-green.shade-60 {
  background-color: var(--dark-green--darker--60)
}
.color-swatch.dark-green.shade-40 {
  background-color: var(--dark-green--darker--40)
}
.color-swatch.dark-green.shade-20 {
  background-color: var(--dark-green--darker--20)
}
.color-swatch.green {
  background-color: var(--green)
}
.color-swatch.green.tint-80 {
  color: var(--black);
  background-color: var(--green--lighter--80)
}
.color-swatch.green.tint-60 {
  color: var(--black);
  background-color: var(--green--lighter--60)
}
.color-swatch.green.tint-40 {
  color: var(--black);
  background-color: var(--green--lighter--40)
}
.color-swatch.green.tint-20 {
  color: var(--black);
  background-color: var(--green--lighter--20)
}
.color-swatch.green.shade-80 {
  background-color: var(--green--darker--80)
}
.color-swatch.green.shade-60 {
  background-color: var(--green--darker--60)
}
.color-swatch.green.shade-40 {
  background-color: var(--green--darker--40)
}
.color-swatch.green.shade-20 {
  background-color: var(--green--darker--20)
}
.color-swatch.light-green {
  background-color: var(--light-green)
}
.color-swatch.light-green.tint-80 {
  background-color: var(--light-green--lighter--80)
}
.color-swatch.light-green.tint-60 {
  background-color: var(--light-green--lighter--60)
}
.color-swatch.light-green.tint-40 {
  background-color: var(--light-green--lighter--40)
}
.color-swatch.light-green.tint-20 {
  background-color: var(--light-green--lighter--20)
}
.color-swatch.light-green.shade-80 {
  color: var(--white);
  background-color: var(--light-green--darker--80)
}
.color-swatch.light-green.shade-60 {
  color: var(--white);
  background-color: var(--light-green--darker--60)
}
.color-swatch.light-green.shade-40 {
  color: var(--white);
  background-color: var(--light-green--darker--40)
}
.color-swatch.light-green.shade-20 {
  background-color: var(--light-green--darker--20)
}
.color-swatch.black {
  background-color: var(--black)
}
.color-swatch.gray {
  background-color: var(--gray)
}
.color-swatch.gray.tint-80 {
  color: var(--black);
  background-color: var(--gray--lighter--80)
}
.color-swatch.gray.tint-60 {
  color: var(--black);
  background-color: var(--gray--lighter--60)
}
.color-swatch.gray.tint-40 {
  color: var(--black);
  background-color: var(--gray--lighter--40)
}
.color-swatch.gray.tint-20 {
  color: var(--black);
  background-color: var(--gray--lighter--20)
}
.color-swatch.gray.shade-80 {
  background-color: var(--gray--darker--80)
}
.color-swatch.gray.shade-60 {
  background-color: var(--gray--darker--60)
}
.color-swatch.gray.shade-40 {
  background-color: var(--gray--darker--40)
}
.color-swatch.gray.shade-20 {
  background-color: var(--gray--darker--20)
}
.color-swatch.white {
  border: solid var(--border-width--md) var(--gray--lighter--90);
  background-color: var(--white)
}
.color-swatch.red {
  background-color: var(--red)
}
.color-swatch.yellow {
  background-color: var(--yellow)
}
figcaption {
  margin-bottom: var(--space--xl)
}
dl dd,
figure {
  margin: 0
}
form .webform-section,
form fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  background-color: transparent
}
form .webform-section-title {
  display: inline-block;
  margin: 0;
  padding: 0 var(--space--lg);
  transform: translatey(-1.2em);
  color: var(--dark-blue);
  background-color: var(--white);
  font-size: var(--font-size--4xl)
}
.accordion-set,
.display-settings .display-settings-menu .menu-container fieldset input[type=radio]+label:not(:last-of-type),
.display-settings .display-settings-menu .menu-container fieldset input[type=radio]:not(:last-of-type),
.form-managed-file .form-file,
form .description,
form .form-item,
input,
label,
legend,
select,
textarea {
  margin-bottom: var(--space--md)
}
form .webform-section-title + .webform-section-wrapper {
  margin-top: -1.2em
}
form .webform-section-title + .webform-section-wrapper fieldset {
  margin-left: var(--space--lg)
}
form .webform-section,
form > fieldset {
  margin-top: var(--space--lg);
  padding: var(--space--lg);
  border: solid var(--border-width--lg) var(--gray--lighter--80)
}
label,
legend {
  display: block;
  padding: 0
}
label .form-required:after,
label.form-required:after,
label.required:after,
legend .form-required:after,
legend.form-required:after,
legend.required:after {
  content: " *";
  color: var(--blue);
  font-weight: var(--font-weight--regular)
}
input,
select,
textarea {
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  color: var(--black);
  border: solid var(--border-width--md) var(--gray--lighter--80);
  border-radius: var(--border-radius-round);
  background-color: var(--gray--lighter--90);
  box-shadow: none;
  font-size: var(--font-size--md)
}
input:focus,
select:focus,
textarea:focus {
  outline: 0;
  border-color: var(--dark-blue--lighter--60);
  box-shadow: var(--shadow--soft)
}
input:disabled,
select:disabled,
textarea:disabled {
  cursor: not-allowed;
  color: var(--gray);
  border-color: var(--gray);
  background-color: var(--gray--lighter--60)
}
.responsive-table table,
input[type=submit] {
  width: auto
}
::placeholder {
  opacity: 1;
  color: var(--gray)
}
:-ms-input-placeholder {
  color: var(--gray)
}
::-ms-input-placeholder {
  color: var(--gray)
}
.form-managed-file .form-file {
  display: inline-block;
  margin-right: var(--space--md)
}
.webform-grid input[type=radio] {
  position: relative;
  width: inherit;
  height: inherit;
  margin: auto;
  opacity: 1
}
.webform-grid .checkbox label {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  clip: inherit;
  height: 100%;
  opacity: 0
}
form .description {
  color: var(--gray);
  font-size: var(--font-size--sm)
}
.webform-progress-tracker .progress-step.is-complete .progress-title[role=link] {
  text-decoration: underline;
  color: var(--darker--20)
}
.webform-progress-tracker .progress-step.is-complete .progress-title:after {
  --checkmark-size: 3.75rem;
  position: relative;
  top: calc(-1 * var(--space--md));
  left: var(--space--2xl);
  display: block;
  width: calc(var(--checkmark-size) * 2);
  height: var(--checkmark-size);
  content: "";
  transform: scale(.5);
  background-image: url(../images/forms/green-check.png);
  background-repeat: no-repeat
}
.webform-progress-tracker .progress-step.is-active .progress-marker:active,
.webform-progress-tracker .progress-step.is-active .progress-marker:hover,
.webform-progress-tracker .progress-step.is-active:hover .progress-marker {
  color: var(--light-green--lighter--40);
  background: var(--blue--darker--20)
}
.material-icons {
  -moz-font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  white-space: nowrap;
  letter-spacing: normal;
  text-transform: none;
  word-wrap: normal;
  direction: ltr;
  font-family: "Material Icons";
  font-size: var(--icon-size--md);
  font-weight: 400;
  font-style: normal;
  line-height: 1
}
.block--testimonial .description,
.italic,
.tagline {
  font-style: italic
}
.icon-with-text {
  display: inline-grid;
  align-content: center;
  justify-content: center;
  width: var(--toggle-size--lg);
  height: var(--toggle-size--lg);
  text-decoration: none;
  font-family: var(--font--condensed);
  font-size: var(--font-size--sm);
  font-weight: var(--font-weight--light);
  font-display: fallback
}
.icon-with-text .icon-text {
  display: block;
  margin-top: var(--space--xs)
}
.icon-with-text.small,
.social-icon.medium {
  width: var(--toggle-size--md);
  height: var(--toggle-size--md)
}
.icon-with-text.small .material-icons {
  font-size: var(--icon-size--sm)
}
.icon-with-text.medium {
  width: var(--toggle-size--xl);
  height: var(--toggle-size--xl)
}
.icon-with-text.medium .material-icons {
  font-size: var(--icon-size--md)
}
.icon-with-text.large,
.icon-with-text.large .material-icons:last-of-type,
h2+.tagline,
h2~div .tagline {
  font-size: var(--font-size--2xl)
}
.icon-with-text.large {
  width: var(--toggle-size--2xl);
  height: var(--toggle-size--2xl)
}
.icon-with-text.large .material-icons {
  font-size: var(--icon-size--lg)
}
.dark-mode .page-content a.icon-with-text:focus,
.dark-mode .sg-pattern-example a.icon-with-text:focus {
  outline-color: var(--white)
}
.dark-mode .page-content a.icon-with-text.white-bg,
.dark-mode .sg-pattern-example a.icon-with-text.white-bg {
  color: var--blue--darker--20;
  background-color: var(--white)
}
.dark-mode .page-content a.icon-with-text.white-bg:active,
.dark-mode .page-content a.icon-with-text.white-bg:focus,
.dark-mode .page-content a.icon-with-text.white-bg:hover,
.dark-mode .sg-pattern-example a.icon-with-text.white-bg:active,
.dark-mode .sg-pattern-example a.icon-with-text.white-bg:focus,
.dark-mode .sg-pattern-example a.icon-with-text.white-bg:hover {
  color: var(--white);
  background-color: var--blue--darker--20
}
.font--dyslexia-friendly .icon-with-text {
  font-family: var(--font--dyslexia-friendly)
}
.font--hyperlegible .icon-with-text {
  font-family: var(--font--hyperlegible)
}
.my-western-icon {
  display: block;
  color: var(--dark-blue);
  background-size: 100%
}
.my-western-icon svg {
  fill: var(--dark-blue);
  display: block;
  width: var(--toggle-size--md);
  margin: auto;
  margin-bottom: var(--space--xs)
}
.dark-mode .my-western-icon svg {
  fill: var(--blue--lighter--40)
}
.dark-mode .my-western-icon:active svg,
.dark-mode .my-western-icon:focus svg,
.dark-mode .my-western-icon:hover svg {
  fill: var(--dark-blue--darker--60)
}
#block-system-main-menu .ultimenu--horizontal .play-button svg,
#block-system-main-menu .ultimenu--horizontal .social-icon svg,
#block-system-main-menu>.menu .play-button svg,
#block-system-main-menu>.menu .social-icon svg,
.alert.weather svg,
.block--announcement .material-icons .play-button svg,
.block--announcement .material-icons .social-icon svg,
.block--card.color-block-title .title .play-button svg,
.block--card.color-block-title .title .social-icon svg,
.block--card.color-block-title.dark-blue .title .play-button svg,
.block--card.color-block-title.dark-blue .title .social-icon svg,
.block--card.event.alt .location .play-button svg,
.block--card.event.alt .location .social-icon svg,
.block--card.event.alt .title .play-button svg,
.block--card.event.alt .title .social-icon svg,
.block--card.information.split-style .title .play-button svg,
.block--card.information.split-style .title .social-icon svg,
.block--card.simple .title .play-button svg,
.block--card.simple .title .social-icon svg,
.card.color-block-title .title .play-button svg,
.card.color-block-title .title .social-icon svg,
.card.color-block-title.dark-blue .title .play-button svg,
.card.color-block-title.dark-blue .title .social-icon svg,
.card.event.alt .location .play-button svg,
.card.event.alt .location .social-icon svg,
.card.event.alt .title .play-button svg,
.card.event.alt .title .social-icon svg,
.card.information.split-style .title .play-button svg,
.card.information.split-style .title .social-icon svg,
.card.simple .title .play-button svg,
.card.simple .title .social-icon svg,
.dark-mode .block--announcement .body .play-button svg,
.dark-mode .block--announcement .body .social-icon svg,
.dark-mode .block--announcement .material-icons .play-button svg,
.dark-mode .block--announcement .material-icons .social-icon svg,
.dark-mode .block--card.simple .play-button svg,
.dark-mode .block--card.simple .social-icon svg,
.dark-mode .card.simple .play-button svg,
.dark-mode .card.simple .social-icon svg,
.headline.box-headline .play-button svg,
.headline.box-headline .social-icon svg,
.headline.left-aligned-bar .play-button svg,
.headline.left-aligned-bar .social-icon svg,
.headline.right-aligned-bar .play-button svg,
.headline.right-aligned-bar .social-icon svg,
.main-navigation .ultimenu--horizontal .play-button svg,
.main-navigation .ultimenu--horizontal .social-icon svg,
.main-navigation>.menu .play-button svg,
.main-navigation>.menu .social-icon svg {
  fill: var(--dark-blue)
}
.social-icon {
  display: block;
  width: var(--toggle-size--sm);
  height: var(--toggle-size--sm);
  transition: var(--ease-standard) var(--transition-speed--fast) background-color;
  color: var(--white);
  background: var(--blue)
}
.social-icon svg {
  fill: var(--white);
  width: 100%;
  padding: .5em
}
.social-icon.large {
  width: var(--toggle-size--lg);
  height: var(--toggle-size--lg)
}
img,
picture {
  max-width: 100%;
  height: auto;
  margin: 0
}
picture img,
picture source {
  width: 100%;
  height: auto
}
.background-image,
.background-image > div {
  object-fit: cover;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%
}
.background-image > div img,
.background-image img {
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%
}
.image--stylized {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%
}
.image--stylized * {
  width: 100%;
  height: 100%;
  border-radius: 50%
}
.image--stylized img {
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%
}
a {
  padding: .1563rem 0;
  transition: background-size var(--transition-speed--fast) cubic-bezier(.33,.66,.66,1),text-decoration var(--transition-speed--fast) ease-out;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: var(--border-width--md);
  text-underline-offset: .3125rem;
  background-image: none;
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 0
}
.job-title,
.pronouns,
.taxonomy-term,
caption,
h1,
h2 {
  font-weight: var(--font-weight--bold)
}
a:active,
a:focus,
a:hover {
  transition: .25s ease-out;
  color: var(--dark-blue);
  background-image: var(--gradient--vertical--light-blue);
  background-size: 100% 100%
}
a:focus {
  outline-offset: var(--border-width--md)
}
a[target="_blank"] .material-icons,
a[target=blank] .material-icons {
  position: relative;
  top: var(--space--md)/3;
  left: .125rem;
  font-size: inherit
}
a[href$=".flv"]:after,
a[href$=".mov"]:after,
a[href$=".mp4"]:after,
a[href$=".mpeg"]:after,
a[href$=".mpg"]:after {
  content: " (video)"
}
a[href$=".mp3"]:after {
  content: " (audio)"
}
a[href$=".ai"]:after {
  content: " (Illustrator)"
}
a[href$=".css"]:after,
a[href$=".dwt"]:after,
a[href$=".xml"]:after {
  content: " (web file)"
}
a[href$=".psd"]:after {
  content: " (Photoshop)"
}
a[href$=".eps"]:after {
  content: " (PostScript)"
}
a[href$=".id"]:after {
  content: " (InDesign)"
}
a[href$=".wmv"]:after {
  content: " (WMV)"
}
a[href$=".swf"]:after {
  content: " (Flash)"
}
a[href$=".doc"]:after,
a[href$=".docm"]:after,
a[href$=".docx"]:after,
a[href$=".dot"]:after,
a[href$=".dotm"]:after,
a[href$=".dotx"]:after,
a[href$=".odt"]:after {
  content: " (Word)"
}
a[href$=".odp"]:after,
a[href$=".potm"]:after,
a[href$=".potx"]:after,
a[href$=".ppam"]:after,
a[href$=".ppsx"]:after,
a[href$=".ppt"]:after,
a[href$=".pptm"]:after,
a[href$=".pptx"]:after,
a[href$=".sldm"]:after,
a[href$=".sldx"]:after {
  content: " (PowerPoint)"
}
a[href$=".ods"]:after,
a[href$=".xlam"]:after,
a[href$=".xls"]:after,
a[href$=".xlsb"]:after,
a[href$=".xlsx"]:after,
a[href$=".xltm"]:after,
a[href$=".xltx"]:after {
  content: " (Excel)"
}
a[href$=".pdf"]:after {
  content: " (PDF)"
}
.cta,
.user-login-form .cas-login-link,
a.button {
  display: inline-block;
  box-sizing: border-box;
  margin-bottom: var(--space--md);
  padding: var(--space--sm) var(--space--md);
  user-select: none;
  transition: background-color var(--transition-speed--fast),color var(--transition-speed--fast),border-color var(--transition-speed--fast),box-shadow var(--transition-speed--fast);
  text-align: center;
  text-decoration: none;
  color: var(--white);
  border-radius: var(--border-radius--roundest);
  outline-offset: calc(-1 * var(--border-width--lg));
  background: var(--blue);
  box-shadow: var(--shadow--soft);
  font-size: var(--font-size--md);
  line-height: 1
}
.font-size--smaller td,
.font-size--smaller th {
  padding: var(--space--2xs)
}
.cta .material-icons,
.user-login-form .cas-login-link .material-icons,
a.button .material-icons {
  position: relative;
  top: 2px;
  font-size: var(--font-size--md)
}
.cta.small .material-icons,
.font-size--smaller,
.font-size--smaller td,
.user-login-form .small.cas-login-link .material-icons,
a.button.small .material-icons,
caption,
td,
th {
  font-size: var(--font-size--sm)
}
.cta:active,
.cta:focus,
.cta:hover,
.user-login-form .cas-login-link:active,
.user-login-form .cas-login-link:focus,
.user-login-form .cas-login-link:hover,
a.button:active,
a.button:focus,
a.button:hover {
  color: var(--white);
  background: var(--dark-blue--darker--40);
  box-shadow: var(--shadow--soft--hover)
}
.cta.square,
.user-login-form .cas-login-link,
.user-login-form a.button.cas-login-link,
a.button.square {
  border-radius: var(--border-radius--round)
}
.cta.small,
.user-login-form .small.cas-login-link,
a.button.small {
  padding: var(--space--xs) var(--space--sm);
  font-size: var(--font-size--sm)
}
.cta.large,
.user-login-form .large.cas-login-link,
a.button.large {
  padding: var(--space--md) var(--space--lg);
  font-size: var(--font-size--2xl)
}
.cta.light-blue,
.user-login-form .light-blue.cas-login-link,
a.button.light-blue {
  color: var(--black);
  background: var(--blue--lighter--40)
}
.cta.light-blue:active,
.cta.light-blue:focus,
.cta.light-blue:hover,
.user-login-form .light-blue.cas-login-link:active,
.user-login-form .light-blue.cas-login-link:focus,
.user-login-form .light-blue.cas-login-link:hover,
a.button.light-blue:active,
a.button.light-blue:focus,
a.button.light-blue:hover {
  background: var(--blue--lighter--60);
  box-shadow: var(--shadow--soft--hover)
}
.cta.dark-blue:active,
.cta.dark-blue:focus,
.cta.dark-blue:hover,
.user-login-form .dark-blue.cas-login-link:active,
.user-login-form .dark-blue.cas-login-link:focus,
.user-login-form .dark-blue.cas-login-link:hover,
a.button.dark-blue:active,
a.button.dark-blue:focus,
a.button.dark-blue:hover {
  background: var(--dark-blue--darker--60);
  box-shadow: var(--shadow--soft--hover)
}
.cta.light-green,
.pane-islandora-solr-sort .item-list li a.active,
.user-login-form .light-green.cas-login-link,
a.button.light-green {
  color: var(--dark-blue);
  background: var(--light-green)
}
.cta.light-green:active,
.cta.light-green:focus,
.cta.light-green:hover,
.user-login-form .light-green.cas-login-link:active,
.user-login-form .light-green.cas-login-link:focus,
.user-login-form .light-green.cas-login-link:hover,
a.button.light-green:active,
a.button.light-green:focus,
a.button.light-green:hover {
  background: var(--light-green--lighter--60);
  box-shadow: var(--shadow--soft--hover)
}
.cta.green,
.user-login-form .green.cas-login-link,
a.button.green {
  background: var(--green)
}
.cta.green:active,
.cta.green:focus,
.cta.green:hover,
.user-login-form .green.cas-login-link:active,
.user-login-form .green.cas-login-link:focus,
.user-login-form .green.cas-login-link:hover,
a.button.green:active,
a.button.green:focus,
a.button.green:hover {
  color: var(--white);
  background: var(--green--darker--40);
  box-shadow: var(--shadow--soft--hover)
}
.cta.dark-green,
.user-login-form .dark-green.cas-login-link,
a.button.dark-green {
  background: var(--dark-green)
}
.cta.dark-green:active,
.cta.dark-green:focus,
.cta.dark-green:hover,
.user-login-form .dark-green.cas-login-link:active,
.user-login-form .dark-green.cas-login-link:focus,
.user-login-form .dark-green.cas-login-link:hover,
a.button.dark-green:active,
a.button.dark-green:focus,
a.button.dark-green:hover {
  color: var(--white);
  background: var(--dark-green--darker--60);
  box-shadow: var(--shadow--soft--hover)
}
h5,
h6 {
  color: var(--blue)
}
.cta.white:active,
.cta.white:focus,
.cta.white:hover,
.user-login-form .white.cas-login-link:active,
.user-login-form .white.cas-login-link:focus,
.user-login-form .white.cas-login-link:hover,
a.button.white:active,
a.button.white:focus,
a.button.white:hover {
  background: var(--gray--lighter--60);
  box-shadow: var(--shadow--soft--hover)
}
.cta.outline,
.user-login-form .outline.cas-login-link,
a.button.outline {
  color: var(--blue);
  border-width: var(--border-width--md);
  border-style: solid;
  border-color: var(--blue);
  background: var(--white)
}
.cta.outline:active,
.cta.outline:focus,
.cta.outline:hover,
.user-login-form .outline.cas-login-link:active,
.user-login-form .outline.cas-login-link:focus,
.user-login-form .outline.cas-login-link:hover,
a.button.outline:active,
a.button.outline:focus,
a.button.outline:hover {
  color: var(--white);
  background: var(--dark-blue--darker--40)
}
.cta.outline.light-blue,
.user-login-form .outline.light-blue.cas-login-link,
a.button.outline.light-blue {
  color: var(--blue--lighter--40);
  border-color: var(--blue--lighter--40);
  background-color: transparent
}
.cta.outline.light-blue:active,
.cta.outline.light-blue:focus,
.cta.outline.light-blue:hover,
.user-login-form .outline.light-blue.cas-login-link:active,
.user-login-form .outline.light-blue.cas-login-link:focus,
.user-login-form .outline.light-blue.cas-login-link:hover,
a.button.outline.light-blue:active,
a.button.outline.light-blue:focus,
a.button.outline.light-blue:hover {
  color: var(--black);
  background: var(--blue--lighter--60)
}
.cta.outline.dark-blue,
.user-login-form .outline.dark-blue.cas-login-link,
a.button.outline.dark-blue {
  color: var(--dark-blue);
  border-color: var(--dark-blue)
}
.cta.outline.dark-blue:active,
.cta.outline.dark-blue:focus,
.cta.outline.dark-blue:hover,
.user-login-form .outline.dark-blue.cas-login-link:active,
.user-login-form .outline.dark-blue.cas-login-link:focus,
.user-login-form .outline.dark-blue.cas-login-link:hover,
a.button.outline.dark-blue:active,
a.button.outline.dark-blue:focus,
a.button.outline.dark-blue:hover {
  color: var(--white);
  background: var(--dark-blue--darker--60)
}
.cta.outline.light-green,
.user-login-form .outline.light-green.cas-login-link,
a.button.outline.light-green {
  color: var(--light-green);
  border-color: var(--light-green);
  background-color: transparent
}
.cta.outline.light-green:active,
.cta.outline.light-green:focus,
.cta.outline.light-green:hover,
.user-login-form .outline.light-green.cas-login-link:active,
.user-login-form .outline.light-green.cas-login-link:focus,
.user-login-form .outline.light-green.cas-login-link:hover,
a.button.outline.light-green:active,
a.button.outline.light-green:focus,
a.button.outline.light-green:hover {
  color: var(--dark-blue);
  background: var(--light-green--lighter--60)
}
.cta.outline.green,
.user-login-form .outline.green.cas-login-link,
a.button.outline.green {
  color: var(--green);
  border-color: var(--green)
}
.cta.outline.green:visited,
.user-login-form .outline.green.cas-login-link:visited,
a.button.outline.green:visited {
  color: var(--green)
}
.cta.outline.green:active,
.cta.outline.green:focus,
.cta.outline.green:hover,
.user-login-form .outline.green.cas-login-link:active,
.user-login-form .outline.green.cas-login-link:focus,
.user-login-form .outline.green.cas-login-link:hover,
a.button.outline.green:active,
a.button.outline.green:focus,
a.button.outline.green:hover {
  color: var(--white);
  background: var(--green--darker--40)
}
.cta.outline.dark-green,
.user-login-form .outline.dark-green.cas-login-link,
a.button.outline.dark-green {
  color: var(--dark-green);
  border-color: var(--dark-green)
}
.cta.outline.dark-green:visited,
.user-login-form .outline.dark-green.cas-login-link:visited,
a.button.outline.dark-green:visited {
  color: var(--dark-green)
}
.cta.outline.dark-green:active,
.cta.outline.dark-green:focus,
.cta.outline.dark-green:hover,
.user-login-form .outline.dark-green.cas-login-link:active,
.user-login-form .outline.dark-green.cas-login-link:focus,
.user-login-form .outline.dark-green.cas-login-link:hover,
a.button.outline.dark-green:active,
a.button.outline.dark-green:focus,
a.button.outline.dark-green:hover {
  color: var(--white);
  background: var(--dark-green--darker--60)
}
.cta.outline.white,
.user-login-form .outline.white.cas-login-link,
a.button.outline.white {
  color: var(--white);
  border-color: var(--white);
  background: 0 0
}
.cta.outline.white:active,
.cta.outline.white:focus,
.cta.outline.white:hover,
.user-login-form .outline.white.cas-login-link:active,
.user-login-form .outline.white.cas-login-link:focus,
.user-login-form .outline.white.cas-login-link:hover,
a.button.outline.white:active,
a.button.outline.white:focus,
a.button.outline.white:hover {
  color: var(--dark-blue);
  border-color: transparent;
  background: var(--gray--lighter--60)
}
ol,
ul {
  margin: 0 0 var(--space--md)
}
li {
  line-height: 1.8
}
#block-islandora-compound-object-compound-jail-display>div:not(.form-item) a:first-of-type,
.form .form-item,
.islandora-metadata-set fieldset,
.islandora-oralhistories-content .ui-tabs .ui-tabs-nav,
.spaced li,
.views-exposed-form .form-actions,
dl,
fieldset.islandora-metadata-set {
  margin-bottom: var(--space--xs)
}
dl dt {
  margin-top: var(--space--xs)
}
.menu li {
  margin-bottom: 0;
  border-left: solid var(--border-width--md) var(--blue--lighter--60);
  line-height: 1.3
}
blockquote,
hr {
  margin: var(--space--md) 0
}
.menu li a {
  display: inline-block;
  width: 100%;
  margin: inherit;
  margin-bottom: 0;
  padding: var(--space--xs) var(--space--xl) var(--space--xs) var(--space--md);
  transition: var(--transition-speed--fast) var(--ease--standard) all;
  text-decoration: none;
  background-size: 100% 100%;
  font-weight: var(--font-weight--regular)
}
.logo {
  width: var(--logo-size);
  height: var(--logo-size)
}
.logo.horizontal {
  width: var(--logo--horizontal--width);
  height: var(--logo--horizontal--height)
}
.logo svg {
  width: 100%;
  height: 100%
}
#drupal-off-canvas {
  font-size: .5em
}
#drupal-off-canvas ul {
  padding: var(--space--xs) 0
}
#drupal-off-canvas a {
  line-height: 1.5
}
#drupal-off-canvas input[type=checkbox] {
  position: relative;
  display: inline;
  width: initial;
  height: initial;
  opacity: 1
}
#drupal-off-canvas input[type=checkbox] + label {
  margin: 0;
  padding: 0
}
#drupal-off-canvas input[type=checkbox] + label:before {
  width: 0;
  height: 0;
  border: none;
  background: 0 0
}
.black-gradient-overlay:after,
.black-overlay:after,
.blue-overlay:after,
.dark-blue-overlay:after,
.gray-overlay:after,
.white-gradient-overlay:after {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: .7
}
.blue-overlay:after {
  background: var(--blue)
}
.black-overlay:after {
  background: var(--black)
}
.gray-overlay,
.white-gradient-overlay {
  background: var(--gray--lighter--60);
  color: var(--black)
}
.intro,
.tagline {
  color: var(--dark-blue)
}
.gray-overlay .background-image {
  filter: brightness(-.5)
}
.white-gradient-overlay:after {
  opacity: 1;
  background: linear-gradient(to right,#fff,rgba(255,255,255,.2))
}
.black-gradient-overlay:after {
  opacity: 1;
  background: linear-gradient(to right,#000,rgba(0,0,0,.3))
}
html * {
  box-sizing: border-box
}
iframe {
  border: 0
}
[class$="-bg"] table,
table {
  --table-blue: #cce4f4;
  --table-blue--darker--10: #b1cfe6;
  --table-blue--darker--15: #99bbd9;
  --table-blue--darker--5: #e6f2fa;
  --table-gray: #f5f6f7;
  --table-gray--darker--10: #dcddde;
  --table-gray--darker--15: #d0d1d2;
  --table-gray--darker--20: #c4c5c6;
  --table-gray--darker--25: #b8b8b9;
  --table-gray--darker--5: #e9e9ea;
  --table-gray--darker--50: #7a7b7b;
  --table-gray--darker--55: #6e6f6f;
  --table-gray--darker--60: #626263;
  --table-gray--darker--65: #565656;
  --table-gray--darker--70: #49494a;
  --table-gray--darker--75: #3d3e3e;
  background: var(--gray--lighter--60);
  grid-template-columns: auto;
  width: 100%;
  margin: var(--space--md) 0;
  table-layout: auto;
  word-wrap: break-word;
  color: var(--black);
  border-collapse: collapse
}
.lightest-gray tr:nth-of-type(even),
[class$="-bg"] table tr:nth-of-type(odd),
table tr:nth-of-type(odd) {
  background-color: var(--table-gray)
}
.lightest-gray th,
.lightest-gray th:after,
[class$="-bg"] table tr:nth-of-type(even),
table tr:nth-of-type(even) {
  background-color: var(--table-gray--darker--5)
}
[class$="-bg"] table td,
table td {
  border-left-color: var(--table-gray)
}
th,
tr {
  border-top: none;
  border-right: none;
  border-bottom: none;
  border-left: none
}
.lightest-gray th[colspan],
.lightest-gray th[rowspan],
[class$="-bg"] table th,
[class$="-bg"] table th:after,
table th,
table th:after {
  background-color: var(--table-gray--darker--10)
}
[class$="-bg"] table th[colspan],
[class$="-bg"] table th[rowspan],
table th[colspan],
table th[rowspan] {
  background-color: var(--table-gray--darker--15)
}
[class$="-bg"] table.fixed,
table.fixed {
  table-layout: auto
}
[class$="-bg"] table a,
table a {
  line-height: 1.2rem
}
.fixed table {
  table-layout: fixed
}
td,
th,
tr {
  vertical-align: middle
}
tr.even,
tr.odd {
  border-bottom: none
}
th {
  text-align: left
}
th[colspan],
th[rowspan] {
  position: relative
}
th[colspan]:after,
th[rowspan]:after {
  position: absolute;
  z-index: 1;
  height: 100%;
  content: ""
}
th[colspan]:after {
  top: 0;
  right: -var(--border-width--md) -.0625rem;
  width: var(--border-width--md)
}
th[rowspan]:after {
  bottom: 0;
  left: 0;
  width: 100%;
  height: var(--border-width--md)
}
td {
  border-width: var(--border-width--md);
  border-top: none;
  border-bottom: none;
  border-left: solid
}
.menu.horizontal li,
td:first-of-type {
  border-left: none
}
td:last-of-type {
  border-right: var(--border-width--md) solid var(--table-gray--lighter)
}
.responsive-table {
  overflow-x: scroll
}
.responsive-table caption,
.text-align-left {
  text-align: left
}
.light-blue tr:nth-of-type(odd) {
  background-color: var(--table-blue)
}
.light-blue tr:nth-of-type(even) {
  background-color: var(--table-blue--darker--5)
}
.light-blue td {
  border-left-color: var(--table-blue)
}
.light-blue th,
.light-blue th:after {
  background-color: var(--table-blue--darker--10)
}
.light-blue th[colspan],
.light-blue th[rowspan] {
  background-color: var(--table-blue--darker--15)
}
.lightest-gray tr:nth-of-type(odd) {
  background-color: var(--white)
}
.lightest-gray td {
  border-left-color: var(--white)
}
.align-top td,
.align-top th {
  vertical-align: top
}
.align-bottom td,
.align-bottom th {
  vertical-align: bottom
}
.font-size--smaller th {
  font-size: var(--font-size--md)
}
.dark-mode table.lightest-gray th,
.dark-mode table.lightest-gray th:after,
.dark-mode tr:nth-of-type(odd) {
  background-color: var(--table-gray--darker--60)
}
.dark-mode table.lightest-gray th[colspan],
.dark-mode table.lightest-gray th[rowspan],
.dark-mode tr:nth-of-type(even) {
  background-color: var(--table-gray--darker--65)
}
.dark-mode td {
  border-left-color: var(--table-gray--darker--60)
}
.dark-mode th,
.dark-mode th:after {
  background-color: var(--table-gray--darker--70)
}
.dark-mode th[colspan],
.dark-mode th[rowspan] {
  background-color: var(--table-gray--darker--75)
}
.dark-mode table.lightest-gray tr:nth-of-type(odd) {
  background-color: var(--table-gray--darker--50)
}
.dark-mode table.lightest-gray tr:nth-of-type(even) {
  background-color: var(--table-gray--darker--55)
}
.dark-mode table.lightest-gray td {
  border-left-color: var(--table-gray--darker--50)
}
.dark-mode table.light-blue td {
  border-left-color: var(--blue)
}
.dark-mode table.light-blue td:last-of-type {
  border-right: none
}
html {
  scroll-behavior: smooth;
  color: var(--black);
  font-family: var(--font--sans-serif);
  font-size: calc(1rem + .5vw);
  font-display: auto
}
blockquote {
  padding: var(--space--md);
  line-height: 1.5em
}
.paragraph--type--majors-pull-quote,
.pullquote {
  padding: var(--space--md);
  border-left: solid var(--border-width--lg) var(--blue--lighter--40)
}
.font-size--regular {
  font-size: var(--font-size--md)
}
.font-size--larger {
  font-size: var(--font-size--lg)
}
.font--sans-serif {
  font-family: var(--font--sans-serif),"Fira Sans"
}
.font--condensed {
  font-family: var(--font--condensed),"Fira Sans Extra Condensed"
}
.font--serif {
  font-family: var(--font--serif),"PT Serif"
}
.font--title {
  font-family: var(--font--title),Montserrat
}
.font--dyslexia-friendly {
  font-family: var(--font--dyslexia-friendly),"Open Dyslexic";
  font-feature-settings: unset
}
.font--hyperlegible {
  font-family: var(--font--hyperlegible),"Atkinson Hyperlegible"
}
.display-settings,
.ultimenu__region,
.western-menu {
  font-family: var(--font--condensed)
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: var(--space--xl) 0 var(--space--xs);
  font-display: fallback;
  line-height: 1.2em
}
h1 {
  position: relative;
  display: block;
  color: var(--blue--darker--80);
  font-family: var(--font--title);
  font-size: var(--font-size--5xl)
}
.headings--underlined h2:after,
.headings--underlined h3:after,
.headings--underlined h4:after,
.headings--underlined h5:after,
.headings--underlined h6:after,
h1:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 50%;
  max-width: 6em;
  content: "";
  border-width: .12em;
  border-style: solid
}
h2 {
  color: var(--blue--darker--60);
  font-size: var(--font-size--4xl)
}
.accordion-set .title,
h3 {
  font-weight: var(--font-weight--semibold)
}
h3 {
  color: var(--blue--darker--40);
  font-size: var(--font-size--3xl)
}
.block--card.event .date .month,
.card.event .date .month,
h4,
h5 {
  font-weight: var(--font-weight--regular)
}
h4 {
  font-size: var(--font-size--2xl)
}
h5 {
  font-size: var(--font-size--xl)
}
h6 {
  font-size: var(--font-size--lg)
}
.headings--serif h1,
.headings--serif h2,
.headings--serif h3,
.headings--serif h4,
.headings--serif h5,
.headings--serif h6,
.serif-headings h1,
.serif-headings h2,
.serif-headings h3,
.serif-headings h4,
.serif-headings h5,
.serif-headings h6 {
  font-family: var(--font--serif)
}
.headings--sans-serif h1,
.headings--sans-serif h2,
.headings--sans-serif h3,
.headings--sans-serif h4,
.headings--sans-serif h5,
.headings--sans-serif h6,
.sans-serif-headings h1,
.sans-serif-headings h2,
.sans-serif-headings h3,
.sans-serif-headings h4,
.sans-serif-headings h5,
.sans-serif-headings h6 {
  font-family: var(--font--sans-serif)
}
.big-bold-headings h1,
.big-bold-headings h2,
.big-bold-headings h3,
.big-bold-headings h4,
.big-bold-headings h5,
.big-bold-headings h6,
.headings--big-and-bold h1,
.headings--big-and-bold h2,
.headings--big-and-bold h3,
.headings--big-and-bold h4,
.headings--big-and-bold h5,
.headings--big-and-bold h6,
.headings--sans-serif--alt h2,
.headings--sans-serif--alt h3,
.headings--sans-serif--alt h4,
.headings--sans-serif--alt h5,
.headings--sans-serif--alt h6 {
  font-family: var(--font--title)
}
.headings--sans-serif--alt h1 {
  padding-bottom: 0;
  text-transform: uppercase
}
.headings--uppercase h1,
.headings--uppercase h2,
.headings--uppercase h3,
.headings--uppercase h4,
.headings--uppercase h5,
.headings--uppercase h6,
.page-islandora .western-header .wrap .site-name,
.uppercase {
  text-transform: uppercase
}
.headings--underlined h2,
.headings--underlined h3,
.headings--underlined h4,
.headings--underlined h5,
.headings--underlined h6 {
  position: relative;
  display: block;
  padding-bottom: var(--space--lg);
  font-family: var(--font--title)
}
.headings--underlined .text-align-center h1:after,
.headings--underlined .text-align-center h2:after,
.headings--underlined .text-align-center h3:after,
.headings--underlined .text-align-center h4:after,
.headings--underlined .text-align-center h5:after,
.headings--underlined .text-align-center h6:after,
.page-title:after,
.pane-page-title h1:after,
.text-align-center .headings--underlined h1:after,
.text-align-center .headings--underlined h2:after,
.text-align-center .headings--underlined h3:after,
.text-align-center .headings--underlined h4:after,
.text-align-center .headings--underlined h5:after,
.text-align-center .headings--underlined h6:after,
.text-align-center.headings--underlined h1:after,
.text-align-center.headings--underlined h2:after,
.text-align-center.headings--underlined h3:after,
.text-align-center.headings--underlined h4:after,
.text-align-center.headings--underlined h5:after,
.text-align-center.headings--underlined h6:after {
  left: 50%;
  transform: translatex(-50%)
}
.headings--underlined .text-align-right h1:after,
.headings--underlined .text-align-right h2:after,
.headings--underlined .text-align-right h3:after,
.headings--underlined .text-align-right h4:after,
.headings--underlined .text-align-right h5:after,
.headings--underlined .text-align-right h6:after,
.text-align-right .headings--underlined h1:after,
.text-align-right .headings--underlined h2:after,
.text-align-right .headings--underlined h3:after,
.text-align-right .headings--underlined h4:after,
.text-align-right .headings--underlined h5:after,
.text-align-right .headings--underlined h6:after,
.text-align-right.headings--underlined h1:after,
.text-align-right.headings--underlined h2:after,
.text-align-right.headings--underlined h3:after,
.text-align-right.headings--underlined h4:after,
.text-align-right.headings--underlined h5:after,
.text-align-right.headings--underlined h6:after {
  right: 0;
  left: initial
}
.big-bold-headings h1,
.headings--big-and-bold h1 {
  padding-bottom: 0;
  text-transform: uppercase;
  border-bottom: none;
  font-size: var(--font-size--9xl);
  font-weight: var(--font-weight--black)
}
.big-bold-headings h2,
.headings--big-and-bold h2 {
  text-transform: uppercase;
  border-bottom: none;
  font-size: var(--font-size--8xl);
  font-weight: var(--font-weight--black)
}
.big-bold-headings h3,
.headings--big-and-bold h3 {
  display: inline-block;
  font-size: var(--font-size--7xl)
}
.big-bold-headings h4,
.headings--big-and-bold h4 {
  font-size: var(--font-size--6xl)
}
.big-bold-headings h5,
.headings--big-and-bold h5 {
  font-size: var(--font-size--5xl)
}
.font-size--smaller h1,
h1+.tagline,
h1~div .tagline {
  font-size: var(--font-size--3xl)
}
.font-size--smaller h2 {
  padding-bottom: none;
  border-bottom: none;
  font-size: var(--font-size--2xl)
}
.font-size--smaller h3,
h3+.tagline,
h3~div .tagline {
  font-size: var(--font-size--xl)
}
.font-size--smaller h4,
h4+.tagline,
h4~div .tagline {
  font-size: var(--font-size--lg)
}
.accordion-set .title,
.degree-card .department-link,
.font-size--smaller h5,
.smaller .image-link a,
h5+.tagline,
h5~div .tagline {
  font-size: var(--font-size--md)
}
.font-size--smaller h6 {
  font-size: var(--font-size--sm)
}
.font--dyslexia-friendly #block-system-main-menu,
.font--dyslexia-friendly .display-settings,
.font--dyslexia-friendly .main-navigation,
.font--dyslexia-friendly [class^=headings--] h1,
.font--dyslexia-friendly [class^=headings--] h2,
.font--dyslexia-friendly [class^=headings--] h3,
.font--dyslexia-friendly [class^=headings--] h4,
.font--dyslexia-friendly [class^=headings--] h5,
.font--dyslexia-friendly [class^=headings--] h6,
.font--dyslexia-friendly h1,
.font--dyslexia-friendly h2,
.font--dyslexia-friendly h3,
.font--dyslexia-friendly h4,
.font--dyslexia-friendly h5,
.font--dyslexia-friendly h6 {
  font-family: var(--font--dyslexia-friendly)
}
.font--hyperlegible #block-system-main-menu,
.font--hyperlegible .display-settings,
.font--hyperlegible .main-navigation,
.font--hyperlegible [class^=headings] h1,
.font--hyperlegible [class^=headings] h2,
.font--hyperlegible [class^=headings] h3,
.font--hyperlegible [class^=headings] h4,
.font--hyperlegible [class^=headings] h5,
.font--hyperlegible [class^=headings] h6,
.font--hyperlegible h1,
.font--hyperlegible h2,
.font--hyperlegible h3,
.font--hyperlegible h4,
.font--hyperlegible h5,
.font--hyperlegible h6 {
  font-family: var(--font--hyperlegible)
}
hr {
  border: 0;
  border-bottom: var(--border-width--md) solid var(--gray--lighter--80)
}
p {
  margin: 0 0 var(--space--md);
  line-height: 1.7em
}
.intro {
  font-size: var(--font-size-lg)
}
.tagline {
  display: block;
  margin-bottom: var(--space--md);
  margin-left: var(--space--md);
  font-display: swap
}
.job-title,
.pronouns,
.taxonomy-term {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue--darker--20);
  display: inline-block;
  margin: 0 var(--space--2xs) var(--space--sm) 0;
  padding: var(--space--xs) var(--space--sm);
  transition: background-size var(--transition-speed--fast) cubic-bezier(.33,.66,.66,1);
  font-size: var(--font-size--sm);
  font-display: fallback
}
.event-list .event .title a,
.job-title:active,
.job-title:focus,
.job-title:hover,
.pronouns:active,
.pronouns:focus,
.pronouns:hover,
.taxonomy-term:active,
.taxonomy-term:focus,
.taxonomy-term:hover {
  text-decoration: none
}
.accordion-set:not([class$="-bg"]) .item {
  border-top: var(--dark-blue--darker--20) solid var(--border-width--lg);
  border-right: var(--dark-blue--darker--20) solid var(--border-width--lg);
  border-left: var(--dark-blue--darker--20) solid var(--border-width--lg)
}
.accordion-set:not([class$="-bg"]) .item:last-of-type {
  border-bottom: var(--dark-blue--darker--20) solid var(--border-width--lg)
}
.accordion-set .title {
  margin: 0;
  padding-bottom: 0
}
.accordion-set .title .expand {
  display: flex;
  align-items: center;
  width: 100%;
  margin-bottom: 0;
  padding: var(--space--sm);
  text-align: left;
  color: inherit;
  border: none;
  border-radius: 0;
  background: 0 0
}
.accordion-set .title .expand:active,
input[title="Add field"]:active,
input[title="Remove field"]:active {
  transform: none
}
.accordion-set .title .expand:focus {
  color: var(--white);
  outline-color: var(--white);
  outline-offset: calc(-1 * var(--border-width--md));
  background-color: var(--blue)
}
.block--announcement .material-icons .play-button:active,
.block--announcement .material-icons .play-button:focus,
.block--announcement .material-icons .play-button:hover,
.block--announcement .material-icons .social-icon:active,
.block--announcement .material-icons .social-icon:focus,
.block--announcement .material-icons .social-icon:hover,
.dark-mode .block--announcement .body .play-button:active,
.dark-mode .block--announcement .body .play-button:focus,
.dark-mode .block--announcement .body .play-button:hover,
.dark-mode .block--announcement .body .social-icon:active,
.dark-mode .block--announcement .body .social-icon:focus,
.dark-mode .block--announcement .body .social-icon:hover,
.dark-mode .block--announcement .material-icons .play-button:active,
.dark-mode .block--announcement .material-icons .play-button:focus,
.dark-mode .block--announcement .material-icons .play-button:hover,
.dark-mode .block--announcement .material-icons .social-icon:active,
.dark-mode .block--announcement .material-icons .social-icon:focus,
.dark-mode .block--announcement .material-icons .social-icon:hover {
  background: var(--blue--lighter--60)
}
.accordion-set .title .expand:focus .material-icons {
  color: inherit
}
.accordion-set .title .expand .material-icons {
  margin-right: var(--space--sm);
  font-size: var(--icon-size--sm)
}
.accordion-set .title + .content {
  display: none;
  margin-top: var(--space--sm);
  padding: 0 var(--space--md) var(--space--md) var(--space--md);
  word-wrap: break-word
}
.dark-mode .accordion-set:not([class$="-bg"]) .item:last-of-type {
  border-bottom-color: var(--blue--lighter--40)
}
.block--announcement {
  -ms-grid-columns: 1fr 3fr;
  -ms-grid-rows: auto;
  display: -ms-grid;
  display: grid;
  grid-template-areas: "icon text";
  grid-template-columns: 1fr 3fr;
  grid-template-rows: auto;
  justify-items: center;
  align-items: center;
  margin: auto;
  background-color: var(--dark-blue)
}
.block--announcement .block__title {
  margin-top: 0;
  padding-bottom: 0;
  text-align: center;
  border-bottom: none
}
.block--announcement .material-icons {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue);
  grid-area: icon;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1
}
.block--announcement .material-icons h1,
.block--announcement .material-icons h6 {
  color: var(--light-green)
}
.block--announcement .material-icons h1:after {
  border-color: var(--white)
}
.block--announcement .material-icons h2 {
  color: var(--light-green--lighter--20)
}
.block--announcement .material-icons .intro,
.block--announcement .material-icons .tagline,
.block--announcement .material-icons h3 {
  color: var(--light-green--lighter--40)
}
.block--announcement .material-icons h4 {
  color: var(--light-green--lighter--60)
}
.block--announcement .material-icons h5 {
  color: var(--light-green--lighter--80)
}
.block--announcement .material-icons a.patternLink,
.block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.block--announcement .material-icons a.patternLink:visited,
.block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.block--announcement .material-icons a.patternLink:active,
.block--announcement .material-icons a.patternLink:focus,
.block--announcement .material-icons a.patternLink:hover,
.block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.block--announcement .material-icons .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.block--announcement .material-icons .play-button,
.block--announcement .material-icons .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.block--announcement .material-icons .block--countdown,
.block--announcement .material-icons caption {
  color: var(--white)
}
.block--announcement .body {
  background: var(--gray--lighter--60);
  background: var(--light-green);
  display: grid;
  grid-area: text;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  justify-items: center;
  width: 100%;
  height: 100%;
  padding: var(--space--md)
}
.block--announcement .body h1 {
  color: var(--dark-blue--darker--80)
}
.block--announcement .body h1:after {
  border-color: var(--dark-blue--darker--80)
}
.block--announcement .body h2 {
  color: var(--dark-blue--darker--60)
}
.block--announcement .body h3 {
  color: var(--dark-blue--darker--40)
}
.block--announcement .body h4 {
  color: var(--dark-blue--darker--20)
}
.block--announcement .body h5,
.block--announcement .body h6 {
  color: var(--dark-blue)
}
.block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--dark-blue);
  color: var(--blue--darker--40)
}
.block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple)
}
.block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.block--announcement .body .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
.block--announcement .body.pullquote {
  border-left-color: var(--dark-blue)
}
.block--announcement.layout-builder-block {
  padding: 0
}
.block--announcement.full-width {
  max-width: none
}
.block--banner .body,
.org-chart {
  max-width: var(--content-area-max-width)
}
.dark-mode .block--announcement {
  background-color: var(--dark-green)
}
.dark-mode .block--announcement .material-icons {
  color: var(--white);
  background: var(--black);
  background: var(--dark-green)
}
.dark-mode .block--announcement .material-icons h1,
.dark-mode .block--announcement .material-icons h6 {
  color: var(--light-green)
}
.dark-mode .block--announcement .material-icons h1:after {
  border-color: var(--white)
}
.dark-mode .block--announcement .material-icons h2 {
  color: var(--light-green--lighter--20)
}
.dark-mode .block--announcement .material-icons .intro,
.dark-mode .block--announcement .material-icons .tagline,
.dark-mode .block--announcement .material-icons h3 {
  color: var(--light-green--lighter--40)
}
.dark-mode .block--announcement .material-icons h4 {
  color: var(--light-green--lighter--60)
}
.dark-mode .block--announcement .material-icons h5 {
  color: var(--light-green--lighter--80)
}
.dark-mode .block--announcement .material-icons a.patternLink,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.dark-mode .block--announcement .material-icons a.patternLink:visited,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.dark-mode .block--announcement .material-icons a.patternLink:active,
.dark-mode .block--announcement .material-icons a.patternLink:focus,
.dark-mode .block--announcement .material-icons a.patternLink:hover,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.dark-mode .block--announcement .material-icons .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.dark-mode .block--announcement .material-icons .play-button,
.dark-mode .block--announcement .material-icons .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.dark-mode .block--announcement .material-icons .block--countdown,
.dark-mode .block--announcement .material-icons caption {
  color: var(--white)
}
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--light-green--lighter--20);
  color: var(--green--lighter--80)
}
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--announcement .material-icons a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  outline-color: var(--light-green);
  background-image: var(--gradient--vertical--light-green)
}
.dark-mode .block--announcement .material-icons .menu li,
.dark-mode .block--announcement .material-icons.pullquote {
  border-left-color: var(--green--lighter--80)
}
.dark-mode .block--announcement .body {
  color: var(--white);
  background: var(--gray);
  background: var(--green)
}
.dark-mode .block--announcement .body h1 {
  color: var(--light-green--lighter--20)
}
.dark-mode .block--announcement .body h1:after {
  border-color: var(--blue--lighter--40)
}
.dark-mode .block--announcement .body h2 {
  color: var(--light-green--lighter--40)
}
.dark-mode .block--announcement .body h3 {
  color: var(--light-green--lighter--60)
}
.dark-mode .block--announcement .body .intro,
.dark-mode .block--announcement .body .tagline,
.dark-mode .block--announcement .body h4 {
  color: var(--light-green--lighter--80)
}
.dark-mode .block--announcement .body .block--countdown,
.dark-mode .block--announcement .body caption,
.dark-mode .block--announcement .body h5,
.dark-mode .block--announcement .body h6 {
  color: var(--white)
}
.dark-mode .block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white);
  text-decoration-color: var(--light-green--lighter--20)
}
.dark-mode .block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--white);
  text-decoration-color: var(--purple--lighter--60)
}
.dark-mode .block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--announcement .body a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue);
  outline-color: var(--light-green--lighter--20);
  background-image: var(--gradient--vertical--light-green)
}
.dark-mode .block--announcement .body .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--60)
}
.dark-mode .block--announcement .body .play-button,
.dark-mode .block--announcement .body .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.dark-mode .block--announcement .body h1:after {
  border-color: var(--light-green--lighter--80)
}
.dark-mode .block--announcement .body.pullquote {
  border-left-color: var(--light-green--lighter--40)
}
.bg-video-container {
  position: relative;
  display: grid;
  align-content: center;
  padding: var(space--2xl);
  text-align: center
}
.bg-video-container > * {
  z-index: 1
}
.bg-video-container > video {
  z-index: 0
}
.bg-video-container button {
  position: absolute;
  bottom: var(--space--sm);
  left: var(--space--sm)
}
.bg-video-container button .material-icons {
  position: relative;
  top: var(--space--2xs);
  right: var(--space--2xs);
  font-size: inherit
}
.block--banner {
  position: relative;
  display: grid;
  align-content: center;
  padding: var(--space--xl);
  text-align: center
}
.block--card,
.block--card.event,
.card,
.card.event {
  align-content: start
}
.block--banner .body {
  position: relative;
  margin: auto
}
.block--banner .block__title,
.block--banner .body {
  z-index: 1
}
.block--beyond-basics-block,
.paragraph--type--majors-aside {
  margin: var(--space--xs) 0
}
.block--beyond-basics-block[class*="-bg"],
.double-padding,
.flowchart .item,
.paragraph--type--majors-aside[class*="-bg"],
.quicksearch-form-container {
  padding: var(--space--md)
}
.block--beyond-basics-block[class*="-bg"] .block__title,
.paragraph--type--majors-aside[class*="-bg"] .block__title {
  margin-top: 0;
  padding-bottom: 0
}
#islandora-bookmark select,
#islandora-collection-search-form label,
#islandora_solr_results_limit li,
.block--beyond-basics-block.no-margin,
.event-list .event p,
.menu .menu,
.no-margin,
.page-islandora .site-footer #edit-cas-login-redirection-message,
.paragraph--type--majors-aside.no-margin,
.wwu-footer .copyright p,
table.toplevel {
  margin: 0
}
.block--card.color-block-title .title,
.card.color-block-title .title {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  order: 0;
  padding: var(--space--md)
}
#block-system-main-menu .ultimenu--horizontal h1,
#block-system-main-menu>.menu h1,
.block--card.color-block-title .title h1,
.block--card.color-block-title.dark-blue .title h2,
.block--card.event.alt .location h1,
.block--card.event.alt .title h1,
.block--card.information.split-style .title h1,
.block--card.simple .title h1,
.card.color-block-title .title h1,
.card.color-block-title.dark-blue .title h2,
.card.event.alt .location h1,
.card.event.alt .title h1,
.card.information.split-style .title h1,
.card.simple .title h1,
.dark-mode .block--card.simple h1,
.dark-mode .card.simple h1,
.dark-mode .material-icons,
.dark-mode .severity,
.dark-mode .status,
.headline.box-headline h2,
.headline.left-aligned-bar h1,
.headline.right-aligned-bar h1,
.main-navigation .ultimenu--horizontal h1,
.main-navigation>.menu h1 {
  color: var(--light-green--lighter--20)
}
#block-system-main-menu .ultimenu--horizontal h1:after,
#block-system-main-menu>.menu h1:after,
.block--card.color-block-title .title h1:after,
.block--card.event.alt .location h1:after,
.block--card.event.alt .title h1:after,
.block--card.information.split-style .title h1:after,
.block--card.simple .title h1:after,
.card.color-block-title .title h1:after,
.card.event.alt .location h1:after,
.card.event.alt .title h1:after,
.card.information.split-style .title h1:after,
.card.simple .title h1:after,
.dark-mode .block--card.simple h1:after,
.dark-mode .card.simple h1:after,
.headline.left-aligned-bar h1:after,
.headline.right-aligned-bar h1:after,
.main-navigation .ultimenu--horizontal h1:after,
.main-navigation>.menu h1:after {
  border-color: var(--blue--lighter--40)
}
#block-system-main-menu .ultimenu--horizontal h2,
#block-system-main-menu>.menu h2,
.block--card.color-block-title .title h2,
.block--card.color-block-title.dark-blue .title .intro,
.block--card.color-block-title.dark-blue .title .tagline,
.block--card.color-block-title.dark-blue .title h3,
.block--card.event.alt .location h2,
.block--card.event.alt .title h2,
.block--card.information.split-style .title h2,
.block--card.simple .title h2,
.card.color-block-title .title h2,
.card.color-block-title.dark-blue .title .intro,
.card.color-block-title.dark-blue .title .tagline,
.card.color-block-title.dark-blue .title h3,
.card.event.alt .location h2,
.card.event.alt .title h2,
.card.information.split-style .title h2,
.card.simple .title h2,
.dark-mode .block--card.simple h2,
.dark-mode .card.simple h2,
.dark-mode .degree-card .body h4,
.headline.box-headline .intro,
.headline.box-headline .tagline,
.headline.box-headline h3,
.headline.left-aligned-bar h2,
.headline.right-aligned-bar h2,
.main-navigation .ultimenu--horizontal h2,
.main-navigation>.menu h2 {
  color: var(--light-green--lighter--40)
}
#block-system-main-menu .ultimenu--horizontal h3,
#block-system-main-menu>.menu h3,
.block--card.color-block-title .title h3,
.block--card.color-block-title.dark-blue .title h4,
.block--card.event.alt .location h3,
.block--card.event.alt .title h3,
.block--card.information.split-style .title h3,
.block--card.simple .title h3,
.card.color-block-title .title h3,
.card.color-block-title.dark-blue .title h4,
.card.event.alt .location h3,
.card.event.alt .title h3,
.card.information.split-style .title h3,
.card.simple .title h3,
.dark-mode .block--card.simple h3,
.dark-mode .card.simple h3,
.headline.box-headline h4,
.headline.left-aligned-bar h3,
.headline.right-aligned-bar h3,
.main-navigation .ultimenu--horizontal h3,
.main-navigation>.menu h3 {
  color: var(--light-green--lighter--60)
}
#block-system-main-menu .ultimenu--horizontal .intro,
#block-system-main-menu .ultimenu--horizontal .tagline,
#block-system-main-menu .ultimenu--horizontal h4,
#block-system-main-menu>.menu .intro,
#block-system-main-menu>.menu .tagline,
#block-system-main-menu>.menu h4,
.block--card.color-block-title .title .intro,
.block--card.color-block-title .title .tagline,
.block--card.color-block-title .title h4,
.block--card.color-block-title.dark-blue .title h5,
.block--card.event.alt .location .intro,
.block--card.event.alt .location .tagline,
.block--card.event.alt .location h4,
.block--card.event.alt .title .intro,
.block--card.event.alt .title .tagline,
.block--card.event.alt .title h4,
.block--card.information.split-style .title .intro,
.block--card.information.split-style .title .tagline,
.block--card.information.split-style .title h4,
.block--card.simple .title .intro,
.block--card.simple .title .tagline,
.block--card.simple .title h4,
.card.color-block-title .title .intro,
.card.color-block-title .title .tagline,
.card.color-block-title .title h4,
.card.color-block-title.dark-blue .title h5,
.card.event.alt .location .intro,
.card.event.alt .location .tagline,
.card.event.alt .location h4,
.card.event.alt .title .intro,
.card.event.alt .title .tagline,
.card.event.alt .title h4,
.card.information.split-style .title .intro,
.card.information.split-style .title .tagline,
.card.information.split-style .title h4,
.card.simple .title .intro,
.card.simple .title .tagline,
.card.simple .title h4,
.dark-mode .block--card.simple .intro,
.dark-mode .block--card.simple .tagline,
.dark-mode .block--card.simple h4,
.dark-mode .card.simple .intro,
.dark-mode .card.simple .tagline,
.dark-mode .card.simple h4,
.headline.box-headline h5,
.headline.left-aligned-bar .intro,
.headline.left-aligned-bar .tagline,
.headline.left-aligned-bar h4,
.headline.right-aligned-bar .intro,
.headline.right-aligned-bar .tagline,
.headline.right-aligned-bar h4,
.main-navigation .ultimenu--horizontal .intro,
.main-navigation .ultimenu--horizontal .tagline,
.main-navigation .ultimenu--horizontal h4,
.main-navigation>.menu .intro,
.main-navigation>.menu .tagline,
.main-navigation>.menu h4 {
  color: var(--light-green--lighter--80)
}
.block--card.color-block-title .title .block--countdown,
.block--card.color-block-title .title caption,
.block--card.color-block-title .title h5,
.block--card.color-block-title .title h6,
.block--card.color-block-title.dark-blue .title .block--countdown,
.block--card.color-block-title.dark-blue .title caption,
.card.color-block-title .title .block--countdown,
.card.color-block-title .title caption,
.card.color-block-title .title h5,
.card.color-block-title .title h6,
.card.color-block-title.dark-blue .title .block--countdown,
.card.color-block-title.dark-blue .title caption {
  color: var(--white)
}
#block-system-main-menu .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
#block-system-main-menu>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.headline.left-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.headline.right-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.main-navigation .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.main-navigation>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white)
}
#block-system-main-menu .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
#block-system-main-menu>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.headline.left-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.headline.right-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.main-navigation .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.main-navigation>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--white);
  text-decoration-color: var(--purple--lighter--60)
}
.block--card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.color-block-title .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.event.alt .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.information.split-style .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.simple .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue);
  color: inherit;
  background: 0 0
}
#block-system-main-menu .ultimenu--horizontal .menu li,
#block-system-main-menu>.menu .menu li,
#islandora-search-container .menu li,
.block--card.color-block-title .title .menu li,
.block--card.event.alt .location .menu li,
.block--card.event.alt .title .menu li,
.block--card.information.split-style .title .menu li,
.block--card.simple .title .menu li,
.card.color-block-title .title .menu li,
.card.event.alt .location .menu li,
.card.event.alt .title .menu li,
.card.information.split-style .title .menu li,
.card.simple .title .menu li,
.dark-mode .block--card.simple .menu li,
.dark-mode .card.simple .menu li,
.headline.left-aligned-bar .menu li,
.headline.right-aligned-bar .menu li,
.main-navigation .ultimenu--horizontal .menu li,
.main-navigation>.menu .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--60)
}
#block-system-main-menu .ultimenu--horizontal .play-button,
#block-system-main-menu .ultimenu--horizontal .social-icon,
#block-system-main-menu>.menu .play-button,
#block-system-main-menu>.menu .social-icon,
.block--card.color-block-title .title .play-button,
.block--card.color-block-title .title .social-icon,
.block--card.color-block-title.dark-blue .title .play-button,
.block--card.color-block-title.dark-blue .title .social-icon,
.block--card.event.alt .location .play-button,
.block--card.event.alt .location .social-icon,
.block--card.event.alt .title .play-button,
.block--card.event.alt .title .social-icon,
.block--card.information.split-style .title .play-button,
.block--card.information.split-style .title .social-icon,
.block--card.simple .title .play-button,
.block--card.simple .title .social-icon,
.card.color-block-title .title .play-button,
.card.color-block-title .title .social-icon,
.card.color-block-title.dark-blue .title .play-button,
.card.color-block-title.dark-blue .title .social-icon,
.card.event.alt .location .play-button,
.card.event.alt .location .social-icon,
.card.event.alt .title .play-button,
.card.event.alt .title .social-icon,
.card.information.split-style .title .play-button,
.card.information.split-style .title .social-icon,
.card.simple .title .play-button,
.card.simple .title .social-icon,
.dark-mode .block--card.simple .play-button,
.dark-mode .block--card.simple .social-icon,
.dark-mode .card.simple .play-button,
.dark-mode .card.simple .social-icon,
.headline.box-headline .play-button,
.headline.box-headline .social-icon,
.headline.left-aligned-bar .play-button,
.headline.left-aligned-bar .social-icon,
.headline.right-aligned-bar .play-button,
.headline.right-aligned-bar .social-icon,
.main-navigation .ultimenu--horizontal .play-button,
.main-navigation .ultimenu--horizontal .social-icon,
.main-navigation>.menu .play-button,
.main-navigation>.menu .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
#block-system-main-menu .ultimenu--horizontal .play-button:active,
#block-system-main-menu .ultimenu--horizontal .play-button:focus,
#block-system-main-menu .ultimenu--horizontal .play-button:hover,
#block-system-main-menu .ultimenu--horizontal .social-icon:active,
#block-system-main-menu .ultimenu--horizontal .social-icon:focus,
#block-system-main-menu .ultimenu--horizontal .social-icon:hover,
#block-system-main-menu>.menu .play-button:active,
#block-system-main-menu>.menu .play-button:focus,
#block-system-main-menu>.menu .play-button:hover,
#block-system-main-menu>.menu .social-icon:active,
#block-system-main-menu>.menu .social-icon:focus,
#block-system-main-menu>.menu .social-icon:hover,
.block--card.color-block-title .title .play-button:active,
.block--card.color-block-title .title .play-button:focus,
.block--card.color-block-title .title .play-button:hover,
.block--card.color-block-title .title .social-icon:active,
.block--card.color-block-title .title .social-icon:focus,
.block--card.color-block-title .title .social-icon:hover,
.block--card.color-block-title.dark-blue .title .play-button:active,
.block--card.color-block-title.dark-blue .title .play-button:focus,
.block--card.color-block-title.dark-blue .title .play-button:hover,
.block--card.color-block-title.dark-blue .title .social-icon:active,
.block--card.color-block-title.dark-blue .title .social-icon:focus,
.block--card.color-block-title.dark-blue .title .social-icon:hover,
.block--card.event.alt .location .play-button:active,
.block--card.event.alt .location .play-button:focus,
.block--card.event.alt .location .play-button:hover,
.block--card.event.alt .location .social-icon:active,
.block--card.event.alt .location .social-icon:focus,
.block--card.event.alt .location .social-icon:hover,
.block--card.event.alt .title .play-button:active,
.block--card.event.alt .title .play-button:focus,
.block--card.event.alt .title .play-button:hover,
.block--card.event.alt .title .social-icon:active,
.block--card.event.alt .title .social-icon:focus,
.block--card.event.alt .title .social-icon:hover,
.block--card.information.split-style .title .play-button:active,
.block--card.information.split-style .title .play-button:focus,
.block--card.information.split-style .title .play-button:hover,
.block--card.information.split-style .title .social-icon:active,
.block--card.information.split-style .title .social-icon:focus,
.block--card.information.split-style .title .social-icon:hover,
.block--card.simple .title .play-button:active,
.block--card.simple .title .play-button:focus,
.block--card.simple .title .play-button:hover,
.block--card.simple .title .social-icon:active,
.block--card.simple .title .social-icon:focus,
.block--card.simple .title .social-icon:hover,
.card.color-block-title .title .play-button:active,
.card.color-block-title .title .play-button:focus,
.card.color-block-title .title .play-button:hover,
.card.color-block-title .title .social-icon:active,
.card.color-block-title .title .social-icon:focus,
.card.color-block-title .title .social-icon:hover,
.card.color-block-title.dark-blue .title .play-button:active,
.card.color-block-title.dark-blue .title .play-button:focus,
.card.color-block-title.dark-blue .title .play-button:hover,
.card.color-block-title.dark-blue .title .social-icon:active,
.card.color-block-title.dark-blue .title .social-icon:focus,
.card.color-block-title.dark-blue .title .social-icon:hover,
.card.event.alt .location .play-button:active,
.card.event.alt .location .play-button:focus,
.card.event.alt .location .play-button:hover,
.card.event.alt .location .social-icon:active,
.card.event.alt .location .social-icon:focus,
.card.event.alt .location .social-icon:hover,
.card.event.alt .title .play-button:active,
.card.event.alt .title .play-button:focus,
.card.event.alt .title .play-button:hover,
.card.event.alt .title .social-icon:active,
.card.event.alt .title .social-icon:focus,
.card.event.alt .title .social-icon:hover,
.card.information.split-style .title .play-button:active,
.card.information.split-style .title .play-button:focus,
.card.information.split-style .title .play-button:hover,
.card.information.split-style .title .social-icon:active,
.card.information.split-style .title .social-icon:focus,
.card.information.split-style .title .social-icon:hover,
.card.simple .title .play-button:active,
.card.simple .title .play-button:focus,
.card.simple .title .play-button:hover,
.card.simple .title .social-icon:active,
.card.simple .title .social-icon:focus,
.card.simple .title .social-icon:hover,
.dark-mode .block--card.simple .play-button:active,
.dark-mode .block--card.simple .play-button:focus,
.dark-mode .block--card.simple .play-button:hover,
.dark-mode .block--card.simple .social-icon:active,
.dark-mode .block--card.simple .social-icon:focus,
.dark-mode .block--card.simple .social-icon:hover,
.dark-mode .card.simple .play-button:active,
.dark-mode .card.simple .play-button:focus,
.dark-mode .card.simple .play-button:hover,
.dark-mode .card.simple .social-icon:active,
.dark-mode .card.simple .social-icon:focus,
.dark-mode .card.simple .social-icon:hover,
.headline.box-headline .play-button:active,
.headline.box-headline .play-button:focus,
.headline.box-headline .play-button:hover,
.headline.box-headline .social-icon:active,
.headline.box-headline .social-icon:focus,
.headline.box-headline .social-icon:hover,
.headline.left-aligned-bar .play-button:active,
.headline.left-aligned-bar .play-button:focus,
.headline.left-aligned-bar .play-button:hover,
.headline.left-aligned-bar .social-icon:active,
.headline.left-aligned-bar .social-icon:focus,
.headline.left-aligned-bar .social-icon:hover,
.headline.right-aligned-bar .play-button:active,
.headline.right-aligned-bar .play-button:focus,
.headline.right-aligned-bar .play-button:hover,
.headline.right-aligned-bar .social-icon:active,
.headline.right-aligned-bar .social-icon:focus,
.headline.right-aligned-bar .social-icon:hover,
.main-navigation .ultimenu--horizontal .play-button:active,
.main-navigation .ultimenu--horizontal .play-button:focus,
.main-navigation .ultimenu--horizontal .play-button:hover,
.main-navigation .ultimenu--horizontal .social-icon:active,
.main-navigation .ultimenu--horizontal .social-icon:focus,
.main-navigation .ultimenu--horizontal .social-icon:hover,
.main-navigation>.menu .play-button:active,
.main-navigation>.menu .play-button:focus,
.main-navigation>.menu .play-button:hover,
.main-navigation>.menu .social-icon:active,
.main-navigation>.menu .social-icon:focus,
.main-navigation>.menu .social-icon:hover {
  background: var(--blue--lighter--60)
}
.block--card.color-block-title.dark-blue .title,
.card.color-block-title.dark-blue .title {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue)
}
.block--card.color-block-title.dark-blue .title h1,
.block--card.color-block-title.dark-blue .title h6,
.card.color-block-title.dark-blue .title h1,
.card.color-block-title.dark-blue .title h6,
.headline.box-headline h1,
.headline.box-headline h6 {
  color: var(--light-green)
}
.block--card.color-block-title.dark-blue .title h1:after,
.card.color-block-title.dark-blue .title h1:after,
.headline.box-headline h1:after {
  border-color: var(--white)
}
.block--card.color-block-title.dark-blue .title a.patternLink,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.color-block-title.dark-blue .title a.patternLink,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .event a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .event a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .event a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.headline.box-headline a.patternLink,
.headline.box-headline a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.block--card.color-block-title.dark-blue .title a.patternLink:visited,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.color-block-title.dark-blue .title a.patternLink:visited,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.headline.box-headline a.patternLink:visited,
.headline.box-headline a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.block--card.color-block-title.dark-blue .title a.patternLink:active,
.block--card.color-block-title.dark-blue .title a.patternLink:focus,
.block--card.color-block-title.dark-blue .title a.patternLink:hover,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.color-block-title.dark-blue .title a.patternLink:active,
.card.color-block-title.dark-blue .title a.patternLink:focus,
.card.color-block-title.dark-blue .title a.patternLink:hover,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.headline.box-headline a.patternLink:active,
.headline.box-headline a.patternLink:focus,
.headline.box-headline a.patternLink:hover,
.headline.box-headline a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.headline.box-headline a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.headline.box-headline a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.block--card.color-block-title.dark-blue .title .menu li,
.card.color-block-title.dark-blue .title .menu li,
.headline.box-headline .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.color-block-title.dark-blue .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.tile .title .block__title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: inherit;
  background: 0 0
}
.block--card.color-block-title.light-green .title,
.card.color-block-title.light-green .title {
  background: var(--gray--lighter--60);
  background: var(--light-green)
}
.block--card.color-block-title.light-green .title h1,
.block--card.simple h1,
.block--card.tile h1,
.card.color-block-title.light-green .title h1,
.card.simple h1,
.card.tile h1 {
  color: var(--dark-blue--darker--80)
}
.block--card.color-block-title.light-green .title h1:after,
.block--card.simple h1:after,
.block--card.tile h1:after,
.card.color-block-title.light-green .title h1:after,
.card.simple h1:after,
.card.tile h1:after {
  border-color: var(--dark-blue--darker--80)
}
.block--card.color-block-title.light-green .title h2,
.block--card.simple h2,
.block--card.tile h2,
.card.color-block-title.light-green .title h2,
.card.simple h2,
.card.tile h2,
.dark-mode .org-chart .light>a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .org-chart a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .org-chart a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .org-chart a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--dark-blue--darker--60)
}
.block--card.color-block-title.light-green .title h3,
.block--card.simple h3,
.block--card.tile h3,
.card.color-block-title.light-green .title h3,
.card.simple h3,
.card.tile h3,
.dark-mode .green .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .green .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .green .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .green .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .western-menu .icon-with-text:active span,
.dark-mode .western-menu .icon-with-text:focus span,
.dark-mode .western-menu .icon-with-text:hover span {
  color: var(--dark-blue--darker--40)
}
.block--card.color-block-title.light-green .title h4,
.block--card.simple h4,
.block--card.tile h4,
.card.color-block-title.light-green .title h4,
.card.simple h4,
.card.tile h4 {
  color: var(--dark-blue--darker--20)
}
.alert.weather .alert-header,
.block--card.color-block-title.light-green .title h5,
.block--card.color-block-title.light-green .title h6,
.block--card.simple h5,
.block--card.simple h6,
.block--card.solid-round.blue .title .block__title a,
.block--card.tile h5,
.block--card.tile h6,
.card.color-block-title.light-green .title h5,
.card.color-block-title.light-green .title h6,
.card.simple h5,
.card.simple h6,
.card.solid-round.blue .title .block__title a,
.card.tile h5,
.card.tile h6,
.org-chart ul li.dark>a:active,
.org-chart ul li.dark>a:focus,
.org-chart ul li.dark>a:hover,
.org-chart ul li>a:active,
.org-chart ul li>a:focus,
.org-chart ul li>a:hover {
  color: var(--dark-blue)
}
.block--card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.block--card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--dark-blue);
  color: var(--blue--darker--40)
}
.block--card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.block--card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple)
}
.block--card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.color-block-title.light-green .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue);
  color: inherit;
  background: 0 0
}
.block--card.color-block-title.light-green .title .menu li,
.block--card.simple .menu li,
.block--card.tile .menu li,
.card.color-block-title.light-green .title .menu li,
.card.simple .menu li,
.card.tile .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
.block--card.color-block-title.light-green .title.pullquote,
.block--card.simple.pullquote,
.block--card.tile.pullquote,
.card.color-block-title.light-green .title.pullquote,
.card.simple.pullquote,
.card.tile.pullquote {
  border-left-color: var(--dark-blue)
}
.block--card.event .image,
.card.event .image {
  margin-bottom: calc(-1 * var(--space--lg))
}
.block--card.event .date,
.card.event .date {
  flex: 0 1 40%;
  order: 1;
  margin-right: calc(-1 * var(--space--md));
  padding-left: var(--space--md);
  text-align: center;
  text-transform: uppercase;
  line-height: 1
}
.block--card.event .date .month,
.card.event .date .month {
  display: block;
  padding: var(--space--md) var(--space--lg) 0 var(--space--lg);
  color: var(--white);
  background-color: var(--blue);
  font-size: var(--font-size--2xl)
}
.block--card.event .date .day,
.card.event .date .day {
  display: block;
  padding: 0 var(--space--lg) var(--space--md) var(--space--lg);
  white-space: nowrap;
  word-spacing: -.2em;
  color: var(--white);
  background-color: var(--blue);
  font-size: var(--font-size--5xl);
  font-weight: var(--font-weight--semibold)
}
.block--card.event .location,
.card.event .location {
  flex: 1 1 60%;
  order: 2;
  align-self: flex-end;
  margin-bottom: 0;
  padding: var(--space--md) var(--space--md) var(--space--md) var(--space--lg);
  text-transform: uppercase;
  color: var(--blue);
  font-style: normal
}
.block--card.event .body,
.block--card.event .title,
.card.event .body,
.card.event .title {
  padding-right: var(--space--lg);
  padding-left: var(--space--lg)
}
.block--card.event .title,
.card.event .title {
  margin-top: var(--space--md)
}
.block--card.event.alt,
.card.event.alt {
  display: grid;
  grid-template-areas: "image image" "date title" "date location" "body body" "terms terms";
  grid-template-columns: 1fr 2fr;
  grid-template-rows: auto
}
.block--card.event.alt .title,
.card.event.alt .title {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  display: flex;
  grid-area: title;
  align-items: end;
  height: 100%;
  margin: 0;
  padding-top: var(--space--md)
}
.block--card.event.alt .location .block--countdown,
.block--card.event.alt .location caption,
.block--card.event.alt .location h5,
.block--card.event.alt .location h6,
.block--card.event.alt .title .block--countdown,
.block--card.event.alt .title caption,
.block--card.event.alt .title h5,
.block--card.event.alt .title h6,
.card.event.alt .location .block--countdown,
.card.event.alt .location caption,
.card.event.alt .location h5,
.card.event.alt .location h6,
.card.event.alt .title .block--countdown,
.card.event.alt .title caption,
.card.event.alt .title h5,
.card.event.alt .title h6 {
  color: var(--white)
}
.block--card.event.alt .image,
.card.event.alt .image {
  grid-area: image;
  margin-bottom: 0
}
.block--card.event.alt .date,
.card.event.alt .date {
  display: grid;
  grid-area: date;
  grid-template-rows: 1fr 1fr;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0
}
.block--card.event.alt .date .month,
.card.event.alt .date .month {
  display: grid;
  align-content: end;
  padding: var(--space--sm);
  background-color: var(--dark-blue)
}
.block--card.event.alt .date .day,
.card.event.alt .date .day {
  padding: var(--space--sm);
  color: var(--dark-blue);
  background-color: var(--light-green)
}
.block--card.event.alt .location,
.card.event.alt .location {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  display: flex;
  grid-area: location;
  align-items: start;
  height: 100%;
  padding-top: 0
}
#block-system-main-menu .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
#block-system-main-menu .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
#block-system-main-menu .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
#block-system-main-menu>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
#block-system-main-menu>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
#block-system-main-menu>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.event.alt .location a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.headline.left-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.headline.left-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.headline.left-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.headline.right-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.headline.right-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.headline.right-aligned-bar a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.main-navigation .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.main-navigation .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.main-navigation .ultimenu--horizontal a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.main-navigation>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.main-navigation>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.main-navigation>.menu a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue)
}
.block--card.event.alt .body,
.card.event.alt .body {
  grid-area: body;
  padding: var(--space--md);
  padding-bottom: 0
}
.block--card.event.alt .taxonomy-terms,
.card.event.alt .taxonomy-terms {
  grid-area: terms;
  padding: var(--space--md)
}
.block--card.horizontal,
.card.horizontal {
  -ms-grid-columns: 1fr 1fr;
  -ms-grid-rows: auto 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-areas: "image title" "image taxonomy" "image body";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto 1fr;
  padding-bottom: 0
}
.block--card.horizontal .image,
.card.horizontal .image {
  grid-area: image;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  margin-bottom: 0;
  padding: 0
}
.block--card.horizontal .image>div,
.card.horizontal .image>div,
.featured-major-splash-area>div:nth-of-type(1) div,
.splash>div:nth-of-type(1) div {
  width: 100%;
  height: 100%
}
.block--card.horizontal .image img,
.card.horizontal .image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.block--card.horizontal .taxonomy-terms,
.card.horizontal .taxonomy-terms {
  grid-area: taxonomy;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  margin-bottom: 0;
  padding-bottom: 0
}
.block--card.horizontal .title,
.card.horizontal .title {
  grid-area: title;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  margin-top: var(--space--sm)
}
.block--card.horizontal .body,
.card.horizontal .body {
  grid-area: body;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  line-height: 1.4;
  padding: var(--space--sm)
}
.block--card.information,
.card.information {
  align-content: space-between;
  padding: 0
}
.block--card.information .sorting-term,
.card.information .sorting-term {
  order: 0;
  min-width: 30%;
  margin-left: var(--space--lg);
  padding: var(--space--xs);
  color: var(--white);
  background-color: var(--blue);
  font-size: var(--font-size--sm)
}
.block--card.information .title,
.card.information .title {
  margin-top: var(--space--md);
  margin-right: var(--space--lg);
  margin-left: var(--space--lg);
  padding: 0;
  border-bottom: solid var(--border-width--md) var(--blue)
}
.block--card.information .title .block__title,
.block--card.solid-round.blue .body .cta.white,
.block--card.solid-round.blue .body .user-login-form .white.cas-login-link,
.block--card.solid-round.blue .body a.button.white,
.card.information .title .block__title,
.card.solid-round.blue .body .cta.white,
.card.solid-round.blue .body .user-login-form .white.cas-login-link,
.card.solid-round.blue .body a.button.white,
.user-login-form .block--card.solid-round.blue .body .white.cas-login-link,
.user-login-form .card.solid-round.blue .body .white.cas-login-link {
  color: var(--blue)
}
.block--card.information .body,
.card.information .body {
  padding: var(--space--md) var(--space--lg)
}
.block--card.information .taxonomy-terms,
.card.information .taxonomy-terms {
  display: flex;
  flex-flow: column;
  order: 6;
  align-self: end;
  padding: 0;
  background-color: var(--blue);
  font-weight: var(--font-weight--regular)
}
.block--card.information .taxonomy-term,
.card.information .taxonomy-term {
  display: flex;
  float: none;
  align-items: center;
  margin: 0;
  padding: var(--space--xs);
  color: var(--white);
  background-color: transparent;
  font-size: var(--font-size--sm)
}
.block--card.information .material-icons,
.card.information .material-icons {
  margin-right: var(--space--sm);
  font-size: var(--space--lg)
}
.block--card.information.split-style,
.card.information.split-style {
  display: grid;
  grid-template-areas: "title body" "sorting body" "terms body";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr auto auto;
  align-items: initial;
  align-content: start
}
.block--card.information.split-style .title,
.card.information.split-style .title {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  grid-area: title;
  margin: 0;
  padding: var(--space--lg) var(--space--lg)
}
.block--card.information.split-style .block__title,
.block--card.information.split-style .title .block--countdown,
.block--card.information.split-style .title caption,
.block--card.information.split-style .title h5,
.block--card.information.split-style .title h6,
.card.information.split-style .block__title,
.card.information.split-style .title .block--countdown,
.card.information.split-style .title caption,
.card.information.split-style .title h5,
.card.information.split-style .title h6 {
  color: var(--white)
}
.block--card.information.split-style .sorting-term,
.card.information.split-style .sorting-term {
  display: flex;
  grid-area: sorting;
  align-items: center;
  margin: 0;
  background-color: var(--dark-blue)
}
.block--card.information.split-style .taxonomy-terms,
.card.information.split-style .taxonomy-terms {
  grid-area: terms;
  background-color: var(--dark-blue)
}
.block--card.information.split-style .body,
.card.information.split-style .body,
.event-list .event .body {
  grid-area: body
}
.block--card.simple,
.card.simple {
  background: var(--gray--lighter--60);
  background: var(--gray--lighter--80);
  padding: 0;
  text-align: center
}
.block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.simple a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card.tile a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.block--card.simple .title,
.card.simple .title {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  order: 1;
  padding: var(--space--lg)
}
.block--card.simple .title .block--countdown,
.block--card.simple .title caption,
.block--card.simple .title h5,
.block--card.simple .title h6,
.card.simple .title .block--countdown,
.card.simple .title caption,
.card.simple .title h5,
.card.simple .title h6,
.dark-mode .block--card.simple .block--countdown,
.dark-mode .block--card.simple caption,
.dark-mode .block--card.simple h5,
.dark-mode .block--card.simple h6,
.dark-mode .card.simple .block--countdown,
.dark-mode .card.simple caption,
.dark-mode .card.simple h5,
.dark-mode .card.simple h6,
.dark-mode .degree-card .department-link,
.dark-mode .org-chart a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--white)
}
.block--card.simple .body,
.card.simple .body {
  padding: var(--space--lg)
}
#islandora-compound-next-link:active,
#islandora-compound-next-link:focus,
#islandora-compound-next-link:hover,
#islandora-compound-previous-link:active,
#islandora-compound-previous-link:focus,
#islandora-compound-previous-link:hover,
.dark-mode .block--card.simple,
.dark-mode .card.simple {
  color: var(--white);
  background: var(--gray)
}
.block--card.solid-round,
.card.solid-round {
  border-radius: var(--space--2xl);
  box-shadow: none
}
.block--card.solid-round a:after,
.block--card.solid-round a:before,
.card.solid-round a:after,
.card.solid-round a:before,
.flowchart li:last-of-type .flow-left,
.flowchart li:last-of-type .flow-right {
  display: none
}
.block--card.solid-round .title,
.card.solid-round .title,
.ultimenu--basic .region {
  padding: 0
}
.block--card.solid-round .title .block__title,
.card.solid-round .title .block__title {
  padding: var(--space--lg) var(--space--lg) 0;
  font-weight: var(--font-weight--black)
}
.block--card.solid-round .image,
.card.solid-round .image {
  position: absolute;
  right: 0;
  bottom: 0;
  overflow: hidden;
  flex: 0 1 100%;
  order: 2;
  max-width: 50%;
  max-height: 100%;
  margin: 0;
  border-radius: 0 var(--space--2xl) var(--space--2xl) 0
}
.block--card.solid-round .image img,
.card.solid-round .image img {
  display: block;
  object-fit: contain;
  width: 100%;
  height: 100%;
  margin: 0 var(--space--2xl) 0;
  opacity: 25%
}
.block--card.solid-round .body,
.card.solid-round .body {
  max-width: 23rem;
  padding: var(--space--md) var(--space--lg) 0
}
.block--card.solid-round .body p,
.card.solid-round .body p {
  margin: 0 0 var(--space--lg);
  font-size: var(--font-size--sm)
}
.block--card.solid-round .body .button.white,
.block--card.solid-round .body .cta.white,
.block--card.solid-round .body .user-login-form .white.cas-login-link,
.card.solid-round .body .button.white,
.card.solid-round .body .cta.white,
.card.solid-round .body .user-login-form .white.cas-login-link,
.user-login-form .block--card.solid-round .body .white.cas-login-link,
.user-login-form .card.solid-round .body .white.cas-login-link {
  box-shadow: none;
  font-size: var(--font-size--sm)
}
.block--card.solid-round.blue,
.card.solid-round.blue {
  background-color: var(--blue--lighter--40)
}
.block--card.solid-round.blue .body,
.card.solid-round.blue .body {
  color: var(--blue--darker--40)
}
.block--card.solid-round.blue .body .cta.white:focus,
.block--card.solid-round.blue .body .cta.white:hover,
.block--card.solid-round.blue .body .user-login-form .white.cas-login-link:focus,
.block--card.solid-round.blue .body .user-login-form .white.cas-login-link:hover,
.block--card.solid-round.blue .body a.button.white:focus,
.block--card.solid-round.blue .body a.button.white:hover,
.card.solid-round.blue .body .cta.white:focus,
.card.solid-round.blue .body .cta.white:hover,
.card.solid-round.blue .body .user-login-form .white.cas-login-link:focus,
.card.solid-round.blue .body .user-login-form .white.cas-login-link:hover,
.card.solid-round.blue .body a.button.white:focus,
.card.solid-round.blue .body a.button.white:hover,
.org-chart ul li>a,
.user-login-form .block--card.solid-round.blue .body .white.cas-login-link:focus,
.user-login-form .block--card.solid-round.blue .body .white.cas-login-link:hover,
.user-login-form .card.solid-round.blue .body .white.cas-login-link:focus,
.user-login-form .card.solid-round.blue .body .white.cas-login-link:hover {
  color: var(--white);
  background-color: var(--blue)
}
.block--card.solid-round.green,
.card.solid-round.green,
.pager ul li.is-active a {
  background-color: var(--light-green--lighter--40)
}
.block--card.solid-round.green .title .block__title a,
.card.solid-round.green .title .block__title a {
  color: var(--dark-green)
}
.block--card.solid-round.green .body,
.card.solid-round.green .body {
  color: var(--dark-green--darker--20)
}
.block--card.solid-round.green .body .cta.white,
.block--card.solid-round.green .body .user-login-form .white.cas-login-link,
.block--card.solid-round.green .body a.button.white,
.card.solid-round.green .body .cta.white,
.card.solid-round.green .body .user-login-form .white.cas-login-link,
.card.solid-round.green .body a.button.white,
.user-login-form .block--card.solid-round.green .body .white.cas-login-link,
.user-login-form .card.solid-round.green .body .white.cas-login-link {
  color: var(--green)
}
.block--card.solid-round.green .body .cta.white:focus,
.block--card.solid-round.green .body .cta.white:hover,
.block--card.solid-round.green .body .user-login-form .white.cas-login-link:focus,
.block--card.solid-round.green .body .user-login-form .white.cas-login-link:hover,
.block--card.solid-round.green .body a.button.white:focus,
.block--card.solid-round.green .body a.button.white:hover,
.card.solid-round.green .body .cta.white:focus,
.card.solid-round.green .body .cta.white:hover,
.card.solid-round.green .body .user-login-form .white.cas-login-link:focus,
.card.solid-round.green .body .user-login-form .white.cas-login-link:hover,
.card.solid-round.green .body a.button.white:focus,
.card.solid-round.green .body a.button.white:hover,
.user-login-form .block--card.solid-round.green .body .white.cas-login-link:focus,
.user-login-form .block--card.solid-round.green .body .white.cas-login-link:hover,
.user-login-form .card.solid-round.green .body .white.cas-login-link:focus,
.user-login-form .card.solid-round.green .body .white.cas-login-link:hover {
  color: var(--white);
  background-color: var(--green)
}
.block--card.tile,
.card.tile {
  background: var(--gray--lighter--60);
  background: var(--blue--lighter--60);
  padding: var(--space--md);
  border-radius: var(--space--2xl)
}
.block--card.tile a:after,
.card.tile a:after {
  border-radius: var(--space--2xl)
}
.block--card.tile:hover a:after,
.card.tile:hover a:after {
  border-radius: var(--space--2xl);
  outline: transparent
}
.block--card.tile .image,
.card.tile .image {
  display: flex;
  order: 1;
  justify-content: flex-end;
  margin: 0 0 var(--space--md);
  border-radius: 0 var(--space--2xl) 0 0
}
.block--card.tile .image img,
.card.tile .image img {
  display: block;
  object-fit: scale-down;
  width: auto;
  max-height: 6.25rem;
  margin: 0;
  opacity: 25%
}
.block--card.tile .taxonomy-terms,
.card.tile .taxonomy-terms {
  padding: 0 var(--space--xs)
}
.block--card.tile .taxonomy-terms .taxonomy-term,
.card.tile .taxonomy-terms .taxonomy-term {
  margin: 0;
  padding: 0;
  color: var(--blue--darker--40);
  background-color: transparent;
  font-size: var(--font-size--lg)
}
.block--card.tile .title,
.card.tile .title {
  margin: 0;
  padding: 0 var(--space--xs) var(--space--xs);
  text-transform: uppercase
}
.block--card.tile .title .block__title,
.card.tile .title .block__title {
  margin: 0;
  color: var(--blue--darker--40);
  font-size: var(--font-size--2xl)
}
.block--card.tile .title .block__title a,
.card.tile .title .block__title a {
  font-size: var(--font-size--2xl)
}
.layout-builder-block.block--card .title a::after,
.layout-builder-block.card .title a::after {
  position: initial
}
.block--card,
.card {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  margin-bottom: var(--space--md);
  padding-bottom: var(--space--md)
}
.block--card:focus-within,
.block--card:hover,
.card:focus-within,
.card:hover {
  z-index: 1
}
.block--card:focus-within .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after,
.block--card:hover .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after,
.card:focus-within .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after,
.card:hover .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after {
  box-shadow: var(--shadow--soft--hover)
}
.block--card:focus-within .title a:after,
.card:focus-within .title a:after {
  outline: dotted var(--border-width--md);
  outline-offset: var(--border-width--md)
}
.block--card .image,
.card .image {
  flex: 0 1 100%;
  order: 1;
  width: 100%;
  margin-bottom: var(--space--xs)
}
.block--card .image img,
.card .image img,
.featured-major-splash-area img,
.splash img {
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%
}
.block--card .title,
.card .title {
  flex: 0 1 100%;
  order: 2;
  padding: 0 var(--space--xs)
}
.block--card .title .block__title,
.card .title .block__title {
  margin-top: 0;
  line-height: initial
}
.block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  display: inline-block;
  text-decoration: none
}
.block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after,
.card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  transition: var(--transition-speed--md) var(--ease--standard) box-shadow;
  box-shadow: var(--shadow--soft)
}
.block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: inherit;
  outline: 0;
  background: 0 0
}
.block--card .taxonomy-terms,
.card .taxonomy-terms {
  flex: 0 1 100%;
  order: 3;
  padding: 0 var(--space--xs)
}
#islandora-search-container .form-wrapper,
.block--card .body a,
.block--card .taxonomy-terms a,
.card .body a,
.card .taxonomy-terms a,
.contextual-links li,
.org-chart ul li,
.video-js .vjs-tech {
  position: relative
}
.block--card .date,
.card .date {
  flex: 0 1 100%;
  order: 4;
  padding: 0 var(--space--xs);
  font-weight: 700
}
.block--card .location,
.card .location {
  flex: 0 1 100%;
  order: 4;
  margin-bottom: var(--space--md);
  padding: 0 var(--space--xs);
  font-style: italic
}
.block--card .body,
.card .body {
  flex: 0 1 100%;
  order: 5;
  padding: 0 var(--space--xs);
  line-height: 1.8
}
.block--card .body .date,
.card .body .date {
  font-weight: var(--font-weight--semibold)
}
.block--card .body a[href^="mailto:"],
.card .body a[href^="mailto:"] {
  word-break: break-all
}
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after {
  box-shadow: var(--shadow--dark-mode)
}
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active:after,
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus:after,
.dark-mode .block--card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover:after,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active:after,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus:after,
.dark-mode .card .title a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover:after {
  color: var(--blue--lighter--40);
  box-shadow: var(--shadow--dark-mode--hover)
}
.degree-card {
  display: grid;
  grid-template-areas: "taxonomy" "title" "body" "more";
  grid-template-rows: auto auto 1fr auto
}
.degree-card .title {
  padding: var(--space--md) var(--space--md) 0 var(--space--md);
  grid-area: title
}
.degree-card .title h3 {
  margin-top: 0;
  font-size: var(--font-size--3xl)
}
.degree-card .body h4,
.org-chart {
  color: var(--black);
  font-size: var(--font-size--sm)
}
.degree-card .taxonomy-terms {
  padding: 0;
  grid-area: taxonomy
}
.degree-card .taxonomy-term {
  margin-right: var(--space--xs);
  padding: var(--space--xs) var(--space--sm)
}
.degree-card .department-link .material-icons,
.degree-card .taxonomy-term .material-icons,
.font--dyslexia-friendly .search .search-area .search-box input,
.islandora-front-page .browse-by-icons .icon-with-text .icon-text {
  font-size: var(--icon-size--sm)
}
.degree-card .body {
  padding: 0 var(--space--md) var(--space--sm) var(--space--md);
  grid-area: body
}
.degree-card .body h4 {
  margin-bottom: 0;
  text-transform: uppercase;
  font-weight: 700
}
.alert .alert-body,
.degree-card .department-links>div,
.quicksearch-form-container #quick-search-form {
  margin: var(--space--md) 0
}
.org-chart ul.level-a,
.org-chart ul.level-b,
.org-chart ul.level-sub-a,
a#clip {
  margin-left: 0
}
.degree-card .department-link {
  text-decoration: none;
  font-weight: 700
}
.breadcrumb ol li:last-child,
.status-alert .status {
  font-weight: var(--font-weight--bold)
}
.degree-card .more-link {
  margin-left: var(--space--md);
  grid-area: more
}
.dark-mode .degree-card .department-link:active,
.dark-mode .degree-card .department-link:focus,
.dark-mode .degree-card .department-link:hover {
  background-color: var(--black);
  color: var(--light-green)
}
.donut-chart {
  --chart-size: 18.75rem;
  display: flex;
  flex-flow: row wrap;
  align-items: center
}
.donut-chart .block__title {
  flex: 0 0 100%
}
.donut-chart svg {
  width: var(--chart-size);
  height: var(--chart-size);
  transform: rotate(-90deg);
  background: 0 0;
  border-radius: 50%;
  margin: var(--space--lg)
}
.donut-chart circle {
  fill: transparent;
  stroke-width: 15.915
}
.donut-chart circle:nth-of-type(1) {
  stroke: #429ad2
}
.donut-chart circle:nth-of-type(2) {
  stroke: #003f87
}
.donut-chart circle:nth-of-type(3) {
  stroke: #7ab4da
}
.donut-chart circle:nth-of-type(4) {
  stroke: #0060ab
}
.donut-chart circle:nth-of-type(5) {
  stroke: #afcee1
}
.donut-chart circle:nth-of-type(6) {
  stroke: #007ac8
}
.donut-chart circle:nth-of-type(7),
.donut-chart.light-blue circle:nth-of-type(8) {
  stroke: #e3e7e9
}
.donut-chart circle:nth-of-type(8) {
  stroke: #002f5e
}
.donut-chart .data li {
  list-style: none
}
.donut-chart .data li:before {
  position: relative;
  top: var(--border-width--lg);
  display: inline-block;
  width: var(--space--lg);
  height: var(--space--lg);
  margin-right: var(--space--xs);
  content: ""
}
.donut-chart .data li:nth-of-type(1):before {
  background: #429ad2
}
.donut-chart .data li:nth-of-type(2):before {
  background: #003f87
}
.donut-chart .data li:nth-of-type(3):before {
  background: #7ab4da
}
.donut-chart .data li:nth-of-type(4):before {
  background: #0060ab
}
.donut-chart .data li:nth-of-type(5):before {
  background: #afcee1
}
.donut-chart .data li:nth-of-type(6):before {
  background: #007ac8
}
.donut-chart .data li:nth-of-type(7):before,
.donut-chart.light-blue .data li:nth-of-type(8):before {
  background: #e3e7e9
}
.donut-chart .data li:nth-of-type(8):before {
  background: #002f5e
}
.donut-chart.green circle:nth-of-type(1) {
  stroke: #006b3f
}
.donut-chart.green circle:nth-of-type(2) {
  stroke: #c2dc2c
}
.donut-chart.green circle:nth-of-type(3) {
  stroke: #358a30
}
.donut-chart.green circle:nth-of-type(4) {
  stroke: #d3e570
}
.donut-chart.green circle:nth-of-type(5) {
  stroke: #6aa921
}
.donut-chart.green circle:nth-of-type(6) {
  stroke: #e4edb3
}
.donut-chart.green circle:nth-of-type(7) {
  stroke: #9fc812
}
.donut-chart.green circle:nth-of-type(8) {
  stroke: #f5f6f7
}
.donut-chart.green .data li:nth-of-type(1):before {
  background: #006b3f
}
.donut-chart.green .data li:nth-of-type(2):before {
  background: #c2dc2c
}
.donut-chart.green .data li:nth-of-type(3):before {
  background: #358a30
}
.donut-chart.green .data li:nth-of-type(4):before {
  background: #d3e570
}
.donut-chart.green .data li:nth-of-type(5):before {
  background: #6aa921
}
.donut-chart.green .data li:nth-of-type(6):before {
  background: #e4edb3
}
.donut-chart.green .data li:nth-of-type(7):before {
  background: #9fc812
}
.donut-chart.green .data li:nth-of-type(8):before {
  background: #f5f6f7
}
.donut-chart.light-blue circle:nth-of-type(1) {
  stroke: #006ebb
}
.donut-chart.light-blue circle:nth-of-type(2) {
  stroke: #57b8f7
}
.donut-chart.light-blue circle:nth-of-type(3) {
  stroke: #1681ca
}
.donut-chart.light-blue circle:nth-of-type(4) {
  stroke: #7ecafa
}
.donut-chart.light-blue circle:nth-of-type(5) {
  stroke: #2c93d9
}
.donut-chart.light-blue circle:nth-of-type(6) {
  stroke: #b3d9f1
}
.donut-chart.light-blue circle:nth-of-type(7) {
  stroke: #42a6e8
}
.donut-chart.light-blue .data li:nth-of-type(1):before {
  background: #006ebb
}
.donut-chart.light-blue .data li:nth-of-type(2):before {
  background: #57b8f7
}
.donut-chart.light-blue .data li:nth-of-type(3):before {
  background: #1681ca
}
.donut-chart.light-blue .data li:nth-of-type(4):before {
  background: #7ecafa
}
.donut-chart.light-blue .data li:nth-of-type(5):before {
  background: #2c93d9
}
.donut-chart.light-blue .data li:nth-of-type(6):before {
  background: #b3d9f1
}
.donut-chart.light-blue .data li:nth-of-type(7):before {
  background: #42a6e8
}
.donut-chart.pie circle {
  fill: transparent;
  stroke-width: 31.83
}
.flowchart ol {
  display: flex;
  flex-flow: column;
  padding: 0
}
.flowchart li,
.org-chart ul {
  flex-flow: column;
  display: flex
}
.flowchart li {
  max-width: 22.5rem;
  margin: auto;
  color: var(--black)
}
#quick-search-list-nav .ln-letters p,
.block--local-tasks-block ul:not(.contextual-links) li,
.messages ul,
.org-chart ul,
.page-islandora .site-footer #edit-actions {
  margin-bottom: 0
}
.event-list .event .icon .icon-with-text .icon-text,
.flowchart .block__title {
  margin-top: 0
}
.flowchart .material-icons {
  display: block
}
.flowchart .flow-down {
  display: block;
  margin: auto;
  padding: var(--space--md)
}
.flowchart .flow-right {
  display: none;
  align-self: center;
  padding: var(--space--md)
}
.org-chart {
  --chart-background-color: var(--white);
  --chart-background-color--dark-mode: var(--black);
  --chart-border-width: 3px;
  --chart-line-color: var(--gray--lighter--40);
  --chart-max-size: 18.75rem;
  --chart-spacing: var(--space--md);
  position: relative;
  display: grid;
  justify-content: center;
  background: var(--chart-background-color)
}
.org-chart ul {
  position: relative;
  margin-left: var(--chart-spacing);
  padding: 0;
  list-style: none
}
.org-chart ul li a,
.org-chart ul li span {
  position: relative;
  display: block;
  max-width: var(--chart-max-size);
  margin: 0;
  margin-top: var(--chart-spacing);
  margin-left: var(--chart-spacing);
  padding: calc(var(--chart-spacing)/ 2);
  text-align: center;
  text-decoration: none
}
.breadcrumb ol li,
.pager ul li,
.pager ul li a {
  display: inline-block
}
.org-chart ul li.dark > span {
  background: var(--gray);
  color: var(--white)
}
.org-chart ul li.dark>a,
.pane-islandora-solr-basic-facets .islandora-solr-facet .plusminus a:active,
.pane-islandora-solr-basic-facets .islandora-solr-facet .plusminus a:focus,
.pane-islandora-solr-basic-facets .islandora-solr-facet .plusminus a:hover {
  color: var(--white);
  background-color: var(--dark-blue)
}
.org-chart ul li.light > span {
  background: var(--gray--lighter--80)
}
.org-chart ul li.light > a {
  background-color: var(--blue--lighter--40);
  color: var(--dark-blue--darker--60)
}
.org-chart ul li.light > a:active,
.org-chart ul li.light > a:focus,
.org-chart ul li.light > a:hover {
  color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.org-chart ul.level-a .item-level-a {
  margin-bottom: var(--chart-spacing)
}
.org-chart ul.level-a .item-level-a > a,
.org-chart ul.level-a .item-level-a > span {
  max-width: none;
  margin: 0
}
.org-chart ul.level-b .item-level-b > span > a {
  max-width: none;
  margin-right: calc(var(--chart-spacing)/ 2);
  margin-left: var(--chart-spacing)
}
.org-chart .item-level-b,
.org-chart .item-level-c,
.org-chart .item-level-d,
.org-chart .item-level-e,
.org-chart .item-level-f,
.org-chart .item-level-g,
.org-chart .item-level-h,
.org-chart .item-level-i,
.org-chart .item-level-j,
.org-chart .item-level-k {
  border-left: solid var(--chart-border-width) var(--chart-line-color)
}
.org-chart .item-level-b > a:before,
.org-chart .item-level-b > span:before,
.org-chart .item-level-c > a:before,
.org-chart .item-level-c > span:before,
.org-chart .item-level-d > a:before,
.org-chart .item-level-d > span:before,
.org-chart .item-level-e > a:before,
.org-chart .item-level-e > span:before,
.org-chart .item-level-f > a:before,
.org-chart .item-level-f > span:before,
.org-chart .item-level-g > a:before,
.org-chart .item-level-g > span:before,
.org-chart .item-level-h > a:before,
.org-chart .item-level-h > span:before,
.org-chart .item-level-i > a:before,
.org-chart .item-level-i > span:before,
.org-chart .item-level-j > a:before,
.org-chart .item-level-j > span:before,
.org-chart .item-level-k > a:before,
.org-chart .item-level-k > span:before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: calc(var(--chart-spacing) + var(--chart-border-width));
  height: 50%;
  content: "";
  transform: translate(-100%);
  border-top: solid var(--chart-border-width) var(--chart-line-color);
  background: 0 0
}
.org-chart .item-level-b:last-of-type > a:before,
.org-chart .item-level-b:last-of-type > span:before,
.org-chart .item-level-c:last-of-type > a:before,
.org-chart .item-level-c:last-of-type > span:before,
.org-chart .item-level-d:last-of-type > a:before,
.org-chart .item-level-d:last-of-type > span:before,
.org-chart .item-level-e:last-of-type > a:before,
.org-chart .item-level-e:last-of-type > span:before,
.org-chart .item-level-f:last-of-type > a:before,
.org-chart .item-level-f:last-of-type > span:before,
.org-chart .item-level-g:last-of-type > a:before,
.org-chart .item-level-g:last-of-type > span:before,
.org-chart .item-level-h:last-of-type > a:before,
.org-chart .item-level-h:last-of-type > span:before,
.org-chart .item-level-i:last-of-type > a:before,
.org-chart .item-level-i:last-of-type > span:before,
.org-chart .item-level-j:last-of-type > a:before,
.org-chart .item-level-j:last-of-type > span:before,
.org-chart .item-level-k:last-of-type > a:before,
.org-chart .item-level-k:last-of-type > span:before {
  background: var(--chart-background-color)
}
.org-chart .item-level-b:last-child > .level-c:before,
.org-chart .item-level-c:last-child > .level-d:before,
.org-chart .item-level-d:last-child > .level-e:before,
.org-chart .item-level-e:last-child > .level-f:before,
.org-chart .item-level-f:last-child > .level-g:before,
.org-chart .item-level-g:last-child > .level-h:before,
.org-chart .item-level-h:last-child > .level-i:before,
.org-chart .item-level-i:last-child > .level-j:before,
.org-chart .item-level-j:last-child > .level-k:before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: calc(var(--chart-spacing) + var(--chart-border-width));
  height: 100%;
  content: "";
  transform: translate(-100%);
  background: var(--chart-background-color)
}
.dark-mode .org-chart,
.dark-mode .org-chart .item-level-b:last-child>.level-c:before,
.dark-mode .org-chart .item-level-b:last-of-type>a:before,
.dark-mode .org-chart .item-level-b:last-of-type>span:before,
.dark-mode .org-chart .item-level-c:last-child>.level-d:before,
.dark-mode .org-chart .item-level-c:last-of-type>a:before,
.dark-mode .org-chart .item-level-c:last-of-type>span:before,
.dark-mode .org-chart .item-level-d:last-child>.level-e:before,
.dark-mode .org-chart .item-level-d:last-of-type>a:before,
.dark-mode .org-chart .item-level-d:last-of-type>span:before,
.dark-mode .org-chart .item-level-e:last-child>.level-f:before,
.dark-mode .org-chart .item-level-e:last-of-type>a:before,
.dark-mode .org-chart .item-level-e:last-of-type>span:before,
.dark-mode .org-chart .item-level-f:last-child>.level-g:before,
.dark-mode .org-chart .item-level-f:last-of-type>a:before,
.dark-mode .org-chart .item-level-f:last-of-type>span:before,
.dark-mode .org-chart .item-level-g:last-child>.level-h:before,
.dark-mode .org-chart .item-level-g:last-of-type>a:before,
.dark-mode .org-chart .item-level-g:last-of-type>span:before,
.dark-mode .org-chart .item-level-h:last-child>.level-i:before,
.dark-mode .org-chart .item-level-h:last-of-type>a:before,
.dark-mode .org-chart .item-level-h:last-of-type>span:before,
.dark-mode .org-chart .item-level-i:last-child>.level-j:before,
.dark-mode .org-chart .item-level-i:last-of-type>a:before,
.dark-mode .org-chart .item-level-i:last-of-type>span:before,
.dark-mode .org-chart .item-level-j:last-child>.level-k:before,
.dark-mode .org-chart .item-level-j:last-of-type>a:before,
.dark-mode .org-chart .item-level-j:last-of-type>span:before,
.dark-mode .org-chart .item-level-k:last-of-type>a:before,
.dark-mode .org-chart .item-level-k:last-of-type>span:before {
  background: var(--chart-background-color--dark-mode)
}
.dark-mode .org-chart .light > a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .org-chart .light > a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .org-chart .light > a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  background-image: var(--gradient--vertical--dark-blue)
}
.dark-mode .org-chart .item-level-b > a:before,
.dark-mode .org-chart .item-level-b > span:before,
.dark-mode .org-chart .item-level-b:last-of-type > a:before,
.dark-mode .org-chart .item-level-b:last-of-type > span:before {
  background: var(--chart-line-color)
}
.block--countdown {
  padding: var(--space--xl)
}
.block--countdown div[role=timer] {
  display: flex;
  flex-flow: column;
  justify-content: center;
  margin-top: var(--space--xl);
  list-style: none
}
.block--countdown div[role=timer] p {
  padding: var(--space--2xl) var(--space--3xl);
  text-align: center;
  font-size: 1.5
}
.block--countdown div[role=timer] p:last-of-type,
.email_signature_table td,
.page-islandora-search .islandora-solr-search-result dl.solr-fields,
.toggle-menu:active {
  border: none
}
.block--countdown div[role=timer] p .number {
  display: block;
  margin-bottom: var(--space--md);
  font-size: 2.5em
}
#block-system-main-menu .ultimenu--horizontal>li .expand-icon.desktop,
#block-system-main-menu ul ul,
#block-system-main-menu>.menu>li .expand-icon.desktop,
.block--countdown .hidden,
.image-link--simple .image-link:after,
.image-link--simple .image-link:before,
.language,
.main-navigation .ultimenu--horizontal>li .expand-icon.desktop,
.main-navigation>.menu>li .expand-icon.desktop,
.simple .image-link:after,
.simple .image-link:before,
.user-login-form .form-actions,
.user-login-form .password,
.user-login-form .textfield {
  display: none
}
.display-settings {
  display: flex;
  flex-flow: row wrap;
  grid-area: display-settings;
  align-self: start;
  justify-content: flex-start
}
.display-settings .icon-with-text {
  display: flex;
  align-items: center;
  width: initial;
  padding: var(--space--2xs);
  color: var(--white);
  border-radius: 0;
  background: 0 0;
  box-shadow: none
}
.display-settings .icon-with-text .material-icons {
  position: relative;
  margin-right: var(--border-width--md);
  font-size: var(--icon-size--xs)
}
.display-settings .toggle-display-settings {
  width: initial;
  height: initial;
  min-height: var(--touch-target--min);
  border: none;
  outline-offset: calc(-1 * var(--border-width--md));
  background-color: var(--dark-blue)
}
.display-settings .toggle-display-settings:active,
.display-settings .toggle-display-settings:focus,
.display-settings .toggle-display-settings:hover {
  color: var(--dark-blue--darker--60);
  background-image: var(--gradient--vertical--light-blue)
}
.display-settings .toggle-display-settings:focus {
  border-color: var(--dark-blue--darker--40)
}
.display-settings .display-settings-menu {
  position: relative;
  z-index: 3;
  flex: 0 0 75%;
  padding: var(--space--sm);
  transition: var(--ease--standard) var(--transition-speed--fast) all;
  color: var(--white);
  background: var(--dark-blue--darker--40)
}
.display-settings .display-settings-menu.closed {
  visibility: hidden;
  height: 0;
  opacity: 0
}
.display-settings .display-settings-menu.open,
.lightbox-overlay.shown {
  visibility: visible;
  opacity: 1
}
.display-settings .display-settings-menu .menu-container {
  display: flex;
  flex: 0 0 100%;
  flex-flow: row wrap
}
.display-settings .display-settings-menu .menu-container .theme-selection {
  flex: 0 0 40%
}
.display-settings .display-settings-menu .menu-container .font-selection,
.pane-islandora-solr-sort .item-list {
  flex: 1
}
.display-settings .display-settings-menu .menu-container fieldset {
  display: flex;
  flex-flow: column nowrap
}
.display-settings .display-settings-menu .menu-container fieldset legend {
  margin: 0;
  padding: var(--space--xs)
}
.display-settings .display-settings-menu .menu-container fieldset input[type=radio] + label {
  align-self: flex-start
}
.display-settings .display-settings-menu .reset-button {
  display: flex;
  margin: var(--space--md) auto 0;
  font-size: var(--font-size--sm)
}
.display-settings .display-settings-menu .reset-button .material-icons {
  position: relative;
  align-self: center;
  margin-right: var(--space--xs);
  font-size: inherit
}
.event-list .event {
  position: relative;
  display: grid;
  grid-column-gap: var(--space--sm);
  grid-template-areas: "date title" "date location" "icon body" "icon body";
  grid-template-columns: var(--toggle-size--md) auto;
  margin-bottom: var(--space--sm)
}
.event-list .event:focus-within,
.event-list .event:hover {
  box-shadow: var(--shadow--soft--hover)
}
.event-list .event:focus-within {
  outline: var(--border-width--md) dotted
}
.event-list .event .title {
  flex: 1 0 70%;
  grid-area: title;
  margin-top: var(--space--md)
}
.event-list .event .title h2,
.event-list .event .title h3,
.event-list .event .title h4,
.event-list .event .title h5,
.event-list .event .title h6 {
  margin: 0;
  line-height: .75em
}
.event-list .event .title a:active,
.event-list .event .title a:focus,
.event-list .event .title a:hover {
  background: 0 0;
  outline: 0
}
.event-list .event .title a:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ""
}
.event-list .event .icon {
  grid-area: icon
}
.event-list .event .icon .icon-with-text {
  max-width: 100%;
  color: var(--dark-blue--darker--40);
  background-color: var(--light-green)
}
.event-list .event .icon .icon-with-text .material-icons {
  font-size: var(--icon-size--xs)
}
.event-list .event .date {
  grid-area: date;
  width: var(--toggle-size--md);
  text-align: center;
  text-transform: uppercase;
  background-color: var(--blue);
  line-height: 1.5
}
.event-list .event .date .day,
.event-list .event .date .month {
  display: flex;
  justify-content: center;
  height: 50%;
  padding: 0 var(--space--sm);
  color: var(--white);
  background-color: var(--blue)
}
.event-list .event .date .month {
  align-items: end;
  font-size: var(--font-size--2xl);
  font-weight: var(--font-weight--regular)
}
.event-list .event .date .day {
  align-items: start;
  white-space: nowrap;
  word-spacing: -.2em;
  font-size: var(--font-size--3xl);
  font-weight: var(--font-weight--semibold)
}
.event-list .event .location {
  grid-area: location
}
.dark-mode .event:focus-within,
.dark-mode .event:hover {
  box-shadow: var(--shadow--dark-mode)
}
.checkbox,
.radio {
  position: relative;
  margin-bottom: var(--space--xs)
}
input[type=checkbox],
input[type=radio] {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  margin: 0;
  padding: 0;
  opacity: 0;
  border: 0;
  outline: 0
}
.image-link,
.image-link a,
input[type=radio] + label:before {
  border-radius: 50%
}
input[type=checkbox] + label,
input[type=radio] + label {
  position: relative;
  display: inline-block;
  align-self: center;
  margin: 0;
  margin-left: var(--checkbox-size);
  padding-left: var(--space--xs);
  font-weight: var(--font-weight--regular);
  line-height: var(--checkbox-size)
}
.breadcrumb ol li,
.breadcrumb ol li:before,
.views-exposed-form>div {
  margin-right: var(--space--xs)
}
input[type=checkbox] + label:before,
input[type=radio] + label:before {
  position: absolute;
  left: 0;
  display: grid;
  justify-items: center;
  align-items: center;
  box-sizing: border-box;
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  content: "";
  transform: translatex(-100%);
  border-width: var(--border-width--md);
  border-style: solid;
  border-color: var(--gray--lighter--60);
  background-color: var(--gray--lighter--80);
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: calc(var(--checkbox-size)/ 1.5)
}
input[type=checkbox]:focus + label:before,
input[type=radio]:focus + label:before {
  border-color: var(blue--lighter--40);
  box-shadow: var(--shadow--soft)
}
input[type=checkbox]:checked + label:before {
  background-image: url(../images/forms/check.png)
}
.form .description {
  color: var(--gray)
}
input[type=radio]:checked + label:before {
  background-image: url(../images/forms/radio.png)
}
.user-login-form {
  display: flex;
  flex-flow: column;
  width: 50%;
  margin: auto;
  padding: var(--space--md)
}
.user-login-form .cas-login-link {
  margin: 0;
  order: -1
}
.user-login-form .manual-login {
  margin-bottom: var(--space--md);
  width: 50%
}
.alert.emergency .alert-header,
.dark-mode .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .user-login-form .cas-login-link:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.headline.box-headline .block--countdown,
.headline.box-headline caption,
.headline.left-aligned-bar .block--countdown,
.headline.left-aligned-bar caption,
.headline.left-aligned-bar h5,
.headline.left-aligned-bar h6,
.headline.right-aligned-bar .block--countdown,
.headline.right-aligned-bar caption,
.headline.right-aligned-bar h5,
.headline.right-aligned-bar h6,
.image-link a:visited {
  color: var(--white)
}
.headline.box-headline {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue);
  align-self: start;
  max-width: calc((2 * var(--content-area-max-width))/ 3);
  margin: var(--space--md);
  padding: var(--space--lg);
  background-color: rgba(var(--dark-blue--darker--40--rgb),.7)
}
.headline.left-aligned-bar,
.headline.right-aligned-bar {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  position: relative;
  align-self: end;
  width: 90vw;
  margin-top: 25vh;
  margin-bottom: var(--space--xl);
  padding: var(--space--md);
  background: rgba(var(--blue--rgb),.8)
}
.headline.right-aligned-bar,
.pane-islandora-solr-search-navigation #islandora-solr-search-next-link,
.pane-islandora-solr-search-navigation #islandora-solr-search-prev-link {
  justify-self: end
}
.image-link {
  --image-link-size: 12.5rem;
  --image-link-size--sm: 8.25rem;
  position: relative;
  width: var(--image-link-size);
  height: var(--image-link-size);
  margin-bottom: var(--space--xl);
  transition: .3s cubic-bezier(.25,.8,.25,1);
  box-shadow: var(--shadow--soft)
}
.image-link:after,
.image-link:before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: block;
  content: "";
  transition: .5s;
  border-radius: 50%
}
.image-link:before {
  width: 70%;
  height: 70%;
  transform: translate(-20%,-10%);
  background: rgba(var(--blue--rgb),.2)
}
.image-link:after {
  width: 105%;
  height: 105%;
  transform: translate(15%,10%);
  background: rgba(var(--blue--rgb),.1)
}
.image-link:focus-within,
.image-link:hover {
  box-shadow: var(--shadow--soft--hover)
}
.image-link:focus-within:before,
.image-link:hover:before {
  transform: translate(60%,45%)
}
.image-link:focus-within:after,
.image-link:hover:after {
  transform: translate(-20%,-10%)
}
.image-link .image {
  background-color: var(--dark-blue);
  filter: brightness(.75)
}
.image-link a {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  color: var(--white);
  background: rgba(var(--dark-blue--darker--40--rgb),.7);
  font-size: var(--font-size--lg);
  font-weight: 700
}
.image-link a:active,
.image-link a:focus,
.image-link a:hover {
  background: rgba(var(--dark-blue--darker--40--rgb),.9);
  outline-color: var(--dark-blue)
}
.image-link a:after {
  content: ""
}
.block--image-link:nth-of-type(2) .image-link:before {
  width: 100%;
  height: 100%;
  transform: translate(4%,20%)
}
.block--image-link:nth-of-type(2) .image-link:after {
  width: 80%;
  height: 80%;
  transform: translate(20%,-13%)
}
.block--image-link:nth-of-type(2) .image-link:focus-within:before,
.block--image-link:nth-of-type(2) .image-link:hover:before {
  width: 100%;
  height: 100%;
  transform: translate(10%,-18%)
}
.block--image-link:nth-of-type(2) .image-link:focus-within:after,
.block--image-link:nth-of-type(2) .image-link:hover:after {
  width: 80%;
  height: 80%;
  transform: translate(0,40%)
}
.block--image-link:nth-of-type(3) .image-link:before {
  width: 110%;
  height: 110%;
  transform: translate(12%,-9%)
}
.block--image-link:nth-of-type(3) .image-link:after {
  width: 80%;
  height: 80%;
  transform: translate(-12%,30%)
}
.block--image-link:nth-of-type(3) .image-link:focus-within:before,
.block--image-link:nth-of-type(3) .image-link:hover:before {
  transform: translate(-12%,-20%)
}
.block--image-link:nth-of-type(3) .image-link:focus-within:after,
.block--image-link:nth-of-type(3) .image-link:hover:after {
  transform: translate(50%,14%)
}
.smaller .image-link {
  width: var(--image-link-size--sm);
  height: var(--image-link-size--sm);
  margin-bottom: var(--space--md)
}
.green .image-link:not(.green) .image {
  background-color: var(--light-green)
}
.green .image-link:not(.green) a {
  color: var(--dark-blue--darker--40);
  background-color: rgba(var(--light-green--rgb),.8)
}
.green .image-link:not(.green) a:active,
.green .image-link:not(.green) a:focus,
.green .image-link:not(.green) a:hover {
  background: rgba(var(--light-green--rgb),.95)
}
.green .image-link:not(.green):before {
  background: rgba(var(--light-green--rgb),.5)
}
.green .image-link:not(.green):after {
  background: rgba(var(--light-green--rgb),.3)
}
.dark-mode .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .image-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  background-image: none
}
.dark-mode .image-link:before {
  background: rgba(var(--blue--rgb),.5)
}
.dark-mode .image-link:after {
  background: rgba(var(--blue--rgb),.7)
}
.font--dyslexia-friendly .block--image-link {
  word-spacing: -.5em;
  line-height: 2em
}
.font--dyslexia-friendly .block--image-link a {
  font-size: font-size(var--font-size--sm)
}
.font--dyslexia-friendly .block--image-link.smaller {
  line-height: 1.2em
}
.font--dyslexia-friendly .block--image-link.smaller a {
  font-size: var(--font-size--xs)
}
.block--image-with-description {
  display: grid;
  margin-bottom: var(--space--lg);
  grid-area: body;
  grid-template-areas: "image" "body";
  grid-template-columns: auto;
  grid-template-rows: auto auto auto
}
.block--image-with-description .block__title,
.download-link,
.standard-margin--top {
  margin-top: var(--space--sm)
}
.block--image-with-description .image {
  grid-area: image
}
.block--image-with-description .image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.block--image-with-description .body,
.standard-padding {
  padding: var(--space--sm)
}
.block--image-with-description .body:not([class$="-bg"]) {
  border: solid var(--border-width--md) var(--blue);
  background: var(--white)
}
.dark-mode .block--image-with-description .body:not([class$="-bg"]) {
  background-color: var(--gray--darker--80)
}
.lightbox-overlay {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  transition: opacity var(--transition-speed--fast) ease-out;
  background: rgba(0,0,0,.9)
}
.lightbox-overlay .lightbox-dialog {
  -ms-grid-columns: 33% 34% 33%;
  display: grid;
  grid-template-areas: "... ... button" "content content content" "cta cta cta";
  grid-template-columns: 33% 34% 33%;
  width: 100%
}
.lightbox-overlay .lightbox-close-dialog {
  grid-area: button;
  align-self: start;
  justify-self: end;
  margin-bottom: var(--space--sm);
  border: 0;
  outline-color: var(--white)
}
.lightbox-overlay .lightbox-close-dialog .material-icons {
  display: block;
  font-size: var(--icon-size--sm)
}
.lightbox-overlay .lightbox-close-dialog .button-text {
  display: block;
  font-size: var(--font-size--xs)
}
.lightbox-overlay .lightbox-content {
  grid-area: content;
  align-self: end
}
.lightbox-overlay .lightbox-cta-link {
  grid-area: cta;
  max-width: 100%;
  margin: 0 auto;
  margin-top: var(--space--lg)
}
.lightbox-overlay.invisible {
  visibility: hidden;
  opacity: 0
}
.alert {
  --alert-logo-size: 4.25rem;
  width: 100%;
  padding: var(--space--md)
}
.alert .alert-header {
  border-bottom: none;
  margin-top: 0
}
.alert .alert-icon {
  width: var(--alert-logo-size);
  float: left;
  margin-right: var(--space--md)
}
.alert .alert-icon svg {
  position: relative;
  width: var(--alert-logo-size);
  height: auto
}
.alert .alert-footer,
.page-islandora .site-footer #block-user-login,
.pane-islandora-solr-basic-facets .islandora-solr-range-slider,
.text-align-right,
.vbo-view-form .form-actions,
.views-field-views-bulk-operations-bulk-form .form-actions {
  text-align: right
}
.alert.emergency {
  color: var(--white);
  background-color: var(--red)
}
.alert.emergency svg,
.vik-st11,
.wwu-locations .cls-2,
.wwu-locations .st0,
.wwu-locations .st1 {
  fill: var(--white)
}
#islandora-search-container .play-button svg,
#islandora-search-container .social-icon svg,
.dark-mode .block--schedule .schedule-item .play-button svg,
.dark-mode .block--schedule .schedule-item .social-icon svg,
.dark-mode .timeline-block:nth-of-type(even) .play-button svg,
.dark-mode .timeline-block:nth-of-type(even) .social-icon svg,
.dark-mode .timeline-block:nth-of-type(odd) .play-button svg,
.dark-mode .timeline-block:nth-of-type(odd) .social-icon svg,
.ultimenu__region .play-button svg,
.ultimenu__region .social-icon svg,
.vik-st6,
.western-header-region .block .play-button svg,
.western-header-region .block .social-icon svg {
  fill: var(--dark-blue)
}
.alert.weather {
  color: var(--dark-blue);
  background-color: var(--yellow)
}
.status-alert .material-icons,
.status-alert .severity,
.status-alert .status {
  color: var(--blue--darker--60);
  text-align: center
}
.messages {
  margin-top: var(--space--md)
}
.block--pullquote blockquote .body,
.featured-major-splash-area>div:nth-of-type(1),
.splash>div:nth-of-type(1),
.status-alert summary {
  margin-bottom: var(--space--md)
}
.messages--error,
.messages--status,
.messages--warning {
  display: block;
  margin-bottom: var(--space--sm);
  padding: var(--space--sm);
  text-align: center;
  border: solid var(--border-width--md)
}
.messages--status {
  border-color: rgba(var(--blue--rgb),.75);
  background-color: rgba(var(--blue--rgb),.15)
}
.messages--warning,
.node--unpublished:before {
  background-color: rgba(var(--yellow--rgb),.15)
}
.messages--warning {
  border-color: rgba(var(--yellow--rgb),.75)
}
.messages--error {
  border-color: rgba(var(--red--rgb),.75);
  background-color: rgba(var(--red--rgb),.15)
}
.node--unpublished {
  border-top: solid var(--border-width--md--rgb) var(--yellow)
}
.node--unpublished:before {
  position: absolute;
  right: 0;
  content: "Unpublished";
  border-color: rgba(var(--yellow--rgb),.75)
}
.status-alert .material-icons {
  display: block;
  font-size: var(--icon-size--lg)
}
.status-alert .status {
  font-size: var(--font-size--xl)
}
#block-system-main-menu .ultimenu--horizontal .block--countdown,
#block-system-main-menu .ultimenu--horizontal caption,
#block-system-main-menu .ultimenu--horizontal h5,
#block-system-main-menu .ultimenu--horizontal h6,
#block-system-main-menu>.menu .block--countdown,
#block-system-main-menu>.menu caption,
#block-system-main-menu>.menu h5,
#block-system-main-menu>.menu h6,
.main-navigation .ultimenu--horizontal .block--countdown,
.main-navigation .ultimenu--horizontal caption,
.main-navigation .ultimenu--horizontal h5,
.main-navigation .ultimenu--horizontal h6,
.main-navigation>.menu .block--countdown,
.main-navigation>.menu caption,
.main-navigation>.menu h5,
.main-navigation>.menu h6,
.ultimenu__region {
  color: var(--white)
}
.status-alert summary {
  padding: var(--space--xs);
  cursor: pointer;
  text-align: center;
  font-size: var(--font-size--lg)
}
.status-alert--message {
  padding: var(--space--md);
  border: solid var(--border-width--md);
  border-color: rgba(var(--blue--rgb),.75);
  background-color: rgba(var(--blue--rgb),.15)
}
.status-alert--message.status-alert--minor {
  border-color: rgba(var(--blue--rgb),.75);
  background-color: rgba(var(--blue--rgb),.15)
}
.status-alert--message.status-alert--major {
  border-color: rgba(var(--yellow--rgb),.75);
  background-color: rgba(var(--yellow--rgb),.15)
}
.status-alert--message.status-alert--critical {
  border-color: rgba(var(--red--rgb),.75);
  background-color: rgba(var(--red--rgb),.15)
}
.status-alert--message.status-alert--resolved {
  border-color: rgba(var(--green--rgb),.75);
  background-color: rgba(var(--green--rgb),.15)
}
.breadcrumb {
  margin-top: var(--space--sm);
  font-size: var(--font-size--sm)
}
.breadcrumb ol,
.menu,
.pager ul {
  padding: 0;
  list-style: none
}
#quick-search-list-nav .ln-disabled,
.page-islandora-search .islandora-solr-search-result .islandora-inline-metadata dt {
  font-weight: var(--font-weight--regular)
}
.breadcrumb ol li:last-child::before {
  font-weight: initial
}
.block--pullquote blockquote .name,
.block--statistic .number,
.block--testimonial .name,
.bold,
.search-wrapper .query {
  font-weight: var(--font-weight--bold)
}
.breadcrumb li + li::before {
  content: ">"
}
.menu.horizontal {
  display: flex;
  justify-content: center
}
.link-list {
  padding: 0 var(--space--sm)
}
#edit-date-filter-date-filter-from,
#edit-date-filter-date-filter-to,
.col {
  padding: var(--space--xs)
}
.block--local-tasks-block {
  overflow: auto;
  max-width: calc(100vw - var(--space--lg));
  margin: var(--space--sm) 0;
  font-size: var(--font-size--sm)
}
.block--local-tasks-block ul:not(.contextual-links) {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-bottom: solid var(--border-width--lg) var(--gray)
}
.block--local-tasks-block ul:not(.contextual-links):nth-of-type(2),
.tabs-primary:nth-of-type(2),
.transcript-link:nth-of-type(2) {
  margin-top: var(--space--xs);
  margin-left: var(--space--sm);
  border-bottom-color: var(--gray--lighter--80)
}
.block--local-tasks-block ul:not(.contextual-links) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  display: block;
  padding: var(--space--2xs) var(--space--sm);
  text-decoration: none;
  color: var(--black);
  border-right: solid var(--border-width--lg) var(--white);
  background-color: var(--gray--lighter--80)
}
.tabs-primary,
.transcript-link {
  display: flex;
  margin-bottom: var(--space--sm);
  padding-left: 0;
  list-style: none;
  border-bottom: solid var(--border-width--lg) var(--gray);
  font-size: var(--font-size--sm)
}
#islandora-search-container,
.ultimenu__region {
  background: var(--gray);
  padding: var(--space--md)
}
.tabs-primary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.transcript-link a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  display: block;
  margin: 0;
  padding: var(--space--xs) var(--space--sm);
  text-decoration: none;
  color: var(--black);
  border-right: solid var(--border-width--lg) var(--white);
  background-color: var(--gray--lighter--80)
}
.dark-mode .block--local-tasks-block ul:not(.contextual-links) a {
  color: var(--black);
  border-color: var(--black)
}
.dark-mode .block--local-tasks-block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  border-right: var(--gray--darker--80)
}
#block-system-main-menu,
.main-navigation {
  grid-area: main-nav;
  border-top: solid var(--blue--darker--40) var(--border-width--sm);
  font-family: var(--font--condensed)
}
#block-system-main-menu .ultimenu--horizontal,
#block-system-main-menu > .menu,
.main-navigation .ultimenu--horizontal,
.main-navigation > .menu {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0;
  padding-left: 0
}
#block-system-main-menu .ultimenu--horizontal > li,
#block-system-main-menu > .menu > li,
.main-navigation .ultimenu--horizontal > li,
.main-navigation > .menu > li {
  display: grid;
  grid-template-areas: "link icon" "flyout flyout";
  grid-template-columns: 1fr var(--toggle-size--sm);
  grid-template-rows: auto auto;
  width: 100%;
  border-bottom: var(--border-width--sm) solid var(--blue--darker--20);
  border-left: none
}
#block-system-main-menu .ultimenu--horizontal > li:focus-within,
#block-system-main-menu .ultimenu--horizontal > li:hover,
#block-system-main-menu > .menu > li:focus-within,
#block-system-main-menu > .menu > li:hover,
.main-navigation .ultimenu--horizontal > li:focus-within,
.main-navigation .ultimenu--horizontal > li:hover,
.main-navigation > .menu > li:focus-within,
.main-navigation > .menu > li:hover {
  background-image: var(--gradient--vertical--light-blue)
}
#block-system-main-menu .ultimenu--horizontal > li:focus-within .expand-icon,
#block-system-main-menu .ultimenu--horizontal > li:hover .expand-icon,
#block-system-main-menu > .menu > li:focus-within .expand-icon,
#block-system-main-menu > .menu > li:hover .expand-icon,
.main-navigation .ultimenu--horizontal > li:focus-within .expand-icon,
.main-navigation .ultimenu--horizontal > li:hover .expand-icon,
.main-navigation > .menu > li:focus-within .expand-icon,
.main-navigation > .menu > li:hover .expand-icon {
  color: var(--dark-blue--darker--60)
}
#block-system-main-menu .ultimenu--horizontal > li > a,
#block-system-main-menu > .menu > li > a,
.main-navigation .ultimenu--horizontal > li > a,
.main-navigation > .menu > li > a {
  position: relative;
  grid-column: 1/span all;
  grid-row: 1/span 1;
  width: 100%;
  min-height: var(--touch-target--min);
  margin: 0;
  padding: var(--space--sm);
  transition: none;
  text-align: left;
  white-space: normal;
  text-decoration: none;
  font-weight: var(--font-weight--regular);
  line-height: 1
}
#block-system-main-menu .ultimenu--horizontal > li > a:active,
#block-system-main-menu .ultimenu--horizontal > li > a:focus,
#block-system-main-menu .ultimenu--horizontal > li > a:hover,
#block-system-main-menu > .menu > li > a:active,
#block-system-main-menu > .menu > li > a:focus,
#block-system-main-menu > .menu > li > a:hover,
.main-navigation .ultimenu--horizontal > li > a:active,
.main-navigation .ultimenu--horizontal > li > a:focus,
.main-navigation .ultimenu--horizontal > li > a:hover,
.main-navigation > .menu > li > a:active,
.main-navigation > .menu > li > a:focus,
.main-navigation > .menu > li > a:hover {
  background-size: 0 0
}
#block-system-main-menu .ultimenu--horizontal > li .expand-icon,
#block-system-main-menu > .menu > li .expand-icon,
.main-navigation .ultimenu--horizontal > li .expand-icon,
.main-navigation > .menu > li .expand-icon {
  display: flex;
  grid-area: icon;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border: none;
  font-size: var(--icon-size--xs)
}
#block-system-main-menu .ultimenu--horizontal > li.is-active-trail,
#block-system-main-menu > .menu > li.is-active-trail,
.main-navigation .ultimenu--horizontal > li.is-active-trail,
.main-navigation > .menu > li.is-active-trail {
  border-left: solid var(--border-width--lg) var(--light-green--lighter--20)
}
.ultimenu__region {
  background: var(--blue);
  display: flex;
  flex-flow: column
}
.ultimenu__region h1 {
  color: var(--light-green--lighter--20)
}
#islandora-search-container h1:after,
.ultimenu__region h1:after {
  border-color: var(--blue--lighter--40)
}
.ultimenu__region h2 {
  color: var(--light-green--lighter--40)
}
.ultimenu__region h3 {
  color: var(--light-green--lighter--60)
}
.ultimenu__region .intro,
.ultimenu__region .tagline,
.ultimenu__region h4 {
  color: var(--light-green--lighter--80)
}
.dark-mode .western-menu .icon-with-text span,
.dark-mode .western-menu .icon-with-text:visited span,
.ultimenu__region .block--countdown,
.ultimenu__region caption,
.ultimenu__region h5,
.ultimenu__region h6,
.western-menu .icon-with-text:visited {
  color: var(--white)
}
#islandora-search-container a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.ultimenu__region a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white)
}
#islandora-search-container a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.ultimenu__region a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--white);
  text-decoration-color: var(--purple--lighter--60)
}
#islandora-search-container a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
#islandora-search-container a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
#islandora-search-container a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.ultimenu__region a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.ultimenu__region a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.ultimenu__region a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue)
}
.ultimenu__region .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--60);
  border-left-color: var(--light-green--lighter--20)
}
.menu .menu li,
.ultimenu__region .menu .menu li {
  border-left: none
}
.ultimenu__region .play-button,
.ultimenu__region .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.ultimenu__region .play-button:active,
.ultimenu__region .play-button:focus,
.ultimenu__region .play-button:hover,
.ultimenu__region .social-icon:active,
.ultimenu__region .social-icon:focus,
.ultimenu__region .social-icon:hover {
  background: var(--blue--lighter--60)
}
.ultimenu__region .menu li a {
  display: flex;
  align-items: center;
  min-height: var(--touch-target--min);
  padding: 0 var(--space--sm);
  font-weight: var(--font-weight--md)
}
.ultimenu__region .menu li.menu-item--active-page a:not(.button):not([class*=cta]):not([class*=taxonomy-term]) {
  color: var(--dark-blue--darker--60);
  background-color: var(--light-green--lighter--20)
}
.ultimenu__region .menu .menu a {
  padding-left: var(--space--lg)
}
.ultimenu__region h2,
.ultimenu__region h3 {
  margin-top: 0;
  margin-bottom: var(--space--xs);
  color: var(--light-green--lighter--20);
  text-shadow: var(--shadow--hard);
  font-size: var(--font-size--2xl);
  font-weight: var(--font-weight--semibold)
}
.ultimenu__region h2 a:not(.button),
.ultimenu__region h2 a:not([class*=cta]),
.ultimenu__region h3 a:not(.button),
.ultimenu__region h3 a:not([class*=cta]) {
  color: var(--light-green--lighter--20)
}
.ultimenu__region h3 {
  font-size: var(--font-size--sm)
}
.ultimenu__region > div {
  flex: 0 1 100%;
  margin: 0 var(--space--sm)
}
.font--dyslexia-friendly .search-wrapper *,
.font--dyslexia-friendly .ultimenu__region,
.font--dyslexia-friendly .western-menu {
  font-family: var(--font--dyslexia-friendly)
}
.font--hyperlegible .search-wrapper *,
.font--hyperlegible .ultimenu__region,
.font--hyperlegible .western-menu {
  font-family: var(--font--hyperlegible)
}
.menu .menu li li > a[aria-current=page] {
  background-color: var(--blue--lighter--40);
  color: var(--black)
}
.menu .menu a {
  padding-left: var(--space--md)
}
.block--menu .menu li > a[aria-current=page] {
  background-color: var(--blue--lighter--40);
  font-weight: var(--font-weight--bold)
}
.block--menu .menu li > a[aria-current=page]:active,
.block--menu .menu li > a[aria-current=page]:focus,
.block--menu .menu li > a[aria-current=page]:hover {
  background-color: var(--gray--lighter--80)
}
.dark-mode .page-content .block--menu .menu li > a[aria-current=page] {
  color: var(--black)
}
.dark-mode .page-content .block--menu .menu li > a[aria-current=page]:active,
.dark-mode .page-content .block--menu .menu li > a[aria-current=page]:focus,
.dark-mode .page-content .block--menu .menu li > a[aria-current=page]:hover {
  background-color: var(--dark-blue);
  color: var(--light-green)
}
.my-western-links {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  max-width: 38rem;
  margin: var(--space--md) auto;
  padding: 0;
  list-style: none
}
.pager ul li {
  padding: 0 .5625rem
}
.pager ul li a {
  text-align: center;
  min-width: var(--touch-target--min);
  min-height: var(--touch-target--min)
}
.skip-link.focusable:focus {
  clip-path: initial;
  position: absolute!important;
  z-index: 3;
  top: 0;
  left: var(--space--sm);
  clip: initial;
  width: inherit;
  height: inherit;
  padding: var(--space--sm);
  outline-color: var(--dark-blue--darker--60);
  outline-offset: calc(-1 * var(--border-width--lg))
}
.western-menu {
  display: flex;
  grid-area: wwu-menu;
  align-self: start;
  justify-content: flex-end;
  max-width: 100vw
}
.western-menu .icon-with-text {
  padding: var(--space--2xs) var(--space--xs) var(--space--xs) var(--space--xs);
  color: var(--white)
}
.email_signature_table,
.western-menu .icon-with-text.report-bias-quick-link {
  width: initial
}
.western-menu .icon-with-text:active,
.western-menu .icon-with-text:focus,
.western-menu .icon-with-text:hover {
  color: var(--dark-blue--darker--60);
  outline-offset: var(--border-width--lg)
}
.block--pullquote {
  --quote-icon-size: 3.125rem;
  position: relative
}
.block--pullquote blockquote {
  margin: 0 var(--space--md);
  border-left: solid var(--border-width--lg) var(--green);
  background-color: transparent
}
#acalog-navigation,
#islandora-bookmark h3,
#secondary-display-profiles,
.block--pullquote .decoration,
.button.button--ultimenu,
.date-filter-toggle-text,
.listNavHide,
.page-islandora .site-footer #block-user-login .item-list,
.page-islandora .western-header .search,
.page-node-type-major #block-pagetitle,
.quickSearchHide,
.section-title:after,
.ultimenu--horizontal .ultimenu__link .caret {
  display: none
}
.block--pullquote.pullquote--editorial blockquote {
  position: relative;
  max-width: calc(var(--content-area-max-width)/ 3);
  margin: var(--quote-icon-size) auto 0;
  padding-top: calc(var(--quote-icon-size) + var(--space--sm));
  border-top: var(--blue) var(--border-width--lg) solid;
  border-bottom: var(--blue) var(--border-width--lg) solid;
  border-left: none;
  background-color: initial
}
.block--pullquote.pullquote--editorial blockquote .block__title {
  border-bottom: none
}
.block--pullquote.pullquote--editorial blockquote .credit,
.page-title,
.pane-page-title h1,
.wwu-footer .western-info {
  text-align: center
}
.block--pullquote.pullquote--editorial blockquote .name,
.content-switcher-container .content.active,
.layout-builder--layout .content-switcher-container .content,
.mabel-content-switcher-container .content.active {
  display: block
}
.block--pullquote.pullquote--editorial .decoration {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  display: block;
  display: grid;
  width: var(--quote-icon-size);
  height: var(--quote-icon-size);
  padding: var(--space--xs);
  transform: translate(-50%,-50%);
  text-align: center;
  color: var(--blue);
  border: solid var(--blue) var(--border-width--lg);
  border-radius: 50%;
  background-color: var(--white);
  font-family: pt serif;
  font-size: var(--quote-icon-size)
}
.dark-mode .block--pullquote blockquote {
  background-color: transparent
}
.dark-mode .block--pullquote .decoration {
  background-color: var(--gray--darker--80)
}
.block--testimonial,
.wwu-footer {
  display: flex;
  flex-flow: column
}
.block--testimonial .image--stylized {
  position: relative;
  width: calc(100vw - (2 * var(--space--md)));
  max-width: calc(var(--content-area-max-width)/ 4);
  height: calc(100vw - (2 * var(--space--md)));
  max-height: calc(var(--content-area-max-width)/ 4);
  margin: auto;
  box-shadow: var(--shadow--soft)
}
.block--testimonial .image--stylized:after,
.block--testimonial .image--stylized:before {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
  border-radius: 50%
}
.block--testimonial .image--stylized:before {
  right: -4rem;
  bottom: 1rem;
  width: 100%;
  height: 100%;
  background: rgba(var(--blue--rgb),.15)
}
.block--testimonial .image--stylized:after {
  right: -.5rem;
  bottom: -3.5rem;
  width: 120%;
  height: 120%;
  background: rgba(var(--blue--rgb),.1)
}
.block--testimonial .credit {
  margin-top: var(--space--md)
}
.block--testimonial .name {
  display: block
}
.ribbon {
  --ribbon-tail-height: 3.125rem;
  --ribbon-width: 12rem;
  position: relative;
  display: block;
  width: var(--ribbon-width);
  margin-bottom: var(--ribbon-tail-height);
  padding: var(--space--lg);
  text-align: center;
  color: var(--black);
  background: var(--gray--lighter--80)
}
.ribbon:after,
.ribbon:before {
  position: absolute;
  bottom: calc(-1 * var(--ribbon-tail-height));
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-top: var(--ribbon-tail-height) solid var(--gray--lighter--80)
}
.ribbon:before {
  left: 0;
  border-right: calc(var(--ribbon-width)/ 2) solid transparent
}
.ribbon:after {
  right: 0;
  border-left: calc(var(--ribbon-width)/ 2) solid transparent
}
.block--schedule .schedule-item {
  background: var(--gray--lighter--60);
  background: var(--gray--lighter--80);
  position: relative;
  margin-bottom: var(--space--sm);
  padding: var(--space--sm)
}
.block--schedule .schedule-item h1,
.search-wrapper .search-results-summary h1,
.timeline-block:nth-of-type(even) h1,
.timeline-block:nth-of-type(odd) h1 {
  color: var(--dark-blue--darker--80)
}
.block--schedule .schedule-item h1:after,
.search-wrapper .search-results-summary h1:after,
.timeline-block:nth-of-type(even) h1:after,
.timeline-block:nth-of-type(odd) h1:after {
  border-color: var(--dark-blue--darker--80)
}
.block--schedule .schedule-item h2,
.search-wrapper .search-results-summary h2,
.timeline-block:nth-of-type(even) h2,
.timeline-block:nth-of-type(odd) h2,
.western-header a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited:active,
.western-header a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited:focus,
.western-header a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited:hover {
  color: var(--dark-blue--darker--60)
}
.block--schedule .schedule-item h3,
.search-wrapper .search-results-summary h3,
.timeline-block:nth-of-type(even) h3,
.timeline-block:nth-of-type(odd) h3 {
  color: var(--dark-blue--darker--40)
}
.block--schedule .schedule-item h4,
.search-wrapper .search-results-summary h4,
.timeline-block:nth-of-type(even) h4,
.timeline-block:nth-of-type(odd) h4 {
  color: var(--dark-blue--darker--20)
}
.block--schedule .schedule-item h5,
.block--schedule .schedule-item h6,
.search-wrapper .search-results-summary h5,
.search-wrapper .search-results-summary h6,
.timeline-block:nth-of-type(even) h5,
.timeline-block:nth-of-type(even) h6,
.timeline-block:nth-of-type(odd) h5,
.timeline-block:nth-of-type(odd) h6 {
  color: var(--dark-blue)
}
.block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.search-wrapper .search-results-summary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--dark-blue);
  color: var(--blue--darker--40)
}
.block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.search-wrapper .search-results-summary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple)
}
.block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.search-wrapper .search-results-summary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.search-wrapper .search-results-summary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.search-wrapper .search-results-summary a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.block--schedule.round-edges .schedule-item a {
  color: inherit
}
.block--schedule .schedule-item .menu li,
.search-wrapper .search-results-summary .menu li,
.timeline-block:nth-of-type(even) .menu li,
.timeline-block:nth-of-type(odd) .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
.block--schedule .schedule-item.pullquote,
.search-wrapper .search-results-summary.pullquote,
.timeline-block:nth-of-type(even).pullquote,
.timeline-block:nth-of-type(odd).pullquote {
  border-left-color: var(--dark-blue)
}
.block--schedule.round-edges .schedule-item {
  border-radius: var(--border-radius--rounder)
}
.block--schedule.round-edges .schedule-item a:hover:after,
.block--schedule.round-edges .schedule-item:focus-within {
  border-radius: var(--border-radius--rounder)
}
.block--schedule .schedule-heading {
  margin: var(--space--xs) 0;
  font-size: var(--font-size--lg)
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration: none
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: calc(-1 * var(--border-radius--rounder));
  content: "";
  transition: var(--transition-speed--fast) var(--ease--standard) box-shadow;
  box-shadow: var(--shadow--soft)
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus {
  outline: 0
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus:after {
  outline: dotted var(--border-width--md);
  outline-offset: var(--border-width--md)
}
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus-within,
.block--schedule .schedule-heading a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover:after {
  box-shadow: var(--shadow--soft--hover)
}
.block--schedule .label,
.block--schedule .time {
  display: block;
  font-size: var(--font-size--lg);
  line-height: 1.2em
}
.block--schedule div:nth-of-type(odd) .schedule-item {
  border-left: solid var(--blue) var(--border-radius--rounder)
}
.block--schedule div:nth-of-type(even) .schedule-item {
  border-left: solid var(--blue--lighter--40) var(--border-radius--rounder)
}
.dark-mode .block--schedule .schedule-item,
.dark-mode .timeline-block:nth-of-type(odd) {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue)
}
.dark-mode .block--schedule .schedule-item h1,
.dark-mode .block--schedule .schedule-item h6,
.dark-mode .timeline-block:nth-of-type(even) h1,
.dark-mode .timeline-block:nth-of-type(even) h6,
.dark-mode .timeline-block:nth-of-type(odd) h1,
.dark-mode .timeline-block:nth-of-type(odd) h6 {
  color: var(--light-green)
}
.dark-mode .block--schedule .schedule-item h1:after,
.dark-mode .timeline-block:nth-of-type(even) h1:after,
.dark-mode .timeline-block:nth-of-type(odd) h1:after {
  border-color: var(--white)
}
#islandora-search-container h1,
.dark-mode .block--schedule .schedule-item h2,
.dark-mode .timeline-block:nth-of-type(even) h2,
.dark-mode .timeline-block:nth-of-type(odd) h2 {
  color: var(--light-green--lighter--20)
}
#islandora-search-container h2,
.dark-mode .block--schedule .schedule-item .intro,
.dark-mode .block--schedule .schedule-item .tagline,
.dark-mode .block--schedule .schedule-item h3,
.dark-mode .timeline-block:nth-of-type(even) .intro,
.dark-mode .timeline-block:nth-of-type(even) .tagline,
.dark-mode .timeline-block:nth-of-type(even) h3,
.dark-mode .timeline-block:nth-of-type(odd) .intro,
.dark-mode .timeline-block:nth-of-type(odd) .tagline,
.dark-mode .timeline-block:nth-of-type(odd) h3 {
  color: var(--light-green--lighter--40)
}
#islandora-search-container h3,
.dark-mode .block--schedule .schedule-item h4,
.dark-mode .timeline-block:nth-of-type(even) h4,
.dark-mode .timeline-block:nth-of-type(odd) h4 {
  color: var(--light-green--lighter--60)
}
#islandora-search-container .intro,
#islandora-search-container .tagline,
#islandora-search-container h4,
.dark-mode .block--schedule .schedule-item h5,
.dark-mode .timeline-block:nth-of-type(even) h5,
.dark-mode .timeline-block:nth-of-type(odd) h5 {
  color: var(--light-green--lighter--80)
}
.dark-mode .block--schedule .schedule-item a.patternLink,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .timeline-block:nth-of-type(even) a.patternLink,
.dark-mode .timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .timeline-block:nth-of-type(odd) a.patternLink,
.dark-mode .timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.dark-mode .block--schedule .schedule-item a.patternLink:visited,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .timeline-block:nth-of-type(even) a.patternLink:visited,
.dark-mode .timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.dark-mode .timeline-block:nth-of-type(odd) a.patternLink:visited,
.dark-mode .timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.dark-mode .block--schedule .schedule-item a.patternLink:active,
.dark-mode .block--schedule .schedule-item a.patternLink:focus,
.dark-mode .block--schedule .schedule-item a.patternLink:hover,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .timeline-block:nth-of-type(even) a.patternLink:active,
.dark-mode .timeline-block:nth-of-type(even) a.patternLink:focus,
.dark-mode .timeline-block:nth-of-type(even) a.patternLink:hover,
.dark-mode .timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .timeline-block:nth-of-type(even) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover,
.dark-mode .timeline-block:nth-of-type(odd) a.patternLink:active,
.dark-mode .timeline-block:nth-of-type(odd) a.patternLink:focus,
.dark-mode .timeline-block:nth-of-type(odd) a.patternLink:hover,
.dark-mode .timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .timeline-block:nth-of-type(odd) a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.dark-mode .block--schedule .schedule-item .menu li,
.dark-mode .timeline-block:nth-of-type(even) .menu li,
.dark-mode .timeline-block:nth-of-type(odd) .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
#islandora-search-container .play-button,
#islandora-search-container .social-icon,
.dark-mode .block--schedule .schedule-item .play-button,
.dark-mode .block--schedule .schedule-item .social-icon,
.dark-mode .timeline-block:nth-of-type(even) .play-button,
.dark-mode .timeline-block:nth-of-type(even) .social-icon,
.dark-mode .timeline-block:nth-of-type(odd) .play-button,
.dark-mode .timeline-block:nth-of-type(odd) .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
#islandora-search-container .play-button:active,
#islandora-search-container .play-button:focus,
#islandora-search-container .play-button:hover,
#islandora-search-container .social-icon:active,
#islandora-search-container .social-icon:focus,
#islandora-search-container .social-icon:hover,
.dark-mode .block--schedule .schedule-item .play-button:active,
.dark-mode .block--schedule .schedule-item .play-button:focus,
.dark-mode .block--schedule .schedule-item .play-button:hover,
.dark-mode .block--schedule .schedule-item .social-icon:active,
.dark-mode .block--schedule .schedule-item .social-icon:focus,
.dark-mode .block--schedule .schedule-item .social-icon:hover,
.dark-mode .timeline-block:nth-of-type(even) .play-button:active,
.dark-mode .timeline-block:nth-of-type(even) .play-button:focus,
.dark-mode .timeline-block:nth-of-type(even) .play-button:hover,
.dark-mode .timeline-block:nth-of-type(even) .social-icon:active,
.dark-mode .timeline-block:nth-of-type(even) .social-icon:focus,
.dark-mode .timeline-block:nth-of-type(even) .social-icon:hover,
.dark-mode .timeline-block:nth-of-type(odd) .play-button:active,
.dark-mode .timeline-block:nth-of-type(odd) .play-button:focus,
.dark-mode .timeline-block:nth-of-type(odd) .play-button:hover,
.dark-mode .timeline-block:nth-of-type(odd) .social-icon:active,
.dark-mode .timeline-block:nth-of-type(odd) .social-icon:focus,
.dark-mode .timeline-block:nth-of-type(odd) .social-icon:hover {
  background: var(--blue--lighter--60)
}
#islandora-search-container .block--countdown,
#islandora-search-container caption,
#islandora-search-container h5,
#islandora-search-container h6,
.dark-mode .block--schedule .schedule-item .block--countdown,
.dark-mode .block--schedule .schedule-item caption {
  color: var(--white)
}
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .block--schedule .schedule-item a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: inherit
}
.page-islandora .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
body.page-islandora-object .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple)
}
.search {
  z-index: 0;
  display: flex;
  justify-content: end
}
.search .submit-search,
.search .toggle-search {
  order: 2;
  border: none;
  border-radius: 0;
  background-color: transparent
}
.search .submit-search:active,
.search .submit-search:focus,
.search .submit-search:hover,
.search .toggle-search:active,
.search .toggle-search:focus,
.search .toggle-search:hover {
  border: none;
  background-image: var(--gradient--vertical--light-blue);
  color: var(--dark-blue--darker--60)
}
.search .search-area {
  display: flex;
  order: 1
}
.search .search-area .search-box input {
  height: 100%;
  margin: 0;
  border-radius: 0;
  font-size: var(--font-size--sm);
  min-width: 12rem
}
.search .search-area .search-label {
  margin: 0;
  font-size: 0
}
#islandora-search-container {
  color: var(--white);
  background: var(--blue);
  background-image: var(--gradient--diagonal--blue-to-dark-blue);
  display: flex;
  flex-flow: column;
  margin: auto
}
#islandora-search-container .block-title {
  display: block;
  margin: 0;
  margin-bottom: var(--space--xs);
  text-align: left;
  border: none
}
#islandora-search-container .advanced-search-link {
  align-self: end;
  margin-top: var(--space--xs);
  font-size: var(--font-size--sm)
}
#islandora-solr-simple-search-form .form-item-islandora-simple-search-query + .form-submit {
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  width: 7.5rem;
  height: 100%;
  margin: 0;
  padding: var(--space--sm);
  border: none;
  border-radius: 0;
  box-shadow: none
}
#islandora-solr-simple-search-form .form-item-islandora-simple-search-query .form-text {
  width: calc(100% - 7.5rem);
  margin: 0;
  border-radius: 0;
  font-size: var(--font-size--md)
}
input[title="Add field"],
input[title="Remove field"] {
  width: var(--toggle-size--sm);
  height: var(--toggle-size--sm);
  padding: 0;
  color: var(--white);
  border: none;
  border-radius: 0;
  background: var(--blue);
  box-shadow: none
}
.islandora-solr-advanced-controls {
  position: relative;
  margin-top: var(--space--sm)
}
.islandora-solr-advanced-controls .form-item,
.islandora-solr-advanced-controls .form-submit {
  display: inline-block;
  margin-right: var(--space--sm)
}
#quick-search-list-nav .ln-letters {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  margin: 0 auto
}
#quick-search-list-nav .ln-letters a,
#quick-search-list-nav .ln-letters span {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: var(--touch-target--min);
  min-height: var(--touch-target--min);
  font-weight: var(--font-weight--semibold)
}
#quick-search-list-nav .ln-disabled {
  margin-right: var(--space--sm)
}
.quicksearch-form-container #quick-search-input {
  width: calc(100% - var(--space--sm))
}
.social-media-links {
  display: flex;
  flex-flow: row wrap;
  max-width: 25rem;
  padding: 0;
  list-style: none
}
.social-media-links .social-icon {
  margin: var(--space--md) var(--space--md) 0 0
}
.featured-major-splash-area,
.splash {
  position: relative;
  z-index: 0;
  display: grid;
  margin-bottom: var(--space--md)
}
.featured-major-splash-area > div,
.splash > div {
  z-index: 0;
  grid-column: 1;
  grid-row: 1
}
.featured-major-splash-area .headline.box-headline,
.featured-major-splash-area .headline.simple-centered,
.featured-major-splash-area>div:nth-of-type(1) div.contextual,
.splash>div:nth-of-type(1) div.contextual,
.splash>div:nth-of-type(1) div[data-contextual-id] {
  height: initial
}
.block--statistic,
.vbo-view-form .views-row,
.views-field-views-bulk-operations-bulk-form .views-row {
  margin: var(--space--xs) 0
}
.block--statistic .material-icons {
  font-size: var(--icon-size--lg)
}
.block--statistic .statistic-heading {
  position: relative;
  margin: 0 0 var(--space--sm) 0;
  padding-bottom: var(--space--md);
  font-size: var(--font-size--xl)
}
.block--statistic .statistic-heading:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 50%;
  max-width: 12.5rem;
  content: "";
  transform: translatex(-50%);
  border-width: var(--border-width--lg);
  border-style: solid
}
.wwu-footer .copyright,
.wwu-footer .tribal-lands-statement p {
  font-weight: var(--font-weight--light)
}
.block--statistic.white-bg {
  color: var(--blue);
  background-color: var(--white)
}
.block--statistic.white-bg .block__title {
  padding-bottom: var(--space--sm);
  color: inherit
}
.block--statistic.white-bg .block__title:after {
  border-width: var(--border-width--md)
}
.block--statistic.white-bg a {
  color: var(--blue--darker--40)
}
.block--statistic.white-bg a:active,
.block--statistic.white-bg a:focus,
.block--statistic.white-bg a:hover,
.dark-mode .timeline-block:nth-of-type(even) .block--countdown,
.dark-mode .timeline-block:nth-of-type(even) caption,
.dark-mode .timeline-block:nth-of-type(odd) .block--countdown,
.dark-mode .timeline-block:nth-of-type(odd) caption {
  color: var(--white)
}
.block--statistic.statistic--vertical,
.statistics-collection--side-by-side .block--statistic {
  min-width: 11.25rem;
  max-width: 15rem;
  margin: 0 var(--space--xs) var(--space--sm);
  padding: var(--space--sm);
  text-align: center;
  border-radius: var(--border-radius--rounder)
}
.block--statistic.statistic--vertical .block__title,
.no-margin--top,
.statistics-collection--side-by-side .block--statistic .block__title,
.user-profile .contact h3,
.user-profile .office h3,
.user-profile .website h3 {
  margin-top: 0
}
.block--statistic.statistic--vertical .number,
.statistics-collection--side-by-side .block--statistic .number {
  margin-bottom: var(--space--sm);
  font-size: var(--font-size--lg)
}
.block--statistic.statistic--vertical .text,
.statistics-collection--side-by-side .block--statistic .text {
  margin-bottom: var(--space--sm);
  font-size: var(--font-size--sm)
}
.block--statistic.statistic--horizontal,
.statistics-collection--stacked .block--statistic {
  display: grid;
  grid-column-gap: var(--space--md);
  grid-template-areas: "heading heading heading" "icon number text";
  align-items: center;
  justify-content: left;
  padding: var(--space--sm) var(--space--md);
  border-radius: var(--border-radius--rounder)
}
.block--statistic.statistic--horizontal .statistic-heading,
.statistics-collection--stacked .block--statistic .statistic-heading {
  grid-area: heading
}
.block--statistic.statistic--horizontal .statistic-heading:after,
.statistics-collection--stacked .block--statistic .statistic-heading:after {
  left: 0;
  transform: none
}
.block--statistic.statistic--horizontal .material-icons,
.statistics-collection--stacked .block--statistic .material-icons {
  grid-area: icon
}
.block--statistic.statistic--horizontal .number,
.statistics-collection--stacked .block--statistic .number {
  grid-area: number;
  margin: 0;
  font-size: var(--font-size--3xl)
}
.block--statistic.statistic--horizontal .text,
.statistics-collection--stacked .block--statistic .text {
  grid-area: text;
  margin: 0
}
.content-switcher,
.mabel-content-switcher {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0
}
.content-switcher button,
.mabel-content-switcher button {
  width: 100%;
  max-width: none;
  margin-right: var(--space--xs);
  color: var(--white);
  border: none;
  border-radius: 0;
  background-color: var(--dark-blue);
  box-shadow: none
}
.content-switcher button:active,
.content-switcher button:focus,
.content-switcher button:hover,
.mabel-content-switcher button:active,
.mabel-content-switcher button:focus,
.mabel-content-switcher button:hover {
  transform: none;
  color: var(--dark-blue--darker--40);
  background-image: var(--gradient--vertical--light-blue);
  box-shadow: none;
  outline-offset: calc(-1 * var(--border-width--lg))
}
.content-switcher button.active,
.content-switcher button:disabled,
.mabel-content-switcher button.active,
.mabel-content-switcher button:disabled {
  opacity: 1;
  color: var(--dark-blue--darker--60);
  background-color: var(--light-green--lighter--20)
}
.content-switcher button:last-child,
.mabel-content-switcher button:last-child,
.views-view-grid .views-col:last-of-type {
  margin-right: 0
}
.content-switcher button .material-icons.show,
.mabel-content-switcher button .material-icons.show {
  display: block;
  color: inherit;
  font-size: var(--icon-size--xs)
}
.content-switcher-container,
.mabel-content-switcher-container {
  display: grid;
  display: -ms-grid
}
.content-switcher-container .content,
.mabel-content-switcher-container .content {
  display: none;
  grid-column-start: 1;
  grid-row-start: 1;
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  margin-top: var(--space--md)
}
.path-frontpage .block--page-title-block,
.visually-hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(1px,1px,1px,1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  word-wrap: normal;
  white-space: nowrap
}
.section-title {
  font-size: var(--font-size--3xl);
  font-weight: var(--font-weight--black);
  font-display: swap
}
.timeline {
  display: grid
}
.timeline-block {
  width: 80%;
  padding: var(--space--sm)
}
.block--full-page,
.block--half-page {
  width: 100vw;
  margin: 0 calc(-1 * var(--space--sm));
  display: grid;
  align-content: center
}
.timeline-block:nth-of-type(odd) {
  background: var(--gray--lighter--60);
  background: var(--gray--lighter--80);
  background: var(--blue--lighter--80);
  text-align: right
}
.timeline-block:nth-of-type(odd) .timeline-heading {
  margin-right: calc(-1 * var(--space--xl));
  color: var(--white)
}
.timeline-block:nth-of-type(odd) .timeline-item--highlighted {
  background-color: var(--blue--lighter--60);
  margin-left: var(--space--3xl);
  margin-right: calc(-1 * var(--space--xl))
}
.timeline-block:nth-of-type(even) {
  background: var(--gray--lighter--60);
  background: var(--blue--lighter--60);
  justify-self: flex-end
}
.timeline-block:nth-of-type(even) .timeline-heading {
  margin-left: calc(-1 * var(--space--xl));
  color: var(--white)
}
.timeline-block:nth-of-type(even) .timeline-item--highlighted {
  background-color: var(--blue--lighter--80);
  margin-right: var(--space--3xl);
  margin-left: calc(-1 * var(--space--xl))
}
.timeline-block .timeline-heading {
  margin-top: 0;
  padding: var(--space--sm);
  background-color: var(--blue)
}
.timeline-block .timeline-item--highlighted {
  padding: var(--space--sm);
  margin-bottom: var(--space--sm)
}
.timeline-block .material-icons {
  font-size: var(--icon-size--sm);
  position: relative;
  top: var(--space--2xs)
}
.dark-mode .timeline-block:nth-of-type(even) .timeline-item--highlighted,
.dark-mode .timeline-block:nth-of-type(odd) .timeline-item--highlighted {
  background-color: var(--blue--darker--20)
}
.block--full-page,
.block--half-page {
  position: relative;
  z-index: 0
}
.block--full-page .block__title,
.block--half-page .block__title {
  margin: 0;
  padding: 0
}
.block--full-page {
  justify-content: center;
  min-height: 100vh
}
.block--half-page {
  justify-content: center;
  min-height: 45vh
}
.card-2col,
.card-2col--view .view-content,
.card-3col,
.card-3col--view .view-content,
.card-4col,
.card-4col--view .view-content {
  display: grid;
  grid-column-gap: var(--space--sm);
  grid-template-columns: 1fr;
  grid-template-rows: auto
}
.page-content,
.site-footer {
  -ms-grid-columns: var(--grid-columns--sm);
  grid-template-columns: var(--grid-columns--sm)
}
.card-2col--flex,
.card-3col--flex,
.card-4col--flex,
.user-profile,
.user-profile .contact,
.user-profile .office,
.user-profile .website {
  display: flex;
  flex-flow: row wrap
}
.card--flex--section-divider,
.card-2col--flex .block--card,
.card-2col--flex .card,
.card-2col--flex .event,
.card-2col--flex .pager,
.card-3col--flex .block--card,
.card-3col--flex .card,
.card-3col--flex .event,
.card-3col--flex .pager,
.card-4col--flex .block--card,
.card-4col--flex .card,
.card-4col--flex .event,
.card-4col--flex .pager,
.statistics-collection--side-by-side .block__title,
.statistics-collection--vertical .block__title {
  flex: 0 0 100%
}
.card-list .block--card,
.card-list .card,
.card-list .event {
  -ms-grid-columns: 1fr 1fr;
  -ms-grid-rows: auto 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-areas: "image title" "image taxonomy" "image body";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto 1fr;
  padding-bottom: 0
}
.card-list .block--card .image,
.card-list .card .image,
.card-list .event .image {
  grid-area: image;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  margin-bottom: 0;
  padding: 0
}
.card-list .block--card .body,
.card-list .block--card .title,
.card-list .card .body,
.card-list .card .title,
.card-list .event .body,
.card-list .event .title,
.page-content #main-content,
.page-content .region-wrapper,
.site-footer .region--footer_bottom,
.site-footer .region--footer_center,
.site-footer .region--footer_left,
.site-footer .region--footer_right {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row-span: 1
}
.background-image .blazy,
.background-image .media,
.card-list .block--card .image>div,
.card-list .card .image>div,
.card-list .event .image>div {
  width: 100%;
  height: 100%
}
.card-list .block--card .image img,
.card-list .card .image img,
.card-list .event .image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.card-list .block--card .taxonomy-terms,
.card-list .card .taxonomy-terms,
.card-list .event .taxonomy-terms {
  grid-area: taxonomy;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  margin-bottom: 0;
  padding-bottom: 0
}
.card-list .block--card .title,
.card-list .card .title,
.card-list .event .title {
  grid-area: title;
  -ms-grid-row: 2;
  margin-top: var(--space--sm)
}
.card-list .block--card .body,
.card-list .card .body,
.card-list .event .body {
  grid-area: body;
  -ms-grid-row: 3;
  line-height: 1.4;
  padding: var(--space--sm)
}
.layout--flex .layout__region .block--card {
  flex: 1;
  margin: 0 var(--space--xs)
}
.page-content {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto;
  grid-template-areas: " . skip_to_content . " " . content         . ";
  grid-template-rows: auto
}
.page-content #main-content {
  margin: 0;
  padding: 0;
  border: none;
  grid-area: skip_to_content;
  -ms-grid-row: 1
}
.page-content .region-wrapper {
  grid-area: content;
  -ms-grid-row: 2
}
.email_signature_table tr,
.ultimenu--horizontal .ultimenu__link.is-active,
.ultimenu--horizontal .ultimenu__link.is-active.open {
  background: 0 0
}
.email_signature_table p {
  font-size: inherit
}
.site-footer {
  display: -ms-grid;
  display: grid;
  padding: var(--space--lg) 0;
  -ms-grid-rows: auto var(--space--sm) auto var(--space--sm) auto;
  grid-template-areas: ". footer_left   ." ". ............. ." ". footer_center ." ". ............. ." ". footer_right  ." ". footer_bottom .";
  grid-template-rows: auto var(--space--sm) auto var(--space--sm) auto
}
.page-islandora-search .islandora-solr-search-result:last-of-type,
.site-footer .block-title {
  border-bottom: none
}
.site-footer .region--footer_left {
  grid-area: footer_left;
  -ms-grid-row: 1
}
.site-footer .region--footer_center {
  grid-area: footer_center;
  -ms-grid-row: 3
}
.site-footer .region--footer_right {
  grid-area: footer_right;
  -ms-grid-row: 5
}
.site-footer .region--footer_bottom {
  grid-area: footer_bottom;
  -ms-grid-row: 6
}
.site-footer .social-media-links {
  justify-content: flex-start
}
.site-footer .block--menu .menu li > a[aria-current=page] {
  color: var(--black);
  font-weight: var(--font-weight--semibold)
}
.site-footer .block--menu .menu li > a[aria-current=page]:active,
.site-footer .block--menu .menu li > a[aria-current=page]:focus,
.site-footer .block--menu .menu li > a[aria-current=page]:hover {
  color: var(--dark-blue--darker--60);
  background: var(--light-green--lighter--40)
}
.wwu-footer .logo {
  width: var(--logo-size);
  height: var(--logo-size);
  margin: 0 auto
}
.wwu-footer .tribal-lands-statement {
  align-self: center;
  margin-top: var(--sapce--sm);
  padding: 0 var(--space--md);
  text-align: center
}
.wwu-footer .social-media-links {
  justify-content: center;
  margin: .75rem auto
}
.wwu-footer .social-media-links .social-icon {
  margin: var(--space--sm) 0 0 var(--space--sm)
}
.wwu-footer .copyright {
  text-align: center;
  font-size: var(--font-size--sm)
}
.western-header-region .block {
  color: var(--white);
  background: var(--black);
  background: var(--dark-blue);
  padding: var(--space--sm);
  text-align: center;
  border-bottom: solid var(--border-width--sm) var(--blue)
}
.western-header-region .block h1,
.western-header-region .block h6 {
  color: var(--light-green)
}
.western-header-region .block h1:after {
  border-color: var(--white)
}
.western-header-region .block h2 {
  color: var(--light-green--lighter--20)
}
.western-header-region .block .intro,
.western-header-region .block .tagline,
.western-header-region .block h3,
.wrapper--404 h1 {
  color: var(--light-green--lighter--40)
}
.western-header-region .block h4 {
  color: var(--light-green--lighter--60)
}
.western-header-region .block h5 {
  color: var(--light-green--lighter--80)
}
.western-header-region .block a.patternLink,
.western-header-region .block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.page-islandora .layout__region--first .panel-pane h1,
body.page-islandora-object .layout__region--first .panel-pane h1 {
  color: var(--dark-blue--darker--80)
}
.western-header-region .block a.patternLink:visited,
.western-header-region .block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.western-header-region .block a.patternLink:active,
.western-header-region .block a.patternLink:focus,
.western-header-region .block a.patternLink:hover,
.western-header-region .block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.western-header-region .block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.western-header-region .block a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.western-header-region .block .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.western-header-region .block .play-button,
.western-header-region .block .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.toggle-menu,
.western-header a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
.western-header a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited,
.western-header-region .block .block--countdown,
.western-header-region .block caption {
  color: var(--white)
}
.western-header-region .block .play-button:active,
.western-header-region .block .play-button:focus,
.western-header-region .block .play-button:hover,
.western-header-region .block .social-icon:active,
.western-header-region .block .social-icon:focus,
.western-header-region .block .social-icon:hover {
  background: var(--blue--lighter--60)
}
.western-header-region .menu {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-bottom: 0;
  padding: var(--space--sm) 0
}
.western-header-region .menu li {
  margin-right: var(--space--sm);
  margin-bottom: var(--space--xs);
  border: none
}
.western-header {
  position: relative;
  display: grid;
  grid-template-areas: ".... logo menu-toggle" "site-name site-name site-name" "western-header-region western-header-region western-header-region";
  grid-template-columns: var(--toggle-size--sm) auto var(--toggle-size--sm);
  grid-template-rows: var(--logo-size) auto auto
}
.western-header .site-name {
  grid-area: site-name;
  align-self: center;
  margin: var(--space--sm);
  padding: var(--space--sm);
  text-align: center;
  border-top: solid var(--border-width--sm) var(--blue);
  border-bottom: solid var(--border-width--sm) var(--blue);
  font-size: var(--font-size--lg)
}
.western-header .site-name .home-link {
  text-decoration: none;
  padding: var(--space--2xs)
}
.western-header .site-name.mobile .block--secondary-site-name {
  margin: -var(--space--sm);
  margin-top: var(--space--sm);
  border-top: var(--border-width--sm) var(--blue) solid
}
.western-header .western-logo {
  position: relative;
  grid-area: logo;
  width: var(--logo-size) var(--space--md);
  height: var(--logo-size);
  margin: auto;
  padding-right: var(--toggle-size--sm)
}
.western-header .western-header-region {
  grid-area: western-header-region
}
.toggle-menu {
  position: relative;
  grid-area: menu-toggle;
  width: initial;
  border: none;
  border-radius: 0;
  background: 0 0;
  line-height: 1.1
}
.mobile-menu {
  position: absolute;
  z-index: 1;
  top: 0;
  display: grid;
  grid-template-areas: "display-settings menu-toggle" "wwu-menu wwu-menu" "main-nav main-nav";
  grid-template-columns: auto var(--toggle-size--sm);
  grid-template-rows: auto;
  align-content: start;
  min-height: 100vh;
  transition: var(--transition-speed--fast) var(--ease--standard);
  transition-property: opacity,transform;
  transform: translatex(0);
  opacity: 1
}
.mobile-menu.open {
  visibility: visible;
  overflow-y: hidden
}
.mobile-menu.closed {
  visibility: hidden;
  width: 0;
  transform: translatex(100%);
  opacity: 0
}
.font--dyslexia-friendly .mobile-menu .icon-with-text.small,
.font--dyslexia-friendly .mobile-menu .toggle-menu.small,
.font--hyperlegible .mobile-menu .icon-with-text.small,
.font--hyperlegible .mobile-menu .toggle-menu.small {
  width: calc(var(--toggle-size--lg) + 1);
  height: calc(var(--toggle-size--lg) + 1);
  font-size: var(--font-size--sm)
}
.wwu-locations {
  --locations-block-width: 37.5rem;
  --locations-block-width--bigger: 56.25rem;
  --location-button-size: 10rem;
  --location-icon-height: 5.625rem;
  --stroke-width--heavy: 0.75rem;
  --stroke-width--medium: 0.5rem;
  --locations-icon-spacing: 1.875rem;
  --locations-font-size: 1.125rem;
  --locations-transition-speed: 500ms;
  max-width: var(--locations-block-width);
  margin: 0 auto
}
.wwu-locations .button-cluster {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly
}
.wwu-locations .button-animated {
  display: block;
  flex: 0 1 33%;
  margin: 0 auto;
  padding: var(--locations-icon-spacing) 0
}
.wwu-locations .svg-container {
  position: relative;
  display: block;
  width: var(--location-button-size);
  height: var(--location-button-size)
}
.wwu-locations .grow .svg-container {
  transition: background-color var(--locations-transition-speed);
  -webkit-animation-name: pulse;
  animation-name: pulse;
  border-radius: 31.25rem
}
.wwu-locations .grow .svg-container:active {
  border: .125rem solid #75cfff
}
.wwu-locations .grow:focus-within .svg-container,
.wwu-locations .grow:hover .svg-container {
  transition: background-color var(--locations-transition-speed);
  -webkit-transform: scale(1.03,1.03);
  transform: scale(1.03,1.03);
  background-color: #d8f1ff
}
.wwu-locations .grow:focus-within .svg-container {
  border: var(--focus-outline) var(--dark-blue)
}
.wwu-locations .link {
  display: block;
  width: 100%;
  height: var(--locations-icon-spacing);
  margin-top: -var(--half-spacing);
  text-align: center;
  outline: 0;
  background: 0 0
}
.wwu-locations .link:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  content: ""
}
.wwu-locations .custom-underline {
  position: relative;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  color: var(blue--darker--20);
  outline: 0;
  background-color: transparent;
  font-size: var(--locations-font-size);
  font-weight: 600;
  line-height: var(--locations-icon-spacing)
}
.wwu-locations .custom-underline:after {
  position: absolute;
  top: 95%;
  left: 30%;
  width: 30%;
  height: .1875rem;
  content: "";
  transition: .3s .1s;
  background-color: var(blue--darker--20)
}
.wwu-locations .svg-container:focus-within .custom-underline::after,
.wwu-locations .svg-container:hover .custom-underline::after {
  left: 0;
  width: 100%
}
.wwu-locations svg {
  width: 100%;
  height: var(--location-icon-height);
  margin-top: var(--standard-spacing)
}
.wwu-locations .cls-1,
.wwu-locations .cls-2,
.wwu-locations .st1,
.wwu-locations .st2,
.wwu-locations .st3,
.wwu-locations .st4 {
  fill: none;
  stroke: var(--blue--darker--20);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: var(--stroke-width--heavy)
}
.wwu-locations .cls-3 {
  fill: none;
  stroke: var(blue--darker--20);
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: var(--stroke-width--medium)
}
.wwu-locations.single-row .button-cluster .button-animated {
  padding: var(--half-spacing)
}
.ultimenu {
  z-index: initial;
  overflow: visible;
  font-size: var(--font-size--sm)
}
.ultimenu section.ultimenu__flyout {
  z-index: initial;
  display: block;
  visibility: hidden;
  grid-area: flyout;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  -ms-grid-row: 2;
  max-height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  border-radius: 0;
  box-shadow: none
}
.ultimenu section.ultimenu__flyout.open {
  visibility: visible;
  max-height: none;
  opacity: 1
}
.ultimenu--htb .ultimenu__flyout,
.ultimenu--htb .ultimenu__region,
.ultimenu__region {
  border-radius: 0;
  box-shadow: none
}
.ultimenu--hover li .ultimenu__flyout:focus-within,
.ultimenu--hover li a:active + .ultimenu__flyout,
.ultimenu--hover li a:focus + .ultimenu__flyout,
.ultimenu--hover li:hover > .ultimenu__flyout {
  padding: 0
}
.open {
  visibility: visible;
  opacity: 1
}
#block-ultimenumainnavigation.contextual-region {
  position: inherit
}
.wrapper--404 h1 {
  padding: 0;
  font-size: var(--font-size--9xl)
}
.wrapper--404 .text {
  padding-bottom: var(--space--lg);
  text-align: center
}
.wrapper--404 .text .tagline {
  color: var(--white)
}
.wrapper--404 svg {
  width: 100%
}
#tossingboat {
  -webkit-animation-name: tossingboat;
  animation-name: tossingboat;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite
}
@keyframes tossingboat {
  0%,
  100% {
    transform: rotate(-4deg)
  }
  40% {
    transform: rotate(4deg)
  }
}
@-webkit-keyframes tossingboat {
  0%,
  100% {
    -webkit-transform: rotate(-4deg)
  }
  50% {
    -webkit-transform: rotate(4deg)
  }
}
#rockingwaves {
  -webkit-animation-name: rockingwaves;
  animation-name: rockingwaves;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  -webkit-timing-function: ease-in-out
}
#fog,
#over_waves {
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite
}
@keyframes rockingwaves {
  0%,
  100% {
    transform: rotate(-2.5deg)
  }
  40% {
    transform: rotate(2.5deg)
  }
}
@-webkit-keyframes rockingwaves {
  0%,
  100% {
    -webkit-transform: rotate(-2.5deg)
  }
  50% {
    -webkit-transform: rotate(2.5deg)
  }
}
#fog {
  -webkit-animation-name: fog;
  -moz-animation-name: fog;
  animation-name: fog;
  -webkit-animation-duration: 60s;
  -moz-animation-duration: 60s;
  animation-duration: 60s;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -moz-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  -moz-animation-direction: alternate;
  animation-direction: alternate
}
@keyframes fog {
  0% {
    transform: scale3d(.3,.3,.3) rotate(4deg);
    opacity: 0
  }
  30%,
  50% {
    transform: scale(1.3) rotate(-4deg) translate3d(-3.125rem,-1rem,-1rem);
    opacity: .4
  }
  40%,
  70% {
    transform: scale(1.1) rotate(4deg) translate3d(3.125rem,1rem,1rem);
    opacity: .3
  }
  100% {
    transform: scale3d(2,2,2);
    opacity: 0
  }
}
@-webkit-keyframes fog {
  0% {
    -webkit-transform: scale3d(.3,.3,.3) rotate(4deg);
    opacity: 0
  }
  30%,
  50% {
    -webkit-transform: scale(1.3) rotate(-4deg) translate3d(-3.125,-1rem,-1rem);
    opacity: .4
  }
  40%,
  70% {
    -webkit-transform: scale(1.1) rotate(4deg) translate3d(3.125,1rem,1rem);
    opacity: .3
  }
  100% {
    -webkit-transform: scale3d(2,2,2);
    opacity: 0
  }
}
@-moz-keyframes fog {
  0% {
    -moz-transform: scale3d(.3,.3,.3) rotate(4deg);
    opacity: 0
  }
  30%,
  50% {
    -moz-transform: scale(1.3) rotate(-4deg) translate3d(-3.125,-1rem,-1rem);
    opacity: .4
  }
  40%,
  70% {
    -moz-transform: scale(1.1) rotate(4deg) translate3d(3.125,1rem,1rem);
    opacity: .3
  }
  100% {
    -moz-transform: scale3d(2,2,2);
    opacity: 0
  }
}
#over_waves {
  -webkit-animation-name: wave;
  animation-name: wave;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite
}
@keyframes wave {
  0%,
  100% {
    transform: rotate(1.1deg)
  }
  50% {
    transform: rotate(-1.1deg)
  }
}
@-webkit-keyframes wave {
  0%,
  100% {
    -webkit-transform: rotate(1.1deg)
  }
  50% {
    -webkit-transform: rotate(-1.1deg)
  }
}
#backrock_waves {
  -webkit-animation-name: backnforth;
  animation-name: backnforth;
  -webkit-animation-duration: 30s;
  animation-duration: 30s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
@keyframes backnforth {
  from,
  to {
    transform: translate3d(0,0,0)
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translate3d(-1.875rem,-.0625rem,-.0625rem)
  }
  20%,
  40%,
  60%,
  80% {
    transform: translate3d(1.875rem,.0625rem,.0625rem)
  }
}
@-webkit-keyframes backnforth {
  0% {
    -webkit-transform: translate3d(0,0,0)
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-1.875rem,0,0)
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(1.875rem,0,0)
  }
}
.vik-st0 {
  opacity: 1;
  fill: var(--dark-blue--darker--20)
}
.vik-st1 {
  fill: var(--gray--lighter--80)
}
.vik-st2 {
  fill: var(--gray--lighter--60)
}
.vik-st3 {
  fill: var(--gray--lighter--40)
}
.vik-st4 {
  fill: var(--gray--lighter--20)
}
.vik-st5 {
  fill: var(--gray--darker--20)
}
.vik-st7 {
  fill: var(--gray--darker--40)
}
.vik-st8 {
  fill: none;
  stroke: var(--gray--darker--80);
  stroke-miterlimit: 10;
  stroke-width: 2
}
.vik-st9 {
  opacity: .85
}
.vik-st10 {
  fill: var(--blue)
}
.dark-mode .layout-builder .play-button svg,
.dark-mode .layout-builder .social-icon svg,
.layout--majors > .layout__region--sample-jobs .play-button svg,
.layout--majors > .layout__region--sample-jobs .social-icon svg,
.vik-st13,
.vik-st14 {
  fill: var(--dark-blue)
}
.vik-st12 {
  stroke: var(--gray--darker--80);
  stroke-miterlimit: 10;
  stroke-width: 5
}
.vik-st13 {
  opacity: .87
}
.vik-st14 {
  opacity: .85
}
.vik-st15 {
  fill: var(--gray--darker--60)
}
.vik-st16 {
  opacity: .87
}
.vik-st17 {
  fill: none
}
.vik-st18 {
  font-family: Muli
}
.font--sans-serif,
.search-wrapper * {
  font-family: var(--font--sans-serif)
}
.vik-st19 {
  font-size: 2.5rem
}
.vik-st20 {
  letter-spacing: 1
}
.vik-st22 {
  font-size: 2.25rem;
  font-weight: 700
}
.vik-st24 {
  font-size: 6.24rem
}
.vik-st25 {
  font-size: 3.06rem
}
.vik-st26 {
  fill: var(--gray--darker--80)
}
.listNavShow.quickSearchShow {
  display: list-item
}
.listNavShow.ln-no-match {
  display: none!important
}
.results-text {
  margin: var(--space--sm) 0 0 var(--dpace--md);
  font-weight: 700
}
.views-exposed-form,
.views-view-grid.horizontal .views-col,
.views-view-grid.vertical .views-row {
  margin-bottom: var(--space--sm)
}
.results-text + .results-text-heading {
  margin: var(--space--xs) 0 var(--space--sm) var(--dpace--md);
  font-weight: 700
}
.statistics-collection--side-by-side,
.statistics-collection--vertical,
.views-view-grid.horizontal .views-row,
.views-view-grid.vertical {
  display: flex;
  flex-flow: row wrap;
  justify-content: center
}
.align-left,
.pane-islandora-solr-sort .pane-title,
.views-view-grid .views-col {
  margin-right: var(--space--sm)
}
.layout--fourcol--page-width,
.layout--onecol--page-width,
.layout--threecol--page-width,
.layout--twocol--page-width {
  max-width: 100vw;
  margin-right: calc(-1 * var(--space--sm));
  margin-left: calc(-1 * var(--space--sm))
}
.vbo-view-form input[type=checkbox],
.views-field-views-bulk-operations-bulk-form input[type=checkbox] {
  position: relative;
  top: var(--space--xs)/2;
  opacity: 1
}
.vbo-view-form .checkbox,
.views-field-views-bulk-operations-bulk-form .checkbox {
  display: inline-block;
  margin: 0
}
.views-exposed-form {
  display: flex;
  flex: 0 1 100%;
  flex-flow: row wrap;
  align-items: flex-end
}
#islandora-bookmark,
.views-exposed-form input,
.views-exposed-form label,
.views-exposed-form select {
  margin-bottom: var(--space--xs);
  font-size: var(--font-size--sm)
}
main .layout__region {
  max-width: calc(100vw - (var(--space--sm) * 2))
}
.layout--flex .layout__region {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly
}
.layout--fourcol-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.layout--fourcol-section > .layout__region {
  flex: 0 1 100%;
  font-size: var(--font-size--sm)
}
.layout--fourcol--page-width {
  display: flex;
  flex-wrap: wrap
}
.layout--fourcol--page-width > .layout__region {
  flex: 0 1 100%;
  max-width: none
}
.layout--majors {
  display: flex;
  flex-wrap: wrap
}
.layout--majors > .layout__region {
  flex: 0 1 100%
}
.layout--majors > .layout__region--sample-jobs {
  color: var(--white);
  background: var(--gray);
  background: var(--blue);
  margin-top: var(--space--md);
  padding: var(--space--lg) var(--space--xs)
}
.layout--majors > .layout__region--sample-jobs h1 {
  color: var(--light-green--lighter--20)
}
.layout--majors > .layout__region--sample-jobs h1:after {
  border-color: var(--blue--lighter--40)
}
.layout--majors > .layout__region--sample-jobs h2 {
  color: var(--light-green--lighter--40)
}
.layout--majors > .layout__region--sample-jobs h3 {
  color: var(--light-green--lighter--60)
}
.layout--majors>.layout__region--sample-jobs .intro,
.layout--majors>.layout__region--sample-jobs .tagline,
.layout--majors>.layout__region--sample-jobs h4 {
  color: var(--light-green--lighter--80)
}
.layout--majors>.layout__region--sample-jobs .block--countdown,
.layout--majors>.layout__region--sample-jobs caption,
.layout--majors>.layout__region--sample-jobs h5,
.layout--majors>.layout__region--sample-jobs h6 {
  color: var(--white)
}
.layout--majors > .layout__region--sample-jobs a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--blue--lighter--60);
  color: var(--white)
}
.layout--majors > .layout__region--sample-jobs a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--white);
  text-decoration-color: var(--purple--lighter--60)
}
.layout--majors > .layout__region--sample-jobs a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.layout--majors > .layout__region--sample-jobs a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.layout--majors > .layout__region--sample-jobs a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--white);
  background-image: var(--gradient--vertical--light-blue)
}
.page-islandora .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]),
body.page-islandora-object .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  text-decoration-color: var(--dark-blue);
  color: var(--blue--darker--40)
}
.layout--majors > .layout__region--sample-jobs .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--60)
}
.layout--majors > .layout__region--sample-jobs .play-button,
.layout--majors > .layout__region--sample-jobs .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.layout--majors > .layout__region--sample-jobs .play-button:active,
.layout--majors > .layout__region--sample-jobs .play-button:focus,
.layout--majors > .layout__region--sample-jobs .play-button:hover,
.layout--majors > .layout__region--sample-jobs .social-icon:active,
.layout--majors > .layout__region--sample-jobs .social-icon:focus,
.layout--majors > .layout__region--sample-jobs .social-icon:hover {
  background: var(--blue--lighter--60)
}
.layout--majors > .layout__region--sample-jobs ul {
  padding-right: var(--space--lg)
}
.layout--majors > .layout__region--catalog {
  font-size: var(--font-size--lg)
}
.islandora-oralhistories-content .ui-widget,
.layout--threecol-25-50-25>.layout__region--first,
.layout--threecol-25-50-25>.layout__region--third,
.layout--threecol-33-34-33>.layout__region--first,
.layout--threecol-33-34-33>.layout__region--second,
.layout--threecol-33-34-33>.layout__region--third,
.layout--threecol-section.layout--threecol-section--25-25-50>.layout__region--first,
.layout--threecol-section.layout--threecol-section--25-25-50>.layout__region--second,
.layout--threecol-section.layout--threecol-section--25-50-25>.layout__region--first,
.layout--threecol-section.layout--threecol-section--25-50-25>.layout__region--third,
.layout--threecol-section.layout--threecol-section--33-34-33>.layout__region--first,
.layout--threecol-section.layout--threecol-section--33-34-33>.layout__region--second,
.layout--threecol-section.layout--threecol-section--33-34-33>.layout__region--third,
.layout--threecol-section.layout--threecol-section--50-25-25>.layout__region--second,
.layout--threecol-section.layout--threecol-section--50-25-25>.layout__region--third,
.layout--twocol-25-75 > .layout__region--first,
.layout--twocol-34-66 > .layout__region--first,
.layout--twocol-66-34 > .layout__region--second,
.layout--twocol-75-25>.layout__region--second,
.layout--twocol-section.layout--twocol-section--25-75>.layout__region--first,
.layout--twocol-section.layout--twocol-section--33-67>.layout__region--first,
.layout--twocol-section.layout--twocol-section--67-33>.layout__region--second,
.layout--twocol-section.layout--twocol-section--75-25>.layout__region--second,
.view-virtual-collection-grid .card .small {
  font-size: var(--font-size--sm)
}
.double-margin--top,
.layout--majors>.layout__region--department,
.layout--majors>.layout__region--related-majors {
  margin-top: var(--space--md)
}
.block--nodemajorfield-degree,
.block--nodemajortitle,
.islandora-object-caption a,
.islandora-object-thumb a {
  display: inline-block
}
.block--nodemajorfield-degree div,
.pane-islandora-solr-basic-facets .date-range-slider-gap,
.pane-islandora-solr-basic-facets .range-slider-fromto {
  display: inline
}
.page-node-type-major .layout--majors .layout__region--department img,
.page-node-type-major .layout--majors .layout__region--related-majors img,
.page-node-type-major .layout--majors .layout__region--sample-jobs img {
  display: block;
  margin: auto
}
.islandora-front-page .page-content h2,
.page-islandora-search .islandora-solr-search-result dl.solr-fields.solr-thumb,
.page-islandora-search .islandora-solr-search-result dl.solr-thumb.solr-thumb,
.page-node-type-major .layout--majors .layout__region--department h2,
.page-node-type-major .layout--majors .layout__region--related-majors h2,
.page-node-type-major .layout--majors .layout__region--sample-jobs h2,
.text-align-center {
  text-align: center
}
.layout--onecol .layout__region {
  width: 100%;
  margin: auto
}
.layout--onecol--full .layout__region {
  width: 100%
}
.layout--onecol--page-width .layout__region {
  max-width: none;
  margin: 0
}
.layout--threecol-section {
  display: flex;
  flex-wrap: wrap
}
.layout--threecol-section > .layout__region {
  flex: 0 1 100%
}
.layout--threecol--page-width {
  display: flex;
  flex-wrap: wrap
}
.layout--threecol--page-width > .layout__region {
  flex: 0 1 100%;
  max-width: none
}
.layout--twocol-section {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-section > .layout__region {
  flex: 0 1 100%
}
.layout--twocol--page-width {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol--page-width > .layout__region {
  flex: 0 1 100%;
  max-width: none
}
.user-profile .profile-left {
  flex: 1 1 33%
}
.user-profile .profile-right {
  flex: 1 1 66%;
  text-align: center
}
.user-profile .profile-photo {
  width: 18.75rem;
  height: 18.75rem;
  margin: auto;
  margin-top: var(--space--lg)
}
.user-profile .social-links {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-top: var(--space--md)
}
.user-profile .social-icon {
  margin-right: var(--space--sm);
  margin-bottom: var(--space--sm)
}
.user-profile .contact h2,
.user-profile .office h2,
.user-profile .website h2 {
  flex: 0 0 100%;
  margin-bottom: 0
}
.user-profile .contact div,
.user-profile .office div,
.user-profile .website div {
  flex: 0 1 50%
}
.layout--threecol-25-50-25 {
  display: flex;
  flex-wrap: wrap
}
.layout--threecol-25-50-25 > .layout__region,
.layout--threecol-25-50-25 > .layout__region--second {
  flex: 0 1 100%
}
.layout--threecol-33-34-33 {
  display: flex;
  flex-wrap: wrap
}
.layout--threecol-33-34-33 > .layout__region {
  flex: 0 1 100%
}
.layout--twocol-25-75 {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-25-75 > .layout__region {
  flex: 0 1 100%
}
.layout--twocol-34-66 {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-34-66 > .layout__region {
  flex: 0 1 100%
}
.layout--twocol-66-34 {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-66-34 > .layout__region {
  flex: 0 1 100%
}
.layout--twocol-75-25 {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-75-25 > .layout__region {
  flex: 0 1 100%
}
.layout--twocol-bricks {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol-bricks > .layout__region {
  flex: 0 1 100%
}
.layout--twocol {
  display: flex;
  flex-wrap: wrap
}
.layout--twocol > .layout__region {
  flex: 0 1 100%
}
.search-wrapper {
  max-width: calc(100vw - var(--space--md));
  margin-top: var(--space--md)
}
.search-wrapper * {
  font-size: var(--font-size--md)
}
.search-wrapper .search {
  position: relative;
  top: initial;
  right: initial;
  display: block
}
.search-wrapper .simple-search .search-query {
  flex: 1;
  max-width: calc(100vw - var(--space--md) - 7.5rem)
}
.search-wrapper .simple-search .search-submit {
  flex: 0;
  border-radius: 0
}
.search-wrapper .result-number {
  margin-right: var(--space--xs);
  color: var(--black);
  font-weight: var(--font-weight--bold)
}
.search-wrapper .result-title {
  display: inline;
  margin-left: var(--space--xs);
  font-weight: var(--font-weight--bold)
}
.search-wrapper .search-results-summary {
  background: var(--gray--lighter--60);
  margin-top: var(--space--md);
  padding: var(--space--sm)
}
.align-right,
.search-wrapper .number-of-results a {
  margin-left: var(--space--sm)
}
.search-wrapper .search-pager {
  display: flex;
  justify-content: space-between;
  max-width: 80%;
  margin: auto;
  margin-top: var(--space--sm)
}
.search-wrapper .search-pager a {
  padding: var(--space--xs);
  border: none;
  font-weight: var(--font-weight--bold)
}
table.toplevel tr:nth-of-type(2n),
table.toplevel tr:nth-of-type(2n+1) {
  background-color: initial
}
table.toplevel td:nth-of-type(n) {
  border: none;
  padding: 0
}
.page-islandora .splash > div:nth-of-type(1) div {
  width: initial;
  height: initial
}
.page-islandora .layout--twocol-25-75 .layout__region--top {
  order: 0
}
.page-islandora .layout--twocol-25-75 .layout__region--first {
  order: 2
}
.page-islandora .layout--twocol-25-75 .layout__region--second {
  order: 1
}
.page-islandora .layout--twocol-25-75 .layout__region--bottom {
  order: 3
}
.page-islandora .layout__region--first .panel-pane,
body.page-islandora-object .layout__region--first .panel-pane {
  background: var(--gray--lighter--60);
  background: var(--gray--lighter--80);
  margin-bottom: var(--space--sm);
  padding: var(--space--sm);
  font-size: var(--font-size--sm)
}
.page-islandora .layout__region--first .panel-pane h1:after {
  border-color: var(--dark-blue--darker--80)
}
.page-islandora .layout__region--first .panel-pane h2 {
  color: var(--dark-blue--darker--60)
}
.page-islandora .layout__region--first .panel-pane h3 {
  color: var(--dark-blue--darker--40)
}
.page-islandora .layout__region--first .panel-pane h4 {
  color: var(--dark-blue--darker--20)
}
.page-islandora .layout__region--first .panel-pane h5,
.page-islandora .layout__region--first .panel-pane h6 {
  color: var(--dark-blue)
}
.page-islandora .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.page-islandora .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.page-islandora .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
.page-islandora .layout__region--first .panel-pane .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
.page-islandora .layout__region--first .panel-pane.pullquote {
  border-left-color: var(--dark-blue)
}
.page-islandora .layout__region--first h2 {
  margin-top: 0;
  padding-bottom: var(--space--sm);
  border-bottom-width: var(--border-width--lg);
  font-size: var(--font-size--md)
}
.page-islandora .layout__region--first h3 {
  color: var(--dark-green);
  font-size: var(--font-size--sm)
}
.page-islandora .layout__region--first input,
.page-islandora .layout__region--first select {
  border-width: var(--border-width--md)
}
.page-islandora .layout__region--first input[type=submit] {
  padding: var(--space--xs) var(--space--sm)
}
.page-islandora .layout__region--first label {
  font-weight: 400
}
.page-islandora .ui-datepicker a {
  margin: initial
}
.page-islandora .ui-datepicker select {
  display: inline;
  padding: initial;
  border: initial;
  font-weight: 400
}
.page-islandora .site-footer #block-user-login .form-submit {
  width: 100%;
  font-size: 1em
}
.page-islandora .form-select {
  max-width: 100%
}
.page-islandora-bookmark input[type=checkbox] {
  opacity: 1;
  position: relative;
  left: 50%
}
.islandora-front-page .layout__region--top,
.no-padding--top {
  padding-top: 0
}
.islandora-front-page .browse-by-icons {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  margin: var(--space--md) auto
}
.islandora-front-page .browse-by-icons .icon-with-text {
  padding: var(--space--sm);
  border: solid var(--border-width--md) transparent
}
.islandora-front-page .browse-by-icons .icon-with-text .material-icons {
  color: var(--dark-blue);
  font-size: var(--icon-size--lg)
}
.islandora-front-page .browse-by-icons .icon-with-text:focus-within,
.islandora-front-page .browse-by-icons .icon-with-text:hover {
  transform: translate(-.125rem,-.125rem);
  border-color: var(--dark-blue);
  outline: 0;
  background: 0 0
}
.card-4col--mabel-view .view-header {
  display: -ms-grid;
  display: grid;
  grid-column-gap: var(--space--sm);
  -ms-grid-columns: 1fr;
  -ms-grid-rows: auto;
  grid-template-columns: 1fr;
  grid-template-rows: auto
}
#block-masquerade-masquerade .description,
.dark-mode .layout-builder .block--countdown,
.dark-mode .layout-builder caption,
.islandora-oralhistories-content .ui-state-active a,
.islandora-oralhistories-content .ui-state-active a:link,
.islandora-oralhistories-content .ui-state-active a:visited {
  color: var(--white)
}
a#clip {
  margin-bottom: var(--space--sm);
  font-size: var(--font-size--sm)
}
.islandora-objects-display-switch {
  float: none
}
.islandora-objects-display-switch ul {
  display: flex;
  margin: var(--space--xs) 0;
  padding: 0;
  list-style: none
}
.islandora-objects-display-switch a {
  margin-right: var(--space--sm);
  padding: var(--space--xs) var(--space--sm);
  text-decoration: none;
  color: var(---black);
  background-color: var(--gray--lighter--60)
}
.islandora-objects-display-switch a:active,
.islandora-objects-display-switch a:focus,
.islandora-objects-display-switch a:hover {
  color: var(--white);
  background-color: var(--gray)
}
.islandora-audio-content,
.islandora-basic-image-content,
.islandora-large-image-content,
.islandora-oralhistories-content,
.islandora-pdf-content,
.islandora-video-content {
  padding: 0;
  border: none;
  border-radius: 0
}
body.page-islandora-object .pane-page-title h1 {
  display: inline-block;
  margin-top: 0;
  margin-right: var(--space--sm);
  font-size: var(--font-size--2xl)
}
body.page-islandora-object .islandora-objects-grid-item {
  break-word: break-all;
  font-size: var(--font-size--sm)
}
body.page-islandora-object .islandora-large-image-content {
  float: none;
  width: 100%
}
body.page-islandora-object .layout__region--first .panel-pane h1:after {
  border-color: var(--dark-blue--darker--80)
}
body.page-islandora-object .layout__region--first .panel-pane h2 {
  color: var(--dark-blue--darker--60)
}
.islandora-metadata-set legend,
body.page-islandora-object .layout__region--first .panel-pane h3 {
  color: var(--dark-blue--darker--40)
}
body.page-islandora-object .layout__region--first .panel-pane h4 {
  color: var(--dark-blue--darker--20)
}
body.page-islandora-object .layout__region--first .panel-pane h5,
body.page-islandora-object .layout__region--first .panel-pane h6 {
  color: var(--dark-blue)
}
body.page-islandora-object .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
body.page-islandora-object .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
body.page-islandora-object .layout__region--first .panel-pane a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--white);
  outline-color: var(--dark-blue);
  background-image: var(--gradient--vertical--dark-blue)
}
body.page-islandora-object .layout__region--first .panel-pane .menu li {
  border-left: solid var(--border-width--md) var(--blue--darker--40)
}
body.page-islandora-object .layout__region--first .panel-pane.pullquote {
  border-left-color: var(--dark-blue)
}
body.page-islandora-object .layout__region--first h2 {
  margin-top: 0;
  font-size: var(--font-size--md)
}
body.page-islandora-object .layout__region--second {
  position: relative;
  padding-top: var(--space--lg)
}
.islandora-metadata-set legend {
  margin: 0;
  padding: 0 var(--space--sm)
}
.layout--twocol-section dl.islandora-inline-metadata {
  display: grid;
  margin-top: 0;
  font-size: var(--font-size--sm)
}
.layout--twocol-section dl.islandora-inline-metadata dt {
  width: initial;
  border: none
}
.layout--twocol-section dl.islandora-inline-metadata dd {
  width: initial;
  margin: 0;
  padding: var(--space--xs) 0 var(--space--xs) var(--space--md);
  border: none
}
.page-islandora-search .pane-page-title h1 {
  display: inline-block;
  margin-top: 0;
  margin-right: var(--space--sm)
}
.page-islandora-search .page-content,
.pane-islandora-solr-display-switch .item-list ul,
.pane-islandora-solr-result-limit .item-list ul,
body.page-islandora-object .layout__region--first .pane-islandora-bookmark-islandora-bookmark {
  margin-bottom: 0
}
.page-islandora-search .islandora-solr-search-result {
  padding: 0 var(--space--sm) var(--space--md);
  border-bottom: solid var(--border-width--sm) var(--gray)
}
.page-islandora-search .islandora-solr-search-result a {
  margin: initial;
  padding: 0
}
.page-islandora-search .islandora-solr-search-result .solr-fields dd,
.page-islandora-search .islandora-solr-search-result .solr-fields dt {
  border-color: var(--gray--lighter--60)
}
.page-islandora-search .islandora-solr-grid a {
  margin: 0;
  padding: 0;
  border: none;
  font-size: var(--font-size--sm)
}
.view-virtual-collection-grid .card,
.view-virtual-collection-grid ul.db-row li {
  text-align: left;
  border-radius: var(--border-radius--rounder);
  background: radial-gradient(ellipse at top left,#fff 65%,rgba(229,229,229,.9) 100%);
  box-shadow: 0 .25rem .5rem 0 rgba(0,0,0,.2),0 .375rem 1.25rem 0 rgba(0,0,0,.19)
}
.page-islandora-search .layout__region--second {
  position: relative;
  padding-top: var(--space--md)
}
.expand-solr-panel {
  position: relative;
  width: 100%;
  margin: 0;
  padding: var(--space--xs) var(--space--sm);
  text-align: left;
  color: var(--black);
  border-radius: 0;
  background-color: var(--gray--lighter--60)
}
.pane-islandora-solr-display-switch,
.pane-islandora-solr-result-limit {
  width: calc(50% - var(--space--sm));
  margin-right: var(--space--sm);
  display: inline-block
}
.expand-solr-panel .material-icons {
  position: absolute;
  top: var(--space--2xs);
  top: 50%;
  right: 0;
  transform: translate(-.25rem,-50%);
  font-size: 1.125rem
}
.date-range-filter-wrapper {
  display: block!important
}
#skip-to-search-results:focus {
  position: relative!important;
  margin-right: var(--space--md)
}
#islandora-solr-result-count {
  display: inline-block;
  margin-right: var(--space--md)
}
#edit-range-slider-submit {
  border-radius: 0
}
#edit-date-filter-date-filter-submit {
  margin-left: 100%;
  transform: translatex(-100%);
  border-radius: 0
}
.view-virtual-collection-grid .card {
  display: block;
  float: left;
  margin: var(--space--md);
  padding: var(--space--sm)
}
.view-virtual-collection-grid ul.db-row li {
  display: inline-block;
  overflow: hidden;
  max-height: 18.75rem;
  margin: var(--space--sm);
  padding: var(--space--sm)
}
.view-virtual-collection-grid ul.db-row li img {
  overflow: hidden;
  max-height: 12.5rem
}
.view-virtual-collection-grid .item-list {
  display: inline-table
}
#islandora-bookmark input {
  margin: 0;
  padding: var(--space--sm);
  border-radius: 0
}
#islandora-collection-search-form .form-wrapper {
  position: relative;
  display: grid;
  align-items: end;
  width: 100%;
  grid-column-gap: var(--space--xs);
  grid-template-areas: "menu menu" "text   go";
  grid-template-columns: 2fr 1fr;
  grid-template-rows: auto auto
}
#islandora-collection-search-form .form-type-select {
  width: 100%;
  margin: 0;
  grid-area: menu
}
#islandora-collection-search-form .form-type-textfield {
  margin: 0;
  grid-area: text
}
#islandora-collection-search-form .form-text {
  width: 100%;
  margin: 0;
  padding: var(--space--xs)
}
#islandora-collection-search-form .form-submit {
  height: 100%;
  margin: 0;
  border-radius: 0;
  grid-area: go
}
#block-islandora-compound-object-compound-jail-display {
  display: flex;
  flex-flow: row wrap;
  align-content: start;
  justify-content: space-between;
  height: 46.875rem;
  padding: var(--space--sm);
  border: solid var(--gray--lighter--60) var(--border-width--md);
  font-size: var(--font-size--sm)
}
#block-islandora-compound-object-compound-jail-display .form-item {
  flex: 0 0 100%;
  max-width: none
}
#block-islandora-compound-object-compound-jail-display .form-type-item:nth-child(2) {
  margin: 0;
  border-bottom: none
}
#block-islandora-compound-object-compound-jail-display > div {
  max-width: 50%;
  border: none
}
#block-islandora-compound-object-compound-jail-display > div:not(.form-item) {
  display: inline-block;
  vertical-align: top
}
.compound-navigation {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: end;
  font-size: var(--font-size--sm)
}
#islandora-compound-sequence-position {
  float: none;
  margin: 0
}
#islandora-compound-next-link,
#islandora-compound-previous-link {
  float: none;
  margin: 0;
  padding: var(--space--xs) var(--space--sm);
  color: var(--black);
  background: var(--gray--lighter--60);
  line-height: inherit
}
#islandora-compound-previous-link:before {
  content: "\2039  "
}
#islandora-compound-next-link:after {
  content: " \203A"
}
.pane-islandora-solr-display-switch {
  position: relative;
  z-index: 1;
  top: calc(-1 * var(--space--xs));
  margin-bottom: var(--space--sm);
  background: var(--gray--lighter--80)
}
.pane-islandora-solr-display-switch .item-list,
.pane-islandora-solr-result-limit .item-list {
  position: absolute;
  z-index: 1;
  display: none;
  width: 100%;
  padding: 0;
  background: var(--gray--lighter--80);
  font-size: var(--font-size--sm)
}
.pane-islandora-solr-display-switch .item-list li,
.pane-islandora-solr-result-limit .item-list li {
  margin: 0;
  padding: var(--space--xs) var(--space--sm);
  list-style: none
}
.pane-islandora-solr-display-switch .item-list li a {
  display: block;
  margin: calc(-1 * var(--space--xs)) -var(--space--sm);
  padding: var(--space--xs) var(--space--sm);
  text-decoration: none
}
.pane-islandora-solr-basic-facets {
  --plus-minus-sizer: 0.533rem
}
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .ui-slider-range {
  background: var(--dark-blue--darker--40)
}
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .ui-slider-handle.ui-state-default {
  display: block;
  width: 0;
  height: 0;
  margin-right: 0;
  padding: 0;
  border-top: 0 solid transparent;
  border-right: transparent solid var(--space--sm);
  border-bottom: var(--dark-blue--darker--40) solid var(--space--md);
  border-left: transparent solid var(--space--sm);
  border-radius: 0;
  background: 0 0
}
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .ui-slider-horizontal {
  max-height: var(--border-width--md);
  margin-bottom: var(--space--md);
  border: none
}
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-from-wrapper,
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-to-wrapper {
  position: absolute;
  top: -1.875rem;
  left: 50%;
  width: 7.5rem;
  margin-left: -3.75rem;
  text-align: center
}
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-from-wrapper .slider-popup-from,
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-from-wrapper .slider-popup-to,
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-to-wrapper .slider-popup-from,
.pane-islandora-solr-basic-facets .islandora-solr-range-slider .slider-popup-to-wrapper .slider-popup-to {
  padding: 0 var(--space--sm) var(--border-width--md) var(--space--sm);
  color: var(--black);
  color: var(--white);
  border: none;
  border-radius: .625rem;
  background-color: var(--gray);
  font-size: .75rem
}
.pane-islandora-solr-basic-facets #edit-range-slider-submit {
  margin-top: var(--space--xs)
}
.pane-islandora-solr-basic-facets .islandora-solr-facet {
  padding-left: 0;
  list-style: none
}
.pane-islandora-solr-basic-facets .islandora-solr-facet li {
  display: grid;
  grid-template-areas: "plusminus link" "count    count";
  grid-template-columns: calc(var(--plus-minus-sizer) * 2 + var(--space--sm)) auto;
  grid-template-rows: auto auto;
  align-items: center;
  justify-items: start
}
.pane-islandora-solr-basic-facets .islandora-solr-facet li > a {
  grid-area: link;
  margin: 0;
  padding: var(--space--xs) 0 var(--space--xs) var(--space--sm)
}
.pane-islandora-solr-basic-facets .islandora-solr-facet .count {
  grid-area: count;
  justify-self: end
}
.pane-islandora-solr-basic-facets .islandora-solr-facet .plusminus {
  grid-area: plusminus
}
.pane-islandora-solr-basic-facets .islandora-solr-facet .plusminus a {
  display: inline-grid;
  align-content: center;
  justify-content: center;
  width: var(--plus-minus-sizer);
  height: var(--plus-minus-sizer);
  margin-right: var(--space--2xs);
  text-decoration: none;
  color: var(--white);
  background: var(--blue)
}
.islandora-oralhistories-content .ui-widget-header {
  border: none;
  border-bottom: solid var(--border-width--lg) var(--gray);
  background: 0 0
}
.islandora-oralhistories-content .ui-tabs {
  padding: var(--space--xs) 0 0 0;
  border: none
}
.islandora-oralhistories-content .ui-state-active,
.islandora-oralhistories-content .ui-widget-content .ui-state-active,
.islandora-oralhistories-content .ui-widget-header .ui-state-active {
  border: none;
  border-radius: 0;
  background: var(--gray)
}
.islandora-oralhistories-content .ui-tabs .ui-tabs-panel,
.no-padding {
  padding: 0
}
.pane-islandora-solr-result-limit {
  position: relative;
  top: calc(-1 * var(--space-xs));
  margin-bottom: var(--space--sm)
}
.align-center,
.align-center .image-button,
.max-width--content {
  margin-left: auto;
  margin-right: auto
}
.pane-islandora-solr-result-limit .item-list li a {
  display: block;
  margin: calc(-1 * var(--space-xs)) -var(--space--sm);
  padding: var(--space--xs) var(--space--sm);
  text-decoration: none
}
#islandora_solr_results_limit {
  display: flex;
  justify-content: space-evenly;
  margin-bottom: 0;
  list-style: none
}
.pane-islandora-solr-search-navigation {
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--space--sm)
}
.pane-islandora-solr-search-navigation div {
  display: inline-block;
  font-size: var(--font-size--sm)
}
.pane-islandora-solr-search-navigation .button {
  margin-bottom: 0;
  padding: var(--space--xs)
}
.pane-islandora-solr-search-navigation #islandora-solr-search-prev-link a:before,
.pane-islandora-solr-search-navigation #islandora-solr-search-return-link a:before {
  content: "\2039  ";
  font-size: 1em
}
.pane-islandora-solr-search-navigation #islandora-solr-search-next-link a:after {
  content: " \203A";
  font-size: 1em
}
.pane-islandora-solr-sort {
  display: flex;
  align-items: center;
  margin-top: calc(-1 * var(--space--md))
}
.pane-islandora-solr-sort .item-list ul {
  display: grid;
  grid-column-gap: var(--space--xs);
  grid-template-columns: repeat(4,1fr);
  margin: 0;
  list-style: none
}
.pane-islandora-solr-sort .item-list li {
  flex: 1;
  margin: 0;
  text-align: center
}
.pane-islandora-solr-sort .item-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space--2xs);
  text-decoration: none;
  color: var(--white);
  background: var(--blue)
}
.pane-islandora-solr-sort .item-list li a:active,
.pane-islandora-solr-sort .item-list li a:focus,
.pane-islandora-solr-sort .item-list li a:hover {
  outline-color: var(--dark-blue);
  background: var(--dark-blue)
}
.pane-islandora-solr-sort .item-list li a.active:active,
.pane-islandora-solr-sort .item-list li a.active:focus,
.pane-islandora-solr-sort .item-list li a.active:hover {
  color: var(--light-green);
  background: var(--dark-blue)
}
.pane-islandora-solr-sort .item-list .sort-asc {
  margin-left: var(--space--sm);
  transform: rotate(-90deg)
}
.pane-islandora-solr-sort .item-list .sort-asc.material-icons,
.pane-islandora-solr-sort .item-list .sort-desc.material-icons {
  font-size: var(--space--lg)
}
.pane-islandora-solr-sort .item-list .sort-desc {
  margin-left: var(--space--sm);
  transform: rotate(90deg)
}
.islandora_videojs-dimensions {
  width: 100%;
  height: initial
}
.align-center.button {
  margin-left: 50%;
  transform: translatex(-50%)
}
.round-edges {
  border-radius: var(--border-radius--rounder)
}
.column-count--2,
.column-count--3,
.column-count--4 {
  column-gap: var(--space--md)
}
.column-count--2 {
  column-count: 2
}
.column-count--3 {
  column-count: 3
}
.column-count--4 {
  column-count: 4
}
.column-count--5 {
  column-count: 5
}
.column-count--6 {
  column-count: 6
}
.grid-column-count--2,
.grid-column-count--3,
.grid-column-count--4,
.grid-column-count--5,
.grid-column-count--6 {
  display: grid;
  grid-column-gap: var(--space--sm);
  align-items: stretch;
  grid-template-columns: auto auto
}
.font--serif {
  font-family: var(--font--serif)
}
.font--title-font {
  font-family: var(--font--title-font)
}
.lowercase {
  text-transform: lowercase
}
.layout-builder--content-preview-disabled * {
  width: initial;
  min-height: initial
}
#drupal-off-canvas .messages--error {
  background-repeat: no-repeat;
  background-position-x: 1%;
  background-position-y: 50%
}
#drupal-off-canvas .ui-autocomplete li a {
  color: #63c2ff!important
}
.dark-mode .layout-builder {
  color: var(--white);
  background: var(--black)
}
.dark-mode .layout-builder h1,
.dark-mode .layout-builder h6 {
  color: var(--light-green)
}
.dark-mode .layout-builder h1:after {
  border-color: var(--white)
}
.dark-mode .layout-builder h2 {
  color: var(--light-green--lighter--20)
}
.dark-mode .layout-builder .intro,
.dark-mode .layout-builder .tagline,
.dark-mode .layout-builder h3 {
  color: var(--light-green--lighter--40)
}
.dark-mode .layout-builder h4 {
  color: var(--light-green--lighter--60)
}
.dark-mode .layout-builder h5 {
  color: var(--light-green--lighter--80)
}
.dark-mode .layout-builder a.patternLink,
.dark-mode .layout-builder a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]) {
  color: var(--blue--lighter--40)
}
.dark-mode .layout-builder a.patternLink:visited,
.dark-mode .layout-builder a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):visited {
  color: var(--purple--lighter--80)
}
.dark-mode .layout-builder a.patternLink:active,
.dark-mode .layout-builder a.patternLink:focus,
.dark-mode .layout-builder a.patternLink:hover,
.dark-mode .layout-builder a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):active,
.dark-mode .layout-builder a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):focus,
.dark-mode .layout-builder a:not([class*=cta]):not([class*=button]):not([class*=taxonomy-term]):hover {
  color: var(--black);
  outline-color: var(--blue--lighter--40);
  background-image: var(--gradient--vertical--light-blue)
}
.dark-mode .layout-builder .menu li {
  border-left: solid var(--border-width--md) var(--blue--lighter--40)
}
.dark-mode .layout-builder .play-button,
.dark-mode .layout-builder .social-icon {
  color: var(--dark-blue);
  background: var(--white)
}
.dark-mode .layout-builder .play-button:active,
.dark-mode .layout-builder .play-button:focus,
.dark-mode .layout-builder .play-button:hover,
.dark-mode .layout-builder .social-icon:active,
.dark-mode .layout-builder .social-icon:focus,
.dark-mode .layout-builder .social-icon:hover {
  background: var(--blue--lighter--60)
}
.dark-mode .layout-builder,
.dark-mode .layout-builder-block,
.dark-mode .layout-builder__add-block,
.dark-mode .layout-builder__add-section {
  background-color: var(--dark-gray--darker--80)
}
.dark-mode .block--banner .background-image img,
.dark-mode .block--banner .image img,
.dark-mode .block--image .background-image img,
.dark-mode .block--image .image img,
.dark-mode .block--image-button .background-image img,
.dark-mode .block--image-button .image img {
  filter: brightness(.8) contrast(1.2)
}
.image-darker---10 .background-image,
.image-darker---10 .image {
  filter: brightness(.9)
}
.image-darker---20 .background-image,
.image-darker---20 .image {
  filter: brightness(.8)
}
.image-darker---30 .background-image,
.image-darker---30 .image {
  filter: brightness(.7)
}
.image-darker---40 .background-image,
.image-darker---40 .image {
  filter: brightness(.6)
}
.image-darker---50 .background-image,
.image-darker---50 .image {
  filter: brightness(.5)
}
.image-darker---60 .background-image,
.image-darker---60 .image {
  filter: brightness(.4)
}
.image-darker---70 .background-image,
.image-darker---70 .image {
  filter: brightness(.3)
}
.image-darker---80 .background-image,
.image-darker---80 .image {
  filter: brightness(.2)
}
.image-darker---90 .background-image,
.image-darker---90 .image {
  filter: brightness(.1)
}
.full-width {
  width: 100%;
  max-width: none
}
.full-height {
  height: 100%
}
.min-height--25vh {
  min-height: 25vh
}
.min-height--50vh {
  min-height: 50vh
}
.min-height--75vh {
  min-height: 75vh
}
.min-height--100vh {
  min-height: 100vh
}
.max-width--content {
  max-width: var(--content-area-max-width)
}
.full-vw {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%)
}
.standard-margin {
  margin: var(--space--sm)
}
.standard-margin--right {
  margin-right: var(--space--sm)
}
.standard-margin--bottom {
  margin-bottom: var(--space--sm)
}
.standard-margin--left {
  margin-left: var(--space--sm)
}
.double-margin {
  margin: var(--space--md)
}
.double-margin--right {
  margin-right: var(--space--md)
}
.double-margin--bottom {
  margin-bottom: var(--space--md)
}
.double-margin--left {
  margin-left: var(--space--md)
}
.no-margin--right {
  margin-right: 0
}
.no-margin--bottom {
  margin-bottom: 0
}
.no-margin--left {
  margin-left: 0
}
.standard-padding--top {
  padding-top: var(--space--sm)
}
.standard-padding--right {
  padding-right: var(--space--sm)
}
.standard-padding--bottom {
  padding-bottom: var(--space--sm)
}
.standard-padding--left {
  padding-left: var(--space--sm)
}
.double-padding--top {
  padding-top: var(--space--md)
}
.double-padding--right {
  padding-right: var(--space--md)
}
.double-padding--bottom {
  padding-bottom: var(--space--md)
}
.double-padding--left {
  padding-left: var(--space--md)
}
.no-padding--right {
  padding-right: 0
}
.no-padding--bottom {
  padding-bottom: 0
}
.no-padding--left {
  padding-left: 0
}
.after-unset:after,
.before-unset:before {
  content: "";
  display: none
}
.embed-container {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  height: 0;
  padding-bottom: 56.25%
}
.embed-container embed,
.embed-container iframe,
.embed-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
@media screen and (min-width:0\0) {
  .card-2col,
  .card-2col--flex,
  .card-2col--view,
  .card-2col--view .view-content,
  .card-3col,
  .card-3col--flex,
  .card-3col--view,
  .card-3col--view .view-content,
  .card-4col,
  .card-4col--flex,
  .card-4col--view,
  .card-4col--view .view-content {
    display: initial
  }
  .card-2col .block--card,
  .card-2col .card,
  .card-2col .event,
  .card-2col--flex .block--card,
  .card-2col--flex .card,
  .card-2col--flex .event,
  .card-2col--view .block--card,
  .card-2col--view .card,
  .card-2col--view .event {
    float: left;
    width: 50%
  }
  .card-3col .block--card,
  .card-3col .card,
  .card-3col .event,
  .card-3col--flex .block--card,
  .card-3col--flex .card,
  .card-3col--flex .event,
  .card-3col--view .block--card,
  .card-3col--view .card,
  .card-3col--view .event {
    float: left;
    width: 33%
  }
  .card-4col .block--card,
  .card-4col .card,
  .card-4col .event,
  .card-4col--flex .block--card,
  .card-4col--flex .card,
  .card-4col--flex .event,
  .card-4col--view .block--card,
  .card-4col--view .card,
  .card-4col--view .event {
    float: left;
    width: 25%
  }
  .card--flex--section-divider {
    float: left;
    width: 100%
  }
  .layout--flex .layout__region {
    justify-content: center
  }
}
@media (min-width:62.5rem) {
  .layout--onecol .layout__region {
    max-width: var(--content-area-max-width--sm)
  }
}
@media (min-width:580px) {
  .site-footer .region--footer_center,
  .site-footer .region--footer_left,
  .site-footer .region--footer_right {
    -ms-grid-column-span: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1
  }
  .layout--threecol-section > .layout__region--first,
  .layout--twocol-section>.layout__region--first {
    padding-right: var(--space--xs)
  }
  .layout--threecol-section > .layout__region--third,
  .layout--twocol-section>.layout__region--second {
    padding-left: var(--space--xs)
  }
  .flowchart ol {
    flex-flow: row wrap;
    justify-content: center
  }
  .flowchart li {
    flex-flow: row nowrap;
    margin: var(--space--md) 0 0
  }
  .flowchart .flow-down {
    display: none
  }
  .flowchart .flow-right {
    display: block
  }
  .lightbox-overlay .lightbox-dialog {
    width: 75%
  }
  .content-switcher button .material-icons.show,
  .mabel-content-switcher button .material-icons.show {
    position: relative;
    top: .3rem;
    display: inline-block
  }
  .block--full-page,
  .block--half-page {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw)
  }
  .layout--twocol-section--50-50 .block--half-page {
    width: 50vw
  }
  .card-2col,
  .card-2col--view .view-content {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto
  }
  .card-3col,
  .card-3col--view .view-content {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto
  }
  .card-4col,
  .card-4col--view .view-content {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: auto
  }
  .card-2col--flex .block--card,
  .card-2col--flex .card,
  .card-2col--flex .event {
    flex: 0 0 calc(50% - var(--space--xs));
    margin-right: var(--space--xs)
  }
  .card-3col--flex .block--card,
  .card-3col--flex .card,
  .card-3col--flex .event {
    flex: 0 0 calc(33.33% - var(--space--xs));
    margin-right: var(--space--xs)
  }
  .card-4col--flex .block--card,
  .card-4col--flex .card,
  .card-4col--flex .event {
    flex: 0 0 calc(25% - var(--space--xs));
    margin-right: var(--space--xs)
  }
  .site-footer .region--footer_left {
    -ms-grid-column: 2
  }
  .site-footer .region--footer_center {
    -ms-grid-column: 4
  }
  .site-footer .region--footer_right {
    -ms-grid-column: 6
  }
  .site-footer .region--footer_bottom {
    -ms-grid-column: 2;
    -ms-grid-column-span: 5;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1
  }
  .wwu-footer .logo,
  .wwu-footer .tribal-lands-statement {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column-span: 1
  }
  .wwu-footer {
    -ms-grid-columns: var(--space--sm) 1fr 1fr var(--space--sm);
    -ms-grid-rows: var(--space--lg) auto auto var(--space--lg);
    grid-template-areas: ". ... ... ." ". logo info  ." ". statement icons ." ". copyright copyright .";
    grid-template-columns: var(--space--sm) 1fr 1fr var(--space--sm);
    grid-template-rows: var(--space--lg) auto auto var(--space--lg);
    justify-items: end
  }
  .wwu-footer .logo {
    grid-area: logo;
    -ms-grid-column: 2;
    justify-self: center
  }
  .wwu-footer .tribal-lands-statement {
    grid-area: statement;
    -ms-grid-column: 3
  }
  .wwu-footer .social-media-links {
    grid-area: icons;
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    align-content: start;
    justify-content: end
  }
  .wwu-footer .copyright {
    grid-area: copyright;
    margin: auto
  }
  .western-header-region .menu {
    justify-content: end
  }
  .views-view-grid.cols-1 .views-col {
    flex: 0 1 calc(100% - var(--space--sm))
  }
  .views-view-grid.cols-2 .views-col {
    flex: 0 1 calc(50% - var(--space--sm))
  }
  .views-view-grid.cols-3 .views-col {
    flex: 0 1 calc(33.333% - var(--space--sm))
  }
  .views-view-grid.cols-4 .views-col {
    flex: 0 1 calc(25% - var(--space--sm))
  }
  .views-view-grid.cols-5 .views-col {
    flex: 0 1 calc(20% - var(--space--sm))
  }
  .layout--fourcol-section > .layout__region {
    flex: 0 1 24%
  }
  .layout--fourcol--page-width > .layout__region--first,
  .layout--fourcol--page-width > .layout__region--fourth,
  .layout--fourcol--page-width > .layout__region--second,
  .layout--fourcol--page-width > .layout__region--third {
    flex: 0 1 25%
  }
  .view--majors-list .menu {
    column-count: 2
  }
  .layout--threecol-section > .layout__region--second {
    padding-right: var(--space--xs);
    padding-left: var(--space--xs)
  }
  .layout--threecol-section.layout--threecol-section--25-25-50 > .layout__region--first,
  .layout--threecol-section.layout--threecol-section--25-25-50 > .layout__region--second,
  .layout--threecol-section.layout--threecol-section--25-50-25 > .layout__region--first,
  .layout--threecol-section.layout--threecol-section--25-50-25 > .layout__region--third,
  .layout--threecol-section.layout--threecol-section--50-25-25 > .layout__region--second,
  .layout--threecol-section.layout--threecol-section--50-25-25 > .layout__region--third {
    flex: 0 1 25%
  }
  .layout--threecol-section.layout--threecol-section--25-25-50 > .layout__region--third,
  .layout--threecol-section.layout--threecol-section--25-50-25 > .layout__region--second,
  .layout--threecol-section.layout--threecol-section--50-25-25 > .layout__region--first {
    flex: 0 1 50%
  }
  .layout--threecol-section.layout--threecol-section--33-34-33 > .layout__region--first,
  .layout--threecol-section.layout--threecol-section--33-34-33 > .layout__region--third {
    flex: 0 1 33%
  }
  .layout--threecol-section.layout--threecol-section--33-34-33 > .layout__region--second {
    flex: 0 1 34%
  }
  .layout--threecol--page-width > .layout__region--first,
  .layout--threecol--page-width > .layout__region--third {
    flex: 0 1 33%
  }
  .layout--threecol--page-width > .layout__region--second {
    flex: 0 1 34%
  }
  .layout--twocol-section.layout--twocol-section--50-50 > .layout__region--first,
  .layout--twocol-section.layout--twocol-section--50-50 > .layout__region--second {
    flex: 0 1 50%
  }
  .layout--twocol-section.layout--twocol-section--33-67 > .layout__region--first,
  .layout--twocol-section.layout--twocol-section--67-33 > .layout__region--second {
    flex: 0 1 33%
  }
  .layout--twocol-section.layout--twocol-section--33-67 > .layout__region--second,
  .layout--twocol-section.layout--twocol-section--67-33 > .layout__region--first {
    flex: 0 1 67%
  }
  .layout--twocol-section.layout--twocol-section--25-75 > .layout__region--first,
  .layout--twocol-section.layout--twocol-section--75-25 > .layout__region--second {
    flex: 0 1 25%
  }
  .layout--twocol-section.layout--twocol-section--25-75 > .layout__region--second,
  .layout--twocol-section.layout--twocol-section--75-25 > .layout__region--first {
    flex: 0 1 75%
  }
  .layout--twocol--page-width > .layout__region--first,
  .layout--twocol--page-width > .layout__region--second {
    flex: 0 1 50%
  }
  .user-profile .profile-photo {
    width: 25rem;
    height: 25rem
  }
  .card-4col--mabel-view .view-header {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
    -ms-grid-rows: auto;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: auto
  }
  .pane-islandora-solr-search-navigation {
    display: grid;
    grid-template-columns: 3fr 1fr 1fr;
    grid-template-rows: auto
  }
}
@media (min-width:950px) {
  .org-chart ul.level-a,
  .org-chart ul.level-b,
  .org-chart ul.level-sub-a {
    display: grid;
    grid-template-columns: repeat(10,auto);
    margin-left: 0
  }
  .black-bg .menu li,
  .black-gradient-overlay .menu li,
  .black-overlay .menu li,
  .block--announcement .material-icons .menu li,
  .blue-bg .menu li,
  .blue-gradient-bg .menu li,
  .blue-overlay .menu li,
  .dark-blue-bg .menu li,
  .dark-blue-gradient-bg .menu li,
  .dark-blue-overlay .menu li,
  .dark-green-bg .menu li,
  .dark-mode .gray-bg .menu li,
  .dark-mode .green-bg .menu li,
  .dark-mode .light-blue-bg .menu li,
  .dark-mode .light-gray-bg .menu li,
  .dark-mode .light-green-bg .menu li,
  .dark-mode .lightest-blue-bg .menu li,
  .dark-mode .lightest-gray-bg .menu li,
  .dark-mode .menu li,
  .dark-mode blockquote.pullquote .menu li,
  .dark-mode blockquote:not([class]) .menu li,
  .dark-mode table .menu li,
  .dark-mode table.light-blue .menu li,
  .dark-mode table.lightest-gray .menu li,
  .darkest-blue-bg .menu li,
  .gray-bg .menu li,
  .gray-overlay .menu li,
  .green-bg .menu li,
  .job-title .menu li,
  .light-blue-bg .menu li,
  .light-gray-bg .menu li,
  .light-green-bg .menu li,
  .lightest-blue-bg .menu li,
  .lightest-gray-bg .menu li,
  .menu li,
  .pronouns .menu li,
  .taxonomy-term .menu li,
  .white-gradient-overlay .menu li,
  [class$="-bg"] table .menu li,
  blockquote:not([class]) .menu li,
  table .menu li {
    border-left-width: var(--border-width--lg)
  }
  input,
  select,
  textarea {
    width: auto;
    border-width: var(--border-width--lg)
  }
  .webform-progress-tracker .progress-step.is-complete .progress-title:after {
    left: var(--space--2xl)
  }
  .spaced li {
    margin-bottom: var(--space--md)
  }
  th[colspan]:after {
    right: -var(--border-width--md) --thicker-.0625rem;
    width: var(--border-width--md) --thicker
  }
  th[rowspan]:after {
    bottom: 0;
    height: var(--border-width--md) --thicker
  }
  td {
    border-width: var(--border-width--md) --thicker
  }
  .responsive-table {
    overflow-x: revert
  }
  .responsive-table table {
    width: 100%
  }
  .responsive-table caption {
    text-align: center
  }
  hr {
    border-width: var(--border-width-lg)
  }
  .block--announcement .material-icons {
    font-size: var(--icon-size--lg)
  }
  #block-system-main-menu .ultimenu--horizontal .menu li,
  #block-system-main-menu>.menu .menu li,
  .block--announcement .body .menu li,
  .block--card.color-block-title .title .menu li,
  .block--card.color-block-title.dark-blue .title .menu li,
  .block--card.color-block-title.light-green .title .menu li,
  .block--card.event.alt .location .menu li,
  .block--card.event.alt .title .menu li,
  .block--card.information.split-style .title .menu li,
  .block--card.simple .menu li,
  .block--card.simple .title .menu li,
  .block--card.tile .menu li,
  .card.color-block-title .title .menu li,
  .card.color-block-title.dark-blue .title .menu li,
  .card.color-block-title.light-green .title .menu li,
  .card.event.alt .location .menu li,
  .card.event.alt .title .menu li,
  .card.information.split-style .title .menu li,
  .card.simple .menu li,
  .card.simple .title .menu li,
  .card.tile .menu li,
  .dark-mode .block--announcement .body .menu li,
  .dark-mode .block--announcement .material-icons .menu li,
  .dark-mode .block--card.simple .menu li,
  .dark-mode .card.simple .menu li,
  .headline.box-headline .menu li,
  .headline.left-aligned-bar .menu li,
  .headline.right-aligned-bar .menu li,
  .main-navigation .ultimenu--horizontal .menu li,
  .main-navigation>.menu .menu li,
  .ultimenu__region .menu li {
    border-left-width: var(--border-width--lg)
  }
  .org-chart ul li a,
  .org-chart ul li span,
  .social-media-links {
    max-width: none
  }
  .org-chart ul.level-a .item-level-a > a,
  .org-chart ul.level-a .item-level-a > span {
    max-width: var(--chart-max-size);
    margin: auto
  }
  .org-chart ul.level-b {
    margin-top: var(--chart-spacing)
  }
  .org-chart ul.level-c .level-c {
    display: flex;
    flex-flow: column;
    margin-left: calc(var(--chart-spacing)/ 2)
  }
  .org-chart .item-level-a > a:before,
  .org-chart .item-level-a > span:before {
    position: absolute;
    bottom: 0;
    left: calc((var(--chart-spacing)/ 2) + (var(--chart-border-width)/ 2) + 50%);
    display: block;
    width: var(--chart-border-width);
    height: var(--chart-spacing);
    content: "";
    transform: translate(-50%,var(--chart-spacing));
    background: var(--chart-line-color)
  }
  #block-system-main-menu .ultimenu--horizontal>li .expand-icon.mobile,
  #block-system-main-menu>.menu>li .expand-icon.mobile,
  .main-navigation .ultimenu--horizontal>li .expand-icon.mobile,
  .main-navigation>.menu>li .expand-icon.mobile,
  .org-chart .item-level-a.no-children>a:before,
  .org-chart .item-level-a.no-children>span:before,
  .org-chart .item-level-b:last-child>.level-c:before,
  .org-chart .item-level-b:last-of-type>a:before,
  .org-chart .item-level-b:last-of-type>span:before,
  .org-chart .item-level-b:only-child:before,
  .org-chart .item-level-b>a:before,
  .org-chart .item-level-b>span:before,
  .toggle-menu {
    display: none
  }
  .org-chart .item-level-b:before,
  .org-chart .item-level-b:first-child:before,
  .org-chart .item-level-b:last-child:before {
    display: block;
    background: var(--chart-line-color);
    content: ""
  }
  #block-system-main-menu .ultimenu--horizontal>li.is-active-trail,
  #block-system-main-menu>.menu>li.is-active-trail,
  .main-navigation .ultimenu--horizontal>li.is-active-trail,
  .main-navigation>.menu>li.is-active-trail,
  .org-chart .item-level-b {
    border-left: none
  }
  .org-chart .item-level-b:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--chart-border-width)
  }
  .org-chart .item-level-b:first-child:before {
    left: calc((var(--chart-spacing)/ 2) + (var(--chart-border-width)/ 2) + 50%);
    width: 50%;
    height: var(--chart-border-width)
  }
  .org-chart .item-level-b:last-child:before {
    width: calc((var(--chart-spacing)/ 2) + (var(--chart-border-width)/ 2) + 50%);
    height: var(--chart-border-width)
  }
  .org-chart .item-level-b > a:before,
  .org-chart .item-level-b > span:before,
  .org-chart .item-level-b:last-of-type > a:before,
  .org-chart .item-level-b:last-of-type > span:before {
    position: absolute;
    top: calc(-1 * var(--chart-spacing));
    left: 50%;
    display: block;
    width: var(--chart-border-width);
    height: var(--chart-spacing);
    content: "";
    transform: translate(calc(var(--chart-spacing)/ -2)var(--chart-border-width)/ 2);
    border: none;
    background: var(--chart-line-color)
  }
  .block--countdown div[role=timer] {
    flex-flow: row wrap
  }
  .block--countdown div[role=timer] p {
    border-right: var(--border-width--md) solid
  }
  .display-settings {
    z-index: 2;
    height: 100%;
    min-height: initial;
    margin-bottom: 0
  }
  .display-settings .display-settings-menu {
    flex: 0 0 100%;
    margin-left: -.575rem
  }
  .headline.box-headline {
    margin-top: 5%;
    margin-left: 5%;
    background: var(--gradient--horizontal--dark-blue-to-transparent)
  }
  .block--image-with-description {
    grid-template-areas: none;
    grid-template-columns: 3fr var(--space--2xl) var(--space--lg) 4fr;
    grid-template-rows: var(--space--2xl) 1fr var(--space--xl)
  }
  .block--image-with-description .image {
    z-index: 1;
    grid-column: 1/span 2;
    grid-row: 2/span 1
  }
  .block--image-with-description .body {
    padding-left: var(--space--3xl);
    grid-column: 2/span 3;
    grid-row: 1/span all
  }
  .block--image-with-description.mirror {
    grid-template-columns: 4fr var(--space--lg) var(--space--2xl) 3fr
  }
  .block--image-with-description.mirror .image {
    grid-column: 3/span 2
  }
  .block--image-with-description.mirror .body {
    padding-right: var(--space--3xl);
    padding-left: var(--space--md);
    grid-column: 1/span 3
  }
  .lightbox-overlay .lightbox-dialog {
    grid-template-areas: "... ... button" "content content content" "... cta ...";
    width: 80%
  }
  .link-list {
    display: flex;
    padding: var(--space--sm)
  }
  .link-list h1.col,
  .link-list h2.col,
  .link-list h3.col,
  .link-list h4.col,
  .link-list h5.col,
  .link-list h6.col {
    margin: calc(-1 * (var(--space--sm))) auto
  }
  .col.left {
    flex: 0 0 15%
  }
  #block-system-main-menu,
  .main-navigation {
    width: 100%;
    height: inherit;
    border-top: none
  }
  #block-system-main-menu .ultimenu--horizontal > li,
  #block-system-main-menu > .menu > li,
  .main-navigation .ultimenu--horizontal > li,
  .main-navigation > .menu > li {
    grid-template-columns: 1fr var(--icon-size--xs);
    width: inherit;
    border-bottom: none
  }
  #block-system-main-menu .ultimenu--horizontal > li > a,
  #block-system-main-menu > .menu > li > a,
  .main-navigation .ultimenu--horizontal > li > a,
  .main-navigation > .menu > li > a {
    display: flex;
    align-items: center;
    padding: var(--space--sm);
    padding-right: var(--icon-size--xs);
    text-align: center
  }
  #block-system-main-menu .ultimenu--horizontal > li .expand-icon.desktop,
  #block-system-main-menu > .menu > li .expand-icon.desktop,
  .main-navigation .ultimenu--horizontal > li .expand-icon.desktop,
  .main-navigation > .menu > li .expand-icon.desktop {
    display: flex
  }
  #block-system-main-menu .ultimenu--horizontal > li.is-active-trail:after,
  #block-system-main-menu > .menu > li.is-active-trail:after,
  .main-navigation .ultimenu--horizontal > li.is-active-trail:after,
  .main-navigation > .menu > li.is-active-trail:after {
    display: block;
    grid-column: 1/span all;
    height: var(--border-width--lg);
    margin-top: calc(-1 * var(--border-width--lg));
    content: "";
    background: var(--light-green--lighter--20)
  }
  .ultimenu__region {
    flex-flow: row wrap;
    justify-content: space-around;
    width: 100%;
    max-width: 100vw;
    height: inherit;
    background-image: var(--gradient--vertical--blue-to-dark-blue)
  }
  .ultimenu__region .menu li a {
    min-height: none
  }
  .ultimenu__region > div {
    flex: 0 1 auto
  }
  .western-menu {
    grid-area: none;
    grid-column: 2/span all;
    grid-row: 1/span 1
  }
  .western-menu .icon-with-text {
    display: flex;
    align-items: center;
    width: initial;
    height: initial;
    min-height: var(--touch-target--min);
    background-size: 100%
  }
  .western-menu .icon-with-text .material-icons {
    position: relative;
    top: .125rem;
    margin-right: var(--space--2xs);
    font-size: var(--icon-size--sm)
  }
  .block--testimonial {
    flex-flow: row;
    padding-bottom: var(--space--3xl)
  }
  .block--testimonial .image--stylized {
    flex: 0 0 auto;
    margin: 0;
    margin-right: var(--space--md)
  }
  .block--testimonial.mirror .image--stylized {
    margin-right: 0;
    margin-left: var(--space--md)
  }
  .block--testimonial.mirror .image {
    order: 2
  }
  .block--testimonial.mirror .body {
    order: 1;
    text-align: right
  }
  #islandora-search-container .menu li,
  .block--schedule .schedule-item .menu li,
  .dark-mode .block--schedule .schedule-item .menu li,
  .dark-mode .layout-builder .menu li,
  .dark-mode .timeline-block:nth-of-type(even) .menu li,
  .dark-mode .timeline-block:nth-of-type(odd) .menu li,
  .layout--majors>.layout__region--sample-jobs .menu li,
  .page-islandora .layout__region--first .panel-pane .menu li,
  .search-wrapper .search-results-summary .menu li,
  .timeline-block:nth-of-type(even) .menu li,
  .timeline-block:nth-of-type(odd) .menu li,
  .western-header-region .block .menu li,
  body.page-islandora-object .layout__region--first .panel-pane .menu li {
    border-left-width: var(--border-width--lg)
  }
  .search {
    right: inherit;
    left: inherit
  }
  #islandora-search-container {
    padding: var(--space--md) 25vw
  }
  #quick-search-list-nav .ln-letters {
    justify-content: space-between;
    margin: auto
  }
  #quick-search-list-nav .ln-disabled {
    margin-right: 0
  }
  .timeline-block {
    width: 60%
  }
  .layout--twocol-section--50-50 .layout__region--first .block--half-page {
    margin-left: calc(-1 * var(--space--sm))
  }
  .layout--twocol-section--50-50 .layout__region--second .block--half-page {
    margin-right: calc(-1 * var(--space--sm))
  }
  .site-footer {
    -ms-grid-columns: var(--space--sm) 1fr var(--space--sm) 1fr var(--space--sm) 1fr var(--space--sm);
    -ms-grid-rows: auto auto;
    grid-template-areas: ". footer_left . footer_center . footer_right ." ". footer_bottom footer_bottom footer_bottom footer_bottom footer_bottom .";
    grid-template-columns: var(--space--sm) 1fr var(--space--sm) 1fr var(--space--sm) 1fr var(--space--sm);
    grid-template-rows: auto auto
  }
  .wwu-footer .logo {
    align-self: center;
    justify-self: start
  }
  .western-header-region .block {
    margin: initial;
    padding: 0 var(--space--2xs);
    text-align: left;
    border: none
  }
  .western-header {
    grid-template-areas: "logo display-settings wwu-menu" "logo site-name site-name" "logo western-header-region western-header-region" "main-nav main-nav main-nav";
    grid-template-columns: calc((var(--logo-size) + (var(--space--md) * 2))) 1fr 2fr;
    grid-template-rows: calc((var(--logo-size)/ 3)) calc((var(--logo-size)/ 3)) auto auto
  }
  .western-header .site-name {
    margin: 0;
    padding: 0;
    text-align: left;
    border-top: none;
    border-bottom: none
  }
  .western-header .western-logo {
    margin: initial;
    padding: 0
  }
  .font--dyslexia-friendly .mobile-menu .icon-with-text.small,
  .font--dyslexia-friendly .mobile-menu .toggle-menu.small,
  .font--hyperlegible .mobile-menu .icon-with-text.small,
  .font--hyperlegible .mobile-menu .toggle-menu.small {
    font-size: 1rem
  }
  .wwu-locations.single-row {
    max-width: var(--locations-block-width--bigger)
  }
  .wwu-locations.single-row .button-cluster {
    flex-wrap: nowrap;
    justify-content: center
  }
  .ultimenu section.ultimenu__flyout {
    top: 100%;
    right: 0!important;
    display: none!important
  }
  .ultimenu section.ultimenu__flyout.open {
    position: absolute;
    z-index: 2;
    display: block!important
  }
  .site-header .nav--404 .main-navigation {
    margin: 0;
    transform: translatey(32vw)
  }
  .views-view-grid.cols-6 .views-col {
    flex: 0 1 calc(16.666% - var(--space--sm))
  }
  .views-view-grid.cols-7 .views-col {
    flex: 0 1 calc(14.285% - var(--space--sm))
  }
  .views-view-grid.cols-8 .views-col {
    flex: 0 1 calc(12.5% - var(--space--sm))
  }
  .views-view-grid.cols-9 .views-col {
    flex: 0 1 calc(11.111% - var(--space--sm))
  }
  .views-view-grid.cols-10 .views-col {
    flex: 0 1 calc(10% - var(--space--sm))
  }
  .layout--majors > .layout__region--sample-jobs {
    flex: 0 1 25%;
    max-width: 25%;
    padding: var(--space--md) var(--space--lg)
  }
  .layout--majors > .right-side-container {
    flex: 0 1 75%;
    max-width: 75%;
    padding-right: var(--space--md)
  }
  .layout--majors > .layout__region--related-majors {
    flex: 0 1 50%;
    max-width: 50%;
    padding-right: var(--space--lg)
  }
  .layout--majors > .layout__region--department {
    flex: 0 1 50%;
    max-width: 50%;
    padding-left: var(--space--lg)
  }
  .user-profile .profile-right {
    padding-left: var(--space--md);
    text-align: left
  }
  .user-profile .profile-photo {
    width: 18.75rem;
    height: 18.75rem
  }
  .layout--threecol-25-50-25 > .layout__region--first {
    flex: 0 1 25%;
    max-width: 25%;
    padding-right: var(--space--sm)
  }
  .layout--threecol-25-50-25 > .layout__region--second {
    flex: 0 1 50%;
    max-width: 50%;
    padding: 0 var(--space--sm)
  }
  .layout--threecol-25-50-25 > .layout__region--third {
    flex: 0 1 25%;
    max-width: 25%;
    padding-left: var(--space--sm)
  }
  .layout--threecol-33-34-33 > .layout__region--first {
    flex: 0 1 33%;
    max-width: 33%;
    padding-right: var(--space--sm)
  }
  .layout--threecol-33-34-33 > .layout__region--second {
    flex: 0 1 34%;
    max-width: 34%;
    padding: 0 var(--space--sm)
  }
  .layout--threecol-33-34-33 > .layout__region--third {
    flex: 0 1 33%;
    max-width: 33%;
    padding-left: var(--space--sm)
  }
  .layout--twocol-25-75 > .layout__region--first {
    flex: 0 1 25%;
    max-width: 25%;
    padding-right: var(--space--sm)
  }
  .layout--twocol-25-75 > .layout__region--second {
    flex: 0 1 75%;
    max-width: 75%;
    padding-left: var(--space--sm)
  }
  .layout--twocol-34-66 > .layout__region--first {
    flex: 0 1 34%;
    max-width: 34%;
    padding-right: var(--space--sm)
  }
  .layout--twocol-34-66 > .layout__region--second {
    flex: 0 1 66%;
    max-width: 66%;
    padding-left: var(--space--sm)
  }
  .layout--twocol-66-34 > .layout__region--first {
    flex: 0 1 66%;
    max-width: 66%;
    padding-right: var(--space--sm)
  }
  .layout--twocol-66-34 > .layout__region--second {
    flex: 0 1 34%;
    max-width: 34%;
    padding-left: var(--space--sm)
  }
  .layout--twocol-75-25 > .layout__region--first {
    flex: 0 1 75%;
    max-width: 75%;
    padding-right: var(--space--sm)
  }
  .layout--twocol-75-25 > .layout__region--second {
    flex: 0 1 25%;
    max-width: 25%;
    padding-left: var(--space--sm)
  }
  .layout--twocol-bricks > .layout__region--first-above,
  .layout--twocol-bricks > .layout__region--first-below,
  .layout--twocol-bricks > .layout__region--second-above,
  .layout--twocol-bricks > .layout__region--second-below {
    flex: 0 1 50%;
    max-width: 50%
  }
  .layout--twocol-bricks > .layout__region--first-above,
  .layout--twocol-bricks > .layout__region--first-below {
    padding-right: var(--space--sm)
  }
  .layout--twocol-bricks > .layout__region--second-above,
  .layout--twocol-bricks > .layout__region--second-below {
    padding-left: var(--space--sm)
  }
  .layout--twocol > .layout__region--first {
    flex: 0 1 50%;
    max-width: 50%;
    padding-right: var(--space--sm)
  }
  .layout--twocol > .layout__region--second {
    flex: 0 1 50%;
    max-width: 50%;
    padding-left: var(--space--sm)
  }
  .page-islandora .layout--twocol-25-75 .layout__region--first {
    order: 1
  }
  .page-islandora .layout--twocol-25-75 .layout__region--second {
    order: 2
  }
  .islandora-front-page .browse-by-icons {
    max-width: 80%
  }
  a#clip {
    font-size: var(--font-size--sm)
  }
  #block-islandora-compound-object-compound-jail-display {
    border: solid var(--gray--lighter--60) var(--border-width--lg)
  }
  .pane-islandora-solr-display-switch,
  .pane-islandora-solr-result-limit {
    width: 11.25rem
  }
  .pane-islandora-solr-search-navigation .button {
    padding: var(--space--sm)
  }
  .grid-column-count--2 {
    grid-template-columns: auto auto
  }
  .grid-column-count--3 {
    grid-template-columns: auto auto auto
  }
  .grid-column-count--4 {
    grid-template-columns: auto auto auto auto
  }
  .grid-column-count--5 {
    grid-template-columns: auto auto auto auto auto
  }
  .grid-column-count--6 {
    grid-template-columns: auto auto auto auto auto auto
  }
  .vertical-space--1x {
    height: var(--space--sm)
  }
  .vertical-space--2x {
    height: calc(var(--space--sm) * 2)
  }
  .vertical-space--3x {
    height: calc(var(--space--sm) * 3)
  }
  .vertical-space--4x {
    height: calc(var(--space--sm) * 4)
  }
  .vertical-space--5x {
    height: calc(var(--space--sm) * 5)
  }
  .vertical-space--6x {
    height: calc(var(--space--sm) * 6)
  }
  .vertical-space--7x {
    height: calc(var(--space--sm) * 7)
  }
  .vertical-space--8x {
    height: calc(var(--space--sm) * 8)
  }
}
@media (min-width:1300px) {
  .webform-progress-tracker .progress-step.is-complete .progress-title:after {
    left: var(--checkmark-size)
  }
  html {
    font-size: calc(1rem + (var(--content-area-max-width) * .005))
  }
  .headline.left-aligned-bar,
  .headline.right-aligned-bar {
    max-width: 70vw
  }
  .lightbox-overlay .lightbox-dialog {
    width: 65%
  }
  .block--full-page,
  .block--half-page {
    padding-right: var(--space--3xl);
    padding-left: var(--space--3xl)
  }
  .layout--twocol-section--50-50 .layout__region--first .block--half-page {
    margin-left: calc((100vw - var(--content-area-max-width))/ -2)
  }
  .layout--twocol-section--50-50 .layout__region--second .block--half-page {
    margin-right: calc((100vw - var(--content-area-max-width))/ -2)
  }
  .page-content {
    -ms-grid-columns: var(--grid-columns--lg);
    grid-template-columns: var(--grid-columns--lg)
  }
  .site-footer {
    -ms-grid-columns: 1fr var(--content-area-max-width)/3 var(--space--sm) var(--content-area-max-width)/3 var(--space--sm) var(--content-area-max-width)/3 1fr;
    grid-template-columns: 1fr var(--content-area-max-width)/3 var(--space--sm) var(--content-area-max-width)/3 var(--space--sm) var(--content-area-max-width)/3 1fr
  }
  .wwu-footer {
    -ms-grid-columns: calc((100vw - var(--content-area-max-width))/ 2) auto auto auto calc((100vw - var(--content-area-max-width))/ 2);
    display: -ms-grid;
    display: grid;
    grid-template-areas: ". ... ... ... ." ". logo statement info  ." ". logo statement icons ." ". copyright copyright copyright .";
    grid-template-columns: calc((100vw - var(--content-area-max-width))/ 2) auto auto auto calc((100vw - var(--content-area-max-width))/ 2)
  }
  .wwu-footer .western-info {
    grid-area: info;
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    align-self: end;
    text-align: right
  }
  .layout--fourcol--page-width {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw)
  }
  .layout--onecol--full .layout__region {
    max-width: var(--content-area-max-width);
    margin: auto
  }
  .layout--onecol--page-width {
    margin-right: calc(50% - 50vw - var(--space--xs));
    margin-left: calc(50% - 50vw - var(--space--xs))
  }
  .layout--threecol--page-width,
  .layout--twocol--page-width {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw)
  }
  .user-profile .profile-photo {
    width: 25rem;
    height: 25rem
  }
  .search-wrapper .simple-search .search-query {
    max-width: none
  }
  .pane-islandora-solr-display-switch,
  .pane-islandora-solr-result-limit {
    width: 12.5rem
  }
}
@media (max-width:950px) {
  .block--image-with-description .body:not([class$="-bg"]) {
    border-top: none
  }
  .page-islandora-search .islandora-solr-search-result dl.solr-fields,
  .page-islandora-search .islandora-solr-search-result dl.solr-thumb {
    float: none;
    width: 100%
  }
}
@media print {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  p a,
  ul a {
    page-break-inside: avoid
  }
  .block--card a:before,
  .card a:before,
  .image-link a:after,
  .menu li a:after {
    content: " [" attr(href) "] "
  }
  .black-bg,
  .blue-bg,
  .blue-gradient-bg,
  .dark-blue-bg,
  .dark-blue-gradient-bg,
  .dark-green-bg,
  .darkest-blue-bg,
  .gray-bg,
  .green-bg,
  .light-blue-bg,
  .light-gray-bg,
  .light-green-bg,
  .lightest-blue-bg,
  .lightest-gray-bg {
    color: var(--black);
    border: solid var(--border-width--sm) var(--black);
    background-color: var(--white)
  }
  .black-bg h1,
  .black-bg h2,
  .black-bg h3,
  .black-bg h4,
  .black-bg h5,
  .black-bg h6,
  .blue-bg h1,
  .blue-bg h2,
  .blue-bg h3,
  .blue-bg h4,
  .blue-bg h5,
  .blue-bg h6,
  .blue-gradient-bg h1,
  .blue-gradient-bg h2,
  .blue-gradient-bg h3,
  .blue-gradient-bg h4,
  .blue-gradient-bg h5,
  .blue-gradient-bg h6,
  .dark-blue-bg h1,
  .dark-blue-bg h2,
  .dark-blue-bg h3,
  .dark-blue-bg h4,
  .dark-blue-bg h5,
  .dark-blue-bg h6,
  .dark-blue-gradient-bg h1,
  .dark-blue-gradient-bg h2,
  .dark-blue-gradient-bg h3,
  .dark-blue-gradient-bg h4,
  .dark-blue-gradient-bg h5,
  .dark-blue-gradient-bg h6,
  .dark-green-bg h1,
  .dark-green-bg h2,
  .dark-green-bg h3,
  .dark-green-bg h4,
  .dark-green-bg h5,
  .dark-green-bg h6,
  .darkest-blue-bg h1,
  .darkest-blue-bg h2,
  .darkest-blue-bg h3,
  .darkest-blue-bg h4,
  .darkest-blue-bg h5,
  .darkest-blue-bg h6,
  .gray-bg h1,
  .gray-bg h2,
  .gray-bg h3,
  .gray-bg h4,
  .gray-bg h5,
  .gray-bg h6,
  .green-bg h1,
  .green-bg h2,
  .green-bg h3,
  .green-bg h4,
  .green-bg h5,
  .green-bg h6,
  .light-blue-bg h1,
  .light-blue-bg h2,
  .light-blue-bg h3,
  .light-blue-bg h4,
  .light-blue-bg h5,
  .light-blue-bg h6,
  .light-gray-bg h1,
  .light-gray-bg h2,
  .light-gray-bg h3,
  .light-gray-bg h4,
  .light-gray-bg h5,
  .light-gray-bg h6,
  .light-green-bg h1,
  .light-green-bg h2,
  .light-green-bg h3,
  .light-green-bg h4,
  .light-green-bg h5,
  .light-green-bg h6,
  .lightest-blue-bg h1,
  .lightest-blue-bg h2,
  .lightest-blue-bg h3,
  .lightest-blue-bg h4,
  .lightest-blue-bg h5,
  .lightest-blue-bg h6,
  .lightest-gray-bg h1,
  .lightest-gray-bg h2,
  .lightest-gray-bg h3,
  .lightest-gray-bg h4,
  .lightest-gray-bg h5,
  .lightest-gray-bg h6 {
    color: var(--dark-blue)
  }
  .black-bg .block--beyond-basics-block,
  .blue-bg .block--beyond-basics-block,
  .blue-gradient-bg .block--beyond-basics-block,
  .dark-blue-bg .block--beyond-basics-block,
  .dark-blue-gradient-bg .block--beyond-basics-block,
  .dark-green-bg .block--beyond-basics-block,
  .darkest-blue-bg .block--beyond-basics-block,
  .gray-bg .block--beyond-basics-block,
  .green-bg .block--beyond-basics-block,
  .light-blue-bg .block--beyond-basics-block,
  .light-gray-bg .block--beyond-basics-block,
  .light-green-bg .block--beyond-basics-block,
  .lightest-blue-bg .block--beyond-basics-block,
  .lightest-gray-bg .block--beyond-basics-block {
    padding: .8rem
  }
  .my-western-icon svg,
  .social-icon svg {
    fill: var(--black)
  }
  p a,
  ul a {
    word-break: break-all;
    color: var(--dark-blue)!important
  }
  .cta:after,
  .user-login-form .cas-login-link:after,
  a.button:after,
  p a[href^=http]:after,
  ul a[href^=http]:after {
    content: " [" attr(href) "] ";
    font-size: 10pt
  }
  .menu {
    padding: 0!important
  }
  .menu ul {
    padding: 0
  }
  .menu li {
    border-left: none!important
  }
  .menu li a {
    padding: 0;
    font-size: 10pt;
    line-height: 1em
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin-bottom: 0
  }
  .block--banner {
    min-height: none
  }
  .block--banner .background-image,
  .image-link .image img,
  .image-link:after,
  .image-link:before,
  .no-printing {
    display: none
  }
  .block--banner .block__title {
    font-size: 40pt
  }
  .block--banner .body {
    max-width: none
  }
  .block--card a:before,
  .card a:before {
    font-size: 10pt
  }
  .image-link a:after {
    position: absolute;
    bottom: 10%;
    display: block;
    font-size: 10pt
  }
  .image-link a {
    overflow: visible;
    font-size: 12pt
  }
  .image-link {
    display: inline-block;
    margin: 0;
    border: solid var(--border-width--sm) var(--black);
    box-shadow: none
  }
  .page-footer,
  .western-header {
    display: none!important
  }
}
@media (-ms-high-contrast:active) {
  input:focus,
  input[type=checkbox]:focus+label:before,
  input[type=radio]:focus+label:before,
  select:focus,
  textarea:focus {
    border-style: dotted
  }
}
@media (print) {
  html {
    font-size: 12pt
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMuY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2Zvcm1zL3dlYmZvcm0vX3dlYmZvcm0uc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9pY29ucy9zb2NpYWwtbWVkaWEtaWNvbnMvX3NvY2lhbC1tZWRpYS1pY29ucy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL292ZXJsYXlzL19vdmVybGF5cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2JhY2tncm91bmQtY29sb3IvX2JhY2tncm91bmQtY29sb3Iuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvaW1hZ2UtbGluay9faW1hZ2UtbGluay5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL3RhYmxlcy9fdGFibGVzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvdGV4dC9ibG9ja3F1b3Rlcy9fYmxvY2txdW90ZXMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy90ZXh0L2hlYWRpbmdzL19oZWFkaW5ncy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9jYXJkcy9fY2FyZHMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvY2FyZC9fYWx0LWNhcmQtc3R5bGVzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDMtb3JnYW5pc21zL2Zvb3RlcnMvc2l0ZS1mb290ZXIvX3NpdGUtZm9vdGVyLnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL2xheW91dHMvbWFqb3JzL19sYXlvdXQtLW1ham9ycy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAwLXV0aWxpdGllcy9fZm9udC1mYW1pbGllcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAwLXV0aWxpdGllcy9fdmFyaWFibGVzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvb2ZmLWNhbnZhcy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL3RleHQvdGF4b25vbXktdGVybS9fdGF4b25vbXktdGVybS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9mb3Jtcy91c2VyLWxvZ2luL191c2VyLWxvZ2luLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL19icmVha3BvaW50LnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvdGV4dC9ob3Jpem9udGFsLXJ1bGUvX2hvcml6b250YWwtcnVsZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL3RleHQvcGFyYWdyYXBocy9fcGFyYWdyYXBocy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL3RleHQvX3RleHQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9sb2dvL19sb2dvLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvYnV0dG9ucy9fYnV0dG9ucy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2xpbmtzL2NhbGwtdG8tYWN0aW9uL19jYWxsLXRvLWFjdGlvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2xpbmtzL19saW5rcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2ljb25zL215LXdlc3Rlcm4taWNvbnMvX215LXdlc3Rlcm4taWNvbnMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9wYWdlL19wYWdlLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvaWNvbnMvaWNvbnMtd2l0aC10ZXh0L19pY29ucy13aXRoLXRleHQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9jb2xvci9fY29sb3JzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvYnV0dG9ucy9wbGF5LWJ1dHRvbi9fcGxheS1idXR0b24uc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvY2hhcnRzL29yZy1jaGFydC9fb3JnLWNoYXJ0LnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvZm9ybXMvX2Zvcm1zLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL25hdmlnYXRpb24vbWFpbi1uYXZpZ2F0aW9uL19tYWluLW5hdmlnYXRpb24uc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9pY29ucy9faWNvbnMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvbWVzc2FnaW5nL2FsZXJ0cy9fYWxlcnRzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2FjY29yZGlvbi9fYWNjb3JkaW9uLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2JhY2tncm91bmQtdmlkZW8vX2JhY2tncm91bmQtdmlkZW8uc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvZGlzcGxheS1zZXR0aW5ncy9fZGlzcGxheS1zZXR0aW5ncy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2ltYWdlcy9faW1hZ2VzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDEtYXRvbXMvaW1hZ2VzL2ltYWdlLWJhY2tncm91bmQvX2ltYWdlLWJhY2tncm91bmQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMS1hdG9tcy9pbWFnZXMvaW1hZ2Utc3R5bGl6ZWQvX2ltYWdlLXN0eWxpemVkLnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL2xheW91dHMvZm91cmNvbC9fZm91cmNvbC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2xpc3RzL19saXN0cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL2xpc3RzL21lbnUtaXRlbXMvX21lbnUtaXRlbXMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvbmF2aWdhdGlvbi9ob3Jpem9udGFsLW1lbnUvX2hvcml6b250YWwtbWVudS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAxLWF0b21zL3RleHQvZm9udC1zdHlsZXMvX2ZvbnQtc3R5bGVzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL3F1b3Rlcy9wdWxscXVvdGUvX3B1bGxxdW90ZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9xdW90ZXMvdGVzdGltb25pYWwvX3Rlc3RpbW9uaWFsLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2Fubm91bmNlbWVudC9fYW5ub3VuY2VtZW50LnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2Jhbm5lci9fYmFubmVyLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2JleW9uZC1iYXNpY3MtYmxvY2tzL19iZXlvbmQtYmFzaWNzLWJsb2Nrcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9ldmVudC1saXN0L19ldmVudC1saXN0LnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2xpZ2h0Ym94L19saWdodGJveC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9tZXNzYWdpbmcvbWVzc2FnZXMvX21lc3NhZ2VzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2hlYWRsaW5lL19oZWFkbGluZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9jaGFydHMvZG9udXQtY2hhcnQvX2RvbnV0LWNoYXJ0LnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL25hdmlnYXRpb24vbG9jYWwtdGFza3MvbG9jYWwtdGFza3Muc2NzcyIsIi4uL19wYXR0ZXJucy8wNC10ZW1wbGF0ZXMvbGF5b3V0cy90aHJlZWNvbC9fdGhyZWVjb2wuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvY2FyZC9fY2FyZC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9zdGF0aXN0aWNzLWNvbGxlY3Rpb24vX3N0YXRpc3RpY3MtY29sbGVjdGlvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy92aWV3cy9ncmlkLWZvcm1hdC9fZ3JpZC1mb3JtYXQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvY2FyZC9fZGVncmVlLWNhcmQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvY2hhcnRzL2Zsb3djaGFydC9fZmxvd2NoYXJ0cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9uYXZpZ2F0aW9uL2JyZWFkY3J1bWIvX2JyZWFkY3J1bWIuc2NzcyIsIi4uL19wYXR0ZXJucy8wNC10ZW1wbGF0ZXMvcmV0aXJlZC1sYXlvdXRzL3R3b2NvbF8yNV83NS9fbGF5b3V0LS10d29jb2wtMjUtNzUuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvZm9ybXMvcmFkaW8vX3JhZGlvLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2NvdW50ZG93bi9fY291bnRkb3duLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL2Zvcm1zL2NoZWNrYm94L19jaGVja2JveC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9mb3Jtcy9mb3JtL19mb3JtLnNjc3MiLCIuLi9fcGF0dGVybnMvMDMtb3JnYW5pc21zL2hlYWRlcnMvaGVhZGVyLXJlZ2lvbi9faGVhZGVyLXJlZ2lvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9uYXZpZ2F0aW9uL215LXdlc3Rlcm4tbGlua3MvX215LXdlc3Rlcm4tbGlua3Muc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvaW1hZ2Utd2l0aC1kZXNjcmlwdGlvbi9faW1hZ2Utd2l0aC1kZXNjcmlwdGlvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9uYXZpZ2F0aW9uL3d3dS1tZW51L193d3UtbWVudS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9tZXNzYWdpbmcvc3RhdHVzLWFsZXJ0L19zdGF0dXMtYWxlcnQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvbmF2aWdhdGlvbi9saW5rLWxpc3QvX2xpbmstbGlzdC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9wYWdlLTQwNC9fcGFnZS00MDQuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvc2NoZWR1bGUvX3NjaGVkdWxlLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL25hdmlnYXRpb24vbWVudS1mbHlvdXQvX21lbnUtZmx5b3V0LnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL3NlYXJjaC9fc2VhcmNoLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL3NlYXJjaC9tYWJlbC1zZWFyY2gvX21hYmVsLXNlYXJjaC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9uYXZpZ2F0aW9uL21lbnUvX21lbnUuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvc2VhcmNoL3F1aWNrc2VhcmNoLWZvcm0vX3F1aWNrc2VhcmNoLWZvcm0uc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvc3BsYXNoL19zcGxhc2guc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvc3RhdGlzdGljL19zdGF0aXN0aWMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvbmF2aWdhdGlvbi9wYWdlci9fcGFnZXIuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvbmF2aWdhdGlvbi9za2lwLWNvbnRlbnQvX3NraXAtY29udGVudC5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9yaWJib24vX3JpYmJvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9uYXZpZ2F0aW9uL3VsdGktbWVudS9fdWx0aS1tZW51LnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL3NlYXJjaC1wYWdlL19zZWFyY2gtcGFnZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy9zb2NpYWwtbWVkaWEtbGlua3MvX3NvY2lhbC1tZWRpYS1saW5rcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy90aW1lbGluZS1ibG9jay9fdGltZWxpbmUtYmxvY2suc2NzcyIsIi4uL19wYXR0ZXJucy8wMy1vcmdhbmlzbXMvbG9jYXRpb25zL19sb2NhdGlvbnMuc2NzcyIsIi4uL19wYXR0ZXJucy8wMi1tb2xlY3VsZXMvc3dpdGNoZXIvX3N3aXRjaGVyLnNjc3MiLCIuLi9fcGF0dGVybnMvMDItbW9sZWN1bGVzL3RleHQvcGFnZS10aXRsZS9fcGFnZS10aXRsZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAyLW1vbGVjdWxlcy90ZXh0L3NlY3Rpb24tdGl0bGUvX3NlY3Rpb24tdGl0bGUuc2NzcyIsIi4uL19wYXR0ZXJucy8wMy1vcmdhbmlzbXMvdmlld3Mvdmlld3MtZXhwb3NlZC1mb3JtL192aWV3cy1leHBvc2VkLWZvcm0uc2NzcyIsIi4uL19wYXR0ZXJucy8wMy1vcmdhbmlzbXMvYmxvY2tzL2Jsb2NrLXRlbXBsYXRlL19ibG9jay10ZW1wbGF0ZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9jb250ZW50L2NvbnRlbnQtcmVnaW9uL19jb250ZW50LXJlZ2lvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9lbWFpbC1zaWduYXR1cmUvX2VtYWlsLXNpZ25hdHVyZS5zY3NzIiwiLi4vX3BhdHRlcm5zLzAzLW9yZ2FuaXNtcy9mb290ZXJzL3d3dS1mb290ZXIvX3d3dS1mb290ZXIuc2NzcyIsIi4uL19wYXR0ZXJucy8wNS1zaXRlcy9jYXRhbG9nL19jYXRhbG9nLnNjc3MiLCIuLi9fcGF0dGVybnMvMDMtb3JnYW5pc21zL2hlYWRlcnMvd3d1LWhlYWRlci9fd3d1LWhlYWRlci5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9sYXlvdXRzL2ZsZXgvbGF5b3V0LS1mbGV4LnNjc3MiLCIuLi9fcGF0dGVybnMvMDMtb3JnYW5pc21zL3F1aWNrc2VhcmNoL19xdWlja3NlYXJjaC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9wcm9maWxlL19wcm9maWxlLnNjc3MiLCIuLi9fcGF0dGVybnMvMDMtb3JnYW5pc21zL3ZpZXdzL3ZpZXdzLWJ1bGstb3BlcmF0aW9ucy9fdmlld3MtYnVsay1vcGVyYXRpb25zLnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL3JldGlyZWQtbGF5b3V0cy90aHJlZWNvbF8yNV81MF8yNS9sYXlvdXQtLXRocmVlY29sLTI1LTUwLTI1LnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL3JldGlyZWQtbGF5b3V0cy90aHJlZWNvbF8zM18zNF8zMy9sYXlvdXQtLXRocmVlY29sLTMzLTM0LTMzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDQtdGVtcGxhdGVzL2xheW91dHMvb25lY29sL19vbmVjb2wuc2NzcyIsIi4uL19wYXR0ZXJucy8wNC10ZW1wbGF0ZXMvbGF5b3V0cy90d29jb2wvX3R3b2NvbC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL19tYWJlbC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9yZXRpcmVkLWxheW91dHMvdHdvY29sXzM0XzY2L19sYXlvdXQtLXR3b2NvbC0zNC02Ni5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9yZXRpcmVkLWxheW91dHMvdHdvY29sXzY2XzM0L19sYXlvdXQtLXR3b2NvbC02Ni0zNC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9yZXRpcmVkLWxheW91dHMvdHdvY29sXzc1XzI1L19sYXlvdXQtLXR3b2NvbC03NS0yNS5zY3NzIiwiLi4vX3BhdHRlcm5zLzA0LXRlbXBsYXRlcy9yZXRpcmVkLWxheW91dHMvdHdvY29sL2xheW91dC0tdHdvY29sLnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvZGlyZWN0b3J5L19kaXJlY3Rvcnkuc2NzcyIsIi4uL19wYXR0ZXJucy8wNS1zaXRlcy9tYWJlbC9wYWdlcy9fYm9va21hcmtzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvbWFiZWwvcGFnZXMvX2Zyb250LnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvbWFiZWwvcGFnZXMvX29iamVjdC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhZ2VzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhZ2VzL192aXJ0dWFsLWNvbGxlY3Rpb24uc2NzcyIsIi4uL19wYXR0ZXJucy8wNS1zaXRlcy9tYWJlbC9wYW5lcy9fYm9va21hcmtzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvbWFiZWwvcGFuZXMvX2NvbGxlY3Rpb24tc2VhcmNoLnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvbWFiZWwvcGFuZXMvX2ZhY2V0cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19vcmFsLWhpc3Rvcmllcy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19kaXNwbGF5cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19jb21wb3VuZC1vYmplY3QtbmF2aWdhdGlvbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19jb21wb3VuZC1vYmplY3QtamFpbC5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19zb3J0LnNjc3MiLCIuLi9fcGF0dGVybnMvMDUtc2l0ZXMvbWFiZWwvcGFuZXMvX3NlYXJjaC1uYXZpZ2F0aW9uLnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fY29sdW1ucy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL192aWRlby5zY3NzIiwiLi4vX3BhdHRlcm5zLzA1LXNpdGVzL21hYmVsL3BhbmVzL19yZXN1bHQtbGltaXQuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL19hZG1pbi5zY3NzIiwiLi4vX3BhdHRlcm5zLzA2LWhlbHBlcnMvX2FsaWduLnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fYmxhenkuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL19ib3JkZXJzLnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fc3BhY2Uuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL19zaXplLnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fZm9udHMuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL19kaXNwbGF5LnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fbGF5b3V0LWJ1aWxkZXIuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL19vdmVybGF5cy5zY3NzIiwiLi4vX3BhdHRlcm5zLzA2LWhlbHBlcnMvX3ByaW50LnNjc3MiLCIuLi9fcGF0dGVybnMvMDYtaGVscGVycy9fdW5zZXQuc2NzcyIsIi4uL19wYXR0ZXJucy8wNi1oZWxwZXJzL192aWRlby5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW12RkE7QUNodUZBO0FEMnVGRSxXQUFXOztBQTBKYjtBQThIQTtBQWw5QkE7QUFDQTtBRW5qRUksU0FBQSxPQUFZOztBRmcrRmhCO0FBd3FCQTtBQXpvQ0E7QUFEQTtBQTRvQ0UsYUFBYTs7QUd6bkhmO0FIbzBIQTtBQWlHQTtBSXoySEssUUFBQTs7QUpnOVFMO0FBeDFMQTtBQXVJQTtBQTJxT0E7QUFDQTtBS2o0VEE7QUxtNFRBO0FBQ0E7QUE1aUxBO0FNejdJQSxZRmVROztBSjIzSVI7QU8xNUlBO0FIME1LLGdCQUFBOztBSmd4Rkw7QUE0eUVBO0FBQ0UsT0FBTzs7QUFrTFQ7QUFDQTtBQXBIQTtBUWp5S0MsU0FBQTs7QVJzckhEO0FTOXJIQTtBQUFBLFdBQUE7O0FUaWthQTtBUzNnYUE7QUMwS0ksbUNBQXlCO0FWNGdhM0Isa0JXcnRhQyxJQUFBOztBWG90YUg7QUExQ0E7QUFoSUE7QVMzZ2FBO0FUc3JhRSxrQldydGFDLElBQUE7O0FYdStRSDtBQWd2TUE7QUFDRSxpQlkzdWRDOztBWnJDSDtBYWJFLGFBQUs7QWJlTCxZQUFZO0FBQ1os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QXdCeDVHQTtBUERBO0FPQ0E7QUFEQyxPQUFPO0FBQ1IsWUEyR1M7O0FBM0dUO0FQREE7QUFBQTtBT3VIUSxPQUFPO0FBQ1IsY0FBQTtBeEIyeUdMLGtCQUFrQjs7QXdCbDZHcEI7QXhCZzdHQTtBQUVBO0FpQm43R0E7QWpCazdHQTtBQUVBO0FpQnA3R0E7QU9DQTtBUERBO0FqQnE3R0UsT0FBTztBd0JyN0dSLFlBQU87O0F4QnM4R1I7QXdCdDhHQTtBeEJxOEdBO0F3QnA4R0EsT0FBSTtBUERKLGNBQWdCOztBakJxOUdoQjtBQUVBO0F3QnQ5R0E7QXhCcTlHQTtBd0J0OUdBO0FQQUE7QU9DQTtBUERBO0FqQm85R0E7QXdCbjlHQSxPQUFJO0FQREosWUFBQTs7QU9BQTtBQUNBO0F4QjArR0E7QWlCMytHQSxPQUFBO0FPQ0EsY0ErSlc7QVBoS1gsa0JPZ0tHOztBeEI0MUdIO0FBRUE7QXdCNy9HQTtBeEI0L0dBO0F3QjcvR0E7QVBBQTtBQUFBO0FqQjAvR0E7QUFDQTtBd0J2MEdRLE9BQU87QUFDUixZQUFBOztBQXBMUDtBUERBO0FBQUE7QU9DQSxPQUFJO0FQREosY0FBZ0I7O0FPQWhCO0FBQ0E7QXhCd2hIQTtBaUJ6aEhBLE9BQUE7O0FPQ0E7QXhCbWlIQTtBQUVBO0FpQnRpSEE7QWpCcWlIQTtBd0JyaUhBO0F4QitoSEE7QUFDQTtBd0JoaUhBO0FBQ0EsT0FBSTtBUERKLFlBQUE7O0FqQnlqSEE7QUFDQTtBaUIxakhBO0FqQjJqSEUsT0FBTztBd0IzakhSLGNBZ0tVOztBeEJnNkdYO0FBQ0E7QUFGQTtBd0JyMUdLLE9BQUE7O0F4QjgxR0w7QXdCeGtIQTtBUEFBO0FqQnlrSEE7QXdCeGtIQTtBQUFBO0FBQUE7QVBEQTtBakJ1a0hBO0FpQnZrSEEsT0FBQTtBT0NBLFlBK0pXOztBQWhLWDtBQUNBO0F4QjZsSEE7QWlCOWxIQSxPQUFBO0FPNk9NLGNBQU87QUFDUDs7QXhCMjNHTjtBQUVBO0F3QjFtSEE7QXhCeW1IQTtBd0IxbUhBO0FQQUE7QU9BQTtBQUNBO0FQREE7QU9DQSxPQUFJO0FQREosY0FB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QVZ3NE9BO0FBbGxDQTtBQWlJQTtBQTZjQTtBVXgvTkE7QUFvSEE7QUEyTkE7QVY2eU9BO0FVdnZPQTtBVnM4UkE7QUFnR0E7QUFDQTtBQTQxQkE7QUFEQTtBSXJsVU0sT0FBQTs7QUp3cFVOO0FBQ0E7QUExREE7QUF1REE7QUFDQTtBQXpEQTtBQXp6SEE7QUFDQTtBaUR0Nk1BO0FFbEVBO0FuRHFqT0E7QUk3NE5FO0FNcENGO0FWZ3hOQTtBQUNBO0FVdDROQTtBVm0wT0E7QUFDQTtBSTltT0U7QUptMU9GO0FBQ0E7QVUxdE9BO0FOcE1JO0FKMjBNSjtBSWh5TUU7QUowM01GO0FBbWZBO0FBQ0E7QVVqN05BO0FBbkhBO0FWbTROQTtBQXZDQTtBQW9lQTtBQUNBO0FBdkNBO0FVMzhOQTtBQUFBO0FObEtJO0FKMi9PSjtBQUNBO0FBeENBO0FBcUNBO0FrQnRuUEk7QVJxVko7QVYwOFJBO0FBdUlBO0FBRUE7QUF4Q0E7QUF1Q0E7QUFFQTtBb0RwK1NBO0FqQkRBO0FuQ20xVUE7QUF4REE7QUFxREE7QUFDQTtBQXZEQTtBSXRsVUksT0FBTzs7QUowME1YO0FBREE7QUE1RUE7QUFLQTtBVTE3TUE7QU5vS0U7QWlDaExGO0FyQzJnTkE7QUluME1JO0FKNnZNSjtBQTJNQTtBQURBO0FJajhNSyxPQUFBOztBSm9tVUw7QUFEQTtBaURudlVBO0FqRDI5TkE7QUFqS0E7QVV4dk5BO0FOd0VJO0FBU0Y7QUp1ME5GO0FBaktBO0FVeHZOQTtBVjQ1T0E7QUFpSUE7QVUzd09BO0EwQ2haQTtBcEQyOFNBO0FBbzJCQTtBQURBO0FJNWxVSSx1QkFBdUI7QUFDdkIsT0FBQTs7QWlEcE5KO0FyRHl6VUE7QWlEM3ZVQTtBdkNrRUE7QU40SkU7QUpnaU9GO0FBc09BO0FJNTBPSTtBQWpFRjtBSnd1TkY7QVU1cU5BO0FRckpJO0FsQnNtUEo7QVVqeE9BO0FWZ2tTQTtBQUNBO0FBczJCQTtBQURBO0FJaG1VTSxPQUFNO0FBQ1AsdUJBQUE7O0FKbXdNTDtBQURBO0FBREE7QUlyck1FO0FKbW1ORjtBQURBO0FBZ2NBO0FBREE7QUFEQTtBQXdPQTtBVWp0T0E7QUFBQTtBdUM3UkE7QUFBQTtBQUFBO0FqRHUwTkE7QVV6M05BO0FOb1JFO0FKbWlPRjtBQURBO0FBREE7QVV2K05BO0FOeklFO0FKczFPRjtBSXQwT0UsT0FBQTtBNkNuS0YsZUFDRTtBN0NvS0Usa0JBQU87QThDbE9YLE9BQUE7QUFDRTs7QWZGRjtBbkM2MVVBO0FBa2tDQTtBSXR1V0k7QUFqQkY7QUo4dU5GO0FBOGJBO0FVMS9OQTtBVjhvTUE7QUE4a0JBO0FBaktBO0FBOGJBO0FVei9OQTtBTnBCRTtBSm0zT0Y7QUFnekRBO0FvRHgrU0E7QXBEMjFVQTtBQURBO0FJN2xVTSxhQUFhLE1BQUUsd0JBQUE7O0FKMm1VckI7QUFEQTtBbUN4MlVBO0FuQ3MyVUE7QUF0M0hBO0FBREE7QVVuK01BO0FOMklJO0FKdTZOSjtBVTk3TkE7QU5tTEk7QUp5bU5KO0FVNXFOSTtBVjBtT0o7QUF1T0E7QVV0dU9BO0FOeEZFO0FKMHVNRjtBQXFJQTtBQURBO0FJcjhNRTtBSis0TkY7QUFoS0E7QUFEQTtBQStiQTtBQURBO0FVNy9OQTtBQUFBO0FWczJPQTtBVWh6T0E7QUFEQTtBVjh5T0E7QUFvc0RBO0FzQ2w0U0E7QXRDZy9TQTtBQUZBO0FBR0E7QUFGQTtBQXMzQkE7QUFEQTtBQURBO0FtQ24yVUE7QW5DaS9NRSxPQUFPO0FxQ3IvTVQsWUFBQTs7QXJDbzVVQTtBQURBO0FBREE7QUFEQTtBQURBO0FzRGw0VUE7QUFEQTtBQURBO0F0RGc0VUE7QUFEQTtBQURBO0FzRHI0VUE7QXREc2dOQTtBcUN2Z05BO0FyQ3FnTkE7QUFEQTtBQURBO0FxQ25nTkE7QXJDMm9OQTtBQURBO0FBREE7QVU3bk5BO0FONEpFO0FKODlNRjtBQStjQTtBQURBO0FBREE7QUFEQTtBQURBO0FVajlOQTtBVm96TkE7QVV4Nk5BO0FOMFRFO0FKMm1ORjtBQURBO0FBREE7QUFtY0E7QUFEQTtBQURBO0FBREE7QVV6bE9BO0FBckJFO0FBeUZGO0FWNnZPQTtBQURBO0FBREE7QVUxdk9BO0FBREE7QVZ1cU1BO0FBREE7QUFEQTtBcUMvL01BO0FyQzYvTUE7QUFEQTtBQXlJQTtBQURBO0FVeG5OQTtBTndKRTtBSjY5TUY7QUFEQTtBVWhnTkE7QUFBQTtBTnlESTtBSm01Tko7QUFEQTtBQURBO0FBNUpBO0FBREE7QUFEQTtBa0JoM05JO0FsQjgyTko7QUFEQTtBQW1jQTtBQURBO0FBREE7QUFEQTtBQURBO0FBREE7QUEyT0E7QUFEQTtBQURBO0FBREE7QVVwdk9BO0FBQUE7QUFzREE7QU5qUEU7QUpzalBGO0FBREE7QUFEQTtBVW4wT0E7QU5yUEU7QUpxalBGO0FBREE7QUFEQTtBVTl6T0E7QU4xUEk7QUowdlNKO0FvRHI1U0E7QXBEbTVTQTtBQURBO0FBREE7QXNDcHdTQTtBdEM4M1NBO0FBRkE7QUFGQTtBQUZBO0FBRkE7QUFGQTtBQVdBO0FvRC80U0E7QXBEMjRTQTtBb0RuZ1RBO0FwRCsvU0E7QUFGQTtBQXM0QkE7QUFEQTtBQURBO0FzRGo0VUE7QXREKzNVQTtBQURBO0FBREE7QUFEQTtBc0RqNFVBO0F0RCszVUE7QUFEQTtBQURBO0FxQ3gyVUksWUFBUTs7QXJDNGdOWjtBQURBO0FrRDFnTkMsT0FBQTtBbEQ2Z05DLFlBQVk7QWtEOWhOZCxZQUFjOztBbERtaU5kO0FtRG5pTkE7QW5Ea2lOQTtBbURuaU5BO0FuRHUwU0E7QUF3QkE7QUExekZFLE9BQU87O0FBSVQ7QUFEQTtBQW15RkE7QUFqeUZFLGNBQWM7O0FBc0NoQjtBQURBO0FBREE7QUFEQTtBQWtvREE7QVV2cVBBO0FBQ0E7QVZtcVBBO0FBQ0E7QUFDQTtBQXU5QkE7QUFDQTtBK0I3MVJBO0EvQmdpU0E7QXNDejJTQTtBYUFBLE9BQUE7O0FuRHVsTkE7QVUzbE5BO0FWeWxOQTtBQURBO0FBMHhGQTtBc0M5MlNBO0F0Q3dsTkUsT0FBTzs7QVU1a05UO0FBREE7QVZ5bE5BO0FBREE7QUFEQTtBQURBO0FBREE7QUFEQTtBQURBO0FBREE7QUFEQTtBQURBO0FzQzNsTkE7QXRDczNTQTtBQURBO0FBREE7QXNDcDNTQTtBQUFBO0FsQ2tKRSxPQUFPO0FBQ1AsZUFBWTtBQXVGWixrQkFBWTs7QUptNE1kO0FBREE7QUFpeEZBO0FJeHVTRSxhTTFJRyxNQUFBLHdCTjBJRDs7QUpvZ05KO0FBRUE7QUFEQTtBVXB1TUE7QUFBQTtBQUFBO0FWZ3VNQTtBVTFvTkE7QU53S0k7QUp3MlBKO0FBRUE7QUFEQTtBQWo0Q0UsT0FBTztBSW4rTUw7O0FKdytNSjtBVXJwTkE7QU5pTE0sWUFBQTtBQUNBLFlBQUE7O0FNbkxOO0FWazZPQTtBQThlQTtBSXp0UEU7QUowdU9GO0FBOGVBO0FVOTRQQSxPQUFBOztBVmdxTkE7QUFzd0JBO0FBOGVBO0FBcnZDQTtBQXN3QkE7QVVyZ09BO0FOcE9JLGNNN0xDOztBVnNxTkw7QUFzd0JBO0FVM2dPQTtBVm93TUE7QUFzd0JBO0FVMWdPQTtBVjA1UUE7QUFOQTtBQUVBO0FBREE7QWtCcndSSSxPQUFTOztBbEIwbk5iO0FBc3dCQTtBVWhoT0E7QVZ5d01BO0FBc3dCQTtBVS9nT0E7QVYyMFNBO0FBTUE7QUFEQTtBdUR4dlRBO0F2RGszVkE7QUFDQTtBa0IzelZJO0FsQjJuTkYsT0FBTzs7QVUzcU5UO0FBa1JBO0FWaXBQQTtBVXA2UEE7QUFrUkE7QVZpcFBBO0FVbDZQQSxPQUFBOztBVnc3VEE7QUFwd0dBO0FBS0E7QVU5Mk1BO0FWb25PQTtBVTFqT0E7QVZtaVBBO0FBS0E7QUExdkNBO0FVbnJOQTtBVnk3T0E7QVUxbU9BO0FBc0RBO0FBMkJBO0FWNGdQQTtBQWl2QkE7QXdEMW9SQTtBeER3b1JBO0FBZEE7QXdEMW5SQTtBeER3blJBO0FJajhRSSxPTTNNQzs7QUFBTDtBVnE4T0E7QUE4ZUE7QVVuN1BBO0FWbzhPQTtBQThlQTtBVWw3UEEsdUJBRUU7QUFERixPQUFBOztBQUFBO0FWMDhPQTtBQThlQTtBVXg3UEE7QVZ5OE9BO0FBOGVBO0FVdjdQQSxPQUFBOztBVjZzTkE7QVU3c05BO0FBQUE7QUFEQTtBTnNORTtBSm0vTUY7QUloL01HLE9BQUE7QUp1L01ELGVBQWU7QVVodE5qQixrQkFBSztBVm91TkgsT0FBTztBSTF0Tkw7O0FKMnNOSjtB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QU5BO0FBQ0E7QUFDRSxTQUFTLEtBQUssV0FBVztBQUN6QixXQUFXOztBQVViO0FBQ0UsU0FBUzs7QUFHWDtBQUNFLFNBQVM7O0FBR1g7QUFDRTs7QUFHRjtBQUNFLFNBQVM7QUFDVCxXQUFXO0FBQ1gsYUFBYTs7QUFPZjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRSxlQUFlOztBQVFqQjtBQUNFLFlBQVk7O0FBR2Q7QUF1QkE7QUFKQTtBQURBO0FBcUNBO0FBdERFLFNBQVM7O0FBR1g7QUFDRSxXQUFXOztBQUdiO0FBQ0UsV0FBVzs7QUFJYjtBQURBO0FBR0UsV0FBVzs7QUFZYjtBQUNFLFVBQVU7QUFDVixRQUFRO0FBQ1IsU0FBUztBQUVULFdBQVc7O0FBR2I7QUFDRSxVQUFVO0FBQ1YsV0FBVzs7QUFHYjtBQUNFLFNBQVM7QUFDVCxRQUFRO0FBQ1IsUUFBUSxNQUFNLHdCQUF3QjtBQUN0QyxZQUFZOztBQUdkO0FBSUE7QUFIRSxTQUFTOzs7QUFZYjtBQUNFO0FBTUE7QUFDQTtBQUxBO0FBREE7QUFFRSxjQUFjOzs7QUFTbEI7QUFDRTtBQUNFLFdBQVciLCJmaWxlIjoiY29tcG9uZW50cy5jc3MiLCJzb3VyY2VzQ29udGVudCI6W251bGwsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBGb3JtcyAtIFdlYmZvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRmlsZSBJbnB1dFxuMi4gR3JpZHNcbjMuIFdpemFyZCBQYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEZpbGUgSW5wdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9ybS1tYW5hZ2VkLWZpbGUge1xuICAuZm9ybS1maWxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIEdyaWRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndlYmZvcm0tZ3JpZCB7XG4gIC8vIE92ZXJ3cml0ZSBvdXIgcmFkaW8gYnV0dG9uIHN0eWxlcyBmb3IgZGVmYXVsdCByYWRpbyBidXR0b25zXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIE1ha2UgdGhlIHdob2xlIHRhYmxlIGNlbGwgY2xpY2thYmxlXG4gIC5jaGVja2JveCB7XG4gICAgbGFiZWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY2xpcDogaW5oZXJpdDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbmZvcm0ge1xuICAuZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgY29sb3I6IHZhcigtLWdyYXkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cblxuICAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4zLiBXaXphcmQgUGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud2ViZm9ybS1wcm9ncmVzcy10cmFja2VyIHtcbiAgLnByb2dyZXNzLXN0ZXAge1xuICAgICYuaXMtY29tcGxldGUge1xuICAgICAgLnByb2dyZXNzLXRpdGxlIHtcbiAgICAgICAgJltyb2xlPVwibGlua1wiXSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmtlci0tMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgLS1jaGVja21hcmstc2l6ZTogMy43NXJlbTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgICAgICAgICBsZWZ0OiB2YXIoLS1jaGVja21hcmstc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICAgICAgbGVmdDogdmFyKC0tc3BhY2UtLTJ4bCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogY2FsYygtMSAqIHZhcigtLXNwYWNlLS1tZCkpO1xuICAgICAgICAgIGxlZnQ6IHZhcigtLXNwYWNlLS0yeGwpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKHZhcigtLWNoZWNrbWFyay1zaXplKSAqIDIpO1xuICAgICAgICAgIGhlaWdodDogdmFyKC0tY2hlY2ttYXJrLXNpemUpO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9mb3Jtcy9ncmVlbi1jaGVjay5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICY6aG92ZXIgLnByb2dyZXNzLW1hcmtlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNDApO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLS1kYXJrZXItLTIwKTtcbiAgICAgIH1cblxuICAgICAgLnByb2dyZXNzLW1hcmtlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLS1kYXJrZXItLTIwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9ncmVzcy1tYXJrZXIge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBJY29ucyAtIFNvY2lhbCBNZWRpYSBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc29jaWFsLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IHZhcigtLXRvZ2dsZS1zaXplLS1zbSk7XG4gIGhlaWdodDogdmFyKC0tdG9nZ2xlLXNpemUtLXNtKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tZWFzZS1zdGFuZGFyZCkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdClcbiAgICBiYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlKTtcblxuICBzdmcge1xuICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWVhc2Utc3RhbmRhcmQpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpIGZpbGw7XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgZmlsbDogdmFyKC0tYmxhY2spO1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogZG90dGVkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpO1xuICB9XG5cbiAgJi5tZWRpdW0ge1xuICAgIHdpZHRoOiB2YXIoLS10b2dnbGUtc2l6ZS0tbWQpO1xuICAgIGhlaWdodDogdmFyKC0tdG9nZ2xlLXNpemUtLW1kKTtcbiAgfVxuXG4gICYubGFyZ2Uge1xuICAgIHdpZHRoOiB2YXIoLS10b2dnbGUtc2l6ZS0tbGcpO1xuICAgIGhlaWdodDogdmFyKC0tdG9nZ2xlLXNpemUtLWxnKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IE92ZXJsYXlzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibHVlLW92ZXJsYXksXG4uZGFyay1ibHVlLW92ZXJsYXksXG4uYmxhY2stb3ZlcmxheSxcbi5ncmF5LW92ZXJsYXksXG4ud2hpdGUtZ3JhZGllbnQtb3ZlcmxheSxcbi5ibGFjay1ncmFkaWVudC1vdmVybGF5IHtcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG5cbi5ibHVlLW92ZXJsYXkge1xuICBAaW5jbHVkZSBibHVlLWJnO1xuXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICB9XG5cbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICB9XG59XG5cbi5kYXJrLWJsdWUtb3ZlcmxheSB7XG4gIEBpbmNsdWRlIGRhcmstYmx1ZS1iZztcblxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xuICB9XG5cbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICB9XG59XG5cbi5ibGFjay1vdmVybGF5IHtcbiAgQGluY2x1ZGUgYmxhY2stYmc7XG5cbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICB9XG59XG5cbi5ncmF5LW92ZXJsYXkge1xuICBAaW5jbHVkZSBsaWdodC1ncmF5LWJnO1xuXG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0tbGlnaHRlci0tNjApO1xuICB9XG5cbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygtMC41KTtcbiAgfVxufVxuXG4ud2hpdGUtZ3JhZGllbnQtb3ZlcmxheSB7XG4gIEBpbmNsdWRlIGxpZ2h0LWdyYXktYmc7XG5cbiAgY29sb3I6IHZhcigtLWJsYWNrKTtcblxuICAmOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIHRvIHJpZ2h0LFxuICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSxcbiAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKVxuICAgICk7XG4gIH1cbn1cblxuLmJsYWNrLWdyYWRpZW50LW92ZXJsYXkge1xuICBAaW5jbHVkZSBibGFjay1iZztcblxuICAmOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAxKSwgcmdiYSgwLCAwLCAwLCAwLjMpKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IEJhY2tncm91bmQgQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQmxhY2sgYmFzZWQgYmFja2dyb3VuZHNcbjIuIEdyYXkgYmFzZWQgYmFja2dyb3VuZHNcbjMuIExpZ2h0IGdyYXkgYmFzZWQgYmFja2dyb3VuZHNcbjQuIENsYXNzZXNcbjUuIERhcmsgbW9kZVxuNi4gUHJpbnQgc3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhdHRlcm4tbGFiLWJnIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEJsYWNrIGJhc2VkIGJhY2tncm91bmRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQmxhY2ssIGRhcmtlc3QgYmx1ZSwgZGFyayBibHVlLCBhbmQgZGFyayBncmVlbiBhcmUgYmxhY2sgYmFzZWQuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1peGluIGJsYWNrLWJnIHtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuXG4gIGgxIHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4pO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuICB9XG5cbiAgaDMge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNDApO1xuICB9XG5cbiAgaDQge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNjApO1xuICB9XG5cbiAgaDUge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tODApO1xuICB9XG5cbiAgaDYge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbik7XG4gIH1cblxuICAuaW50cm8sXG4gIC50YWdsaW5lIHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgfVxuXG4gIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pLFxuICBhLnBhdHRlcm5MaW5rIHtcbiAgICBjb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wdXJwbGUtLWxpZ2h0ZXItLTgwKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWdyYWRpZW50LS12ZXJ0aWNhbC0tbGlnaHQtYmx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUge1xuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLS1sZyk7XG4gICAgICB9XG5cbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgfVxuICB9XG5cbiAgLnNvY2lhbC1pY29uLFxuICAucGxheS1idXR0b24ge1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcblxuICAgIHN2ZyB7XG4gICAgICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLS1saWdodGVyLS02MCk7XG4gICAgfVxuICB9XG5cbiAgY2FwdGlvbixcbiAgLmJsb2NrLS1jb3VudGRvd24ge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cbn1cblxuQG1peGluIGRhcmtlc3QtYmx1ZS1iZyB7XG4gIEBpbmNsdWRlIGJsYWNrLWJnO1xuXG4gIGJhY2tncm91bmQ6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS0yMCk7XG59XG5cbkBtaXhpbiBkYXJrLWJsdWUtYmcge1xuICBAaW5jbHVkZSBibGFjay1iZztcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xufVxuXG5AbWl4aW4gZGFyay1ncmVlbi1iZyB7XG4gIEBpbmNsdWRlIGJsYWNrLWJnO1xuXG4gIGJhY2tncm91bmQ6IHZhcigtLWRhcmstZ3JlZW4pO1xuXG4gIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS0yMCk7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuLS1saWdodGVyLS04MCk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4pO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLXZlcnRpY2FsLS1saWdodC1ncmVlbik7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUge1xuICAgIGxpIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1ncmVlbi0tbGlnaHRlci0tODApO1xuICAgIH1cbiAgfVxuXG4gICYucHVsbHF1b3RlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tZ3JlZW4tLWxpZ2h0ZXItLTgwKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMi4gR3JheSBiYXNlZCBiYWNrZ3JvdW5kc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkdyYXksIGJsdWUsIGFuZCBncmVlbiBiYWNrZ3JvdW5kcyBhcmUgZ3JheSBiYXNlZC5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWl4aW4gZ3JheS1iZyB7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYXkpO1xuXG4gIGgxIHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTIwKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgfVxuXG4gIGgzIHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTYwKTtcbiAgfVxuXG4gIGg0IHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTgwKTtcbiAgfVxuXG4gIGg1IHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgaDYge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cblxuICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS02MCk7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1wdXJwbGUtLWxpZ2h0ZXItLTYwKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWdyYWRpZW50LS12ZXJ0aWNhbC0tbGlnaHQtYmx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLmludHJvLFxuICAudGFnbGluZSB7XG4gICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS04MCk7XG4gIH1cblxuICAubWVudSB7XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKTtcbiAgICAgIH1cblxuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpIHZhcigtLWJsdWUtLWxpZ2h0ZXItLTYwKTtcbiAgICB9XG4gIH1cblxuICAuc29jaWFsLWljb24sXG4gIC5wbGF5LWJ1dHRvbiB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTYwKTtcbiAgICB9XG4gIH1cblxuICBjYXB0aW9uLFxuICAuYmxvY2stLWNvdW50ZG93biB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgfVxufVxuXG5AbWl4aW4gYmx1ZS1iZyB7XG4gIEBpbmNsdWRlIGdyYXktYmc7XG5cbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG59XG5cbkBtaXhpbiBncmVlbi1iZyB7XG4gIEBpbmNsdWRlIGdyYXktYmc7XG5cbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuXG4gIGgxIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTgwKTtcbiAgICB9XG4gIH1cblxuICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS0yMCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1ncmFkaWVudC0tdmVydGljYWwtLWxpZ2h0LWdyZWVuKTtcbiAgICB9XG4gIH1cblxuICAmLnB1bGxxdW90ZSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS00MCk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjMuIExpZ2h0IGdyYXkgYmFzZWQgYmFja2dyb3VuZHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5MaWdodCBncmF5LCBsaWdodGVzdCBncmF5LCBsaWdodCBibHVlLCBsaWdodGVzdCBibHVlLCBhbmQgbGlnaHQgZ3JlZW5cbmJhY2tncm91bmRzIGFyZSBsaWdodCBncmF5IGJhc2VkLlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBsaWdodC1ncmF5LWJnIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0tbGlnaHRlci0tNjApO1xuXG4gIGgxIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTgwKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTgwKTtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gIH1cblxuICBoMyB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCk7XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS0yMCk7XG4gIH1cblxuICBoNSB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gIH1cblxuICBoNiB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gIH1cblxuICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIGNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTQwKTtcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHZhcigtLXB1cnBsZSk7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLXZlcnRpY2FsLS1kYXJrLWJsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC5tZW51IHtcbiAgICBsaSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuICAgICAgfVxuXG4gICAgICBib3JkZXItbGVmdDogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgdmFyKC0tYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgfVxuICB9XG5cbiAgJi5wdWxscXVvdGUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICB9XG59XG5cbkBtaXhpbiBsaWdodGVzdC1ncmF5LWJnIHtcbiAgQGluY2x1ZGUgbGlnaHQtZ3JheS1iZztcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG59XG5cbkBtaXhpbiBsaWdodC1ibHVlLWJnIHtcbiAgQGluY2x1ZGUgbGlnaHQtZ3JheS1iZztcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLS1saWdodGVyLS02MCk7XG59XG5cbkBtaXhpbiBsaWdodGVzdC1ibHVlLWJnIHtcbiAgQGluY2x1ZGUgbGlnaHRlc3QtZ3JheS1iZztcblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLS1saWdodGVyLS04MCk7XG59XG5cbkBtaXhpbiBsaWdodC1ncmVlbi1iZyB7XG4gIEBpbmNsdWRlIGxpZ2h0LWdyYXktYmc7XG5cbiAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtZ3JlZW4pO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gQ2xhc3Nlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibGFjay1iZyB7XG4gIEBpbmNsdWRlIGJsYWNrLWJnO1xufVxuLmRhcmstYmx1ZS1iZyB7XG4gIEBpbmNsdWRlIGRhcmstYmx1ZS1iZztcbn1cbi5kYXJrZXN0LWJsdWUtYmcge1xuICBAaW5jbHVkZSBkYXJrZXN0LWJsdWUtYmc7XG59XG4uZGFyay1ncmVlbi1iZyB7XG4gIEBpbmNsdWRlIGRhcmstZ3JlZW4tYmc7XG59XG4uZ3JlZW4tYmcge1xuICBAaW5jbHVkZSBncmVlbi1iZztcbn1cbi5ncmF5LWJnIHtcbiAgQGluY2x1ZGUgZ3JheS1iZztcbn1cbi5ibHVlLWJnIHtcbiAgQGluY2x1ZGUgYmx1ZS1iZztcbn1cbi5saWdodC1ncmF5LWJnIHtcbiAgQGluY2x1ZGUgbGlnaHQtZ3JheS1iZztcbn1cbi5saWdodGVzdC1ncmF5LWJnIHtcbiAgQGluY2x1ZGUgbGlnaHRlc3QtZ3JheS1iZztcbn1cbi5saWdodC1ibHVlLWJnIHtcbiAgQGluY2x1ZGUgbGlnaHQtYmx1ZS1iZztcbn1cbi5saWdodGVzdC1ibHVlLWJnIHtcbiAgQGluY2x1ZGUgbGlnaHRlc3QtYmx1ZS1iZztcbn1cbi5saWdodC1ncmVlbi1iZyB7XG4gIEBpbmNsdWRlIGxpZ2h0LWdyZWVuLWJnO1xufVxuLmRhcmstYmx1ZS1ncmFkaWVudC1iZyB7XG4gIEBpbmNsdWRlIGJsdWUtYmc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLWRpYWdvbmFsLS1kYXJrLWJsdWUtdG8tYmxhY2spO1xufVxuLmJsdWUtZ3JhZGllbnQtYmcge1xuICBAaW5jbHVkZSBibHVlLWJnO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWdyYWRpZW50LS1kaWFnb25hbC0tYmx1ZS10by1kYXJrLWJsdWUpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNS4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGJsYWNrLWJnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1kYXJrZXItLTgwKTtcbn1cbi5kYXJrLW1vZGUge1xuICAuZ3JheS1iZyxcbiAgLmxpZ2h0LWJsdWUtYmcsXG4gIC5saWdodGVzdC1ibHVlLWJnLFxuICAubGlnaHQtZ3JheS1iZyxcbiAgLmxpZ2h0ZXN0LWdyYXktYmcge1xuICAgIEBpbmNsdWRlIGdyYXktYmc7XG4gIH1cblxuICAubGlnaHQtZ3JlZW4tYmcge1xuICAgIEBpbmNsdWRlIGdyZWVuLWJnO1xuICB9XG5cbiAgLmdyZWVuLWJnIHtcbiAgICBAaW5jbHVkZSBncmVlbi1iZztcbiAgfVxuXG4gIC5ibHVlLWJnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTQwKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4gUHJpbnQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHByaW50IHtcbiAgLmJsYWNrLWJnLFxuICAuZ3JheS1iZyxcbiAgLmxpZ2h0LWdyYXktYmcsXG4gIC5saWdodGVzdC1ncmF5LWJnLFxuICAuZGFyay1ibHVlLWJnLFxuICAuZGFya2VzdC1ibHVlLWJnLFxuICAuYmx1ZS1iZyxcbiAgLmxpZ2h0LWJsdWUtYmcsXG4gIC5saWdodGVzdC1ibHVlLWJnLFxuICAuZGFyay1ncmVlbi1iZyxcbiAgLmdyZWVuLWJnLFxuICAubGlnaHQtZ3JlZW4tYmcsXG4gIC5kYXJrLWJsdWUtZ3JhZGllbnQtYmcsXG4gIC5ibHVlLWdyYWRpZW50LWJnIHtcbiAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgIGJvcmRlcjogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1zbSkgdmFyKC0tYmxhY2spO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIH1cblxuICAgIC5ibG9jay0tYmV5b25kLWJhc2ljcy1ibG9jayB7XG4gICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IEltYWdlIExpbmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBNdWx0aXBsZSBsaW5rc1xuMi4gVmFyaWF0aW9uc1xuMy4gRGFyayBtb2RlXG40LiBEaXNwbGF5IHByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmltYWdlLWxpbmsge1xuICAtLWltYWdlLWxpbmstc2l6ZTogMTIuNXJlbTtcbiAgLS1pbWFnZS1saW5rLXNpemUtLXNtOiA4LjI1cmVtO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IHZhcigtLWltYWdlLWxpbmstc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0taW1hZ2UtbGluay1zaXplKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhsKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0KTtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlIGFsbDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBoZWlnaHQ6IDcwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjAlLCAtMTAlKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWJsdWUtLXJnYiksIDAuMik7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICB3aWR0aDogMTA1JTtcbiAgICBoZWlnaHQ6IDEwNSU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUlLCAxMCUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC4xKTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcbiAgfVxuXG4gICY6aG92ZXI6YmVmb3JlLFxuICAmOmZvY3VzLXdpdGhpbjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDYwJSwgNDUlKTtcbiAgfVxuICAmOmhvdmVyOmFmdGVyLFxuICAmOmZvY3VzLXdpdGhpbjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTIwJSwgLTEwJSk7XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG5cbiAgICBpbWcge1xuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MC0tcmdiKSwgMC43KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbGcpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwLS1yZ2IpLCAwLjkpO1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICB9XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IC8vb3ZlcnJpZGVzIGZpbGUgZXh0ZW5zaW9uIHN0eWxlIGluIGxpbmsgYXRvbSBjc3NcblxuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDEwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFtcIiBhdHRyKGhyZWYpIFwiXSBcIjtcbiAgICAgICAgZm9udC1zaXplOiAxMHB0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGZvbnQtc2l6ZTogMTJwdDtcbiAgICB9XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjc1KTtcbiAgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tc20pIHZhcigtLWJsYWNrKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBNdWx0aXBsZSBsaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9jay0taW1hZ2UtbGluayB7XG4gICY6bnRoLW9mLXR5cGUoMikge1xuICAgIC5pbWFnZS1saW5rIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNCUsIDIwJSk7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDIwJSwgLTEzJSk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6YmVmb3JlLFxuICAgICAgJjpmb2N1cy13aXRoaW46YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAlLCAtMTglKTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcjphZnRlcixcbiAgICAgICY6Zm9jdXMtd2l0aGluOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCA0MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bnRoLW9mLXR5cGUoMykge1xuICAgIC5pbWFnZS1saW5rIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDExMCU7XG4gICAgICAgIGhlaWdodDogMTEwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTIlLCAtOSUpO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIGhlaWdodDogODAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTIlLCAzMCUpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOmJlZm9yZSxcbiAgICAgICY6Zm9jdXMtd2l0aGluOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMiUsIC0yMCUpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOmFmdGVyLFxuICAgICAgJjpmb2N1cy13aXRoaW46YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDE0JSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWYXJpYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmltYWdlLWxpbmstLXNpbXBsZSxcbi5zaW1wbGUge1xuICAuaW1hZ2UtbGluayB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc21hbGxlciB7XG4gIC5pbWFnZS1saW5rIHtcbiAgICB3aWR0aDogdmFyKC0taW1hZ2UtbGluay1zaXplLS1zbSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1pbWFnZS1saW5rLXNpemUtLXNtKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbWQpO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JlZW4ge1xuICAuaW1hZ2UtbGluazpub3QoLmdyZWVuKSB7XG4gICAgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDApO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1saWdodC1ncmVlbi0tcmdiKSwgMC44KTtcblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tbGlnaHQtZ3JlZW4tLXJnYiksIDAuOTUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tbGlnaHQtZ3JlZW4tLXJnYiksIDAuNSk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWxpZ2h0LWdyZWVuLS1yZ2IpLCAwLjMpO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5pbWFnZS1saW5rIHtcbiAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKXtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC41KTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC43KTtcbiAgICB9XG4gIH1cblxuICAuZ3JlZW4ge1xuICAgIC5pbWFnZS1saW5rIHtcbiAgICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjQuIERpc3BsYXkgcHJlZmVyZW5jZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkge1xuICAuYmxvY2stLWltYWdlLWxpbmsge1xuICAgIHdvcmQtc3BhY2luZzogLTAuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyZW07XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKHZhci0tZm9udC1zaXplLS1zbSk7XG4gICAgfVxuXG4gICAgJi5zbWFsbGVyIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS14cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogVGFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQmFzZSBTdHlsZXNcbjIuIFJlc3BvbnNpdmUgdGFibGUgY29udGFpbmVyXG4zLiBBbHRlcm5hdGVzXG40LiBEYXJrIE1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQmFzZSBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWl4aW4gY29sb3ItdGFibGUoJGxpZ2h0LXJvd3MsICRkYXJrLXJvd3MsICRsaWdodC1oZWFkZXJzLCAkZGFyay1oZWFkZXJzKSB7XG4gIHRyIHtcbiAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXJvd3M7XG4gICAgfVxuICAgICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstcm93cztcbiAgICB9XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRsaWdodC1yb3dzO1xuICB9XG5cbiAgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1oZWFkZXJzO1xuXG4gICAgJltjb2xzcGFuXSxcbiAgICAmW3Jvd3NwYW5dIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWhlYWRlcnM7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtaGVhZGVycztcbiAgICB9XG4gIH1cbn1cblxuW2NsYXNzJD1cIi1iZ1wiXSB0YWJsZSxcbnRhYmxlIHtcbiAgLS10YWJsZS1ibHVlOiAjY2NlNGY0O1xuICAtLXRhYmxlLWJsdWUtLWRhcmtlci0tMTA6ICNiMWNmZTY7XG4gIC0tdGFibGUtYmx1ZS0tZGFya2VyLS0xNTogIzk5YmJkOTtcbiAgLS10YWJsZS1ibHVlLS1kYXJrZXItLTU6ICNlNmYyZmE7XG4gIC0tdGFibGUtZ3JheTogI2Y1ZjZmNztcbiAgLS10YWJsZS1ncmF5LS1kYXJrZXItLTEwOiAjZGNkZGRlO1xuICAtLXRhYmxlLWdyYXktLWRhcmtlci0tMTU6ICNkMGQxZDI7XG4gIC0tdGFibGUtZ3JheS0tZGFya2VyLS0yMDogI2M0YzVjNjtcbiAgLS10YWJsZS1ncmF5LS1kYXJrZXItLTI1OiAjYjhiOGI5O1xuICAtLXRhYmxlLWdyYXktLWRhcmtlci0tNTogI2U5ZTllYTtcbiAgLS10YWJsZS1ncmF5LS1kYXJrZXItLTUwOiAjN2E3YjdiO1xuICAtLXRhYmxlLWdyYXktLWRhcmtlci0tNTU6ICM2ZTZmNmY7XG4gIC0tdGFibGUtZ3JheS0tZGFya2VyLS02MDogIzYyNjI2MztcbiAgLS10YWJsZS1ncmF5LS1kYXJrZXItLTY1OiAjNTY1NjU2O1xuICAtLXRhYmxlLWdyYXktLWRhcmtlci0tNzA6ICM0OTQ5NGE7XG4gIC0tdGFibGUtZ3JheS0tZGFya2VyLS03NTogIzNkM2UzZTtcblxuICBAaW5jbHVkZSBsaWdodC1ncmF5LWJnO1xuICBAaW5jbHVkZSBjb2xvci10YWJsZShcbiAgICB2YXIoLS10YWJsZS1ncmF5KSxcbiAgICB2YXIoLS10YWJsZS1ncmF5LS1kYXJrZXItLTUpLFxuICAgIHZhcigtLXRhYmxlLWdyYXktLWRhcmtlci0tMTApLFxuICAgIHZhcigtLXRhYmxlLWdyYXktLWRhcmtlci0tMTUpXG4gICk7XG5cbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpIDA7XG4gIHRhYmxlLWxheW91dDogYXV0bztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICYuZml4ZWQge1xuICAgIHRhYmxlLWxheW91dDogYXV0bztcbiAgfVxuXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJyZW07XG4gIH1cbn1cblxuLmZpeGVkIHtcbiAgdGFibGUge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLWJvbGQpO1xufVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG50ciB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG5cbiAgJi5ldmVuLFxuICAmLm9kZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG50aCB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgJltjb2xzcGFuXSxcbiAgJltyb3dzcGFuXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gIH1cblxuICAmW2NvbHNwYW5dIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgcmlnaHQ6IC12YXIoLS1ib3JkZXItd2lkdGgtLW1kKSAtLXRoaWNrZXIgLSAwLjA2MjVyZW07XG4gICAgICAgIHdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSAtLXRoaWNrZXI7XG4gICAgICB9XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAtdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgLSAwLjA2MjVyZW07XG4gICAgICB3aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gICAgfVxuICB9XG5cbiAgJltyb3dzcGFuXSB7XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC0tbWQpIC0tdGhpY2tlcjtcbiAgICAgIH1cblxuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICB9XG4gIH1cbn1cblxudGQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC0tbWQpIC0tdGhpY2tlcjtcbiAgfVxuXG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICB9XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1yaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgc29saWQgdmFyKC0tdGFibGUtZ3JheS0tbGlnaHRlcik7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIFJlc3BvbnNpdmUgdGFibGUgY29udGFpbmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnJlc3BvbnNpdmUtdGFibGUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBvdmVyZmxvdy14OiByZXZlcnQ7XG4gIH1cblxuICBvdmVyZmxvdy14OiBzY3JvbGw7XG5cbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICBjYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4zLiBBbHRlcm5hdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpZ2h0LWJsdWUge1xuICBAaW5jbHVkZSBjb2xvci10YWJsZShcbiAgICB2YXIoLS10YWJsZS1ibHVlKSxcbiAgICB2YXIoLS10YWJsZS1ibHVlLS1kYXJrZXItLTUpLFxuICAgIHZhcigtLXRhYmxlLWJsdWUtLWRhcmtlci0tMTApLFxuICAgIHZhcigtLXRhYmxlLWJsdWUtLWRhcmtlci0tMTUpXG4gICk7XG59XG5cbi5saWdodGVzdC1ncmF5IHtcbiAgQGluY2x1ZGUgY29sb3ItdGFibGUoXG4gICAgdmFyKC0td2hpdGUpLFxuICAgIHZhcigtLXRhYmxlLWdyYXkpLFxuICAgIHZhcigtLXRhYmxlLWdyYXktLWRhcmtlci0tNSksXG4gICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS0xMClcbiAgKTtcbn1cblxuLmFsaWduLXRvcCB7XG4gIHRkLFxuICB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgdGQsXG4gIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi5mb250LXNpemUtLXNtYWxsZXIge1xuICB0ZCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLTJ4cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxuXG4gIHRoIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tMnhzKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbWQpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG40LiBEYXJrIE1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItdGFibGUoXG4gICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS02MCksXG4gICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS02NSksXG4gICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS03MCksXG4gICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS03NSlcbiAgKTtcblxuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgZ3JheS1iZztcblxuICAgICYubGlnaHRlc3QtZ3JheSB7XG4gICAgICBAaW5jbHVkZSBncmF5LWJnO1xuICAgICAgQGluY2x1ZGUgY29sb3ItdGFibGUoXG4gICAgICAgIHZhcigtLXRhYmxlLWdyYXktLWRhcmtlci0tNTApLFxuICAgICAgICB2YXIoLS10YWJsZS1ncmF5LS1kYXJrZXItLTU1KSxcbiAgICAgICAgdmFyKC0tdGFibGUtZ3JheS0tZGFya2VyLS02MCksXG4gICAgICAgIHZhcigtLXRhYmxlLWdyYXktLWRhcmtlci0tNjUpXG4gICAgICApO1xuICAgIH1cblxuICAgICYubGlnaHQtYmx1ZSB7XG4gICAgICBAaW5jbHVkZSBibHVlLWJnO1xuICAgICAgQGluY2x1ZGUgY29sb3ItdGFibGUoXG4gICAgICAgIHZhcigtLWJsdWUpLFxuICAgICAgICB2YXIoLS1ibHVlLS1kYXJrZXItLTIwKSxcbiAgICAgICAgdmFyKC0tYmx1ZS0tZGFya2VyLS00MCksXG4gICAgICAgIHZhcigtLWJsdWUtLWRhcmtlci0tNjApXG4gICAgICApO1xuXG4gICAgICB0ZDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogVGV4dCAtIEJsb2NrcXVvdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYmxvY2txdW90ZTpub3QoW2NsYXNzXSkge1xuICBAaW5jbHVkZSBsaWdodGVzdC1ncmF5LWJnO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpIDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbn1cblxuLnB1bGxxdW90ZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLW1ham9ycy1wdWxsLXF1b3RlIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbGcpIHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgTW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICBibG9ja3F1b3RlOm5vdChbY2xhc3NdKSB7XG4gICAgQGluY2x1ZGUgZ3JheS1iZztcbiAgfVxuXG4gIGJsb2NrcXVvdGUucHVsbHF1b3RlIHtcbiAgICBAaW5jbHVkZSBibGFjay1iZztcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBIZWFkaW5nc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERlZmF1bHRcbjIuIEFsdGVybmF0ZSBTdHlsZXNcbjMuIERpc3BsYXkgUHJlZmVyZW5jZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGVmYXVsdFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtLXhsKSAwIHZhcigtLXNwYWNlLS14cyk7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG59XG5cbmgxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gIGNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTgwKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLXRpdGxlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTV4bCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA2ZW07XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItd2lkdGg6IDAuMTJlbTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICB9XG59XG5cbmgyIHtcbiAgY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tNjApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tNHhsKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ib2xkKTtcbn1cbmgzIHtcbiAgY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tNDApO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tM3hsKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZCk7XG59XG5oNCB7XG4gIGNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTIwKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTJ4bCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tcmVndWxhcik7XG59XG5oNSB7XG4gIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXhsKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1yZWd1bGFyKTtcbn1cbmg2IHtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbGcpO1xufVxuXG5oMSArIGgyLFxuaDIgKyBoMyxcbmgzICsgaDQsXG5oNCArIGg1LFxuaDUgKyBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBBbHRlcm5hdGUgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhlYWRpbmdzLS1zZXJpZixcbi5zZXJpZi1oZWFkaW5ncyB7XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1zZXJpZik7XG4gIH1cbn1cblxuLmhlYWRpbmdzLS1zYW5zLXNlcmlmLFxuLnNhbnMtc2VyaWYtaGVhZGluZ3Mge1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tc2Fucy1zZXJpZik7XG4gIH1cbn1cblxuLmhlYWRpbmdzLS1zYW5zLXNlcmlmLS1hbHQge1xuICBoMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tdGl0bGUpO1xuICB9XG59XG5cbi5oZWFkaW5ncy0tdXBwZXJjYXNlIHtcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG4uaGVhZGluZ3MtLXVuZGVybGluZWQge1xuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tdGl0bGUpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogNmVtO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci13aWR0aDogMC4xMmVtO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cbi50ZXh0LWFsaWduLWNlbnRlciAuaGVhZGluZ3MtLXVuZGVybGluZWQsXG4udGV4dC1hbGlnbi1jZW50ZXIuaGVhZGluZ3MtLXVuZGVybGluZWQsXG4uaGVhZGluZ3MtLXVuZGVybGluZWQgLnRleHQtYWxpZ24tY2VudGVyIHtcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgJjphZnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTUwJSk7XG4gICAgfVxuICB9XG59XG4udGV4dC1hbGlnbi1yaWdodCAuaGVhZGluZ3MtLXVuZGVybGluZWQsXG4udGV4dC1hbGlnbi1yaWdodC5oZWFkaW5ncy0tdW5kZXJsaW5lZCxcbi5oZWFkaW5ncy0tdW5kZXJsaW5lZCAudGV4dC1hbGlnbi1yaWdodCB7XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4uYmlnLWJvbGQtaGVhZGluZ3MsXG4uaGVhZGluZ3MtLWJpZy1hbmQtYm9sZCB7XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS10aXRsZSk7XG4gIH1cblxuICBoMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS05eGwpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYmxhY2spO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTh4bCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ibGFjayk7XG4gIH1cblxuICBoMyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS03eGwpO1xuICB9XG5cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS02eGwpO1xuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS01eGwpO1xuICB9XG59XG5cbi5mb250LXNpemUtLXNtYWxsZXIge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTN4bCk7XG4gIH1cblxuICBoMiB7XG4gICAgcGFkZGluZy1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0teGwpO1xuICB9XG5cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gIH1cblxuICBoNSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4zLiBEaXNwbGF5IFByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvbnQtLWR5c2xleGlhLWZyaWVuZGx5IHtcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLWR5c2xleGlhLWZyaWVuZGx5KTtcbiAgfVxuXG4gIFtjbGFzc149XCJoZWFkaW5ncy0tXCJdIHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkpO1xuICAgIH1cbiAgfVxufVxuXG4uZm9udC0taHlwZXJsZWdpYmxlIHtcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLWh5cGVybGVnaWJsZSk7XG4gIH1cblxuICBbY2xhc3NePVwiaGVhZGluZ3NcIl0ge1xuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1oeXBlcmxlZ2libGUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBDYXJkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIENvbHVtbiBsYXlvdXRzXG4gIGEuIEdyaWRcbiAgYi4gRmxleFxuICBjLiBTZWN0aW9uIGRpdmlkZXJcbjIuIFZlcnRpY2FsIGxheW91dHNcbjMuIEZsZXggbGF5b3V0c1xuNC4gSUUgZml4XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQ29sdW1uIGxheW91dHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBhLiBHcmlkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQtMmNvbCxcbi5jYXJkLTNjb2wsXG4uY2FyZC00Y29sLFxuLmNhcmQtMmNvbC0tdmlldyAudmlldy1jb250ZW50LFxuLmNhcmQtM2NvbC0tdmlldyAudmlldy1jb250ZW50LFxuLmNhcmQtNGNvbC0tdmlldyAudmlldy1jb250ZW50IHtcbiAgZGlzcGxheTogZ3JpZDtcblxuICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNlLS1zbSk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5cbi5jYXJkLTJjb2wsXG4uY2FyZC0yY29sLS12aWV3IC52aWV3LWNvbnRlbnQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIH1cbn1cblxuLmNhcmQtM2NvbCxcbi5jYXJkLTNjb2wtLXZpZXcgLnZpZXctY29udGVudCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIH1cbn1cblxuLmNhcmQtNGNvbCxcbi5jYXJkLTRjb2wtLXZpZXcgLnZpZXctY29udGVudCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG59XG5cbi8qIGIuIEZsZXggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2FyZC0yY29sLS1mbGV4LFxuLmNhcmQtM2NvbC0tZmxleCxcbi5jYXJkLTRjb2wtLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gIC5jYXJkLFxuICAuYmxvY2stLWNhcmQsXG4gIC5wYWdlcixcbiAgLmV2ZW50IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxufVxuXG4uY2FyZC0yY29sLS1mbGV4IHtcbiAgLmNhcmQsXG4gIC5ibG9jay0tY2FyZCxcbiAgLmV2ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAwIGNhbGMoNTAlIC0gdmFyKC0tc3BhY2UtLXhzKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLTNjb2wtLWZsZXgge1xuICAuY2FyZCxcbiAgLmJsb2NrLS1jYXJkLFxuICAuZXZlbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDAgY2FsYygzMy4zMyUgLSB2YXIoLS1zcGFjZS0teHMpKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtNGNvbC0tZmxleCB7XG4gIC5jYXJkLFxuICAuYmxvY2stLWNhcmQsXG4gIC5ldmVudCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGZsZXg6IDAgMCBjYWxjKDI1JSAtIHZhcigtLXNwYWNlLS14cykpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBhLiBTZWN0aW9uIGRpdmlkZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQtLWZsZXgtLXNlY3Rpb24tZGl2aWRlciB7XG4gIGZsZXg6IDAgMCAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gVmVydGljYWwgbGF5b3V0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jYXJkLWxpc3Qge1xuICAuY2FyZCxcbiAgLmJsb2NrLS1jYXJkLFxuICAuZXZlbnQge1xuICAgIEBpbmNsdWRlIGhvcml6b250YWwtY2FyZDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRmxleCBsYXlvdXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dC0tZmxleCB7XG4gIC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgLmJsb2NrLS1jYXJkIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW46IDAgdmFyKC0tc3BhY2UtLXhzKTtcbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIElFIGZpeFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgLmNhcmQtMmNvbCxcbiAgLmNhcmQtMmNvbC0tdmlldyxcbiAgLmNhcmQtMmNvbC0tZmxleCB7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcblxuICAgIC5jYXJkLFxuICAgIC5ibG9jay0tY2FyZCxcbiAgICAuZXZlbnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkLTNjb2wsXG4gIC5jYXJkLTNjb2wtLXZpZXcsXG4gIC5jYXJkLTNjb2wtLWZsZXgge1xuICAgIGRpc3BsYXk6IGluaXRpYWw7XG5cbiAgICAuY2FyZCxcbiAgICAuYmxvY2stLWNhcmQsXG4gICAgLmV2ZW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzJTtcbiAgICB9XG4gIH1cblxuICAuY2FyZC00Y29sLFxuICAuY2FyZC00Y29sLS12aWV3LFxuICAuY2FyZC00Y29sLS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xuXG4gICAgLmNhcmQsXG4gICAgLmJsb2NrLS1jYXJkLFxuICAgIC5ldmVudCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuICB9XG5cbiAgLmNhcmQtMmNvbC0tdmlldyAudmlldy1jb250ZW50LFxuICAuY2FyZC0zY29sLS12aWV3IC52aWV3LWNvbnRlbnQsXG4gIC5jYXJkLTRjb2wtLXZpZXcgLnZpZXctY29udGVudCB7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcbiAgfVxuXG4gIC5jYXJkLS1mbGV4LS1zZWN0aW9uLWRpdmlkZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IENhcmRzIC0gQWx0ZXJuYXRlIHN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIENvbG9yIGJsb2NrIHRpdGxlXG4yLiBFdmVudFxuMy4gRXZlbnQgYWx0ZXJuYXRlXG40LiBIb3Jpem9udGFsXG41LiBJbmZvcm1hdGlvblxuNi4gSW5mb3JtYXRpb24gLSBTcGxpdCBzdHlsZVxuNy4gU2ltcGxlXG44LiBTb2xpZCByb3VuZFxuOS4gVGlsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIENvbG9yIGJsb2NrIHRpdGxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQuY29sb3ItYmxvY2stdGl0bGUsXG4uYmxvY2stLWNhcmQuY29sb3ItYmxvY2stdGl0bGUge1xuICAudGl0bGUge1xuICAgIEBpbmNsdWRlIGJsdWUtYmc7XG5cbiAgICBvcmRlcjogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSkge1xuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZGFyay1ibHVlIHtcbiAgICAudGl0bGUge1xuICAgICAgQGluY2x1ZGUgZGFyay1ibHVlLWJnO1xuXG4gICAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5saWdodC1ncmVlbiB7XG4gICAgLnRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGxpZ2h0LWdyZWVuLWJnO1xuXG4gICAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBFdmVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jYXJkLmV2ZW50LFxuLmJsb2NrLS1jYXJkLmV2ZW50IHtcbiAgYWxpZ24tY29udGVudDogc3RhcnQ7XG5cbiAgLmltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tc3BhY2UtLWxnKSk7XG4gIH1cblxuICAuZGF0ZSB7XG4gICAgZmxleDogMCAxIDQwJTtcbiAgICBvcmRlcjogMTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tbWQpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAubW9udGgge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1sZykgMCB2YXIoLS1zcGFjZS0tbGcpO1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTJ4bCk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXJlZ3VsYXIpO1xuICAgIH1cblxuICAgIC5kYXkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLS1sZykgdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tbGcpO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHdvcmQtc3BhY2luZzogLTAuMmVtO1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTV4bCk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXNlbWlib2xkKTtcbiAgICB9XG4gIH1cblxuICAubG9jYXRpb24ge1xuICAgIGZsZXg6IDEgMSA2MCU7XG4gICAgb3JkZXI6IDI7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1tZCkgdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgfVxuXG4gIC5ib2R5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gRXZlbnQgQWx0ZXJuYXRlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQuZXZlbnQuYWx0LFxuLmJsb2NrLS1jYXJkLmV2ZW50LmFsdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJpbWFnZSBpbWFnZVwiXG4gICAgXCJkYXRlIHRpdGxlXCJcbiAgICBcImRhdGUgbG9jYXRpb25cIlxuICAgIFwiYm9keSBib2R5XCJcbiAgICBcInRlcm1zIHRlcm1zXCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDJmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgYmx1ZS1iZztcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ3JpZC1hcmVhOiB0aXRsZTtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmltYWdlIHtcbiAgICBncmlkLWFyZWE6IGltYWdlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZGF0ZSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWFyZWE6IGRhdGU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5tb250aCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgYWxpZ24tY29udGVudDogZW5kO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgfVxuXG4gICAgLmRheSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbik7XG4gICAgfVxuICB9XG5cbiAgLmxvY2F0aW9uIHtcbiAgICBAaW5jbHVkZSBibHVlLWJnO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBncmlkLWFyZWE6IGxvY2F0aW9uO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAuYm9keSB7XG4gICAgZ3JpZC1hcmVhOiBib2R5O1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAudGF4b25vbXktdGVybXMge1xuICAgIGdyaWQtYXJlYTogdGVybXM7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gSG9yaXpvbnRhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBob3Jpem9udGFsLWNhcmQge1xuICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyO1xuICAtbXMtZ3JpZC1yb3dzOiBhdXRvIDFmcjtcblxuICBkaXNwbGF5OiAtbXMtZ3JpZDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICBcImltYWdlIHRpdGxlXCJcbiAgICBcImltYWdlIHRheG9ub215XCJcbiAgICBcImltYWdlIGJvZHlcIjtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byAxZnI7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gIC5pbWFnZSB7XG4gICAgZ3JpZC1hcmVhOiBpbWFnZTtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiAxO1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgID4gZGl2IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC50YXhvbm9teS10ZXJtcyB7XG4gICAgZ3JpZC1hcmVhOiB0YXhvbm9teTtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiAxO1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGdyaWQtYXJlYTogdGl0bGU7XG4gICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgLmJvZHkge1xuICAgIGdyaWQtYXJlYTogYm9keTtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiAzO1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgfVxufVxuXG4uY2FyZC5ob3Jpem9udGFsLFxuLmJsb2NrLS1jYXJkLmhvcml6b250YWwge1xuICBAaW5jbHVkZSBob3Jpem9udGFsLWNhcmQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG41LiBJbmZvcm1hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jYXJkLmluZm9ybWF0aW9uLFxuLmJsb2NrLS1jYXJkLmluZm9ybWF0aW9uIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMDtcblxuICAuc29ydGluZy10ZXJtIHtcbiAgICBvcmRlcjogMDtcbiAgICBtaW4td2lkdGg6IDMwJTtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSB2YXIoLS1ibHVlKTtcblxuICAgIC5ibG9ja19fdGl0bGUge1xuICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC5ib2R5IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1sZyk7XG4gIH1cblxuICAudGF4b25vbXktdGVybXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgb3JkZXI6IDY7XG4gICAgYWxpZ24tc2VsZjogZW5kO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1yZWd1bGFyKTtcbiAgfVxuXG4gIC50YXhvbm9teS10ZXJtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsb2F0OiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgLm1hdGVyaWFsLWljb25zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjZS0tbGcpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG42LiBJbmZvcm1hdGlvbiAtIFNwbGl0IHN0eWxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQuaW5mb3JtYXRpb24uc3BsaXQtc3R5bGUsXG4uYmxvY2stLWNhcmQuaW5mb3JtYXRpb24uc3BsaXQtc3R5bGUge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwidGl0bGUgYm9keVwiXG4gICAgXCJzb3J0aW5nIGJvZHlcIlxuICAgIFwidGVybXMgYm9keVwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIGF1dG8gYXV0bztcbiAgYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuXG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgYmx1ZS1iZztcblxuICAgIGdyaWQtYXJlYTogdGl0bGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1sZykgdmFyKC0tc3BhY2UtLWxnKTtcblxuICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pIHtcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgLnNvcnRpbmctdGVybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBncmlkLWFyZWE6IHNvcnRpbmc7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgfVxuXG4gIC50YXhvbm9teS10ZXJtcyB7XG4gICAgZ3JpZC1hcmVhOiB0ZXJtcztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICB9XG5cbiAgLmJvZHkge1xuICAgIGdyaWQtYXJlYTogYm9keTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNy4gU2ltcGxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQuc2ltcGxlLFxuLmJsb2NrLS1jYXJkLnNpbXBsZSB7XG4gIEBpbmNsdWRlIGxpZ2h0ZXN0LWdyYXktYmc7XG5cbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgYmx1ZS1iZztcblxuICAgIG9yZGVyOiAxO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1sZyk7XG5cbiAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJvZHkge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1sZyk7XG4gIH1cbn1cblxuLmRhcmstbW9kZSB7XG4gIC5jYXJkLnNpbXBsZSxcbiAgLmJsb2NrLS1jYXJkLnNpbXBsZSB7XG4gICAgQGluY2x1ZGUgZ3JheS1iZztcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuOC4gU29saWQgcm91bmRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2FyZC5zb2xpZC1yb3VuZCxcbi5ibG9jay0tY2FyZC5zb2xpZC1yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNlLS0yeGwpO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gIGEge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAudGl0bGUge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYmxvY2tfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1sZykgdmFyKC0tc3BhY2UtLWxnKSAwO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ibGFjayk7XG4gICAgfVxuICB9XG5cbiAgLmltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgb3JkZXI6IDI7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1zcGFjZS0tMnhsKSB2YXIoLS1zcGFjZS0tMnhsKSAwO1xuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCB2YXIoLS1zcGFjZS0tMnhsKSAwO1xuICAgICAgb3BhY2l0eTogMjUlO1xuICAgIH1cbiAgfVxuXG4gIC5ib2R5IHtcbiAgICBtYXgtd2lkdGg6IDIzcmVtO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCkgdmFyKC0tc3BhY2UtLWxnKSAwO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS0tbGcpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgICB9XG5cbiAgICAuYnV0dG9uLndoaXRlLFxuICAgIC5jdGEud2hpdGUge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gICAgfVxuICB9XG5cbiAgJi5ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG5cbiAgICAudGl0bGUge1xuICAgICAgLmJsb2NrX190aXRsZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ib2R5IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTQwKTtcblxuICAgICAgYS5idXR0b24ud2hpdGUsXG4gICAgICAuY3RhLndoaXRlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgICAudGl0bGUge1xuICAgICAgLmJsb2NrX190aXRsZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYm9keSB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmVlbi0tZGFya2VyLS0yMCk7XG5cbiAgICAgIGEuYnV0dG9uLndoaXRlLFxuICAgICAgLmN0YS53aGl0ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjkuIFRpbGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2FyZC50aWxlLFxuLmJsb2NrLS1jYXJkLnRpbGUge1xuICBAaW5jbHVkZSBsaWdodC1ibHVlLWJnO1xuXG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNlLS0yeGwpO1xuXG4gIGEge1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2UtLTJ4bCk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2UtLTJ4bCk7XG4gICAgICAgIG91dGxpbmU6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvcmRlcjogMTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLS1tZCk7XG4gICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1zcGFjZS0tMnhsKSAwIDA7XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb2JqZWN0LWZpdDogc2NhbGUtZG93bjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogNi4yNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG9wYWNpdHk6IDI1JTtcbiAgICB9XG4gIH1cblxuICAudGF4b25vbXktdGVybXMge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLXhzKTtcblxuICAgIC50YXhvbm9teS10ZXJtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0teHMpIHZhcigtLXNwYWNlLS14cyk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIC5ibG9ja19fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tNDApO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTJ4bCk7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgICAgIH1cblxuICAgICAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSkge1xuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBGb290ZXJzIC0gU2l0ZSBmb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBQcmludFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zaXRlLWZvb3RlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IHZhcigtLXNwYWNlLS1zbSkgMWZyIHZhcigtLXNwYWNlLS1zbSkgMWZyIHZhcigtLXNwYWNlLS1zbSlcbiAgICAgIDFmciB2YXIoLS1zcGFjZS0tc20pO1xuICAgIC1tcy1ncmlkLXJvd3M6IGF1dG8gYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCIuIGZvb3Rlcl9sZWZ0IC4gZm9vdGVyX2NlbnRlciAuIGZvb3Rlcl9yaWdodCAuXCJcbiAgICAgIFwiLiBmb290ZXJfYm90dG9tIGZvb3Rlcl9ib3R0b20gZm9vdGVyX2JvdHRvbSBmb290ZXJfYm90dG9tIGZvb3Rlcl9ib3R0b20gLlwiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpcbiAgICAgIHZhcigtLXNwYWNlLS1zbSkgMWZyIHZhcigtLXNwYWNlLS1zbSkgMWZyIHZhcigtLXNwYWNlLS1zbSlcbiAgICAgIDFmciB2YXIoLS1zcGFjZS0tc20pO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMWZyICh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDMpIHZhcigtLXNwYWNlLS1zbSlcbiAgICAgICh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDMpIHZhcigtLXNwYWNlLS1zbSlcbiAgICAgICh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDMpIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAodmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCkgLyAzKSB2YXIoXG4gICAgICAgIC0tc3BhY2UtLXNtXG4gICAgICApICh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDMpIHZhcigtLXNwYWNlLS1zbSkgKFxuICAgICAgICB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDNcbiAgICAgICkgMWZyO1xuICB9XG4gIGRpc3BsYXk6IC1tcy1ncmlkO1xuICBkaXNwbGF5OiBncmlkO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbGcpIDA7XG5cbiAgLW1zLWdyaWQtY29sdW1uczogdmFyKC0tZ3JpZC1jb2x1bW5zLS1zbSk7XG4gIC1tcy1ncmlkLXJvd3M6IGF1dG8gdmFyKC0tc3BhY2UtLXNtKSBhdXRvIHZhcigtLXNwYWNlLS1zbSkgYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICBcIi4gZm9vdGVyX2xlZnQgICAuXCJcbiAgICBcIi4gLi4uLi4uLi4uLi4uLiAuXCJcbiAgICBcIi4gZm9vdGVyX2NlbnRlciAuXCJcbiAgICBcIi4gLi4uLi4uLi4uLi4uLiAuXCJcbiAgICBcIi4gZm9vdGVyX3JpZ2h0ICAuXCJcbiAgICBcIi4gZm9vdGVyX2JvdHRvbSAuXCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tZ3JpZC1jb2x1bW5zLS1zbSk7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byB2YXIoLS1zcGFjZS0tc20pIGF1dG8gdmFyKC0tc3BhY2UtLXNtKSBhdXRvO1xuXG4gIC5ibG9jay10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC5yZWdpb24tLWZvb3Rlcl9sZWZ0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICB9XG5cbiAgICBncmlkLWFyZWE6IGZvb3Rlcl9sZWZ0O1xuICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gIH1cblxuICAucmVnaW9uLS1mb290ZXJfY2VudGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgLW1zLWdyaWQtY29sdW1uOiA0O1xuICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgICB9XG5cbiAgICBncmlkLWFyZWE6IGZvb3Rlcl9jZW50ZXI7XG4gICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgIC1tcy1ncmlkLXJvdzogMztcbiAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgfVxuXG4gIC5yZWdpb24tLWZvb3Rlcl9yaWdodCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogNjtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgLW1zLWdyaWQtcm93OiAxO1xuICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gICAgfVxuXG4gICAgZ3JpZC1hcmVhOiBmb290ZXJfcmlnaHQ7XG4gICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgIC1tcy1ncmlkLXJvdzogNTtcbiAgICAtbXMtZ3JpZC1yb3ctc3BhbjogMTtcbiAgfVxuXG4gIC5yZWdpb24tLWZvb3Rlcl9ib3R0b20ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNTtcbiAgICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgIH1cblxuICAgIGdyaWQtYXJlYTogZm9vdGVyX2JvdHRvbTtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiA2O1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICB9XG5cbiAgLnNvY2lhbC1tZWRpYS1saW5rcyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLmJsb2NrLS1tZW51IC5tZW51IGxpIHtcbiAgICAmID4gYVthcmlhLWN1cnJlbnQ9XCJwYWdlXCJdIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXNlbWlib2xkKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gUHJpbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFnZS1mb290ZXIge1xuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogTGF5b3V0cyAtIE1ham9ycyBwYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblNlbWkgZGVwcmVjYXRlZCwgY2FuIGJlIHJlbW92ZWQgd2hlbiBhbGwgbWFqb3JzIHBhZ2VzIGhhdmUgYmVlbiBzd2l0Y2hlZFxudG8gbmV3IHZlcnNpb24uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dC0tbWFqb3JzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gID4gLmxheW91dF9fcmVnaW9uIHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgfVxuXG4gID4gLmxheW91dF9fcmVnaW9uLS1zYW1wbGUtam9icyB7XG4gICAgQGluY2x1ZGUgYmx1ZS1iZztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCkgdmFyKC0tc3BhY2UtLWxnKTtcbiAgICB9XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbGcpIHZhcigtLXNwYWNlLS14cyk7XG5cbiAgICB1bCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIH1cbiAgfVxuXG4gID4gLnJpZ2h0LXNpZGUtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMSA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgfVxuICB9XG5cbiAgPiAubGF5b3V0X19yZWdpb24tLWNhdGFsb2cge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gIH1cblxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tcmVsYXRlZC1tYWpvcnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICB9XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxuXG4gID4gLmxheW91dF9fcmVnaW9uLS1kZXBhcnRtZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICB9XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxufVxuXG4uYmxvY2stLW5vZGVtYWpvcnRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYmxvY2stLW5vZGVtYWpvcmZpZWxkLWRlZ3JlZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuXG4udmlldy0tbWFqb3JzLWxpc3Qge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gIH1cbn1cblxuLyogSW5kaXZpZHVhbCBtYWpvciAqL1xuLnBhZ2Utbm9kZS10eXBlLW1ham9yIHtcbiAgI2Jsb2NrLXBhZ2V0aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5sYXlvdXQtLW1ham9ycyB7XG4gICAgLmxheW91dF9fcmVnaW9uLS1yZWxhdGVkLW1ham9ycyxcbiAgICAubGF5b3V0X19yZWdpb24tLXNhbXBsZS1qb2JzLFxuICAgIC5sYXlvdXRfX3JlZ2lvbi0tZGVwYXJ0bWVudCB7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5VdGlsaXRpZXMgLSBGb250IEZhbWlsaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL21hdGVyaWFsLWljb25zLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZpcmEgU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnRmlyYSBTYW5zIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnRmlyYVNhbnMtTGlnaHRJdGFsaWMnKSwgdXJsKC4uL2ZvbnRzL2ZpcmEtc2Fucy1saWdodC1pdGFsaWMud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRmlyYSBTYW5zJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdGaXJhIFNhbnMgSXRhbGljJyksIGxvY2FsKCdGaXJhU2Fucy1JdGFsaWMnKSwgdXJsKC4uL2ZvbnRzL2ZpcmEtc2Fucy1pdGFsaWMud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRmlyYSBTYW5zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdGaXJhIFNhbnMgTGlnaHQnKSwgbG9jYWwoJ0ZpcmFTYW5zLUxpZ2h0JyksIHVybCguLi9mb250cy9maXJhLXNhbnMtbm9ybWFsLTMwMC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGaXJhIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0ZpcmEgU2FucyBSZWd1bGFyJyksIGxvY2FsKCdGaXJhU2Fucy1SZWd1bGFyJyksIHVybCguLi9mb250cy9maXJhLXNhbnMtbm9ybWFsLTQwMC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGaXJhIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHNyYzogbG9jYWwoJ0ZpcmEgU2FucyBTZW1pQm9sZCcpLCBsb2NhbCgnRmlyYVNhbnMtU2VtaUJvbGQnKSwgdXJsKC4uL2ZvbnRzL2ZpcmEtc2Fucy1ub3JtYWwtNjAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZpcmEgU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnRmlyYSBTYW5zIEJvbGQnKSwgbG9jYWwoJ0ZpcmFTYW5zLUJvbGQnKSwgdXJsKC4uL2ZvbnRzL2ZpcmEtc2Fucy1ub3JtYWwtNzAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGaXJhIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHNyYzogbG9jYWwoJ0ZpcmEgU2FucyBCbGFjaycpLCBsb2NhbCgnRmlyYVNhbnMtQmxhY2snKSwgdXJsKC4uL2ZvbnRzL2ZpcmEtc2Fucy1ub3JtYWwtOTAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGaXJhIFNhbnMgRXh0cmEgQ29uZGVuc2VkJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdGaXJhIFNhbnMgRXh0cmEgQ29uZGVuc2VkIExpZ2h0JyksIGxvY2FsKCdGaXJhU2Fuc0V4dHJhQ29uZGVuc2VkLUxpZ2h0JyksIHVybCguLi9mb250cy9maXJhLXNhbnMtZXh0cmEtY29uZGVuc2VkLTMwMC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGaXJhIFNhbnMgRXh0cmEgQ29uZGVuc2VkJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdGaXJhIFNhbnMgRXh0cmEgQ29uZGVuc2VkIFJlZ3VsYXInKSwgbG9jYWwoJ0ZpcmFTYW5zRXh0cmFDb25kZW5zZWQtUmVndWxhcicpLCB1cmwoLi4vZm9udHMvZmlyYS1zYW5zLWV4dHJhLWNvbmRlbnNlZC00MDAud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnTW9udHNlcnJhdCBCb2xkJyksIGxvY2FsKCdNb250c2VycmF0LUJvbGQnKSwgdXJsKC4uL2ZvbnRzL21vbnRzZXJyYXQtNzAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHNyYzogbG9jYWwoJ01vbnRzZXJyYXQgQmxhY2snKSwgbG9jYWwoJ01vbnRzZXJyYXQtQmxhY2snKSwgdXJsKC4uL2ZvbnRzL21vbnRzZXJyYXQtOTAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1BUIFNlcmlmJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdQVCBTZXJpZicpLCBsb2NhbCgnUFRTZXJpZi1SZWd1bGFyJyksIHVybCguLi9mb250cy9wdC1zZXJpZi00MDAud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1BUIFNlcmlmIEJvbGQnKSwgbG9jYWwoJ1BUU2VyaWYtQm9sZCcpLCB1cmwoLi4vZm9udHMvcHQtc2VyaWYtNzAwLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4gRHlzbGV4aWMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCcuLi9mb250cy9PcGVuRHlzbGV4aWMzLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F0a2luc29uIEh5cGVybGVnaWJsZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F0a2luc29uLUh5cGVybGVnaWJsZS1SZWd1bGFyLTEwMmEud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F0a2luc29uIEh5cGVybGVnaWJsZSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F0a2luc29uLUh5cGVybGVnaWJsZS1Cb2xkLTEwMmEud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F0a2luc29uIEh5cGVybGVnaWJsZSc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0F0a2luc29uLUh5cGVybGVnaWJsZS1JdGFsaWMtMTAyYS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXRraW5zb24gSHlwZXJsZWdpYmxlJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybCgnLi4vZm9udHMvQXRraW5zb24tSHlwZXJsZWdpYmxlLUJvbGRJdGFsaWMtMTAyYS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5WQVJJQUJMRVNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBDb2xvclxuICBhLiBCcmFuZFxuICBiLiBTcGVjaWFsIHVzZVxuICBjLiBSR0IgdmFsdWVzXG4gIGQuIEdyYWRpZW50c1xuMi4gVHlwb2dyYXBoeVxuICBhLiBGb250IGZhbWlsaWVzXG4gIGIuIEZvbnQgd2VpZ2h0c1xuMy4gUGFnZSBsYXlvdXRcbiAgYS4gU3BhY2luZ1xuICBiLiBDb250ZW50IGFyZWFzXG4gIGMuIENvbnRlbnQgYXJlYSBncmlkc1xuNC4gRGVjb3JhdGlvblxuICBhLiBCb3JkZXJzIGFuZCBvdXRsaW5lc1xuICBiLiBTaGFkb3dzXG4gIGMuIEljb25zXG4gIGQuIFRvZ2dsZXNcbiAgZS4gTG9nb1xuICBmLiBGb3Jtc1xuZS4gTG9nb1xuICA1LiBBbmltYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBCcmVha3BvaW50cywgd2hpY2ggZG9uJ3QgbWVzaCB3ZWxsIHdpdGggQ1NTIHZhcmlhYmxlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJHNtYWxsOiA1ODBweDtcbiRtZWRpdW06IDk1MHB4O1xuJGxhcmdlOiAxMzAwcHg7XG5cbjpyb290IHtcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBDb2xvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIGEuIEJyYW5kIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLWJsYWNrOiAjMjYyYjJmO1xuLS1ncmF5LS1kYXJrZXItLTgwOiAjMTQxODFiO1xuLS1ncmF5LS1kYXJrZXItLTYwOiAjMjkzMDM2O1xuLS1ncmF5LS1kYXJrZXItLTQwOiAjM2Q0OTUwO1xuLS1ncmF5LS1kYXJrZXItLTIwOiAjNTI2MTZiO1xuLS1ncmF5OiAjNjY3OTg2O1xuLS1ncmF5LS1saWdodGVyLS0yMDogIzgzOTRhMDtcbi0tZ3JheS0tbGlnaHRlci0tNDA6ICNhMmFmYjg7XG4tLWdyYXktLWxpZ2h0ZXItLTYwOiAjYzFjYWQwOyAvLyByZXBsYWNlcyAkbGlnaHQtZ3JheVxuLS1ncmF5LS1saWdodGVyLS04MDogI2UwZTRlNzsgLy8gcmVwbGFjZXMgJGxpZ2h0ZXN0LWdyYXlcbi0tZ3JheS0tbGlnaHRlci0tOTA6ICNmMGYyZjM7XG4tLXdoaXRlOiAjZmZmO1xuXG4tLWRhcmstYmx1ZS0tZGFya2VyLS04MDogIzAwMGQxYjtcbi0tZGFyay1ibHVlLS1kYXJrZXItLTYwOiAjMDAxOTM2O1xuLS1kYXJrLWJsdWUtLWRhcmtlci0tNDA6ICMwMDI2NTE7XG4tLWRhcmstYmx1ZS0tZGFya2VyLS0yMDogIzAwMzI2YzsgLy8gcmVwbGFjZXMgJGRhcmtlc3QtYmx1ZVxuLS1kYXJrLWJsdWU6ICMwMDNmODc7XG4tLWRhcmstYmx1ZS0tbGlnaHRlci0tMjA6ICMwMDYyZDI7XG4tLWRhcmstYmx1ZS0tbGlnaHRlci0tNDA6ICMxZTg3ZmY7XG4tLWRhcmstYmx1ZS0tbGlnaHRlci0tNjA6ICM2OWFmZmY7IC8vIHJlcGxhY2VzICRsaWdodC1iZy1ibHVlXG4tLWRhcmstYmx1ZS0tbGlnaHRlci0tODA6ICNiNGQ3ZmY7IC8vIHJlcGxhY2VzICRsaWdodGVzdC1iZy1ibHVlXG5cbi0tYmx1ZS0tZGFya2VyLS04MDogIzAwMTgyODtcbi0tYmx1ZS0tZGFya2VyLS02MDogIzAwMzE1MDtcbi0tYmx1ZS0tZGFya2VyLS00MDogIzAwNDk3ODsgLy8gcmVwbGFjZXMgJGxpbmstYmx1ZS0tZGFya2VyXG4tLWJsdWUtLWRhcmtlci0tMjA6ICMwMDYyYTA7IC8vIHJlcGxhY2VzICRsaW5rLWJsdWVcbi0tYmx1ZTogIzAwN2FjODtcbi0tYmx1ZS0tbGlnaHRlci0tMjA6ICMwNzllZmY7XG4tLWJsdWUtLWxpZ2h0ZXItLTQwOiAjNDViNmZmOyAvLyByZXBsYWNlcyAkbGlnaHQtYmx1ZVxuLS1ibHVlLS1saWdodGVyLS02MDogIzgzY2ZmZjtcbi0tYmx1ZS0tbGlnaHRlci0tODA6ICNjMWU3ZmY7XG5cbi0tZGFyay1ncmVlbi0tZGFya2VyLS04MDogIzAwMTUwZDtcbi0tZGFyay1ncmVlbi0tZGFya2VyLS02MDogIzAwMmIxOTtcbi0tZGFyay1ncmVlbi0tZGFya2VyLS00MDogIzAwNDAyNjtcbi0tZGFyay1ncmVlbi0tZGFya2VyLS0yMDogIzAwNTYzMjtcbi0tZGFyay1ncmVlbjogIzAwNmIzZjtcbi0tZGFyay1ncmVlbi0tbGlnaHRlci0tMjA6ICMzMzg5NjU7XG4tLWRhcmstZ3JlZW4tLWxpZ2h0ZXItLTQwOiAjNjZhNjhjO1xuLS1kYXJrLWdyZWVuLS1saWdodGVyLS02MDogIzk5YzRiMjtcbi0tZGFyay1ncmVlbi0tbGlnaHRlci0tODA6ICNjY2UxZDk7XG5cbi0tZ3JlZW4tLWRhcmtlci0tODA6ICMwZjFhMDY7XG4tLWdyZWVuLS1kYXJrZXItLTYwOiAjMWUzNDBjO1xuLS1ncmVlbi0tZGFya2VyLS00MDogIzJjNGUxMjtcbi0tZ3JlZW4tLWRhcmtlci0tMjA6ICMzYjY4MTg7XG4tLWdyZWVuOiAjNGE4MjFlO1xuLS1ncmVlbi0tbGlnaHRlci0tMjA6ICM2ZTliNGI7XG4tLWdyZWVuLS1saWdodGVyLS00MDogIzkyYjQ3ODsgLy8gcG9zc2libHkgcmVwbGFjZXMgJGRhcmstZ3JlZW5cbi0tZ3JlZW4tLWxpZ2h0ZXItLTYwOiAjYjdjZGE1O1xuLS1ncmVlbi0tbGlnaHRlci0tODA6ICNkYmU2ZDI7XG5cbi0tbGlnaHQtZ3JlZW4tLWRhcmtlci0tODA6ICMyNTJiMDI7XG4tLWxpZ2h0LWdyZWVuLS1kYXJrZXItLTYwOiAjNGE1NjA0O1xuLS1saWdodC1ncmVlbi0tZGFya2VyLS00MDogIzcwODIwNjtcbi0tbGlnaHQtZ3JlZW4tLWRhcmtlci0tMjA6ICM5NWFkMDg7XG4tLWxpZ2h0LWdyZWVuOiAjYmFkODBhO1xuLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjA6ICNjOGUwM2I7XG4tLWxpZ2h0LWdyZWVuLS1saWdodGVyLS00MDogI2Q2ZTg2YzsgLy9yZXBsYWNlcyAkbGlnaHRlc3QtZ3JlZW5cbi0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTYwOiAjZTNlZjlkO1xuLS1saWdodC1ncmVlbi0tbGlnaHRlci0tODA6ICNmMWY3Y2U7XG5cbi8qIGIuIFNwZWNpYWwgdXNlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLXJlZDogI2NjMmQzMDtcblxuLS15ZWxsb3c6ICNmZmM2MWU7XG4tLXllbGxvdy0tbGlnaHRlci0tNDA6ICNmZmUzOGY7XG5cbi0tcHVycGxlLS1saWdodGVyLS04MDogI2ViY2ZlZTtcbi0tcHVycGxlLS1saWdodGVyLS02MDogI2Q3OWZkYztcbi0tcHVycGxlLS1saWdodGVyLS00MDogI2MyNmZjYjtcbi0tcHVycGxlLS1saWdodGVyLS0yMDogI2FlM2ZiOTtcbi0tcHVycGxlOiAjOWEwZmE4O1xuXG4vKiBjLiBSR0IgVmFsdWVzIChmb3IgZWFzeSB1c2Ugd2l0aCByZ2JhL3RyYW5zcGFyZW5jeSwgYWRkZWQgb25seSBhcyBuZWVkZWQpIC0qL1xuLS1ibGFjay0tcmdiOiAyOCwgMzIsIDM1O1xuLS1ibHVlLS1yZ2I6IDAsIDEyMiwgMjAwO1xuLS1kYXJrLWJsdWUtLWRhcmtlci0tNDAtLXJnYjogMCwgMzgsIDgxO1xuLS1ncmVlbi0tcmdiOiA5MywgMTYyLCAzNztcbi0tbGlnaHQtZ3JlZW4tLXJnYjogMTg2LCAyMTYsIDEwO1xuLS1yZWQtLXJnYjogMjA0LCA0NSwgNDg7XG4tLXllbGxvdy0tcmdiOiAyNTUsIDE5OCwgMzA7XG4tLXdoaXRlLS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG5cbi8qIGQuIEdyYWRpZW50cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLWdyYWRpZW50LS12ZXJ0aWNhbC0tbGlnaHQtYmx1ZTogbGluZWFyLWdyYWRpZW50KFxuICB0byBib3R0b20sXG4gIHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKSAwLFxuICB2YXIoLS1ibHVlLS1saWdodGVyLS02MCkgMTAwJVxuKTtcblxuLS1ncmFkaWVudC0tdmVydGljYWwtLWRhcmstYmx1ZTogbGluZWFyLWdyYWRpZW50KFxuICB0byBib3R0b20sXG4gIHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCkgMCxcbiAgdmFyKC0tZGFyay1ibHVlKSAxMDAlXG4pO1xuXG4tLWdyYWRpZW50LS12ZXJ0aWNhbC0tbGlnaHQtZ3JlZW46IGxpbmVhci1ncmFkaWVudChcbiAgdG8gYm90dG9tLFxuICB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApIDAsXG4gIHZhcigtLWxpZ2h0LWdyZWVuKSAxMDAlXG4pO1xuXG4tLWdyYWRpZW50LS12ZXJ0aWNhbC0tYmx1ZS10by1kYXJrLWJsdWU6IGxpbmVhci1ncmFkaWVudChcbiAgdG8gYm90dG9tLFxuICB2YXIoLS1ibHVlKSxcbiAgcmdiYSh2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDAtLXJnYiksIDAuOSlcbik7XG5cbi0tZ3JhZGllbnQtLWhvcml6b250YWwtLWRhcmstYmx1ZS10by10cmFuc3BhcmVudDogbGluZWFyLWdyYWRpZW50KFxuICB0byByaWdodCxcbiAgcmdiYSh2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDAtLXJnYiksIDEpIDAlLFxuICByZ2JhKHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MC0tcmdiKSwgMC41KSAxMDAlXG4pO1xuXG4tLWdyYWRpZW50LS1kaWFnb25hbC0tYmx1ZS10by1kYXJrLWJsdWU6IGxpbmVhci1ncmFkaWVudChcbiAgdG8gcmlnaHQgYm90dG9tLFxuICAjMDAyZjVlLFxuICAjMDAzMjY2LFxuICAjMDAzNTZkLFxuICAjMDAzODc1LFxuICAjMDAzYjdkLFxuICAjMDA0MTg2LFxuICAjMDE0NzhlLFxuICAjMDA0ZDk3LFxuICAjMDA1OGEzLFxuICAjMDA2M2IwLFxuICAjMDA2ZWJjLFxuICAjMDA3YWM4XG4pO1xuLS1ncmFkaWVudC0tZGlhZ29uYWwtLWRhcmstYmx1ZS10by1ibGFjazogbGluZWFyLWdyYWRpZW50KFxuICB0byBsZWZ0IGJvdHRvbSxcbiAgIzFjMjAyMyxcbiAgIzE4MjQyZCxcbiAgIzEyMjczOCxcbiAgIzBhMmE0NCxcbiAgIzAyMmQ0ZixcbiAgIzAwMzM1YyxcbiAgIzAxM2E2OSxcbiAgIzA0NDA3NyxcbiAgIzA3NGU4YixcbiAgIzA4NWM5ZixcbiAgIzA2NmJiMyxcbiAgIzAwN2FjOFxuKTtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBhLiBGb250IGZhbWlsaWVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLS1mb250LS1zYW5zLXNlcmlmOiBcIkZpcmEgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuLS1mb250LS1zZXJpZjogXCJQVCBTZXJpZlwiLCBzZXJpZjtcbi0tZm9udC0taHlwZXJsZWdpYmxlOiBcIkF0a2luc29uIEh5cGVybGVnaWJsZVwiLCBzYW5zLXNlcmlmO1xuLS1mb250LS1keXNsZXhpYS1mcmllbmRseTogXCJPcGVuIER5c2xleGljXCIsIHNhbnMtc2VyaWY7XG4tLWZvbnQtLXRpdGxlOiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbi0tZm9udC0tY29uZGVuc2VkOiBcIkZpcmEgU2FucyBFeHRyYSBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcblxuLyogYi4gRm9udCB3ZWlnaHRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi0tZm9udC13ZWlnaHQtLWxpZ2h0OiAzMDA7XG4tLWZvbnQtd2VpZ2h0LS1yZWd1bGFyOiA0MDA7XG4tLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZDogNjAwO1xuLS1mb250LXdlaWdodC0tYm9sZDogNzAwO1xuLS1mb250LXdlaWdodC0tYmxhY2s6IDkwMDtcblxuLyogYy4gRm9udCBzaXplcyAobW9zdGx5IGJhc2VkIG9uIG1ham9yIHNlY29uZCBzY2FsZSkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi0tZm9udC1zaXplLS14czogMC42ZW07XG4tLWZvbnQtc2l6ZS0tc206IDAuOWVtO1xuLS1mb250LXNpemUtLW1kOiAxZW07XG4tLWZvbnQtc2l6ZS0tbGc6IDEuMTI1ZW07XG4tLWZvbnQtc2l6ZS0teGw6IDEuMjY2ZW07XG4tLWZvbnQtc2l6ZS0tMnhsOiAxLjQyNGVtO1xuLS1mb250LXNpemUtLTN4bDogMS42MDJlbTtcbi0tZm9udC1zaXplLS00eGw6IDEuODAyZW07XG4tLWZvbnQtc2l6ZS0tNXhsOiAyLjAyN2VtO1xuLS1mb250LXNpemUtLTZ4bDogMi4yODFlbTtcbi0tZm9udC1zaXplLS03eGw6IDIuNTY2ZW07XG4tLWZvbnQtc2l6ZS0tOHhsOiAzLjY1M2VtO1xuLS1mb250LXNpemUtLTl4bDogNC4xMWVtO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gUGFnZSBsYXlvdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBhLiBTcGFjaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLS1zcGFjZS0tMnhzOiAwLjI1cmVtO1xuLS1zcGFjZS0teHM6IDAuNXJlbTtcbi0tc3BhY2UtLXNtOiAwLjc1cmVtO1xuLS1zcGFjZS0tbWQ6IDFyZW07XG4tLXNwYWNlLS1sZzogMS41cmVtO1xuLS1zcGFjZS0teGw6IDJyZW07XG4tLXNwYWNlLS0yeGw6IDNyZW07XG4tLXNwYWNlLS0zeGw6IDRyZW07XG5cbi8qIGIuIENvbnRlbnQgYXJlYXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi0tY29udGVudC1hcmVhLW1heC13aWR0aDogNjByZW07IC8vIHJlcGxhY2VzICRtYXgtY29udGVudC13aWR0aFxuLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoLS1zbTogNDByZW07XG5cbi8qIGMuIENvbnRlbnQgYXJlYSBncmlkcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi0tZ3JpZC1jb2x1bW5zLS1zbTogdmFyKC0tc3BhY2UtLXNtKSAxZnIgdmFyKC0tc3BhY2UtLXNtKTtcbi0tZ3JpZC1jb2x1bW5zLS1sZzogMWZyIHZhcigtLWNvbnRlbnQtYXJlYS1tYXgtd2lkdGgpIDFmcjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjQuIERlY29yYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBhLiBCb3JkZXJzIGFuZCBvdXRsaW5lcy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLS1ib3JkZXItd2lkdGgtLXNtOiAwLjA2MjVyZW07IC8vIHJlcGxhY2VzICRib3JkZXItd2lkdGgtLXRoaW5uZXJcbi0tYm9yZGVyLXdpZHRoLS1tZDogMC4xMjVyZW07IC8vIHJlcGxhY2VzICRib3JkZXItd2lkdGhcbi0tYm9yZGVyLXdpZHRoLS1sZzogMC4xODc1cmVtOyAvLyByZXBsYWNlcyAkYm9yZGVyLXdpZHRoLS10aGlja2VyXG4tLWJvcmRlci1yYWRpdXMtLXJvdW5kZXN0OiA2LjI1cmVtO1xuLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVyOiAwLjYyNXJlbTtcbi0tYm9yZGVyLXJhZGl1cy0tcm91bmQ6IDAuMTI1cmVtO1xuXG4vKiBiLiBTaGFkb3dzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLS1zaGFkb3ctLWhhcmQ6IDAgMC4wNjI1cmVtIDAuMTg3NXJlbSByZ2JhKDAsIDAsIDAsIDAuNCksMCAwLjA2MjVyZW0gMC4xMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjUpO1xuLS1zaGFkb3ctLXNvZnQ6IDAgMC4xODc1cmVtIDAuMzc1cmVtIHJnYmEoMCwgMCwgMCwgMC4xNiksXG4gIDAgMC4xODc1cmVtIDAuMzc1cmVtIHJnYmEoMCwgMCwgMCwgMC4yMyk7XG4tLXNoYWRvdy0tc29mdC0taG92ZXI6IDAgMC4wNjI1cmVtIDAuMTg3NXJlbSByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAwIDAuMDYyNXJlbSAwLjEyNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuLS1zaGFkb3ctLWRhcmstbW9kZTogMCAwLjE4NzVyZW0gMC4zNzVyZW0gcmdiYSgwLCAxMjIsIDIwMCwgMC43KSxcbiAgMCAwLjE4NzVyZW0gMC4zNzVyZW0gcmdiYSgwLCA2MywgMTM1LCAwLjkpO1xuLS1zaGFkb3ctLWRhcmstbW9kZS0taG92ZXI6IDAgMC4wNjI1cmVtIDAuMTg3NXJlbSByZ2JhKDAsIDEyMiwgMjAwLCAwLjEyKSxcbiAgMCAwLjA2MjVyZW0gMC4xMjVyZW0gcmdiYSgwLCA2MywgMTM1LCAwLjI0KTtcblxuLyogYy4gSWNvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi0taWNvbi1zaXplLS14czogMS4xMjVyZW07XG4tLWljb24tc2l6ZS0tc206IDEuNXJlbTtcbi0taWNvbi1zaXplLS1tZDogMi4yNXJlbTsgLy8gcmVwbGFjZXMgJGljb24tc2l6ZVxuLS1pY29uLXNpemUtLWxnOiAzcmVtO1xuXG4vKiBkLiBUb2dnbGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLS10b2dnbGUtc2l6ZS0tc206IDNyZW07IC8vcmVwbGFjZXMgJHRvZ2dsZS1zaXplXG4tLXRvZ2dsZS1zaXplLS1tZDogMy41cmVtO1xuLS10b2dnbGUtc2l6ZS0tbGc6IDQuNXJlbTtcbi0tdG9nZ2xlLXNpemUtLXhsOiA1LjVyZW07XG4tLXRvZ2dsZS1zaXplLS0yeGw6IDYuNXJlbTtcbi0tdG91Y2gtdGFyZ2V0LS1taW46IDQ0cHg7XG5cbi8qIGUuIExvZ28gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLWxvZ28tc2l6ZTogOHJlbTtcbi0tbG9nby0taG9yaXpvbnRhbC0td2lkdGg6IDI1cmVtO1xuLS1sb2dvLS1ob3Jpem9udGFsLS1oZWlnaHQ6IDYuMjVyZW07XG5cbi8qIGYuIEZvcm1zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLWNoZWNrYm94LXNpemU6IDFyZW07XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG41LiBBbmltYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4tLXRyYW5zaXRpb24tc3BlZWQtLXNsb3c6IDgwMG1zO1xuLS10cmFuc2l0aW9uLXNwZWVkLS1tZDogNDAwbXM7XG4tLXRyYW5zaXRpb24tc3BlZWQtLWZhc3Q6IDIwMG1zO1xuLS1lYXNlLS1zdGFuZGFyZDogZWFzZTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBPZmYgQ2FudmFzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNkcnVwYWwtb2ZmLWNhbnZhcyB7XG4gIGZvbnQtc2l6ZTogMC41ZW07XG59XG5cbiNkcnVwYWwtb2ZmLWNhbnZhcyB1bCB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgMDtcbn1cblxuI2RydXBhbC1vZmYtY2FudmFzIGEge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4jZHJ1cGFsLW9mZi1jYW52YXMgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHdpZHRoOiBpbml0aWFsO1xuICBoZWlnaHQ6IGluaXRpYWw7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiNkcnVwYWwtb2ZmLWNhbnZhcyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuI2RydXBhbC1vZmYtY2FudmFzIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmJlZm9yZSB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuI2RydXBhbC1vZmYtY2FudmFzIC5idXR0b24ge1xuICBtaW4td2lkdGg6IGluaXRpYWw7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogVGV4dCAtIFRheG9ub215IFRlcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi50YXhvbm9teS10ZXJtLFxuLmpvYi10aXRsZSxcbi5wcm9ub3VucyB7XG4gIEBpbmNsdWRlIGRhcmtlc3QtYmx1ZS1iZztcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCB2YXIoLS1zcGFjZS0tMnhzKSB2YXIoLS1zcGFjZS0tc20pIDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpXG4gICAgY3ViaWMtYmV6aWVyKDAuMzMsIDAuNjYsIDAuNjYsIDEpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLWJvbGQpO1xuICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogRm9ybXMgLSBVc2VyIExvZ2luXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51c2VyLWxvZ2luLWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gIC5jYXMtbG9naW4tbGluayB7XG4gICAgQGV4dGVuZCAuY3RhLCAuc3F1YXJlO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuXG4gIC5tYW51YWwtbG9naW4ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC50ZXh0ZmllbGQsXG4gIC5wYXNzd29yZCxcbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZGFyay1tb2RlIHtcbiAgLnVzZXItbG9naW4tZm9ybSB7XG4gICAgLmNhcy1sb2dpbi1saW5rOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKXtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBIb3Jpem9udGFsIFJ1bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaHIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1sZyk7XG4gIH1cbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgc29saWQgdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBQYXJhZ3JhcGhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBDdXN0b20gU3R5bGVzXG4yLiBEYXJrIE1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5wIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtLW1kKTtcbiAgbGluZS1oZWlnaHQ6IDEuN2VtO1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBDdXN0b20gU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmludHJvIHtcbiAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbn1cblxuLnRhZ2xpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1tZCk7XG4gIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5oMSB7XG4gICsgLnRhZ2xpbmUsXG4gIH4gZGl2IC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tM3hsKTtcbiAgfVxufVxuXG5oMiB7XG4gICsgLnRhZ2xpbmUsXG4gIH4gZGl2IC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgfVxufVxuXG5oMyB7XG4gICsgLnRhZ2xpbmUsXG4gIH4gZGl2IC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0teGwpO1xuICB9XG59XG5cbmg0IHtcbiAgKyAudGFnbGluZSxcbiAgfiBkaXYgLnRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gIH1cbn1cblxuaDUge1xuICArIC50YWdsaW5lLFxuICB+IGRpdiAudGFnbGluZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaHRtbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDFyZW0gKyAodmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCkgKiAwLjAwNSkpO1xuICB9XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1zYW5zLXNlcmlmKTtcbiAgZm9udC1zaXplOiBjYWxjKDFyZW0gKyAwLjV2dyk7XG5cbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuXG4gIEBtZWRpYSAocHJpbnQpIHtcbiAgICBmb250LXNpemU6IDEycHQ7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBMb2dvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sb2dvIHtcbiAgd2lkdGg6IHZhcigtLWxvZ28tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tbG9nby1zaXplKTtcblxuICAmLmhvcml6b250YWwge1xuICAgIHdpZHRoOiB2YXIoLS1sb2dvLS1ob3Jpem9udGFsLS13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1sb2dvLS1ob3Jpem9udGFsLS1oZWlnaHQpO1xuICB9XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBCdXR0b25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGhlc2UgYXJlIHRydWUgYnV0dG9ucy4gRm9yIGxpbmtzIHRoYXQgYXJlIHN0eWxlZCB0byBsb29rIHNpbWlsYXIgdG8gYnV0dG9ucyxcbnNlZSBBdG9tIC0gTGlua3MgLSBCdXR0b24gU3R5bGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYnV0dG9uLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCksXG4gICAgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCksXG4gICAgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLS1mYXN0KTtcbiAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSBvdXRzZXQgdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogZG90dGVkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiBjYWxjKC0xICogdmFyKC0tYm9yZGVyLXdpZHRoLS1sZykpO1xuXG4gICAgJjpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1zdHlsZTogaW5zZXQ7XG4gIH1cblxuICAmLmFsdCB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTIwKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIH1cbiAgfVxuXG4gICYud2FybmluZyB7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXllbGxvdy0tbGlnaHRlci0tNDApO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXllbGxvdyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0teWVsbG93LS1saWdodGVyLS00MCk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS0tZGFya2VyLS00MCk7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LS1saWdodGVyLS02MCk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5idXR0b24sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBUZXh0IC0gTGlua3MgLSBDYWxsIHRvIEFjdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5hLmJ1dHRvbixcbi5jdGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSkgdmFyKC0tc3BhY2UtLW1kKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCksXG4gICAgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCksXG4gICAgYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpLFxuICAgIGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVzdCk7XG4gIG91dGxpbmUtb2Zmc2V0OiBjYWxjKC0xICogdmFyKC0tYm9yZGVyLXdpZHRoLS1sZykpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLm1hdGVyaWFsLWljb25zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0LS1ob3Zlcik7XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB9XG4gIH1cblxuICAmLnNxdWFyZSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy0tcm91bmQpO1xuICB9XG5cbiAgJi5zbWFsbCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKSB2YXIoLS1zcGFjZS0tc20pO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgICB9XG4gIH1cblxuICAmLmxhcmdlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1sZyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTJ4bCk7XG4gIH1cblxuICAmLmxpZ2h0LWJsdWUge1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTYwKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdC0taG92ZXIpO1xuXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZGFyay1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcbiAgICB9XG4gIH1cblxuICAmLmxpZ2h0LWdyZWVuIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ncmVlbik7XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS02MCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcbiAgICB9XG4gIH1cblxuICAmLmdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuLS1kYXJrZXItLTQwKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdC0taG92ZXIpO1xuXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZGFyay1ncmVlbiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZGFyay1ncmVlbik7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tNjApO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0LS1ob3Zlcik7XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53aGl0ZSB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LS1saWdodGVyLS02MCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcblxuICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5vdXRsaW5lIHtcbiAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDApO1xuICAgIH1cblxuICAgICYubGlnaHQtYmx1ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTYwKTtcblxuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRhcmstYmx1ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcblxuICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuXG4gICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubGlnaHQtZ3JlZW4ge1xuICAgICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4pO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbik7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTYwKTtcblxuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmVlbiB7XG4gICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi0tZGFya2VyLS00MCk7XG5cbiAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kYXJrLWdyZWVuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZGFyay1ncmVlbik7XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tNjApO1xuXG4gICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYud2hpdGUge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0tbGlnaHRlci0tNjApO1xuXG4gICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgY29udGVudDogXCIgW1wiIGF0dHIoaHJlZikgXCJdIFwiO1xuICAgICAgZm9udC1zaXplOiAxMHB0O1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIFByaW50IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmEge1xuICBwYWRkaW5nOiAwLjE1NjNyZW0gMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpXG4gICAgICBjdWJpYy1iZXppZXIoMC4zMywgMC42NiwgMC42NiwgMSksXG4gICAgdGV4dC1kZWNvcmF0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpIGVhc2Utb3V0O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTYwKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4zMTI1cmVtO1xuICBjb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS0yMCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDA7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tc2VtaWJvbGQpO1xuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLXB1cnBsZSk7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogMC4yNXMgZWFzZS1vdXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS02MCk7XG4gICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLXZlcnRpY2FsLS1saWdodC1ibHVlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBkb3R0ZWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWJvcmRlci13aWR0aC0tbWQpO1xuICB9XG5cbiAgJlt0YXJnZXQ9XCJfYmxhbmtcIl0sXG4gICZbdGFyZ2V0PVwiYmxhbmtcIl0ge1xuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IHZhcigtLXNwYWNlLS1tZCkgLyAzO1xuICAgICAgbGVmdDogMC4xMjVyZW07XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5tcDRcIl0sXG4gICZbaHJlZiQ9XCIubW92XCJdLFxuICAmW2hyZWYkPVwiLmZsdlwiXSxcbiAgJltocmVmJD1cIi5tcGdcIl0sXG4gICZbaHJlZiQ9XCIubXBlZ1wiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAodmlkZW8pXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5tcDNcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKGF1ZGlvKVwiO1xuICAgIH1cbiAgfVxuXG4gICZbaHJlZiQ9XCIuYWlcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKElsbHVzdHJhdG9yKVwiO1xuICAgIH1cbiAgfVxuXG4gICZbaHJlZiQ9XCIuZHd0XCJdLFxuICAmW2hyZWYkPVwiLmNzc1wiXSxcbiAgJltocmVmJD1cIi54bWxcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKHdlYiBmaWxlKVwiO1xuICAgIH1cbiAgfVxuXG4gICZbaHJlZiQ9XCIucHNkXCJdIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChQaG90b3Nob3ApXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5lcHNcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFBvc3RTY3JpcHQpXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5pZFwiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoSW5EZXNpZ24pXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi53bXZcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFdNVilcIjtcbiAgICB9XG4gIH1cblxuICAmW2hyZWYkPVwiLnN3ZlwiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoRmxhc2gpXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5kb2NcIl0sXG4gICZbaHJlZiQ9XCIuZG9jeFwiXSxcbiAgJltocmVmJD1cIi5kb3RcIl0sXG4gICZbaHJlZiQ9XCIuZG9jbVwiXSxcbiAgJltocmVmJD1cIi5kb3R4XCJdLFxuICAmW2hyZWYkPVwiLmRvdG1cIl0sXG4gICZbaHJlZiQ9XCIub2R0XCJdIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChXb3JkKVwiO1xuICAgIH1cbiAgfVxuXG4gICZbaHJlZiQ9XCIucHB0XCJdLFxuICAmW2hyZWYkPVwiLnBwdHhcIl0sXG4gICZbaHJlZiQ9XCIucHB0bVwiXSxcbiAgJltocmVmJD1cIi5wb3R4XCJdLFxuICAmW2hyZWYkPVwiLnBvdG1cIl0sXG4gICZbaHJlZiQ9XCIucHBhbVwiXSxcbiAgJltocmVmJD1cIi5wcHN4XCJdLFxuICAmW2hyZWYkPVwiLnNsZHhcIl0sXG4gICZbaHJlZiQ9XCIuc2xkbVwiXSxcbiAgJltocmVmJD1cIi5vZHBcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFBvd2VyUG9pbnQpXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi54bHNcIl0sXG4gICZbaHJlZiQ9XCIueGxzeFwiXSxcbiAgJltocmVmJD1cIi54bHNiXCJdLFxuICAmW2hyZWYkPVwiLnhsdG1cIl0sXG4gICZbaHJlZiQ9XCIueGxhbVwiXSxcbiAgJltocmVmJD1cIi54bHR4XCJdLFxuICAmW2hyZWYkPVwiLm9kc1wiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoRXhjZWwpXCI7XG4gICAgfVxuICB9XG5cbiAgJltocmVmJD1cIi5wZGZcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFBERilcIjtcbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIFByaW50IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBwcmludCB7XG4gIHAgYSxcbiAgdWwgYSB7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKSAhaW1wb3J0YW50O1xuICB9XG4gIHAgYVtocmVmXj1cImh0dHBcIl06YWZ0ZXIsXG4gIHVsIGFbaHJlZl49XCJodHRwXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBbXCIgYXR0cihocmVmKSBcIl0gXCI7XG4gICAgZm9udC1zaXplOiAxMHB0O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogSWNvbnMgLSBNeSBXZXN0ZXJuIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm15LXdlc3Rlcm4taWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgc3ZnIHtcbiAgICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLXRvZ2dsZS1zaXplLS1tZCk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS14cyk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tZWFzZS1zdGFuZGFyZCkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCkgZmlsbDtcblxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICBmaWxsOiB2YXIoLS1ibGFjayk7XG4gICAgfVxuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5teS13ZXN0ZXJuLWljb24ge1xuICAgIHN2ZyB7XG4gICAgICBmaWxsOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogUGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5odG1sIHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IEljb25zIC0gSWNvbnMgd2l0aCBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBNb2RlXG4yLiBEaXNwbGF5IFByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24td2l0aC10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiB2YXIoLS10b2dnbGUtc2l6ZS0tbGcpO1xuICBoZWlnaHQ6IHZhcigtLXRvZ2dsZS1zaXplLS1sZyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tY29uZGVuc2VkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1saWdodCk7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG5cbiAgLmljb24tdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgfVxuXG4gICYuc21hbGwge1xuICAgIHdpZHRoOiB2YXIoLS10b2dnbGUtc2l6ZS0tbWQpO1xuICAgIGhlaWdodDogdmFyKC0tdG9nZ2xlLXNpemUtLW1kKTtcblxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tc20pO1xuICAgIH1cbiAgfVxuXG4gICYubWVkaXVtIHtcbiAgICB3aWR0aDogdmFyKC0tdG9nZ2xlLXNpemUtLXhsKTtcbiAgICBoZWlnaHQ6IHZhcigtLXRvZ2dsZS1zaXplLS14bCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLWxnKTtcblxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tbWQpO1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgd2lkdGg6IHZhcigtLXRvZ2dsZS1zaXplLS0yeGwpO1xuICAgIGhlaWdodDogdmFyKC0tdG9nZ2xlLXNpemUtLTJ4bCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTJ4bCk7XG5cbiAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNpemUtLWxnKTtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgTW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICAuc2ctcGF0dGVybi1leGFtcGxlIGEsXG4gIC5wYWdlLWNvbnRlbnQgYSB7XG4gICAgJi5pY29uLXdpdGgtdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICB9XG5cbiAgICAgICYuYmx1ZS1iZyxcbiAgICAgICYuZGFyay1ibHVlLWJnIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi53aGl0ZS1iZyB7XG4gICAgICAgIGNvbG9yOiAodmFyLS1ibHVlLS1kYXJrZXItLTIwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICh2YXItLWJsdWUtLWRhcmtlci0tMjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBEaXNwbGF5IFByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvbnQtLWR5c2xleGlhLWZyaWVuZGx5IHtcbiAgLmljb24td2l0aC10ZXh0IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkpO1xuICB9XG59XG5cbi5mb250LS1oeXBlcmxlZ2libGUge1xuICAuaWNvbi13aXRoLXRleHQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1oeXBlcmxlZ2libGUpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogQ29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zd2F0Y2gtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jb2xvci1zd2F0Y2gge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbWQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0teGwpO1xuXG4gIGgzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgJi5kYXJrLWJsdWUsXG4gICYuYmx1ZSxcbiAgJi5kYXJrLWdyZWVuLFxuICAmLmdyZWVuLFxuICAmLmJsYWNrLFxuICAmLmdyYXksXG4gICYucmVkIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuXG4gICAgaDMge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB9XG4gIH1cblxuICAmLmxpZ2h0LWdyZWVuLFxuICAmLndoaXRlLFxuICAmLnllbGxvdyB7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgfVxuICB9XG5cbiAgJi5kYXJrLWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG5cbiAgICAmLnRpbnQtODAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tbGlnaHRlci0tODApO1xuICAgIH1cbiAgICAmLnRpbnQtNjAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tbGlnaHRlci0tNjApO1xuICAgIH1cbiAgICAmLnRpbnQtNDAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tbGlnaHRlci0tNDApO1xuICAgIH1cbiAgICAmLnRpbnQtMjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlLS1saWdodGVyLS0yMCk7XG4gICAgfVxuICAgICYuc2hhZGUtODAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTgwKTtcbiAgICB9XG4gICAgJi5zaGFkZS02MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuICAgIH1cbiAgICAmLnNoYWRlLTQwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgfVxuICAgICYuc2hhZGUtMjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTIwKTtcbiAgICB9XG4gIH1cblxuICAmLmJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuXG4gICAgJi50aW50LTgwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS04MCk7XG4gICAgfVxuICAgICYudGludC02MCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNjApO1xuICAgIH1cbiAgICAmLnRpbnQtNDAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcbiAgICB9XG4gICAgJi50aW50LTIwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS0yMCk7XG4gICAgfVxuICAgICYuc2hhZGUtODAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS04MCk7XG4gICAgfVxuICAgICYuc2hhZGUtNjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgfVxuICAgICYuc2hhZGUtNDAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgfVxuICAgICYuc2hhZGUtMjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS0yMCk7XG4gICAgfVxuICB9XG5cbiAgJi5kYXJrLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcblxuICAgICYudGludC04MCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmVlbi0tbGlnaHRlci0tODApO1xuICAgIH1cbiAgICAmLnRpbnQtNjAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4tLWxpZ2h0ZXItLTYwKTtcbiAgICB9XG4gICAgJi50aW50LTQwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuLS1saWdodGVyLS00MCk7XG4gICAgfVxuICAgICYudGludC0yMCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmVlbi0tbGlnaHRlci0tMjApO1xuICAgIH1cbiAgICAmLnNoYWRlLTgwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tODApO1xuICAgIH1cbiAgICAmLnNoYWRlLTYwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tNjApO1xuICAgIH1cbiAgICAmLnNoYWRlLTQwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tNDApO1xuICAgIH1cbiAgICAmLnNoYWRlLTIwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4tLWRhcmtlci0tMjApO1xuICAgIH1cbiAgfVxuXG4gICYuZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuKTtcblxuICAgICYudGludC04MCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tLWxpZ2h0ZXItLTgwKTtcbiAgICB9XG4gICAgJi50aW50LTYwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbi0tbGlnaHRlci0tNjApO1xuICAgIH1cbiAgICAmLnRpbnQtNDAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLS1saWdodGVyLS00MCk7XG4gICAgfVxuICAgICYudGludC0yMCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tLWxpZ2h0ZXItLTIwKTtcbiAgICB9XG4gICAgJi5zaGFkZS04MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbi0tZGFya2VyLS04MCk7XG4gICAgfVxuICAgICYuc2hhZGUtNjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tLWRhcmtlci0tNjApO1xuICAgIH1cbiAgICAmLnNoYWRlLTQwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLS1kYXJrZXItLTQwKTtcbiAgICB9XG4gICAgJi5zaGFkZS0yMCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbi0tZGFya2VyLS0yMCk7XG4gICAgfVxuICB9XG5cbiAgJi5saWdodC1ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4pO1xuXG4gICAgJi50aW50LTgwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS04MCk7XG4gICAgfVxuICAgICYudGludC02MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNjApO1xuICAgIH1cbiAgICAmLnRpbnQtNDAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgICB9XG4gICAgJi50aW50LTIwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS0yMCk7XG4gICAgfVxuICAgICYuc2hhZGUtODAge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1kYXJrZXItLTgwKTtcbiAgICB9XG4gICAgJi5zaGFkZS02MCB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWRhcmtlci0tNjApO1xuICAgIH1cbiAgICAmLnNoYWRlLTQwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tZGFya2VyLS00MCk7XG4gICAgfVxuICAgICYuc2hhZGUtMjAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWRhcmtlci0tMjApO1xuICAgIH1cbiAgfVxuXG4gICYuYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgfVxuXG4gICYuZ3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheSk7XG5cbiAgICAmLnRpbnQtODAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcbiAgICB9XG4gICAgJi50aW50LTYwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1saWdodGVyLS02MCk7XG4gICAgfVxuICAgICYudGludC00MCB7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tNDApO1xuICAgIH1cbiAgICAmLnRpbnQtMjAge1xuICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTIwKTtcbiAgICB9XG4gICAgJi5zaGFkZS04MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1kYXJrZXItLTgwKTtcbiAgICB9XG4gICAgJi5zaGFkZS02MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1kYXJrZXItLTYwKTtcbiAgICB9XG4gICAgJi5zaGFkZS00MCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1kYXJrZXItLTQwKTtcbiAgICB9XG4gICAgJi5zaGFkZS0yMCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1kYXJrZXItLTIwKTtcbiAgICB9XG4gIH1cblxuICAmLndoaXRlIHtcbiAgICBib3JkZXI6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpIHZhcigtLWdyYXktLWxpZ2h0ZXItLTkwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cblxuICAmLnJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcbiAgfVxuXG4gICYueWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogQnV0dG9ucyAtIFBsYXkgQnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wbGF5LWxpbmssXG4ucGxheS1idXR0b24ge1xuICB3aWR0aDogdmFyKC0tdG9nZ2xlLXNpemUtLXNtKTtcbiAgaGVpZ2h0OiB2YXIoLS10b2dnbGUtc2l6ZS0tc20pO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pIHZhcigtLXNwYWNlLS1zbSkgdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tbWQpO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG5cbiAgc3ZnIHtcbiAgICBmaWxsOiB2YXIoLS13aGl0ZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgfVxuXG4gIC5wbGF5LWljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwLjE0cmVtO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IENoYXJ0cyAtIE9yZyBDaGFydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5vcmctY2hhcnQge1xuICAtLWNoYXJ0LWJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgLS1jaGFydC1iYWNrZ3JvdW5kLWNvbG9yLS1kYXJrLW1vZGU6IHZhcigtLWJsYWNrKTtcbiAgLS1jaGFydC1ib3JkZXItd2lkdGg6IDNweDtcbiAgLS1jaGFydC1saW5lLWNvbG9yOiB2YXIoLS1ncmF5LS1saWdodGVyLS00MCk7XG4gIC0tY2hhcnQtbWF4LXNpemU6IDE4Ljc1cmVtO1xuICAtLWNoYXJ0LXNwYWNpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKTtcbiAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhcnQtYmFja2dyb3VuZC1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgdWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYXJ0LXNwYWNpbmcpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgc3BhbixcbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNoYXJ0LW1heC1zaXplKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1jaGFydC1zcGFjaW5nKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYXJ0LXNwYWNpbmcpO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLWNoYXJ0LXNwYWNpbmcpIC8gMik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmID4gc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcbiAgICAgIH1cblxuICAgICAgJiA+IGEge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5kYXJrIHtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXkpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmxpZ2h0IHtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1ncmFkaWVudC0tdmVydGljYWwtLWRhcmstYmx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sZXZlbC1zdWItYSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTAsIGF1dG8pO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi5sZXZlbC1hIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMCwgYXV0byk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgLml0ZW0tbGV2ZWwtYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYXJ0LXNwYWNpbmcpO1xuXG4gICAgICAgID4gc3BhbixcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tY2hhcnQtbWF4LXNpemUpO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxldmVsLWIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEwLCBhdXRvKTtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tY2hhcnQtc3BhY2luZyk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgLml0ZW0tbGV2ZWwtYiB7XG4gICAgICAgID4gc3BhbiA+IGEge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tY2hhcnQtc3BhY2luZykgLyAyKTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tY2hhcnQtc3BhY2luZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxldmVsLWMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIC5sZXZlbC1jIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWNoYXJ0LXNwYWNpbmcpIC8gMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBMSU5FUyAqL1xuICAuaXRlbS1sZXZlbC1iLFxuICAuaXRlbS1sZXZlbC1jLFxuICAuaXRlbS1sZXZlbC1kLFxuICAuaXRlbS1sZXZlbC1lLFxuICAuaXRlbS1sZXZlbC1mLFxuICAuaXRlbS1sZXZlbC1nLFxuICAuaXRlbS1sZXZlbC1oLFxuICAuaXRlbS1sZXZlbC1pLFxuICAuaXRlbS1sZXZlbC1qLFxuICAuaXRlbS1sZXZlbC1rIHtcbiAgICAvKiB2ZXJ0aWNhbCBiYXIgZm9yIG5lc3RlZCBpdGVtcyAqL1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1jaGFydC1ib3JkZXItd2lkdGgpIHZhcigtLWNoYXJ0LWxpbmUtY29sb3IpO1xuXG4gICAgLyogaG9yaXpvbnRhbCBiYXIgZm9yIG5lc3RlZCBpdGVtcyAqL1xuICAgID4gc3BhbjpiZWZvcmUsXG4gICAgPiBhOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogY2FsYyh2YXIoLS1jaGFydC1zcGFjaW5nKSArIHZhcigtLWNoYXJ0LWJvcmRlci13aWR0aCkpO1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUpO1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgdmFyKC0tY2hhcnQtYm9yZGVyLXdpZHRoKSB2YXIoLS1jaGFydC1saW5lLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8qIG1hc2sgdmVydGljYWwgYmFyIGZvciBlbmQgaXRlbXMgKi9cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICA+IHNwYW46YmVmb3JlLFxuICAgICAgPiBhOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIG1hc2sgdmVydGljYWwgYmFyIGZvciBlbmQgaXRlbXMgKi9cbiAgLml0ZW0tbGV2ZWwtYjpsYXN0LWNoaWxkID4gLmxldmVsLWM6YmVmb3JlLFxuICAuaXRlbS1sZXZlbC1jOmxhc3QtY2hpbGQgPiAubGV2ZWwtZDpiZWZvcmUsXG4gIC5pdGVtLWxldmVsLWQ6bGFzdC1jaGlsZCA+IC5sZXZlbC1lOmJlZm9yZSxcbiAgLml0ZW0tbGV2ZWwtZTpsYXN0LWNoaWxkID4gLmxldmVsLWY6YmVmb3JlLFxuICAuaXRlbS1sZXZlbC1mOmxhc3QtY2hpbGQgPiAubGV2ZWwtZzpiZWZvcmUsXG4gIC5pdGVtLWxldmVsLWc6bGFzdC1jaGlsZCA+IC5sZXZlbC1oOmJlZm9yZSxcbiAgLml0ZW0tbGV2ZWwtaDpsYXN0LWNoaWxkID4gLmxldmVsLWk6YmVmb3JlLFxuICAuaXRlbS1sZXZlbC1pOmxhc3QtY2hpbGQgPiAubGV2ZWwtajpiZWZvcmUsXG4gIC5pdGVtLWxldmVsLWo6bGFzdC1jaGlsZCA+IC5sZXZlbC1rOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKHZhcigtLWNoYXJ0LXNwYWNpbmcpICsgdmFyKC0tY2hhcnQtYm9yZGVyLXdpZHRoKSk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWJhY2tncm91bmQtY29sb3IpO1xuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAub3JnLWNoYXJ0IHtcbiAgICAvKiB2ZXJ0aWNhbCBiYXIgZm9yIHRvcCBsZXZlbCBpdGVtcyAqL1xuICAgIC5pdGVtLWxldmVsLWEge1xuICAgICAgPiBzcGFuOmJlZm9yZSxcbiAgICAgID4gYTpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogY2FsYyhcbiAgICAgICAgICAodmFyKC0tY2hhcnQtc3BhY2luZykgLyAyKSArICh2YXIoLS1jaGFydC1ib3JkZXItd2lkdGgpIC8gMikgKyA1MCVcbiAgICAgICAgKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1jaGFydC1ib3JkZXItd2lkdGgpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWNoYXJ0LXNwYWNpbmcpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCB2YXIoLS1jaGFydC1zcGFjaW5nKSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWxpbmUtY29sb3IpO1xuICAgICAgfVxuICAgICAgJi5uby1jaGlsZHJlbiB7XG4gICAgICAgID4gc3BhbjpiZWZvcmUsXG4gICAgICAgID4gYTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaXRlbS1sZXZlbC1iIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuXG4gICAgICAvKiByZW1vdmUgc2Vjb25kIGxldmVsIGxpbmVzICovXG4gICAgICA+IHNwYW46YmVmb3JlLFxuICAgICAgPiBhOmJlZm9yZSxcbiAgICAgICY6bGFzdC1vZi10eXBlID4gc3BhbjpiZWZvcmUsXG4gICAgICAmOmxhc3Qtb2YtdHlwZSA+IGE6YmVmb3JlLFxuICAgICAgJjpsYXN0LWNoaWxkID4gLmxldmVsLWM6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLyogaG9yaXpvbnRhbCBiYXIgZm9yIHNlY29uZCBsZXZlbCBpdGVtcyAqL1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWNoYXJ0LWJvcmRlci13aWR0aCk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWxpbmUtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IGNhbGMoXG4gICAgICAgICAgICAodmFyKC0tY2hhcnQtc3BhY2luZykgLyAyKSArICh2YXIoLS1jaGFydC1ib3JkZXItd2lkdGgpIC8gMikgKyA1MCVcbiAgICAgICAgICApO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1jaGFydC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hhcnQtbGluZS1jb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKFxuICAgICAgICAgICAgKHZhcigtLWNoYXJ0LXNwYWNpbmcpIC8gMikgKyAodmFyKC0tY2hhcnQtYm9yZGVyLXdpZHRoKSAvIDIpICsgNTAlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWNoYXJ0LWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFydC1saW5lLWNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvKiB2ZXJ0aWNhbCBiYXIgZm9yIHNlY29uZCBsZXZlbCBpdGVtcyAqL1xuICAgICAgPiBzcGFuOmJlZm9yZSxcbiAgICAgID4gYTpiZWZvcmUsXG4gICAgICAmOmxhc3Qtb2YtdHlwZSA+IHNwYW46YmVmb3JlLFxuICAgICAgJjpsYXN0LW9mLXR5cGUgPiBhOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBjYWxjKC0xICogdmFyKC0tY2hhcnQtc3BhY2luZykpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogdmFyKC0tY2hhcnQtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1jaGFydC1zcGFjaW5nKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoXG4gICAgICAgICAgKGNhbGModmFyKC0tY2hhcnQtc3BhY2luZykgLyAtMikgKyAodmFyKC0tY2hhcnQtYm9yZGVyLXdpZHRoKSAvIDIpKVxuICAgICAgICApO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWxpbmUtY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5vcmctY2hhcnQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWJhY2tncm91bmQtY29sb3ItLWRhcmstbW9kZSk7XG5cbiAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKXtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTYwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlnaHQge1xuICAgICAgJiA+IGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTYwKTtcblxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1ncmFkaWVudC0tdmVydGljYWwtLWRhcmstYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaXRlbS1sZXZlbC1iLFxuICAgIC5pdGVtLWxldmVsLWMsXG4gICAgLml0ZW0tbGV2ZWwtZCxcbiAgICAuaXRlbS1sZXZlbC1lLFxuICAgIC5pdGVtLWxldmVsLWYsXG4gICAgLml0ZW0tbGV2ZWwtZyxcbiAgICAuaXRlbS1sZXZlbC1oLFxuICAgIC5pdGVtLWxldmVsLWksXG4gICAgLml0ZW0tbGV2ZWwtaixcbiAgICAuaXRlbS1sZXZlbC1rIHtcbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgPiBzcGFuOmJlZm9yZSxcbiAgICAgICAgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hhcnQtYmFja2dyb3VuZC1jb2xvci0tZGFyay1tb2RlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5pdGVtLWxldmVsLWI6bGFzdC1jaGlsZCA+IC5sZXZlbC1jOmJlZm9yZSxcbiAgICAuaXRlbS1sZXZlbC1jOmxhc3QtY2hpbGQgPiAubGV2ZWwtZDpiZWZvcmUsXG4gICAgLml0ZW0tbGV2ZWwtZDpsYXN0LWNoaWxkID4gLmxldmVsLWU6YmVmb3JlLFxuICAgIC5pdGVtLWxldmVsLWU6bGFzdC1jaGlsZCA+IC5sZXZlbC1mOmJlZm9yZSxcbiAgICAuaXRlbS1sZXZlbC1mOmxhc3QtY2hpbGQgPiAubGV2ZWwtZzpiZWZvcmUsXG4gICAgLml0ZW0tbGV2ZWwtZzpsYXN0LWNoaWxkID4gLmxldmVsLWg6YmVmb3JlLFxuICAgIC5pdGVtLWxldmVsLWg6bGFzdC1jaGlsZCA+IC5sZXZlbC1pOmJlZm9yZSxcbiAgICAuaXRlbS1sZXZlbC1pOmxhc3QtY2hpbGQgPiAubGV2ZWwtajpiZWZvcmUsXG4gICAgLml0ZW0tbGV2ZWwtajpsYXN0LWNoaWxkID4gLmxldmVsLWs6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoYXJ0LWJhY2tncm91bmQtY29sb3ItLWRhcmstbW9kZSk7XG4gICAgfVxuXG4gICAgLml0ZW0tbGV2ZWwtYiB7XG4gICAgICA+IHNwYW46YmVmb3JlLFxuICAgICAgPiBhOmJlZm9yZSxcbiAgICAgICY6bGFzdC1vZi10eXBlID4gc3BhbjpiZWZvcmUsXG4gICAgICAmOmxhc3Qtb2YtdHlwZSA+IGE6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hhcnQtbGluZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogRm9ybXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5mb3JtIHtcbiAgZmllbGRzZXQsXG4gIC53ZWJmb3JtLXNlY3Rpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC53ZWJmb3JtLXNlY3Rpb24tdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgtMS4yZW0pO1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tNHhsKTtcblxuICAgICsgLndlYmZvcm0tc2VjdGlvbi13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xLjJlbTtcblxuICAgICAgZmllbGRzZXQge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGZpZWxkc2V0LFxuICAud2ViZm9ybS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgYm9yZGVyOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG4gIH1cbn1cblxubGVnZW5kLFxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZCk7XG5cbiAgJi5yZXF1aXJlZDphZnRlcixcbiAgJi5mb3JtLXJlcXVpcmVkOmFmdGVyLFxuICAuZm9ybS1yZXF1aXJlZDphZnRlciB7XG4gICAgY29udGVudDogXCIgKlwiO1xuICAgIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXJlZ3VsYXIpO1xuICB9XG59XG5cbmlucHV0LFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuICB9XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIGJvcmRlcjogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXJvdW5kKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tOTApO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbWQpO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICBAbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlci1zdHlsZTogZG90dGVkO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgY29sb3I6IHZhcigtLWdyYXkpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tNjApO1xuICB9XG59XG5cbmlucHV0LFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tbGlnaHRlci0tNjApO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdCk7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTsgLyogRmlyZWZveCAqL1xuICAvKiBDaHJvbWUsIEZpcmVmb3gsIE9wZXJhLCBTYWZhcmkgMTAuMSsgKi9cbiAgY29sb3I6IHZhcigtLWdyYXkpO1xufVxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG4gIGNvbG9yOiB2YXIoLS1ncmF5KTtcbn1cbjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgLyogTWljcm9zb2Z0IEVkZ2UgKi9cbiAgY29sb3I6IHZhcigtLWdyYXkpO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBNYWluIG5hdmlnYXRpb24vdWx0aW1lbnUgY3VzdG9tIHN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEFjdGl2ZSBsaW5rIHRyYWlsXG4yLiBEaXNwbGF5IHByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1haW4tbmF2aWdhdGlvbixcbiNibG9jay1zeXN0ZW0tbWFpbi1tZW51IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cblxuICBncmlkLWFyZWE6IG1haW4tbmF2O1xuICBib3JkZXItdG9wOiBzb2xpZCB2YXIoLS1ibHVlLS1kYXJrZXItLTQwKSB2YXIoLS1ib3JkZXItd2lkdGgtLXNtKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLWNvbmRlbnNlZCk7XG5cbiAgJiA+IC5tZW51LFxuICAudWx0aW1lbnUtLWhvcml6b250YWwge1xuICAgIEBpbmNsdWRlIGJsdWUtYmc7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICYgPiBsaSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgdmFyKC0taWNvbi1zaXplLS14cyk7XG4gICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuXG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgXCJsaW5rIGljb25cIlxuICAgICAgICBcImZseW91dCBmbHlvdXRcIjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHZhcigtLXRvZ2dsZS1zaXplLS1zbSk7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLS1zbSkgc29saWQgdmFyKC0tYmx1ZS0tZGFya2VyLS0yMCk7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLXZlcnRpY2FsLS1saWdodC1ibHVlKTtcblxuICAgICAgICAuZXhwYW5kLWljb24ge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0taWNvbi1zaXplLS14cyk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gYWxsO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXRvdWNoLXRhcmdldC0tbWluKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tcmVndWxhcik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDAgMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZXhwYW5kLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBncmlkLWFyZWE6IGljb247XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS14cyk7XG5cbiAgICAgICAgJi5kZXNrdG9wIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubW9iaWxlIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAxLiBBY3RpdmUgbGluayB0cmFpbFxuICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgICAgICYuaXMtYWN0aXZlLXRyYWlsIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiBhbGw7XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLWJvcmRlci13aWR0aC0tbGcpKTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKVxuICAgICAgICAgIHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS0yMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBEaXNwbGF5IHByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvbnQtLWR5c2xleGlhLWZyaWVuZGx5IHtcbiAgLm1haW4tbmF2aWdhdGlvbixcbiAgI2Jsb2NrLXN5c3RlbS1tYWluLW1lbnUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1keXNsZXhpYS1mcmllbmRseSk7XG4gIH1cbn1cblxuLmZvbnQtLWh5cGVybGVnaWJsZSB7XG4gIC5tYWluLW5hdmlnYXRpb24sXG4gICNibG9jay1zeXN0ZW0tbWFpbi1tZW51IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0taHlwZXJsZWdpYmxlKTtcbiAgfVxufVxuXG4jYmxvY2stc3lzdGVtLW1haW4tbWVudSB1bCB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIGhpZGUgbmVzdGVkIG1lbnVzIG9uIG5vbiB1bHRpbWVudSBtYWluIG5hdiBibG9ja3Ncbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubWF0ZXJpYWwtaWNvbnMge1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsaWdhXCI7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGRpcmVjdGlvbjogbHRyO1xuICBmb250LWZhbWlseTogXCJNYXRlcmlhbCBJY29uc1wiO1xuICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tbWQpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBBbGVydHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFsZXJ0IHtcbiAgLS1hbGVydC1sb2dvLXNpemU6IDQuMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gIC5hbGVydC1oZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5hbGVydC1ib2R5IHtcbiAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCkgMDtcbiAgfVxuXG4gIC5hbGVydC1pY29uIHtcbiAgICB3aWR0aDogdmFyKC0tYWxlcnQtbG9nby1zaXplKTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgICBzdmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IHZhcigtLWFsZXJ0LWxvZ28tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmFsZXJ0LWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAmLmVtZXJnZW5jeSB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZWQpO1xuXG4gICAgLmFsZXJ0LWhlYWRlciB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBmaWxsOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgJi53ZWF0aGVyIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuXG4gICAgLmFsZXJ0LWhlYWRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgZmlsbDogdmFyKC0tZGFyay1ibHVlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogQWNjb3JkaW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gTm8gYmFja2dyb3VuZCBjb2xvcnNcbjIuIEdlbmVyYWwgYWNjb3JkaW9uIHN0eWxlc1xuMy4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIE5vIGJhY2tncm91bmQgY29sb3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQm9yZGVycyBvbmx5IGFkZGVkIHRvIGFjY29yZGlvbnMgd2l0aG91dCBjdXN0b20gYmFja2dyb3VuZCBjbGFzc2VzIGFkZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFjY29yZGlvbi1zZXQ6bm90KFtjbGFzcyQ9XCItYmdcIl0pIHtcbiAgLml0ZW0ge1xuICAgIGJvcmRlci10b3A6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS0yMCkgc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1sZyk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tMjApIHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuICAgIGJvcmRlci1sZWZ0OiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tMjApIHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTIwKSBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKTtcbiAgICB9XG4gIH1cblxuICAudGl0bGUge1xuICAgIC5leHBhbmQge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS0yMCk7XG5cbiAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMi4gR2VuZXJhbCBhY2NvcmRpb24gc3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFjY29yZGlvbi1zZXQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gIC50aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZCk7XG5cbiAgICAuZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IGNhbGMoLTEgKiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuXG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tc20pO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgKyAuY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1tZCk7XG4gICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBEYXJrIE1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZGFyay1tb2RlIHtcbiAgLmFjY29yZGlvbi1zZXQ6bm90KFtjbGFzcyQ9XCItYmdcIl0pIHtcbiAgICAuaXRlbSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICB9XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIC5leHBhbmQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG5cbiAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsdWUtLWxpZ2h0ZXItLTQwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogQmFja2dyb3VuZCBWaWRlb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmctdmlkZW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcihzcGFjZS0tMnhsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gID4gKiB7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gID4gdmlkZW8ge1xuICAgIHotaW5kZXg6IDA7XG4gIH1cblxuICBidXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgbGVmdDogdmFyKC0tc3BhY2UtLXNtKTtcblxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IHZhcigtLXNwYWNlLS0yeHMpO1xuICAgICAgcmlnaHQ6IHZhcigtLXNwYWNlLS0yeHMpO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBEaXNwbGF5IFNldHRpbmdzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kaXNwbGF5LXNldHRpbmdzIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogaW5pdGlhbDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZ3JpZC1hcmVhOiBkaXNwbGF5LXNldHRpbmdzO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tY29uZGVuc2VkKTtcblxuICAud3d1LW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuaWNvbi13aXRoLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogaW5pdGlhbDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tMnhzKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC0tbWQpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNpemUtLXhzKTtcbiAgICB9XG4gIH1cblxuICAudG9nZ2xlLWRpc3BsYXktc2V0dGluZ3Mge1xuICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS10b3VjaC10YXJnZXQtLW1pbik7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmUtb2Zmc2V0OiBjYWxjKC0xICogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1ncmFkaWVudC0tdmVydGljYWwtLWxpZ2h0LWJsdWUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDApO1xuICAgIH1cbiAgfVxuXG4gIC5kaXNwbGF5LXNldHRpbmdzLW1lbnUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNTc1cmVtO1xuICAgIH1cblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1lYXNlLS1zdGFuZGFyZCkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC0tZmFzdCkgYWxsO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKTtcblxuICAgICYuY2xvc2VkIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5vcGVuIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5tZW51LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gICAgICAudGhlbWUtc2VsZWN0aW9uIHtcbiAgICAgICAgZmxleDogMCAwIDQwJTtcbiAgICAgIH1cblxuICAgICAgLmZvbnQtc2VsZWN0aW9uIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgZmllbGRzZXQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICAgICAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmVzZXQtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCkgYXV0byAwO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcblxuICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkge1xuICAuZGlzcGxheS1zZXR0aW5ncyB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLWR5c2xleGlhLWZyaWVuZGx5KTtcbiAgfVxufVxuXG4uZm9udC0taHlwZXJsZWdpYmxlIHtcbiAgLmRpc3BsYXktc2V0dGluZ3Mge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1oeXBlcmxlZ2libGUpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogSW1hZ2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmltZyxcbnBpY3R1cmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xufVxucGljdHVyZSBzb3VyY2UsXG5waWN0dXJlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogSW1hZ2VzIC0gSW1hZ2UgQmFja2dyb3VuZHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJhY2tncm91bmQtaW1hZ2UsXG4uYmFja2dyb3VuZC1pbWFnZSA+IGRpdiB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcblxuICBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXRvbTogSW1hZ2VzIC0gU3R5bGl6ZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5JbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSB0aGVtZSwgc3R5bGl6ZWQgaW1hZ2VzIGFyZSBjaXJjbGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmltYWdlLS1zdHlsaXplZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICoge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cblxuICBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBMYXlvdXRzIC0gRm91ciBjb2x1bW5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dC0tZm91cmNvbC1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgPiAubGF5b3V0X19yZWdpb24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgMjQlO1xuICAgIH1cblxuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cbn1cblxuLmxheW91dC0tZm91cmNvbC0tcGFnZS13aWR0aCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcblxuICA+IC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0LFxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kLFxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tdGhpcmQsXG4gID4gLmxheW91dF9fcmVnaW9uLS1mb3VydGgge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgMjUlO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBMaXN0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG51bCxcbm9sIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxubGkge1xuICBsaW5lLWhlaWdodDogMS44O1xufVxuXG4uc3BhY2VkIHtcbiAgbGkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICB9XG5cbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xuICB9XG59XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhzKTtcbiAgZHQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZCk7XG4gIH1cbiAgZGQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkF0b206IFRleHQgLSBMaXN0cyAtIE1lbnUgSXRlbXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1lbnUge1xuICBsaSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLS1sZyk7XG4gICAgfVxuXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItbGVmdDogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgdmFyKC0tYmx1ZS0tbGlnaHRlci0tNjApO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiBpbmhlcml0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXhsKSB2YXIoLS1zcGFjZS0teHMpXG4gICAgICAgIHZhcigtLXNwYWNlLS1tZCk7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLS1mYXN0KSB2YXIoLS1lYXNlLS1zdGFuZGFyZCkgYWxsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXJlZ3VsYXIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAubWVudSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgdWwge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmb250LXNpemU6IDEwcHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgW1wiIGF0dHIoaHJlZikgXCJdIFwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IEhvcml6b250YWwgbWVudXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1lbnUge1xuICAmLmhvcml6b250YWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BdG9tOiBUZXh0IC0gRm9udCBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Ob3RlOiBUaGUgYmFja3VwIGRlY2xhcmF0aW9ucyAoZWcgdmFyKC0tZm9udC0tc2VyaWYpLCBcIlBUIFNlcmlmXCI7KSBhcmUgdG9cbmJlIHN1cmUgdGhhdCBTQVNTIHdpbGwgaW1wb3J0IGFsbCBvZiB0aGUgQGZvbnQtZmFjZSBkZWNsYXJhdGlvbnMuIEl0IHNlZW1zIHRvXG5oYXZlIHRyb3VibGUgcmVjb2duaXppbmcgdGhlIGZvbnRzIGFzIGJlaW5nIHVzZWQgaW4gdGhlIHZhcigpIGRlY2xhcmF0aW9ucyBhbG9uZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mb250LXNpemUtLXNtYWxsZXIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xufVxuXG4uZm9udC1zaXplLS1yZWd1bGFyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbn1cblxuLmZvbnQtc2l6ZS0tbGFyZ2VyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLWxnKTtcbn1cblxuLmZvbnQtLXNhbnMtc2VyaWYge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tc2Fucy1zZXJpZiksIFwiRmlyYSBTYW5zXCI7XG59XG5cbi5mb250LS1jb25kZW5zZWQge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tY29uZGVuc2VkKSwgXCJGaXJhIFNhbnMgRXh0cmEgQ29uZGVuc2VkXCI7XG59XG5cbi5mb250LS1zZXJpZiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1zZXJpZiksIFwiUFQgU2VyaWZcIjtcbn1cblxuLmZvbnQtLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLXRpdGxlKSwgXCJNb250c2VycmF0XCI7XG59XG5cbi5mb250LS1keXNsZXhpYS1mcmllbmRseSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1keXNsZXhpYS1mcmllbmRseSksIFwiT3BlbiBEeXNsZXhpY1wiO1xuXG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogdW5zZXQ7XG59XG5cbi5mb250LS1oeXBlcmxlZ2libGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0taHlwZXJsZWdpYmxlKSwgXCJBdGtpbnNvbiBIeXBlcmxlZ2libGVcIjtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogUHVsbHF1b3RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJsb2NrLS1wdWxscXVvdGUge1xuICAtLXF1b3RlLWljb24tc2l6ZTogMy4xMjVyZW07XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSB2YXIoLS1ncmVlbik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAuYm9keSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG4gICAgfVxuICB9XG5cbiAgLmRlY29yYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLnB1bGxxdW90ZS0tZWRpdG9yaWFsIHtcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDMpO1xuICAgICAgbWFyZ2luOiB2YXIoLS1xdW90ZS1pY29uLXNpemUpIGF1dG8gMDtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXF1b3RlLWljb24tc2l6ZSkgKyB2YXIoLS1zcGFjZS0tc20pKTtcbiAgICAgIGJvcmRlci10b3A6IHZhcigtLWJsdWUpIHZhcigtLWJvcmRlci13aWR0aC0tbGcpIHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYmx1ZSkgdmFyKC0tYm9yZGVyLXdpZHRoLS1sZykgc29saWQ7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG5cbiAgICAgIC5ibG9ja19fdGl0bGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY3JlZGl0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAubmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZWNvcmF0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICB3aWR0aDogdmFyKC0tcXVvdGUtaWNvbi1zaXplKTtcbiAgICAgIGhlaWdodDogdmFyKC0tcXVvdGUtaWNvbi1zaXplKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgIGJvcmRlcjogc29saWQgdmFyKC0tYmx1ZSkgdmFyKC0tYm9yZGVyLXdpZHRoLS1sZyk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBmb250LWZhbWlseTogcHQgc2VyaWY7XG4gICAgICBmb250LXNpemU6IHZhcigtLXF1b3RlLWljb24tc2l6ZSk7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBEYXJrIG1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZGFyay1tb2RlIHtcbiAgLmJsb2NrLS1wdWxscXVvdGUge1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5kZWNvcmF0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWRhcmtlci0tODApO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBUZXN0aW1vbmlhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIE1pcnJvclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9jay0tdGVzdGltb25pYWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtLTN4bCk7XG4gIH1cblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAuaW1hZ2UtLXN0eWxpemVkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIH1cblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtICgyICogdmFyKC0tc3BhY2UtLW1kKSkpO1xuICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSAvIDQpO1xuICAgIGhlaWdodDogY2FsYygxMDB2dyAtICgyICogdmFyKC0tc3BhY2UtLW1kKSkpO1xuICAgIG1heC1oZWlnaHQ6IGNhbGModmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCkgLyA0KTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0KTtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC00cmVtO1xuICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWJsdWUtLXJnYiksIDAuMTUpO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC0wLjVyZW07XG4gICAgICBib3R0b206IC0zLjVyZW07XG4gICAgICB3aWR0aDogMTIwJTtcbiAgICAgIGhlaWdodDogMTIwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAuY3JlZGl0IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbWQpO1xuICB9XG5cbiAgLm5hbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG4gIH1cblxuICAuZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAxLiBNaXJyb3JcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICYubWlycm9yIHtcbiAgICAuaW1hZ2UtLXN0eWxpemVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ib2R5IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IEFubm91bmNlbWVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9jay0tYW5ub3VuY2VtZW50IHtcbiAgLW1zLWdyaWQtY29sdW1uczogMWZyIDNmcjtcbiAgLW1zLWdyaWQtcm93czogYXV0bztcblxuICBkaXNwbGF5OiAtbXMtZ3JpZDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpY29uIHRleHRcIjtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgM2ZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuXG4gIC5ibG9ja19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAubWF0ZXJpYWwtaWNvbnMge1xuICAgIEBpbmNsdWRlIGRhcmstYmx1ZS1iZztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1sZyk7XG4gICAgfVxuXG4gICAgZ3JpZC1hcmVhOiBpY29uO1xuICAgIC1tcy1ncmlkLWNvbHVtbjogMTtcbiAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gIH1cblxuICAuYm9keSB7XG4gICAgQGluY2x1ZGUgbGlnaHQtZ3JlZW4tYmc7XG5cbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiAxO1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxuXG4gICYubGF5b3V0LWJ1aWxkZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmLmZ1bGwtd2lkdGgge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5ibG9jay0tYW5ub3VuY2VtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcblxuICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBAaW5jbHVkZSBkYXJrLWdyZWVuLWJnO1xuICAgIH1cblxuICAgIC5ib2R5IHtcbiAgICAgIEBpbmNsdWRlIGdyZWVuLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBCYW5uZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBQcmludCBzdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmxvY2stLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teGwpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmJvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnQtYXJlYS1tYXgtd2lkdGgpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC5ib2R5LFxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gUHJpbnQgc3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHByaW50IHtcbiAgLmJsb2NrLS1iYW5uZXIge1xuICAgIG1pbi1oZWlnaHQ6IG5vbmU7XG5cbiAgICAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmxvY2tfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBwdDtcbiAgICB9XG4gICAgLmJvZHkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBCZXlvbmQgQmFzaWNzIEJsb2NrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9jay0tYmV5b25kLWJhc2ljcy1ibG9jayxcbi5wYXJhZ3JhcGgtLXR5cGUtLW1ham9ycy1hc2lkZSB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtLXhzKSAwO1xuXG4gICZbY2xhc3MqPVwiLWJnXCJdIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgLmJsb2NrX190aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJi5uby1tYXJnaW4ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBFdmVudCBMaXN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmV2ZW50LWxpc3Qge1xuICAuZXZlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJkYXRlIHRpdGxlXCJcbiAgICAgIFwiZGF0ZSBsb2NhdGlvblwiXG4gICAgICBcImljb24gYm9keVwiXG4gICAgICBcImljb24gYm9keVwiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tdG9nZ2xlLXNpemUtLW1kKSBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdC0taG92ZXIpO1xuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIG91dGxpbmU6IHZhcigtLWJvcmRlci13aWR0aC0tbWQpIGRvdHRlZDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgZmxleDogMSAwIDcwJTtcbiAgICAgIGdyaWQtYXJlYTogdGl0bGU7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgICBoMixcbiAgICAgIGgzLFxuICAgICAgaDQsXG4gICAgICBoNSxcbiAgICAgIGg2IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMC43NWVtO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJvZHkge1xuICAgICAgZ3JpZC1hcmVhOiBib2R5O1xuICAgIH1cblxuICAgIC5pY29uIHtcbiAgICAgIGdyaWQtYXJlYTogaWNvbjtcblxuICAgICAgLmljb24td2l0aC10ZXh0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4pO1xuICAgICAgfVxuICAgICAgLmljb24td2l0aC10ZXh0IC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS14cyk7XG4gICAgICB9XG4gICAgICAuaWNvbi13aXRoLXRleHQgLmljb24tdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGUge1xuICAgICAgZ3JpZC1hcmVhOiBkYXRlO1xuICAgICAgd2lkdGg6IHZhcigtLXRvZ2dsZS1zaXplLS1tZCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAuZGF5LFxuICAgICAgLm1vbnRoIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgfVxuXG4gICAgICAubW9udGgge1xuICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1yZWd1bGFyKTtcbiAgICAgIH1cblxuICAgICAgLmRheSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgd29yZC1zcGFjaW5nOiAtMC4yZW07XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS0zeGwpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXNlbWlib2xkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9jYXRpb24ge1xuICAgICAgZ3JpZC1hcmVhOiBsb2NhdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgTW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICAuZXZlbnQge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1kYXJrLW1vZGUpO1xuICAgIH1cblxuICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IExpZ2h0Ym94XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5saWdodGJveC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLS1mYXN0KSBlYXNlLW91dDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuXG4gIC5saWdodGJveCB7XG4gICAgJi1kaWFsb2cge1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMzMlIDM0JSAzMyU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICBcIi4uLiAuLi4gYnV0dG9uXCJcbiAgICAgICAgICBcImNvbnRlbnQgY29udGVudCBjb250ZW50XCJcbiAgICAgICAgICBcIi4uLiBjdGEgLi4uXCI7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgfVxuXG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgXCIuLi4gLi4uIGJ1dHRvblwiXG4gICAgICAgIFwiY29udGVudCBjb250ZW50IGNvbnRlbnRcIlxuICAgICAgICBcImN0YSBjdGEgY3RhXCI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMzJSAzNCUgMzMlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi1jbG9zZS1kaWFsb2cge1xuICAgICAgZ3JpZC1hcmVhOiBidXR0b247XG4gICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1zbSk7XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24tdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0teHMpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtY29udGVudCB7XG4gICAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gICAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gICAgfVxuXG4gICAgJi1jdGEtbGluayB7XG4gICAgICBncmlkLWFyZWE6IGN0YTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICB9XG4gIH1cblxuICAmLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLnNob3duIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogTWVzc2FnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5EcnVwYWwgc3lzdGVtIG1lc3NhZ2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1lc3NhZ2VzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcblxuICB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLm1lc3NhZ2VzLS1zdGF0dXMsXG4ubWVzc2FnZXMtLXdhcm5pbmcsXG4ubWVzc2FnZXMtLWVycm9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbn1cblxuLm1lc3NhZ2VzLS1zdGF0dXMge1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC43NSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYmx1ZS0tcmdiKSwgMC4xNSk7XG59XG4ubWVzc2FnZXMtLXdhcm5pbmcge1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0teWVsbG93LS1yZ2IpLCAwLjc1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS15ZWxsb3ctLXJnYiksIDAuMTUpO1xufVxuLm1lc3NhZ2VzLS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1yZWQtLXJnYiksIDAuNzUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXJlZC0tcmdiKSwgMC4xNSk7XG59XG5cbi5ub2RlLS11bnB1Ymxpc2hlZCB7XG4gIGJvcmRlci10b3A6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbWQtLXJnYikgdmFyKC0teWVsbG93KTtcblxuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbnRlbnQ6IFwiVW5wdWJsaXNoZWRcIjtcbiAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0teWVsbG93LS1yZ2IpLCAwLjc1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXllbGxvdy0tcmdiKSwgMC4xNSk7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogSGVhZGxpbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBTdHlsZSAxOiBCb3ggSGVhZGxpbmVcbjIuIFN0eWxlIDI6IExlZnQvUmlnaHQgQWxpZ25lZCBCbHVlIEJveFxuMy4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaGVhZGxpbmUge1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgMS4gU3R5bGUgMTogQm94IEhlYWRsaW5lXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAmLmJveC1oZWFkbGluZSB7XG4gICAgQGluY2x1ZGUgZGFyay1ibHVlLWJnO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogNSU7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkaWVudC0taG9yaXpvbnRhbC0tZGFyay1ibHVlLXRvLXRyYW5zcGFyZW50KTtcbiAgICB9XG5cbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoKDIgKiB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSkgLyAzKTtcbiAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MC0tcmdiKSwgMC43KTtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAyLiBTdHlsZSAyOiBMZWZ0L1JpZ2h0IEFsaWduZWQgQmx1ZSBCb3hcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICYubGVmdC1hbGlnbmVkLWJhciB7XG4gICAgQGluY2x1ZGUgYmx1ZS1iZztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgbWF4LXdpZHRoOiA3MHZ3O1xuICAgIH1cblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gICAgd2lkdGg6IDkwdnc7XG4gICAgbWFyZ2luLXRvcDogMjV2aDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teGwpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1ibHVlLS1yZ2IpLCAwLjgpO1xuICB9XG5cbiAgJi5yaWdodC1hbGlnbmVkLWJhciB7XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG5cbiAgICBAZXh0ZW5kIC5sZWZ0LWFsaWduZWQtYmFyO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IENoYXJ0cyAtIERvbnV0IENoYXJ0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiRjaGFydC1ibHVlczogKFxuICAjNDI5YWQyLFxuICAjMDAzZjg3LFxuICAjN2FiNGRhLFxuICAjMDA2MGFiLFxuICAjYWZjZWUxLFxuICAjMDA3YWM4LFxuICAjZTNlN2U5LFxuICAjMDAyZjVlXG4pO1xuJGNoYXJ0LWxpZ2h0LWJsdWVzOiAoXG4gICMwMDZlYmIsXG4gICM1N2I4ZjcsXG4gICMxNjgxY2EsXG4gICM3ZWNhZmEsXG4gICMyYzkzZDksXG4gICNiM2Q5ZjEsXG4gICM0MmE2ZTgsXG4gICNlM2U3ZTlcbik7XG4kY2hhcnQtZ3JlZW5zOiAoXG4gICMwMDZiM2YsXG4gICNjMmRjMmMsXG4gICMzNThhMzAsXG4gICNkM2U1NzAsXG4gICM2YWE5MjEsXG4gICNlNGVkYjMsXG4gICM5ZmM4MTIsXG4gICNmNWY2Zjdcbik7XG5cbi5kb251dC1jaGFydCB7XG4gIC0tY2hhcnQtc2l6ZTogMTguNzVyZW07XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IHZhcigtLWNoYXJ0LXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tY2hhcnQtc2l6ZSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbGcpO1xuICB9XG5cbiAgY2lyY2xlIHtcbiAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICBzdHJva2Utd2lkdGg6IDE1LjkxNTtcblxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRjaGFydC1ibHVlcykge1xuICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICBzdHJva2U6IG50aCgkY2hhcnQtYmx1ZXMsICRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGF0YSB7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLS1sZyk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkY2hhcnQtYmx1ZXMpIHtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG50aCgkY2hhcnQtYmx1ZXMsICRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmdyZWVuIHtcbiAgICBjaXJjbGUge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGNoYXJ0LWdyZWVucykge1xuICAgICAgICAmOm50aC1vZi10eXBlKCN7JGl9KSB7XG4gICAgICAgICAgc3Ryb2tlOiBudGgoJGNoYXJ0LWdyZWVucywgJGkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGEge1xuICAgICAgbGkge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkY2hhcnQtZ3JlZW5zKSB7XG4gICAgICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBudGgoJGNoYXJ0LWdyZWVucywgJGkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubGlnaHQtYmx1ZSB7XG4gICAgY2lyY2xlIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRjaGFydC1saWdodC1ibHVlcykge1xuICAgICAgICAmOm50aC1vZi10eXBlKCN7JGl9KSB7XG4gICAgICAgICAgc3Ryb2tlOiBudGgoJGNoYXJ0LWxpZ2h0LWJsdWVzLCAkaSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGF0YSB7XG4gICAgICBsaSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRjaGFydC1saWdodC1ibHVlcykge1xuICAgICAgICAgICY6bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbnRoKCRjaGFydC1saWdodC1ibHVlcywgJGkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYucGllIHtcbiAgICBjaXJjbGUge1xuICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICBzdHJva2Utd2lkdGg6IDMxLjgzO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBMb2NhbCB0YXNrc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFLQSBUaGUgZWRpdCB0YWJzIGluIERydXBhbFxuMS4gRHJ1cGFsIDcgdGFic1xuMi4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJsb2NrLS1sb2NhbC10YXNrcy1ibG9jayB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1zcGFjZS0tbGcpKTtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tc20pIDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgdWw6bm90KC5jb250ZXh0dWFsLWxpbmtzKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSB2YXIoLS1ncmF5KTtcblxuICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSl7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS0yeHMpIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSB2YXIoLS13aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBEcnVwYWwgNyAoZm9yIE1BQkVMKSB0YWJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRhYnMtcHJpbWFyeSxcbi50cmFuc2NyaXB0LWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbGcpIHZhcigtLWdyYXkpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuXG4gICY6bnRoLW9mLXR5cGUoMikge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuICB9XG5cbiAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSl7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbGcpIHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICAuYmxvY2stLWxvY2FsLXRhc2tzLWJsb2NrIHtcbiAgICB1bDpub3QoLmNvbnRleHR1YWwtbGlua3MpIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKXtcbiAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tZ3JheS0tZGFya2VyLS04MCk7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBMYXlvdXRzIC0gVGhyZWUgY29sdW1uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAubGF5b3V0X19yZWdpb24ge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICB9XG5cbiAgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICB9XG4gIH1cblxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICB9XG4gIH1cblxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tdGhpcmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgfVxuICB9XG5cbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTI1LTUwLTI1ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCxcbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTI1LTUwLTI1ID4gLmxheW91dF9fcmVnaW9uLS10aGlyZCxcbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTI1LTI1LTUwID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCxcbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTI1LTI1LTUwID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQsXG4gICYubGF5b3V0LS10aHJlZWNvbC1zZWN0aW9uLS01MC0yNS0yNSA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kLFxuICAmLmxheW91dC0tdGhyZWVjb2wtc2VjdGlvbi0tNTAtMjUtMjUgPiAubGF5b3V0X19yZWdpb24tLXRoaXJkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAxIDI1JTtcbiAgICB9XG5cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG4gICYubGF5b3V0LS10aHJlZWNvbC1zZWN0aW9uLS0yNS01MC0yNSA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kLFxuICAmLmxheW91dC0tdGhyZWVjb2wtc2VjdGlvbi0tMjUtMjUtNTAgPiAubGF5b3V0X19yZWdpb24tLXRoaXJkLFxuICAmLmxheW91dC0tdGhyZWVjb2wtc2VjdGlvbi0tNTAtMjUtMjUgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAxIDUwJTtcbiAgICB9XG4gIH1cbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTMzLTM0LTMzID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCxcbiAgJi5sYXlvdXQtLXRocmVlY29sLXNlY3Rpb24tLTMzLTM0LTMzID4gLmxheW91dF9fcmVnaW9uLS10aGlyZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGZsZXg6IDAgMSAzMyU7XG4gICAgfVxuXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxuICAmLmxheW91dC0tdGhyZWVjb2wtc2VjdGlvbi0tMzMtMzQtMzMgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGZsZXg6IDAgMSAzNCU7XG4gICAgfVxuXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxufVxuXG4ubGF5b3V0LS10aHJlZWNvbC0tcGFnZS13aWR0aCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcblxuICA+IC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0LFxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tdGhpcmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgMzMlO1xuICAgIH1cbiAgfVxuXG4gID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgMzQlO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBDYXJkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEdlbmVyYWwgc3R5bGVzXG4yLiBEYXJrIE1vZGVcbjMuIFByaW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dC1idWlsZGVyLWJsb2NrLmNhcmQgLnRpdGxlIGE6OmFmdGVyLFxuLmxheW91dC1idWlsZGVyLWJsb2NrLmJsb2NrLS1jYXJkIC50aXRsZSBhOjphZnRlciB7XG4gIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEdlbmVyYWwgc3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNhcmQsXG4uYmxvY2stLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgei1pbmRleDogMTtcbiAgICAudGl0bGUge1xuICAgICAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSk6YWZ0ZXIge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgLnRpdGxlIHtcbiAgICAgIGE6YWZ0ZXIge1xuICAgICAgICBvdXRsaW5lOiBkb3R0ZWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIG9yZGVyOiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS14cyk7XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgb3JkZXI6IDI7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0teHMpO1xuXG4gICAgLmJsb2NrX190aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgYTpub3QoW2NsYXNzKj1cImN0YVwiXSk6bm90KFtjbGFzcyo9XCJidXR0b25cIl0pOm5vdChbY2xhc3MqPVwidGF4b25vbXktdGVybVwiXSkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLW1kKSB2YXIoLS1lYXNlLS1zdGFuZGFyZCkgYm94LXNoYWRvdztcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1zb2Z0KTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YXhvbm9teS10ZXJtcyB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgb3JkZXI6IDM7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0teHMpO1xuXG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgLmRhdGUge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIG9yZGVyOiA0O1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5sb2NhdGlvbiB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgb3JkZXI6IDQ7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLS14cyk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG5cbiAgLmJvZHkge1xuICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgIG9yZGVyOiA1O1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBsaW5lLWhlaWdodDogMS44O1xuXG4gICAgLmRhdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1zZW1pYm9sZCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgYVtocmVmXj1cIm1haWx0bzpcIl0ge1xuICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMi4gRGFyayBNb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5jYXJkLFxuICAuYmxvY2stLWNhcmQge1xuICAgIC50aXRsZSB7XG4gICAgICBhOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cImJ1dHRvblwiXSk6bm90KFtjbGFzcyo9XCJ0YXhvbm9teS10ZXJtXCJdKSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tZGFyay1tb2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tbGlnaHRlci0tNDApO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LS1kYXJrLW1vZGUtLWhvdmVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjMuIFByaW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHByaW50IHtcbiAgLmNhcmQsXG4gIC5ibG9jay0tY2FyZCB7XG4gICAgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgW1wiIGF0dHIoaHJlZikgXCJdIFwiO1xuICAgICAgZm9udC1zaXplOiAxMHB0O1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBTdGF0aXN0aWNzIGNvbGxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnN0YXRpc3RpY3MtY29sbGVjdGlvbi0tdmVydGljYWwsXG4uc3RhdGlzdGljcy1jb2xsZWN0aW9uLS1zaWRlLWJ5LXNpZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBWaWV3cyAtIEdyaWQgZm9ybWF0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuRmxleCBzdHlsZXMgZm9yIERydXBhbCBWaWV3cyB1c2luZyB0aGUgR3JpZCBGb3JtYXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udmlld3Mtdmlldy1ncmlkLmhvcml6b250YWwgLnZpZXdzLXJvdyxcbi52aWV3cy12aWV3LWdyaWQudmVydGljYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnZpZXdzLXZpZXctZ3JpZC52ZXJ0aWNhbCAudmlld3Mtcm93LFxuLnZpZXdzLXZpZXctZ3JpZC5ob3Jpem9udGFsIC52aWV3cy1jb2wge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xufVxuXG4udmlld3Mtdmlldy1ncmlkIC52aWV3cy1jb2wge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi52aWV3cy12aWV3LWdyaWQgLnZpZXdzLWNvbDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gIC52aWV3cy12aWV3LWdyaWQuY29scy0xIC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDEwMCUgLSB2YXIoLS1zcGFjZS0tc20pKTtcbiAgfVxuXG4gIC52aWV3cy12aWV3LWdyaWQuY29scy0yIC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDUwJSAtIHZhcigtLXNwYWNlLS1zbSkpO1xuICB9XG5cbiAgLnZpZXdzLXZpZXctZ3JpZC5jb2xzLTMgLnZpZXdzLWNvbCB7XG4gICAgZmxleDogMCAxIGNhbGMoMzMuMzMzJSAtIHZhcigtLXNwYWNlLS1zbSkpO1xuICB9XG4gIC52aWV3cy12aWV3LWdyaWQuY29scy00IC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDI1JSAtIHZhcigtLXNwYWNlLS1zbSkpO1xuICB9XG5cbiAgLnZpZXdzLXZpZXctZ3JpZC5jb2xzLTUgLnZpZXdzLWNvbCB7XG4gICAgZmxleDogMCAxIGNhbGMoMjAlIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gIC52aWV3cy12aWV3LWdyaWQuY29scy02IC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDE2LjY2NiUgLSB2YXIoLS1zcGFjZS0tc20pKTtcbiAgfVxuXG4gIC52aWV3cy12aWV3LWdyaWQuY29scy03IC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDE0LjI4NSUgLSB2YXIoLS1zcGFjZS0tc20pKTtcbiAgfVxuXG4gIC52aWV3cy12aWV3LWdyaWQuY29scy04IC52aWV3cy1jb2wge1xuICAgIGZsZXg6IDAgMSBjYWxjKDEyLjUlIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIH1cblxuICAudmlld3Mtdmlldy1ncmlkLmNvbHMtOSAudmlld3MtY29sIHtcbiAgICBmbGV4OiAwIDEgY2FsYygxMS4xMTElIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIH1cblxuICAudmlld3Mtdmlldy1ncmlkLmNvbHMtMTAgLnZpZXdzLWNvbCB7XG4gICAgZmxleDogMCAxIGNhbGMoMTAlIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIH1cbn1cbiIsIi8qKlxuKiBAZmlsZVxuKiBtb2xlY3VsZXMvY29tcG9uZW50cy9jYXJkL19kZWdyZWUtY2FyZC5zY3NzXG4qL1xuLmRlZ3JlZS1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcblxuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwidGF4b25vbXlcIlxuICAgIFwidGl0bGVcIlxuICAgIFwiYm9keVwiXG4gICAgXCJtb3JlXCI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmciBhdXRvO1xuXG4gIC50aXRsZSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tbWQpIDAgdmFyKC0tc3BhY2UtLW1kKTtcblxuICAgIGdyaWQtYXJlYTogdGl0bGU7XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTN4bCk7XG4gICAgfVxuICB9XG5cbiAgLnRheG9ub215LXRlcm1zIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZ3JpZC1hcmVhOiB0YXhvbm9teTtcbiAgfVxuXG4gIC50YXhvbm9teS10ZXJtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKSB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgLnRheG9ub215LXRlcm0gLm1hdGVyaWFsLWljb25zIHtcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tc20pO1xuICB9XG5cbiAgLmJvZHkge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLW1kKSB2YXIoLS1zcGFjZS0tc20pIHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgICBncmlkLWFyZWE6IGJvZHk7XG5cbiAgICBoNCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgLmRlcGFydG1lbnQtbGlua3MgPiBkaXYge1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2UtLW1kKSAwO1xuICB9XG5cbiAgLmRlcGFydG1lbnQtbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNpemUtLXNtKTtcbiAgICB9XG4gIH1cblxuICAubW9yZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLW1kKTtcblxuICAgIGdyaWQtYXJlYTogbW9yZTtcbiAgfVxufVxuXG4uZGFyay1tb2RlIC5kZWdyZWUtY2FyZCB7XG4gIC5kZXBhcnRtZW50LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICB9XG4gIH1cblxuICAuYm9keSB7XG4gICAgaDQge1xuICAgICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuLS1saWdodGVyLS00MCk7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IENoYXJ0cyAtIEZsb3cgQ2hhcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZsb3djaGFydCB7XG4gIGZpZ2NhcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIG9sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2UtLW1kKSAwIDA7XG4gICAgfVxuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IDIyLjVyZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAuZmxvdy1yaWdodCxcbiAgICAgIC5mbG93LWxlZnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9ja19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAuaXRlbSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxuXG4gIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZmxvdy1kb3duIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxuXG4gIC5mbG93LXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBCcmVhZGNydW1ic1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnJlYWRjcnVtYiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1zbSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgb2wge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ib2xkKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBsaSArIGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiPlwiO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBMYXlvdXRzIC0gUmV0aXJlZCBMYXlvdXRzIC0gVHdvIGNvbCAyNS83NVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5sYXlvdXQtLXR3b2NvbC0yNS03NSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmxheW91dC0tdHdvY29sLTI1LTc1ID4gLmxheW91dF9fcmVnaW9uIHtcbiAgZmxleDogMCAxIDEwMCU7XG59XG5cbi5sYXlvdXQtLXR3b2NvbC0yNS03NSA+IC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBmbGV4OiAwIDEgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xufVxuXG4ubGF5b3V0LS10d29jb2wtMjUtNzUgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IEZvcm1zIC0gUmFkaW9zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuUmFkaW9zIHNoYXJlIG1vc3Qgc3R5bGVzIHdpdGggQ2hlY2tib3hlcywgc2VlIGNoZWNrYm94LnNjc3MgZm9yIG1vcmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICsgbGFiZWwge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cbiAgJjpjaGVja2VkIHtcbiAgICArIGxhYmVsIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL3JhZGlvLnBuZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogQ291bnRkb3duXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJsb2NrLS1jb3VudGRvd24ge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teGwpO1xuXG4gIGRpdltyb2xlPVwidGltZXJcIl0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS14bCk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgc29saWQ7XG4gICAgICB9XG5cbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS0yeGwpIHZhcigtLXNwYWNlLS0zeGwpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxLjU7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuXG4gICAgICAubnVtYmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBGb3JtcyAtIENoZWNrYm94XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jaGVja2JveCxcbi5yYWRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhzKTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvcGFjaXR5OiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG5cbiAgKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1yZWd1bGFyKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tY2hlY2tib3gtc2l6ZSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IHZhcigtLWNoZWNrYm94LXNpemUpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTEwMCUpO1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGModmFyKC0tY2hlY2tib3gtc2l6ZSkgLyAxLjUpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgICsgbGFiZWwge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcihibHVlLS1saWdodGVyLS00MCk7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdCk7XG5cbiAgICAgICAgQG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJjpjaGVja2VkIHtcbiAgICArIGxhYmVsIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm1zL2NoZWNrLnBuZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogRm9ybXMgLSBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZvcm0ge1xuICAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xuICB9XG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLWdyYXkpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IEhlYWRlcnMgLSBIZWFkZXIgcmVnaW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi53ZXN0ZXJuLWhlYWRlci1yZWdpb24ge1xuICAuYmxvY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiBpbml0aWFsO1xuICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tMnhzKTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGRhcmstYmx1ZS1iZztcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLXNtKSB2YXIoLS1ibHVlKTtcbiAgfVxuXG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgfVxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSkgMDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS14cyk7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IE5hdmlnYXRpb24gLSBteVdlc3Rlcm4gbGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm15LXdlc3Rlcm4tbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgbWF4LXdpZHRoOiAzOHJlbTtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IEltYWdlIHdpdGggRGVzY3JpcHRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBEYXJrIE1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmxvY2stLWltYWdlLXdpdGgtZGVzY3JpcHRpb24ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBub25lO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogM2ZyIHZhcigtLXNwYWNlLS0yeGwpIHZhcigtLXNwYWNlLS1sZykgNGZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogdmFyKC0tc3BhY2UtLTJ4bCkgMWZyIHZhcigtLXNwYWNlLS14bCk7XG4gIH1cbiAgZGlzcGxheTogZ3JpZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLWxnKTtcblxuICBncmlkLWFyZWE6IGJvZHk7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJpbWFnZVwiXG4gICAgXCJib2R5XCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gYXV0bztcblxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgLmltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDE7XG4gICAgfVxuXG4gICAgZ3JpZC1hcmVhOiBpbWFnZTtcblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAuYm9keSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS0zeGwpO1xuXG4gICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMztcbiAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiBhbGw7XG4gICAgfVxuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG5cbiAgICAmOm5vdChbY2xhc3MkPVwiLWJnXCJdKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1heC13aWR0aCAkbWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICB9XG4gICAgICBib3JkZXI6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpIHZhcigtLWJsdWUpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICAgIH1cbiAgfVxuXG4gICYubWlycm9yIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNGZyIHZhcigtLXNwYWNlLS1sZykgdmFyKC0tc3BhY2UtLTJ4bCkgM2ZyO1xuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBncmlkLWNvbHVtbjogMyAvIHNwYW4gMjtcbiAgICAgIH1cblxuICAgICAgLmJvZHkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tM3hsKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGFyay1tb2RlIHtcbiAgLmJsb2NrLS1pbWFnZS13aXRoLWRlc2NyaXB0aW9uIHtcbiAgICAuYm9keSB7XG4gICAgICAmOm5vdChbY2xhc3MkPVwiLWJnXCJdKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWRhcmtlci0tODApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBOYXZpZ2F0aW9uIC0gV2VzdGVybiBtZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGlzcGxheSBwcmVmZXJlbmNlc1xuMi4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI21vbGVjdWxlcy13d3UtbWVudS1odG1sLFxuI21vbGVjdWxlcy13d3UtbW9iaWxlLW1lbnUtaHRtbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG59XG5cbi53ZXN0ZXJuLW1lbnUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBncmlkLWFyZWE6IG5vbmU7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIGFsbDtcbiAgICBncmlkLXJvdzogMSAvIHNwYW4gMTtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdyaWQtYXJlYTogd3d1LW1lbnU7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tY29uZGVuc2VkKTtcblxuICAuaWNvbi13aXRoLXRleHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXRvdWNoLXRhcmdldC0tbWluKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcblxuICAgICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDAuMTI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS0yeHMpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tc20pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS0yeHMpIHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXhzKVxuICAgICAgdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuXG4gICAgJi5yZXBvcnQtYmlhcy1xdWljay1saW5rIHtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIH1cblxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTYwKTtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKTtcbiAgICB9XG4gIH1cblxuICAud3d1LW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERpc3BsYXkgcHJlZmVyZW5jZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkge1xuICAud2VzdGVybi1tZW51IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkpO1xuICB9XG59XG5cbi5mb250LS1oeXBlcmxlZ2libGUge1xuICAud2VzdGVybi1tZW51IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0taHlwZXJsZWdpYmxlKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMi4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC53ZXN0ZXJuLW1lbnUge1xuICAgIC5pY29uLXdpdGgtdGV4dCB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cblxuICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS00MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogU3RhdHVzIEFsZXJ0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnN0YXR1cy1hbGVydCB7XG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLm1hdGVyaWFsLWljb25zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tNjApO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1sZyk7XG4gIH1cblxuICAuc3RhdHVzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tNjApO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS14bCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ib2xkKTtcbiAgfVxuXG4gIC5zZXZlcml0eSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1ibHVlLS1kYXJrZXItLTYwKTtcbiAgfVxuXG4gIHN1bW1hcnkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1sZyk7XG4gIH1cbn1cblxuLnN0YXR1cy1hbGVydC0tbWVzc2FnZSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gIGJvcmRlcjogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1ibHVlLS1yZ2IpLCAwLjc1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1ibHVlLS1yZ2IpLCAwLjE1KTtcblxuICAmLnN0YXR1cy1hbGVydC0tbWlub3Ige1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1ibHVlLS1yZ2IpLCAwLjc1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJsdWUtLXJnYiksIDAuMTUpO1xuICB9XG5cbiAgJi5zdGF0dXMtYWxlcnQtLW1ham9yIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0teWVsbG93LS1yZ2IpLCAwLjc1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXllbGxvdy0tcmdiKSwgMC4xNSk7XG4gIH1cblxuICAmLnN0YXR1cy1hbGVydC0tY3JpdGljYWwge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1yZWQtLXJnYiksIDAuNzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tcmVkLS1yZ2IpLCAwLjE1KTtcbiAgfVxuXG4gICYuc3RhdHVzLWFsZXJ0LS1yZXNvbHZlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWdyZWVuLS1yZ2IpLCAwLjc1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWdyZWVuLS1yZ2IpLCAwLjE1KTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5tYXRlcmlhbC1pY29ucyxcbiAgLnN0YXR1cyxcbiAgLnNldmVyaXR5IHtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTIwKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBMaW5rIGxpc3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubGluay1saXN0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgJi5jb2wge1xuICAgICAgICBtYXJnaW46IGNhbGMoLTEgKiAodmFyKC0tc3BhY2UtLXNtKSkpIGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tc20pO1xufVxuXG4uY29sIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKTtcbiAgJi5sZWZ0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGZsZXg6IDAgMCAxNSU7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IFBhZ2UtNDA0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQW5pbWF0aW9uc1xuICBhLiBCb2F0IHRpbWluZ1xuICBiLiBCb2F0IHdhdmVzXG4gIGMuIEZvZyB0aW1pbmdcbiAgZC4gQmlnIHdhdmVzXG4gIGUuIFJvY2sgd2F2ZXNcbjIuIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi53cmFwcGVyLS00MDQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUpO1xuXG4gIGgxIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tNDApO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS05eGwpO1xuICB9XG5cbiAgLnRleHQge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS0tbGcpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC50YWdsaW5lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIge1xuICAubmF2LS00MDQge1xuICAgIC5tYWluLW5hdmlnYXRpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDMydncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQW5pbWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qICBhLiBCb2F0IHRpbWluZyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jdG9zc2luZ2JvYXQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0b3NzaW5nYm9hdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHRvc3Npbmdib2F0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNnM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyB0b3NzaW5nYm9hdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNGRlZyk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNGRlZyk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRvc3Npbmdib2F0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTRkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00ZGVnKTtcbiAgfVxufVxuXG4vKiAgYi4gQm9hdCB3YXZlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3JvY2tpbmd3YXZlcyB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvY2tpbmd3YXZlcztcbiAgYW5pbWF0aW9uLW5hbWU6IHJvY2tpbmd3YXZlcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDZzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDZzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG5cbiAgLXdlYmtpdC10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvY2tpbmd3YXZlcyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMi41ZGVnKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIuNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTIuNWRlZyk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvY2tpbmd3YXZlcyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0yLjVkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyLjVkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTIuNWRlZyk7XG4gIH1cbn1cblxuLyogIGMuIEZvZyB0aW1pbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNmb2cge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmb2c7XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZvZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZvZztcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDYwcztcbiAgLW1vei1hbmltYXRpb24tZHVyYXRpb246IDYwcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2MHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7XG4gIC1tb3otYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7XG59XG5cbkBrZXlmcmFtZXMgZm9nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKSByb3RhdGUoNGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDMwJSxcbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMykgcm90YXRlKC00ZGVnKSB0cmFuc2xhdGUzZCgtMy4xMjVyZW0sIC0xcmVtLCAtMXJlbSk7XG4gICAgb3BhY2l0eTogMC40O1xuICB9XG5cbiAgNDAlLFxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoNGRlZykgdHJhbnNsYXRlM2QoMy4xMjVyZW0sIDFyZW0sIDFyZW0pO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgyLCAyLCAyKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmb2cge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMykgcm90YXRlKDRkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAzMCUsXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMykgcm90YXRlKC00ZGVnKVxuICAgICAgdHJhbnNsYXRlM2QoLTMuMTI1LCAtMXJlbSwgLTFyZW0pO1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgfVxuXG4gIDQwJSxcbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoNGRlZykgdHJhbnNsYXRlM2QoMy4xMjUsIDFyZW0sIDFyZW0pO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDIsIDIsIDIpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGZvZyB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKSByb3RhdGUoNGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDMwJSxcbiAgNTAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4zKSByb3RhdGUoLTRkZWcpIHRyYW5zbGF0ZTNkKC0zLjEyNSwgLTFyZW0sIC0xcmVtKTtcbiAgICBvcGFjaXR5OiAwLjQ7XG4gIH1cblxuICA0MCUsXG4gIDcwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDRkZWcpIHRyYW5zbGF0ZTNkKDMuMTI1LCAxcmVtLCAxcmVtKTtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUzZCgyLCAyLCAyKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qICBkLiBCaWcgd2F2ZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jb3Zlcl93YXZlcyB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdhdmU7XG4gIGFuaW1hdGlvbi1uYW1lOiB3YXZlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNnM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyB3YXZlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEuMWRlZyk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMS4xZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxLjFkZWcpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB3YXZlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMS4xZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEuMWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxLjFkZWcpO1xuICB9XG59XG5cbi8qICBlLiBSb2NrIHdhdmVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jYmFja3JvY2tfd2F2ZXMge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBiYWNrbmZvcnRoO1xuICBhbmltYXRpb24tbmFtZTogYmFja25mb3J0aDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDMwcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBiYWNrbmZvcnRoIHtcbiAgZnJvbSxcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAxMCUsXG4gIDMwJSxcbiAgNTAlLFxuICA3MCUsXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMS44NzVyZW0sIC0wLjA2MjVyZW0sIC0wLjA2MjVyZW0pO1xuICB9XG5cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEuODc1cmVtLCAwLjA2MjVyZW0sIDAuMDYyNXJlbSk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tuZm9ydGgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG4gIDEwJSxcbiAgMzAlLFxuICA1MCUsXG4gIDcwJSxcbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEuODc1cmVtLCAwLCAwKTtcbiAgfVxuICAyMCUsXG4gIDQwJSxcbiAgNjAlLFxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxLjg3NXJlbSwgMCwgMCk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIENvbG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi52aWstc3QwIHtcbiAgb3BhY2l0eTogMTtcblxuICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tMjApO1xufVxuLnZpay1zdDEge1xuICBmaWxsOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG59XG4udmlrLXN0MiB7XG4gIGZpbGw6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcbn1cbi52aWstc3QzIHtcbiAgZmlsbDogdmFyKC0tZ3JheS0tbGlnaHRlci0tNDApO1xufVxuLnZpay1zdDQge1xuICBmaWxsOiB2YXIoLS1ncmF5LS1saWdodGVyLS0yMCk7XG59XG4udmlrLXN0NSB7XG4gIGZpbGw6IHZhcigtLWdyYXktLWRhcmtlci0tMjApO1xufVxuLnZpay1zdDYge1xuICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUpO1xufVxuLnZpay1zdDcge1xuICBmaWxsOiB2YXIoLS1ncmF5LS1kYXJrZXItLTQwKTtcbn1cbi52aWstc3Q4IHtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlOiB2YXIoLS1ncmF5LS1kYXJrZXItLTgwKTtcbiAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xuICBzdHJva2Utd2lkdGg6IDI7XG59XG4udmlrLXN0OSB7XG4gIG9wYWNpdHk6IDAuODU7XG59XG4udmlrLXN0MTAge1xuICBmaWxsOiB2YXIoLS1ibHVlKTtcbn1cbi52aWstc3QxMSB7XG4gIGZpbGw6IHZhcigtLXdoaXRlKTtcbn1cbi52aWstc3QxMiB7XG4gIHN0cm9rZTogdmFyKC0tZ3JheS0tZGFya2VyLS04MCk7XG4gIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcbiAgc3Ryb2tlLXdpZHRoOiA1O1xufVxuLnZpay1zdDEzIHtcbiAgb3BhY2l0eTogMC44NztcblxuICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUpO1xufVxuLnZpay1zdDE0IHtcbiAgb3BhY2l0eTogMC44NTtcblxuICBmaWxsOiB2YXIoLS1kYXJrLWJsdWUpO1xufVxuLnZpay1zdDE1IHtcbiAgZmlsbDogdmFyKC0tZ3JheS0tZGFya2VyLS02MCk7XG59XG4udmlrLXN0MTYge1xuICBvcGFjaXR5OiAwLjg3O1xufVxuLnZpay1zdDE3IHtcbiAgZmlsbDogbm9uZTtcbn1cbi52aWstc3QxOCB7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlcIjtcbn1cbi52aWstc3QxOSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xufVxuLnZpay1zdDIwIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDE7XG59XG4udmlrLXN0MjIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4udmlrLXN0MjQge1xuICBmb250LXNpemU6IDYuMjRyZW07XG59XG4udmlrLXN0MjUge1xuICBmb250LXNpemU6IDMuMDZyZW07XG59XG4udmlrLXN0MjYge1xuICBmaWxsOiB2YXIoLS1ncmF5LS1kYXJrZXItLTgwKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogU2NoZWR1bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBEYXJrIG1vZGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5ibG9jay0tc2NoZWR1bGUge1xuICAuc2NoZWR1bGUtaXRlbSB7XG4gICAgQGluY2x1ZGUgbGlnaHRlc3QtZ3JheS1iZztcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAmLnJvdW5kLWVkZ2VzIHtcbiAgICAuc2NoZWR1bGUtaXRlbSB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVyKTtcblxuICAgICAgYTpob3ZlcjphZnRlcixcbiAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy0tcm91bmRlcik7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2NoZWR1bGUtaGVhZGluZyB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0teHMpIDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLWxnKTtcblxuICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVyKSk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpIHZhcigtLWVhc2UtLXN0YW5kYXJkKVxuICAgICAgICAgIGJveC1zaGFkb3c7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy0tc29mdCk7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgb3V0bGluZTogZG90dGVkIHZhcigtLWJvcmRlci13aWR0aC0tbWQpO1xuICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOmFmdGVyLFxuICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctLXNvZnQtLWhvdmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGltZSxcbiAgLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbGcpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgfVxuXG4gIGRpdjpudGgtb2YtdHlwZShvZGQpIC5zY2hlZHVsZS1pdGVtIHtcbiAgICBib3JkZXItbGVmdDogc29saWQgdmFyKC0tYmx1ZSkgdmFyKC0tYm9yZGVyLXJhZGl1cy0tcm91bmRlcik7XG4gIH1cblxuICBkaXY6bnRoLW9mLXR5cGUoZXZlbikgLnNjaGVkdWxlLWl0ZW0ge1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1ibHVlLS1saWdodGVyLS00MCkgdmFyKC0tYm9yZGVyLXJhZGl1cy0tcm91bmRlcik7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICAuYmxvY2stLXNjaGVkdWxlIHtcbiAgICAuc2NoZWR1bGUtaXRlbSB7XG4gICAgICBAaW5jbHVkZSBkYXJrLWJsdWUtYmc7XG5cbiAgICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogTWVudSBmbHlvdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5EaXNwbGF5IHByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVsdGltZW51X19yZWdpb24ge1xuICBAaW5jbHVkZSBibHVlLWJnO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWdyYWRpZW50LS12ZXJ0aWNhbC0tYmx1ZS10by1kYXJrLWJsdWUpO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1jb25kZW5zZWQpO1xuXG4gIC5tZW51IHtcbiAgICBsaSB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTIwKTtcblxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS10b3VjaC10YXJnZXQtLW1pbik7XG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1tZCk7XG4gICAgICB9XG5cbiAgICAgICYubWVudS1pdGVtLS1hY3RpdmUtcGFnZSB7XG4gICAgICAgIGE6bm90KC5idXR0b24pOm5vdChbY2xhc3MqPVwiY3RhXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTYwKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUge1xuICAgICAgbGkge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoMixcbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTIwKTtcbiAgICB0ZXh0LXNoYWRvdzogdmFyKC0tc2hhZG93LS1oYXJkKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tMnhsKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXNlbWlib2xkKTtcblxuICAgIGE6bm90KC5idXR0b24pLFxuICAgIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgPiBkaXYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgfVxuXG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWFyZ2luOiAwIHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkRpc3BsYXkgcHJlZmVyZW5jZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkge1xuICAudWx0aW1lbnVfX3JlZ2lvbiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLWR5c2xleGlhLWZyaWVuZGx5KTtcbiAgfVxufVxuXG4uZm9udC0taHlwZXJsZWdpYmxlIHtcbiAgLnVsdGltZW51X19yZWdpb24ge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1oeXBlcmxlZ2libGUpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IFNlYXJjaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERpc3BsYXkgcHJlZmVyZW5jZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VhcmNoIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgbGVmdDogaW5oZXJpdDtcbiAgfVxuXG4gIHotaW5kZXg6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZW5kO1xuXG4gIC50b2dnbGUtc2VhcmNoLFxuICAuc3VibWl0LXNlYXJjaCB7XG4gICAgb3JkZXI6IDI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLXZlcnRpY2FsLS1saWdodC1ibHVlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtYXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvcmRlcjogMTtcblxuICAgIC5zZWFyY2gtYm94IHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gICAgICAgIG1pbi13aWR0aDogMTJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1sYWJlbCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgfVxuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBEaXNwbGF5IHByZWZlcmVuY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvbnQtLWR5c2xleGlhLWZyaWVuZGx5IHtcbiAgLnNlYXJjaCAuc2VhcmNoLWFyZWEgLnNlYXJjaC1ib3gge1xuICAgIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1zbSk7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IE1hYmVsIHNlYXJjaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jaXNsYW5kb3JhLXNlYXJjaC1jb250YWluZXIge1xuICBAaW5jbHVkZSBibHVlLWJnO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tbWQpIDI1dnc7XG4gIH1cbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtLWRpYWdvbmFsLS1ibHVlLXRvLWRhcmstYmx1ZSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgLmJsb2NrLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5mb3JtLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5hZHZhbmNlZC1zZWFyY2gtbGluayB7XG4gICAgYWxpZ24tc2VsZjogZW5kO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxufVxuXG4jaXNsYW5kb3JhLXNvbHItc2ltcGxlLXNlYXJjaC1mb3JtIHtcbiAgLmZvcm0taXRlbS1pc2xhbmRvcmEtc2ltcGxlLXNlYXJjaC1xdWVyeSB7XG4gICAgKyAuZm9ybS1zdWJtaXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogNy41cmVtO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5mb3JtLXRleHQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDcuNXJlbSk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLW1kKTtcbiAgICB9XG4gIH1cbn1cblxuaW5wdXRbdGl0bGU9XCJBZGQgZmllbGRcIl0sXG5pbnB1dFt0aXRsZT1cIlJlbW92ZSBmaWVsZFwiXSB7XG4gIHdpZHRoOiB2YXIoLS10b2dnbGUtc2l6ZS0tc20pO1xuICBoZWlnaHQ6IHZhcigtLXRvZ2dsZS1zaXplLS1zbSk7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uaXNsYW5kb3JhLXNvbHItYWR2YW5jZWQtY29udHJvbHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1zbSk7XG5cbiAgLmZvcm0taXRlbSxcbiAgLmZvcm0tc3VibWl0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IE1lbnVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBOZXN0ZWQgbWVudXNcbjIuIEJsb2NrIHN5c3RlbSBtZW51c1xuMy4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAxLiBOZXN0ZWQgbWVudXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5tZW51IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcblxuICAgICAgbGkgPiBhIHtcbiAgICAgICAgJlthcmlhLWN1cnJlbnQ9XCJwYWdlXCJdIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMi4gQmxvY2sgc3lzdGVtIG1lbnVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJsb2NrLS1tZW51IHtcbiAgLm1lbnUge1xuICAgIGxpID4gYSB7XG4gICAgICAmW2FyaWEtY3VycmVudD1cInBhZ2VcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS00MCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gRGFyayBtb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5wYWdlLWNvbnRlbnQgLmJsb2NrLS1tZW51IHtcbiAgICAubWVudSB7XG4gICAgICBsaSA+IGEge1xuICAgICAgICAmW2FyaWEtY3VycmVudD1cInBhZ2VcIl0ge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmVlbik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IFF1aWNrc2VhcmNoIGZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3F1aWNrLXNlYXJjaC1saXN0LW5hdiB7XG4gIC5sbi1sZXR0ZXJzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGEsXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWluLXdpZHRoOiB2YXIoLS10b3VjaC10YXJnZXQtLW1pbik7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS10b3VjaC10YXJnZXQtLW1pbik7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXNlbWlib2xkKTtcbiAgICB9XG4gIH1cblxuICAubG4tZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXJlZ3VsYXIpO1xuICB9XG59XG5cbi5xdWlja3NlYXJjaC1mb3JtLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgI3F1aWNrLXNlYXJjaC1mb3JtIHtcbiAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCkgMDtcbiAgfVxuXG4gICNxdWljay1zZWFyY2gtaW5wdXQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1zcGFjZS0tc20pKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBTcGxhc2hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNwbGFzaCxcbi5mZWF0dXJlZC1tYWpvci1zcGxhc2gtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uc3BsYXNoID4gZGl2LFxuLmZlYXR1cmVkLW1ham9yLXNwbGFzaC1hcmVhID4gZGl2IHtcbiAgei1pbmRleDogMDtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGdyaWQtcm93OiAxO1xuXG4gICY6bnRoLW9mLXR5cGUoMSkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICYuY29udGV4dHVhbCB7XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmVkLW1ham9yLXNwbGFzaC1hcmVhIC5oZWFkbGluZS5ib3gtaGVhZGxpbmUsXG4uZmVhdHVyZWQtbWFqb3Itc3BsYXNoLWFyZWEgLmhlYWRsaW5lLnNpbXBsZS1jZW50ZXJlZCB7XG4gIGhlaWdodDogaW5pdGlhbDtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogU3RhdGlzdGljXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gU3RhY2tlZCB2ZXJzaW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJsb2NrLS1zdGF0aXN0aWMge1xuICBtYXJnaW46IHZhcigtLXNwYWNlLS14cykgMDtcblxuICAubWF0ZXJpYWwtaWNvbnMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1sZyk7XG4gIH1cblxuICAuc3RhdGlzdGljLWhlYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS0tc20pIDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXhsKTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogMTIuNXJlbTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTUwJSk7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC0tbGcpO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cblxuICAubnVtYmVyIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLWJvbGQpO1xuICB9XG5cbiAgJi53aGl0ZS1iZyB7XG4gICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgIC5ibG9ja19fdGl0bGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZS0tZGFya2VyLS00MCk7XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBWZXJ0aWNhbGx5IHN0eWxlZCBibG9ja3MsIHdoaWNoIGdldCBsYWlkIG91dCBzaWRlLWJ5LXNpZGUgaW4gYSBjb2xsZWN0aW9uICovXG4uYmxvY2stLXN0YXRpc3RpYy5zdGF0aXN0aWMtLXZlcnRpY2FsLFxuLnN0YXRpc3RpY3MtY29sbGVjdGlvbi0tc2lkZS1ieS1zaWRlIC5ibG9jay0tc3RhdGlzdGljIHtcbiAgbWluLXdpZHRoOiAxMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgbWFyZ2luOiAwIHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVyKTtcblxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLm51bWJlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbGcpO1xuICB9XG5cbiAgLnRleHQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gU3RhY2tlZCB2ZXJzaW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJsb2NrLS1zdGF0aXN0aWMuc3RhdGlzdGljLS1ob3Jpem9udGFsLFxuLnN0YXRpc3RpY3MtY29sbGVjdGlvbi0tc3RhY2tlZCAuYmxvY2stLXN0YXRpc3RpYyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJoZWFkaW5nIGhlYWRpbmcgaGVhZGluZ1wiIFwiaWNvbiBudW1iZXIgdGV4dFwiO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSkgdmFyKC0tc3BhY2UtLW1kKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy0tcm91bmRlcik7XG5cbiAgLnN0YXRpc3RpYy1oZWFkaW5nIHtcbiAgICBncmlkLWFyZWE6IGhlYWRpbmc7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLm1hdGVyaWFsLWljb25zIHtcbiAgICBncmlkLWFyZWE6IGljb247XG4gIH1cblxuICAubnVtYmVyIHtcbiAgICBncmlkLWFyZWE6IG51bWJlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTN4bCk7XG4gIH1cblxuICAudGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBOYXZpZ2F0aW9uIC0gUGFnZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhZ2VyIHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMC41NjI1cmVtO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtaW4td2lkdGg6IHZhcigtLXRvdWNoLXRhcmdldC0tbWluKTtcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXRvdWNoLXRhcmdldC0tbWluKTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JlZW4tLWxpZ2h0ZXItLTQwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogTmF2aWdhdGlvbiAtIFNraXAgY29udGVudCBsaW5rXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNraXAtbGluayB7XG4gICYuZm9jdXNhYmxlIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNsaXAtcGF0aDogaW5pdGlhbDtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGNsaXA6IGluaXRpYWw7IC8vIElFIHN1cHBvcnRcbiAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgICBvdXRsaW5lLW9mZnNldDogY2FsYygtMSAqIHZhcigtLWJvcmRlci13aWR0aC0tbGcpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogUmliYm9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5yaWJib24ge1xuICAtLXJpYmJvbi10YWlsLWhlaWdodDogMy4xMjVyZW07XG4gIC0tcmliYm9uLXdpZHRoOiAxMnJlbTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogdmFyKC0tcmliYm9uLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcmliYm9uLXRhaWwtaGVpZ2h0KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLWxnKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IGNhbGMoLTEgKiB2YXIoLS1yaWJib24tdGFpbC1oZWlnaHQpKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1yaWJib24tdGFpbC1oZWlnaHQpIHNvbGlkIHZhcigtLWdyYXktLWxpZ2h0ZXItLTgwKTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogY2FsYyh2YXIoLS1yaWJib24td2lkdGgpIC8gMikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogY2FsYyh2YXIoLS1yaWJib24td2lkdGgpIC8gMikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5PcmdhbmlzbTogTmF2aWdhdGlvbiAtIHVsdGltZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGhlc2Ugc3R5bGVzIGFyZSB0byBvdmVyd3JpdGUgdGhlIGRlZmF1bHQgdWx0aW1lbnUgc3R5bGVzLiBBY3R1YWwgbWVudVxuc3R5bGluZyBoYXBwZW5zIGluIE1vbGVjdWxlcyAtIE5hdmlnYXRpb24gLSBNYWluIG5hdmlnYXRpb24uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVsdGltZW51IHtcbiAgei1pbmRleDogaW5pdGlhbDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgPiBsaSB7XG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICB9XG5cbiAgc2VjdGlvbi51bHRpbWVudV9fZmx5b3V0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgei1pbmRleDogaW5pdGlhbDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZ3JpZC1hcmVhOiBmbHlvdXQ7XG4gICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xuICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJi5vcGVuIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLnVsdGltZW51LS1iYXNpYyB7XG4gIC5yZWdpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnVsdGltZW51LS1ob3Jpem9udGFsIHtcbiAgLnVsdGltZW51X19saW5rIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgJi5vcGVuIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJldCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4udWx0aW1lbnVfX3JlZ2lvbixcbi51bHRpbWVudS0taHRiIC51bHRpbWVudV9fZmx5b3V0LFxuLnVsdGltZW51LS1odGIgLnVsdGltZW51X19yZWdpb24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWx0aW1lbnUtLWhvdmVyIGxpOmhvdmVyID4gLnVsdGltZW51X19mbHlvdXQsXG4udWx0aW1lbnUtLWhvdmVyIGxpIGE6YWN0aXZlICsgLnVsdGltZW51X19mbHlvdXQsXG4udWx0aW1lbnUtLWhvdmVyIGxpIGE6Zm9jdXMgKyAudWx0aW1lbnVfX2ZseW91dCxcbi51bHRpbWVudS0taG92ZXIgbGkgLnVsdGltZW51X19mbHlvdXQ6Zm9jdXMtd2l0aGluIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm9wZW4ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4jYmxvY2stdWx0aW1lbnVtYWlubmF2aWdhdGlvbiB7XG4gICYuY29udGV4dHVhbC1yZWdpb24ge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICB9XG59XG5cbi5idXR0b24ge1xuICAmLmJ1dHRvbi0tdWx0aW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBTZWFyY2ggcGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblN0eWxlcyBmb3Igc2VhcmNoMi53d3UuZWR1XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNlYXJjaC13cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gdmFyKC0tc3BhY2UtLW1kKSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1tZCk7XG5cbiAgKiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLXNhbnMtc2VyaWYpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1tZCk7XG4gIH1cblxuICAuc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnNpbXBsZS1zZWFyY2gge1xuICAgIC5zZWFyY2gtYXJlYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5zZWFyY2gtcXVlcnkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgfVxuICAgICAgZmxleDogMTtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIHZhcigtLXNwYWNlLS1tZCkgLSA3LjVyZW0pO1xuICAgIH1cblxuICAgIC5zZWFyY2gtc3VibWl0IHtcbiAgICAgIGZsZXg6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5yZXN1bHQtbnVtYmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS14cyk7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLWJvbGQpO1xuICB9XG5cbiAgLnJlc3VsdC10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG4gIH1cblxuICAuc2VhcmNoLXJlc3VsdHMtc3VtbWFyeSB7XG4gICAgQGluY2x1ZGUgbGlnaHQtZ3JheS1iZztcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAubnVtYmVyLW9mLXJlc3VsdHMgYSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAuc2VhcmNoLXBhZ2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLXNtKTtcblxuICAgIGEge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYm9sZCk7XG4gICAgfVxuICB9XG5cbiAgLnF1ZXJ5IHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLWJvbGQpO1xuICB9XG59XG5cbi5mb250LS1keXNsZXhpYS1mcmllbmRseSB7XG4gIC5zZWFyY2gtd3JhcHBlciB7XG4gICAgKiB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tZHlzbGV4aWEtZnJpZW5kbHkpO1xuICAgIH1cbiAgfVxufVxuXG4uZm9udC0taHlwZXJsZWdpYmxlIHtcbiAgLnNlYXJjaC13cmFwcGVyIHtcbiAgICAqIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1oeXBlcmxlZ2libGUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBTb2NpYWwgbWVkaWEgbGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNvY2lhbC1tZWRpYS1saW5rcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXgtd2lkdGg6IDI1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5zb2NpYWwtaWNvbiB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpIHZhcigtLXNwYWNlLS1tZCkgMCAwO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IFRleHQgLSBUaW1lbGluZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi50aW1lbGluZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG59XG5cbi50aW1lbGluZS1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cblxuICB3aWR0aDogODAlO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuXG4gICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgQGluY2x1ZGUgbGlnaHRlc3QtYmx1ZS1iZztcblxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLnRpbWVsaW5lLWhlYWRpbmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2UtLXhsKSk7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cblxuICAgIC50aW1lbGluZS1pdGVtLS1oaWdobGlnaHRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS02MCk7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLTN4bCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0teGwpKTtcbiAgICB9XG4gIH1cblxuICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcbiAgICBAaW5jbHVkZSBsaWdodC1ibHVlLWJnO1xuXG4gICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcblxuICAgIC50aW1lbGluZS1oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tc3BhY2UtLXhsKSk7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cblxuICAgIC50aW1lbGluZS1pdGVtLS1oaWdobGlnaHRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLS1saWdodGVyLS04MCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS0zeGwpO1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0teGwpKTtcbiAgICB9XG4gIH1cblxuICAudGltZWxpbmUtaGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICB9XG5cbiAgLnRpbWVsaW5lLWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAubWF0ZXJpYWwtaWNvbnMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1zbSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogdmFyKC0tc3BhY2UtLTJ4cyk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIERhcmsgbW9kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5kYXJrLW1vZGUge1xuICAudGltZWxpbmUtYmxvY2s6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgQGluY2x1ZGUgZGFyay1ibHVlLWJnO1xuXG4gICAgLnRpbWVsaW5lLWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tMjApO1xuICAgIH1cbiAgfVxuXG4gIC50aW1lbGluZS1ibG9jazpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgQGluY2x1ZGUgZGFya2VzdC1ibHVlLWJnO1xuXG4gICAgLnRpbWVsaW5lLWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUtLWRhcmtlci0tMjApO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk1vbGVjdWxlOiBMb2NhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBHcm93aW5nIGNpcmNsZSBpbnRlcmFjdGlvblxuMi4gU1ZHc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi53d3UtbG9jYXRpb25zIHtcbiAgLS1sb2NhdGlvbnMtYmxvY2std2lkdGg6IDM3LjVyZW07XG4gIC0tbG9jYXRpb25zLWJsb2NrLXdpZHRoLS1iaWdnZXI6IDU2LjI1cmVtO1xuICAtLWxvY2F0aW9uLWJ1dHRvbi1zaXplOiAxMHJlbTtcbiAgLS1sb2NhdGlvbi1pY29uLWhlaWdodDogNS42MjVyZW07XG4gIC0tc3Ryb2tlLXdpZHRoLS1oZWF2eTogMC43NXJlbTtcbiAgLS1zdHJva2Utd2lkdGgtLW1lZGl1bTogMC41cmVtO1xuICAtLWxvY2F0aW9ucy1pY29uLXNwYWNpbmc6IDEuODc1cmVtO1xuICAtLWxvY2F0aW9ucy1mb250LXNpemU6IDEuMTI1cmVtO1xuICAtLWxvY2F0aW9ucy10cmFuc2l0aW9uLXNwZWVkOiA1MDBtcztcblxuICBtYXgtd2lkdGg6IHZhcigtLWxvY2F0aW9ucy1ibG9jay13aWR0aCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIC5idXR0b24tY2x1c3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIH1cblxuICAuYnV0dG9uLWFuaW1hdGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4OiAwIDEgMzMlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IHZhcigtLWxvY2F0aW9ucy1pY29uLXNwYWNpbmcpIDA7XG4gIH1cblxuICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS1sb2NhdGlvbi1idXR0b24tc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1sb2NhdGlvbi1idXR0b24tc2l6ZSk7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgMS4gR3Jvd2luZyBjaXJjbGUgaW50ZXJhY3Rpb25cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5ncm93IHtcbiAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWxvY2F0aW9ucy10cmFuc2l0aW9uLXNwZWVkKTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuICAgICAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMzEuMjVyZW07XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjNzVjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgLnN2Zy1jb250YWluZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWxvY2F0aW9ucy10cmFuc2l0aW9uLXNwZWVkKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDMsIDEuMDMpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMsIDEuMDMpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhmMWZmO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIC5zdmctY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1mb2N1cy1vdXRsaW5lKSB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuZGVybGluZSBhbmltYXRpb25cbiAgLmxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tbG9jYXRpb25zLWljb24tc3BhY2luZyk7XG4gICAgbWFyZ2luLXRvcDogLXZhcigtLWhhbGYtc3BhY2luZyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXVuZGVybGluZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoYmx1ZS0tZGFya2VyLS0yMCk7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IHZhcigtLWxvY2F0aW9ucy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxvY2F0aW9ucy1pY29uLXNwYWNpbmcpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDk1JTtcbiAgICAgIGxlZnQ6IDMwJTtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgYWxsIDAuMXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoYmx1ZS0tZGFya2VyLS0yMCk7XG4gICAgfVxuICB9XG5cbiAgLnN2Zy1jb250YWluZXIge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgLmN1c3RvbS11bmRlcmxpbmU6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIDIuIFNWR3NcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiB2YXIoLS1sb2NhdGlvbi1pY29uLWhlaWdodCk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3RhbmRhcmQtc3BhY2luZyk7XG4gIH1cblxuICAuY2xzLTEsXG4gIC5jbHMtMixcbiAgLnN0MSxcbiAgLnN0MixcbiAgLnN0MyxcbiAgLnN0NCB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6IHZhcigtLWJsdWUtLWRhcmtlci0tMjApO1xuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgIHN0cm9rZS13aWR0aDogdmFyKC0tc3Ryb2tlLXdpZHRoLS1oZWF2eSk7XG4gIH1cblxuICAuY2xzLTIsXG4gIC5zdDAsXG4gIC5zdDEge1xuICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcbiAgfVxuXG4gIC5jbHMtMyB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6IHZhcihibHVlLS1kYXJrZXItLTIwKTtcbiAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcbiAgICBzdHJva2Utd2lkdGg6IHZhcigtLXN0cm9rZS13aWR0aC0tbWVkaXVtKTtcbiAgfVxuXG4gICYuc2luZ2xlLXJvdyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHZhcigtLWxvY2F0aW9ucy1ibG9jay13aWR0aC0tYmlnZ2VyKTtcbiAgICB9XG5cbiAgICAuYnV0dG9uLWNsdXN0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi1hbmltYXRlZCB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWhhbGYtc3BhY2luZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IFN3aXRjaGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jb250ZW50LXN3aXRjaGVyLFxuLm1hYmVsLWNvbnRlbnQtc3dpdGNoZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWdyYWRpZW50LS12ZXJ0aWNhbC0tbGlnaHQtYmx1ZSk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IGNhbGMoLTEgKiB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstYmx1ZS0tZGFya2VyLS02MCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbi0tbGlnaHRlci0tMjApO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICYuc2hvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogMC4zcmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNpemUtLXhzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbnRlbnQtc3dpdGNoZXItY29udGFpbmVyLFxuLm1hYmVsLWNvbnRlbnQtc3dpdGNoZXItY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZGlzcGxheTogLW1zLWdyaWQ7XG5cbiAgLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG4gICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gICAgLW1zLWdyaWQtY29sdW1uOiAxO1xuICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tbWQpO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5sYXlvdXQtYnVpbGRlci0tbGF5b3V0IHtcbiAgLmNvbnRlbnQtc3dpdGNoZXItY29udGFpbmVyIHtcbiAgICAuY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Nb2xlY3VsZTogVGV4dCAtIFBhZ2UgdGl0bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhZ2UtdGl0bGUsXG4ucGFuZS1wYWdlLXRpdGxlIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICY6YWZ0ZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTUwJSk7XG4gIH1cbn1cblxuLnBhdGgtZnJvbnRwYWdlIC5ibG9jay0tcGFnZS10aXRsZS1ibG9jayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpOyAvLyBJRSBzdXBwb3J0IG1haW5seSwgY2xpcCBwYXRoIGlzIHByZWZlcnJlZFxuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuTW9sZWN1bGU6IFRleHQgLSBTZWN0aW9uIHRpdGxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLTN4bCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tYmxhY2spO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5PcmdhbmlzbTogVmlld3MgLSBWaWV3cyBleHBvc2VkIGZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnZpZXdzLWV4cG9zZWQtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSAxMDAlO1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG5cbiAgPiBkaXYge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgfVxuXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cblxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IEJsb2NrIHRlbXBsYXRlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9jay0tZnVsbC1wYWdlLFxuLmJsb2NrLS1oYWxmLXBhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG5cbiAgLmJsb2NrX190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmJsb2NrLS1mdWxsLXBhZ2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS0zeGwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLTN4bCk7XG4gIH1cbiAgZGlzcGxheTogZ3JpZDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luOiAwIGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcbn1cblxuLmJsb2NrLS1oYWxmLXBhZ2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS0zeGwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLTN4bCk7XG4gIH1cbiAgZGlzcGxheTogZ3JpZDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtaW4taGVpZ2h0OiA0NXZoO1xuICBtYXJnaW46IDAgY2FsYygtMSAqIHZhcigtLXNwYWNlLS1zbSkpO1xufVxuXG4ubGF5b3V0LS10d29jb2wtc2VjdGlvbi0tNTAtNTAge1xuICAuYmxvY2stLWhhbGYtcGFnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIHdpZHRoOiA1MHZ3O1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICAgIC5ibG9jay0taGFsZi1wYWdlIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNlLS1zbSkpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gdmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCkpIC8gLTIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICAuYmxvY2stLWhhbGYtcGFnZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2UtLXNtKSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gdmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCkpIC8gLTIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBDb250ZW50IC0gQ29udGVudCByZWdpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhZ2UtY29udGVudCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogdmFyKC0tZ3JpZC1jb2x1bW5zLS1sZyk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1ncmlkLWNvbHVtbnMtLWxnKTtcbiAgfVxuICBkaXNwbGF5OiAtbXMtZ3JpZDtcbiAgZGlzcGxheTogZ3JpZDtcblxuICAtbXMtZ3JpZC1jb2x1bW5zOiB2YXIoLS1ncmlkLWNvbHVtbnMtLXNtKTtcbiAgLW1zLWdyaWQtcm93czogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICBcIiAuIHNraXBfdG9fY29udGVudCAuIFwiXG4gICAgXCIgLiBjb250ZW50ICAgICAgICAgLiBcIjtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1ncmlkLWNvbHVtbnMtLXNtKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXG4gICNtYWluLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIGdyaWQtYXJlYTogc2tpcF90b19jb250ZW50O1xuICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAtbXMtZ3JpZC1yb3c6IDE7XG4gICAgLW1zLWdyaWQtcm93LXNwYW46IDE7XG4gIH1cblxuICAucmVnaW9uLXdyYXBwZXIge1xuICAgIGdyaWQtYXJlYTogY29udGVudDtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDE7XG4gICAgLW1zLWdyaWQtcm93OiAyO1xuICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IEVtYWlsIHNpZ25hdHVyZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZW1haWxfc2lnbmF0dXJlX3RhYmxlIHtcbiAgd2lkdGg6IGluaXRpYWw7XG5cbiAgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBGb290ZXJzIC0gV2VzdGVybiBmb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnd3dS1mb290ZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IHZhcigtLXNwYWNlLS1zbSkgMWZyIDFmciB2YXIoLS1zcGFjZS0tc20pO1xuICAgIC1tcy1ncmlkLXJvd3M6IHZhcigtLXNwYWNlLS1sZykgYXV0byBhdXRvIHZhcigtLXNwYWNlLS1sZyk7XG5cbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCIuIC4uLiAuLi4gLlwiXG4gICAgICBcIi4gbG9nbyBpbmZvICAuXCJcbiAgICAgIFwiLiBzdGF0ZW1lbnQgaWNvbnMgLlwiXG4gICAgICBcIi4gY29weXJpZ2h0IGNvcHlyaWdodCAuXCI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1zcGFjZS0tc20pIDFmciAxZnIgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHZhcigtLXNwYWNlLS1sZykgYXV0byBhdXRvIHZhcigtLXNwYWNlLS1sZyk7XG4gICAganVzdGlmeS1pdGVtczogZW5kO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogY2FsYygoMTAwdncgLSB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSkgLyAyKSBhdXRvXG4gICAgICBhdXRvIGF1dG8gY2FsYygoMTAwdncgLSB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKSkgLyAyKTtcblxuICAgIGRpc3BsYXk6IC1tcy1ncmlkO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgIFwiLiAuLi4gLi4uIC4uLiAuXCJcbiAgICAgIFwiLiBsb2dvIHN0YXRlbWVudCBpbmZvICAuXCJcbiAgICAgIFwiLiBsb2dvIHN0YXRlbWVudCBpY29ucyAuXCJcbiAgICAgIFwiLiBjb3B5cmlnaHQgY29weXJpZ2h0IGNvcHlyaWdodCAuXCI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBjYWxjKCgxMDB2dyAtIHZhcigtLWNvbnRlbnQtYXJlYS1tYXgtd2lkdGgpKSAvIDIpIGF1dG8gYXV0byBhdXRvIGNhbGMoXG4gICAgICAgICgxMDB2dyAtIHZhcigtLWNvbnRlbnQtYXJlYS1tYXgtd2lkdGgpKSAvIDJcbiAgICAgICk7XG4gIH1cblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAubG9nbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGdyaWQtYXJlYTogbG9nbztcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xuICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgLW1zLWdyaWQtcm93LXNwYW46IDI7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICAgIH1cblxuICAgIHdpZHRoOiB2YXIoLS1sb2dvLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tbG9nby1zaXplKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC50cmliYWwtbGFuZHMtc3RhdGVtZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZ3JpZC1hcmVhOiBzdGF0ZW1lbnQ7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAyO1xuICAgIH1cblxuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zYXBjZS0tc20pO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLW1kKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tbGlnaHQpO1xuICAgIH1cbiAgfVxuXG4gIC53ZXN0ZXJuLWluZm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgICBncmlkLWFyZWE6IGluZm87XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDQ7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgYWxpZ24tc2VsZjogZW5kO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnNvY2lhbC1tZWRpYS1saW5rcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGdyaWQtYXJlYTogaWNvbnM7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDQ7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcbiAgICAgIC1tcy1ncmlkLXJvdzogMztcbiAgICAgIC1tcy1ncmlkLXJvdy1zcGFuOiAxO1xuICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICB9XG5cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAuNzVyZW0gYXV0bztcblxuICAgIC5zb2NpYWwtaWNvbiB7XG4gICAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1zbSkgMCAwIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgfVxuICB9XG5cbiAgLmNvcHlyaWdodCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGdyaWQtYXJlYTogY29weXJpZ2h0O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0tbGlnaHQpO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBTaXRlcyAtIENhdGFsb2dcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xudGFibGUudG9wbGV2ZWwge1xuICBtYXJnaW46IDA7XG5cbiAgdHI6bnRoLW9mLXR5cGUoMm4pLFxuICB0cjpudGgtb2YtdHlwZSgybiArIDEpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICB9XG5cbiAgdGQ6bnRoLW9mLXR5cGUobikge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbiNhY2Fsb2ctbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IEhlYWRlcnMgLSBXZXN0ZXJuIGhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIE1vYmlsZSBtZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndlc3Rlcm4taGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ud2VzdGVybi1oZWFkZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJsb2dvIGRpc3BsYXktc2V0dGluZ3Mgd3d1LW1lbnVcIlxuICAgICAgXCJsb2dvIHNpdGUtbmFtZSBzaXRlLW5hbWVcIlxuICAgICAgXCJsb2dvIHdlc3Rlcm4taGVhZGVyLXJlZ2lvbiB3ZXN0ZXJuLWhlYWRlci1yZWdpb25cIlxuICAgICAgXCJtYWluLW5hdiBtYWluLW5hdiBtYWluLW5hdlwiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogY2FsYygodmFyKC0tbG9nby1zaXplKSArICh2YXIoLS1zcGFjZS0tbWQpICogMikpKSAxZnIgMmZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czpcbiAgICAgIGNhbGMoKHZhcigtLWxvZ28tc2l6ZSkgLyAzKSkgY2FsYygodmFyKC0tbG9nby1zaXplKSAvIDMpKVxuICAgICAgYXV0byBhdXRvO1xuICB9XG5cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICBcIi4uLi4gbG9nbyBtZW51LXRvZ2dsZVwiXG4gICAgXCJzaXRlLW5hbWUgc2l0ZS1uYW1lIHNpdGUtbmFtZVwiXG4gICAgXCJ3ZXN0ZXJuLWhlYWRlci1yZWdpb24gd2VzdGVybi1oZWFkZXItcmVnaW9uIHdlc3Rlcm4taGVhZGVyLXJlZ2lvblwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLXRvZ2dsZS1zaXplLS1zbSkgYXV0byB2YXIoLS10b2dnbGUtc2l6ZS0tc20pO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHZhcigtLWxvZ28tc2l6ZSkgYXV0byBhdXRvO1xuXG4gIGE6bm90KFtjbGFzcyo9XCJjdGFcIl0pOm5vdChbY2xhc3MqPVwiYnV0dG9uXCJdKTpub3QoW2NsYXNzKj1cInRheG9ub215LXRlcm1cIl0pe1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgJjphY3RpdmUsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zaXRlLW5hbWUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgZ3JpZC1hcmVhOiBzaXRlLW5hbWU7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItdG9wOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLXNtKSB2YXIoLS1ibHVlKTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLXNtKSB2YXIoLS1ibHVlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tbGcpO1xuXG4gICAgLmhvbWUtbGluayB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tMnhzKTtcbiAgICB9XG5cbiAgICAmLm1vYmlsZSB7XG4gICAgICAuYmxvY2stLXNlY29uZGFyeS1zaXRlLW5hbWUge1xuICAgICAgICBtYXJnaW46IC12YXIoLS1zcGFjZS0tc20pO1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtLXNtKSB2YXIoLS1ibHVlKSBzb2xpZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud2VzdGVybi1sb2dvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogaW5pdGlhbDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdyaWQtYXJlYTogbG9nbztcbiAgICB3aWR0aDogdmFyKC0tbG9nby1zaXplKSArIHZhcigtLXNwYWNlLS1tZCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1sb2dvLXNpemUpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS10b2dnbGUtc2l6ZS0tc20pO1xuICB9XG5cbiAgLndlc3Rlcm4taGVhZGVyLXJlZ2lvbiB7XG4gICAgZ3JpZC1hcmVhOiB3ZXN0ZXJuLWhlYWRlci1yZWdpb247XG4gIH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gTW9iaWxlIG1lbnVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udG9nZ2xlLW1lbnUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBncmlkLWFyZWE6IG1lbnUtdG9nZ2xlO1xuICB3aWR0aDogaW5pdGlhbDtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcblxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5tb2JpbGUtbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwiZGlzcGxheS1zZXR0aW5ncyBtZW51LXRvZ2dsZVwiXG4gICAgXCJ3d3UtbWVudSB3d3UtbWVudVwiXG4gICAgXCJtYWluLW5hdiBtYWluLW5hdlwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gdmFyKC0tdG9nZ2xlLXNpemUtLXNtKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtLWZhc3QpIHZhcigtLWVhc2UtLXN0YW5kYXJkKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoMCk7XG4gIG9wYWNpdHk6IDE7XG5cbiAgJi5vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgfVxuXG4gICYuY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV4KDEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZvbnQtLWR5c2xleGlhLWZyaWVuZGx5LFxuLmZvbnQtLWh5cGVybGVnaWJsZSB7XG4gIC5tb2JpbGUtbWVudSB7XG4gICAgLnRvZ2dsZS1tZW51LFxuICAgIC5pY29uLXdpdGgtdGV4dCB7XG4gICAgICAmLnNtYWxsIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgd2lkdGg6IGNhbGModmFyKC0tdG9nZ2xlLXNpemUtLWxnKSArIDEpO1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tdG9nZ2xlLXNpemUtLWxnKSArIDEpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogTGF5b3V0cyAtIEZsZXhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBJZSBmaXhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGF5b3V0LS1mbGV4IC5sYXlvdXRfX3JlZ2lvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEllIGZpeFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgLmxheW91dC0tZmxleCAubGF5b3V0X19yZWdpb24ge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuT3JnYW5pc206IFF1aWNrIHNlYXJjaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmxpc3RuYXYuanMgc3R5bGVzLCB3aGljaCBhcmUgbmVlZGVkIGZvciBmdW5jdGlvbmFsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBBbnkgcmVzdWx0IHdpdGggYm90aCBjbGFzc2VzIHNob3VsZCBiZSBzaG93biAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3ROYXZTaG93IHtcbiAgJi5xdWlja1NlYXJjaFNob3cge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxufVxuXG4vKiBBbnkgcmVzdWx0IHdpdGggZWl0aGVyIGNsYXNzIHNob3VsZCBiZSBoaWRkZW4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3ROYXZIaWRlLFxuLnF1aWNrU2VhcmNoSGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFRoaXMgaXMgdGhlIG5vIHJlc3VsdHMgbWVzc2FnZSBnZW5lcmF0ZWQgYnkgdGhlIGxpc3RuYXYgbGlicmFyeSwgd2hpY2ggZG9lc1xubm90IGZpdCBvdXIgbmVlZHMgYW5kIHNvIGlzIGhpZGRlbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5saXN0TmF2U2hvdy5sbi1uby1tYXRjaCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJlc3VsdHMtdGV4dCB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtLXNtKSAwIDAgdmFyKC0tZHBhY2UtLW1kKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgJiArIC5yZXN1bHRzLXRleHQtaGVhZGluZyB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0teHMpIDAgdmFyKC0tc3BhY2UtLXNtKSB2YXIoLS1kcGFjZS0tbWQpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG4iLCIvKipcbiogQGZpbGVcbiogb3JnYW5pc21zL3Byb2ZpbGVfcHJvZmlsZS5zY3NzXG4qL1xuJHByb2ZpbGUtcGhvdG8tc2l6ZS0tc21hbGxlcjogMTguNzVyZW07XG4kcHJvZmlsZS1waG90by1zaXplOiAyNXJlbTtcblxuLnVzZXItcHJvZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgLnByb2ZpbGUtbGVmdCB7XG4gICAgZmxleDogMSAxIDMzJTtcbiAgfVxuXG4gIC5wcm9maWxlLXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgIGZsZXg6IDEgMSA2NiU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnByb2ZpbGUtcGhvdG8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICB3aWR0aDogJHByb2ZpbGUtcGhvdG8tc2l6ZTtcbiAgICAgIGhlaWdodDogJHByb2ZpbGUtcGhvdG8tc2l6ZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICB3aWR0aDogJHByb2ZpbGUtcGhvdG8tc2l6ZS0tc21hbGxlcjtcbiAgICAgIGhlaWdodDogJHByb2ZpbGUtcGhvdG8tc2l6ZS0tc21hbGxlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcbiAgICAgIHdpZHRoOiAkcHJvZmlsZS1waG90by1zaXplO1xuICAgICAgaGVpZ2h0OiAkcHJvZmlsZS1waG90by1zaXplO1xuICAgIH1cbiAgICB3aWR0aDogJHByb2ZpbGUtcGhvdG8tc2l6ZS0tc21hbGxlcjtcbiAgICBoZWlnaHQ6ICRwcm9maWxlLXBob3RvLXNpemUtLXNtYWxsZXI7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1sZyk7XG4gIH1cblxuICAuc29jaWFsLWxpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbiAgfVxuXG4gIC5zb2NpYWwtaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAub2ZmaWNlLFxuICAuY29udGFjdCxcbiAgLndlYnNpdGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgIGgyIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbk9yZ2FuaXNtOiBWaWV3cyAtIFZpZXdzIGJ1bGsgb3BlcmF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRoZXNlIHN0eWxlcyBmaXggdGhlIGNoZWNrYm94ZXMgb24gdGhlIHZpZXdzIGdlbmVyYXRlZCBieSBWQk8uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udmJvLXZpZXctZm9ybSxcbi52aWV3cy1maWVsZC12aWV3cy1idWxrLW9wZXJhdGlvbnMtYnVsay1mb3JtIHtcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiB2YXIoLS1zcGFjZS0teHMpIC8gMjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnZpZXdzLXJvdyB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0teHMpIDA7XG4gIH1cblxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogTGF5b3V0cyAtIFJldGlyZWQgTGF5b3V0cyAtIFRocmVlIGNvbCAyNS81MC8yNVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5sYXlvdXQtLXRocmVlY29sLTI1LTUwLTI1IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubGF5b3V0LS10aHJlZWNvbC0yNS01MC0yNSA+IC5sYXlvdXRfX3JlZ2lvbixcbi5sYXlvdXQtLXRocmVlY29sLTI1LTUwLTI1ID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICBmbGV4OiAwIDEgMTAwJTtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMjUtNTAtMjUgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgZmxleDogMCAxIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMjUtNTAtMjUgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG59XG5cbi5sYXlvdXQtLXRocmVlY29sLTI1LTUwLTI1ID4gLmxheW91dF9fcmVnaW9uLS10aGlyZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBSZXRpcmVkIExheW91dHMgLSBUaHJlZSBjb2wgMzMvMzQvMzNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubGF5b3V0LS10aHJlZWNvbC0zMy0zNC0zMyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMzMtMzQtMzMgPiAubGF5b3V0X19yZWdpb24ge1xuICBmbGV4OiAwIDEgMTAwJTtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMzMtMzQtMzMgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgZmxleDogMCAxIDMzJTtcbiAgICBtYXgtd2lkdGg6IDMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMzMtMzQtMzMgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSAzNCU7XG4gICAgbWF4LXdpZHRoOiAzNCU7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cblxuLmxheW91dC0tdGhyZWVjb2wtMzMtMzQtMzMgPiAubGF5b3V0X19yZWdpb24tLXRoaXJkIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgZmxleDogMCAxIDMzJTtcbiAgICBtYXgtd2lkdGg6IDMzJTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogTGF5b3V0cyAtIE9uZSBjb2x1bW5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dC0tb25lY29sIC5sYXlvdXRfX3JlZ2lvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoNjIuNXJlbSkge1xuICAgIG1heC13aWR0aDogdmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aC0tc20pO1xuICB9XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmxheW91dC0tb25lY29sLS1mdWxsIC5sYXlvdXRfX3JlZ2lvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb250ZW50LWFyZWEtbWF4LXdpZHRoKTtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cblxuICB3aWR0aDogMTAwJTtcbn1cblxuLmxheW91dC0tb25lY29sLS1wYWdlLXdpZHRoIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNTB2dyAtIHZhcigtLXNwYWNlLS14cykpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncgLSB2YXIoLS1zcGFjZS0teHMpKTtcbiAgfVxuXG4gIG1heC13aWR0aDogMTAwdnc7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLXNwYWNlLS1zbSkpO1xuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNlLS1zbSkpO1xuXG4gIC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogTGF5b3V0cyAtIFR3byBjb2x1bW5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubGF5b3V0LS10d29jb2wtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+IC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gIH1cblxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIH1cbiAgfVxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIH1cbiAgfVxuXG4gICYubGF5b3V0LS10d29jb2wtc2VjdGlvbi0tNTAtNTAgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0LFxuICAmLmxheW91dC0tdHdvY29sLXNlY3Rpb24tLTUwLTUwID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgIH1cbiAgfVxuXG4gICYubGF5b3V0LS10d29jb2wtc2VjdGlvbi0tMzMtNjcgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0LFxuICAmLmxheW91dC0tdHdvY29sLXNlY3Rpb24tLTY3LTMzID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgICBmbGV4OiAwIDEgMzMlO1xuICAgIH1cblxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cblxuICAmLmxheW91dC0tdHdvY29sLXNlY3Rpb24tLTMzLTY3ID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQsXG4gICYubGF5b3V0LS10d29jb2wtc2VjdGlvbi0tNjctMzMgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAxIDY3JTtcbiAgICB9XG4gIH1cblxuICAmLmxheW91dC0tdHdvY29sLXNlY3Rpb24tLTI1LTc1ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCxcbiAgJi5sYXlvdXQtLXR3b2NvbC1zZWN0aW9uLS03NS0yNSA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAxIDI1JTtcbiAgICB9XG5cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgJi5sYXlvdXQtLXR3b2NvbC1zZWN0aW9uLS0yNS03NSA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kLFxuICAmLmxheW91dC0tdHdvY29sLXNlY3Rpb24tLTc1LTI1ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAgIGZsZXg6IDAgMSA3NSU7XG4gICAgfVxuICB9XG59XG5cbi5sYXlvdXQtLXR3b2NvbC0tcGFnZS13aWR0aCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0tc20pKTtcblxuICA+IC5sYXlvdXRfX3JlZ2lvbiB7XG4gICAgZmxleDogMCAxIDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgPiAubGF5b3V0X19yZWdpb24tLWZpcnN0LFxuICA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkge1xuICAgICAgZmxleDogMCAxIDUwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhZ2UtaXNsYW5kb3JhIHtcbiAgLyogSGlkZSBXV1UgU2VhcmNoIGFzIGl0J3MgY29uZnVzaW5nIHRvIGhhdmUgbXVsdGlwbGUgc2VhcmNoZXMgLS0tLS0tLS0tLS0tLSovXG4gIC53ZXN0ZXJuLWhlYWRlciB7XG4gICAgLnNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC53cmFwIHtcbiAgICAgIC5zaXRlLW5hbWUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIEZpeCBjb250ZXh0dWFsIGxpbmtzIGluIHNwbGFzaCB3aXRoIG5vIGhlYWRlciBpbWFnZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuc3BsYXNoID4gZGl2Om50aC1vZi10eXBlKDEpIGRpdiB7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgaGVpZ2h0OiBpbml0aWFsO1xuICB9XG5cbiAgLyogUmVvcmRlciBzbyBsZWZ0IHNpZGViYXIgZ29lcyBiZWxvdyBtYWluIGNvbnRlbnQgYXJlYSBvbiAyNS83NSBsYXlvdXRzIC0tLSovXG4gIC5sYXlvdXQtLXR3b2NvbC0yNS03NSB7XG4gICAgLmxheW91dF9fcmVnaW9uLS10b3Age1xuICAgICAgb3JkZXI6IDA7XG4gICAgfVxuICAgIC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICAgIC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICAubGF5b3V0X19yZWdpb24tLWJvdHRvbSB7XG4gICAgICBvcmRlcjogMztcbiAgICB9XG4gIH1cblxuICAvKiBTdHlsZSBzaWRlYmFyIGJsb2NrcyAqL1xuICAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgICAucGFuZWwtcGFuZSB7XG4gICAgICBAaW5jbHVkZSBsaWdodGVzdC1ncmF5LWJnIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1tZCk7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JlZW4pO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbiAgICB9XG5cbiAgICBpbnB1dCxcbiAgICBzZWxlY3Qge1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIC8qIERhdGUgcGlja2VyIHJlc2V0cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAudWktZGF0ZXBpY2tlciB7XG4gICAgYSB7XG4gICAgICBtYXJnaW46IGluaXRpYWw7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBwYWRkaW5nOiBpbml0aWFsO1xuICAgICAgYm9yZGVyOiBpbml0aWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cblxuICAuc2l0ZS1mb290ZXIge1xuICAgICNibG9jay11c2VyLWxvZ2luIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB9XG5cbiAgICAgIC5pdGVtLWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICNlZGl0LWNhcy1sb2dpbi1yZWRpcmVjdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAjZWRpdC1hY3Rpb25zIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBSZXRpcmVkIExheW91dHMgLSBUd28gY29sIDMzLzY2XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxheW91dC0tdHdvY29sLTM0LTY2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubGF5b3V0LS10d29jb2wtMzQtNjYgPiAubGF5b3V0X19yZWdpb24ge1xuICBmbGV4OiAwIDEgMTAwJTtcbn1cblxuLmxheW91dC0tdHdvY29sLTM0LTY2ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSAzNCU7XG4gICAgbWF4LXdpZHRoOiAzNCU7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgfVxuXG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG59XG5cbi5sYXlvdXQtLXR3b2NvbC0zNC02NiA+IC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgZmxleDogMCAxIDY2JTtcbiAgICBtYXgtd2lkdGg6IDY2JTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBSZXRpcmVkIExheW91dHMgLSBUd28gY29sIDY2LzM0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxheW91dC0tdHdvY29sLTY2LTM0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubGF5b3V0LS10d29jb2wtNjYtMzQgPiAubGF5b3V0X19yZWdpb24ge1xuICBmbGV4OiAwIDEgMTAwJTtcbn1cblxuLmxheW91dC0tdHdvY29sLTY2LTM0ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSA2NiU7XG4gICAgbWF4LXdpZHRoOiA2NiU7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgfVxufVxuXG4ubGF5b3V0LS10d29jb2wtNjYtMzQgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSAzNCU7XG4gICAgbWF4LXdpZHRoOiAzNCU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBSZXRpcmVkIExheW91dHMgLSBUd28gY29sIDc1LzI1XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxheW91dC0tdHdvY29sLTc1LTI1IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubGF5b3V0LS10d29jb2wtNzUtMjUgPiAubGF5b3V0X19yZWdpb24ge1xuICBmbGV4OiAwIDEgMTAwJTtcbn1cblxuLmxheW91dC0tdHdvY29sLTc1LTI1ID4gLmxheW91dF9fcmVnaW9uLS1maXJzdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgfVxufVxuXG4ubGF5b3V0LS10d29jb2wtNzUtMjUgPiAubGF5b3V0X19yZWdpb24tLXNlY29uZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICB9XG5cbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IExheW91dHMgLSBSZXRpcmVkIExheW91dHMgLSBUd28gY29sXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sYXlvdXQtLXR3b2NvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmxheW91dC0tdHdvY29sID4gLmxheW91dF9fcmVnaW9uIHtcbiAgZmxleDogMCAxIDEwMCU7XG59XG5cbi5sYXlvdXQtLXR3b2NvbCA+IC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBmbGV4OiAwIDEgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cbn1cblxuLmxheW91dC0tdHdvY29sID4gLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBmbGV4OiAwIDEgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogU2l0ZXMgLSBEaXJlY3Rvcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogU2l0ZXMgLSBNQUJFTCAtIEJvb2ttYXJrc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBIb3QgZml4IGZvciBtYWtpbmcgdGhlIGNoZWNrYm94ZXMgc2hvdyB1cCBvbiB0aGUgYm9va21hcmsgbGlzdHMgcGFnZSAtLS0tLS0qL1xuLnBhZ2UtaXNsYW5kb3JhLWJvb2ttYXJrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogU2l0ZXMgLSBNQUJFTCAtIEZyb250IHBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmlzbGFuZG9yYS1mcm9udC1wYWdlIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXRfX3JlZ2lvbi0tdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC5icm93c2UtYnktaWNvbnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgfVxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCkgYXV0bztcblxuICAgIC5pY29uLXdpdGgtdGV4dCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgYm9yZGVyOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKSB0cmFuc3BhcmVudDtcblxuICAgICAgLmljb24tdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zaXplLS1zbSk7XG4gICAgICB9XG5cbiAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc2l6ZS0tbGcpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMC4xMjVyZW0sIC0wLjEyNXJlbSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLTRjb2wtLW1hYmVsLXZpZXcgLnZpZXctaGVhZGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgLW1zLWdyaWQtcm93czogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIH1cbiAgZGlzcGxheTogLW1zLWdyaWQ7XG4gIGRpc3BsYXk6IGdyaWQ7XG5cbiAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjZS0tc20pO1xuICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnI7XG4gIC1tcy1ncmlkLXJvd3M6IGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5cbiNibG9jay1tYXNxdWVyYWRlLW1hc3F1ZXJhZGUgLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBPYmplY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZG93bmxvYWQtbGluayB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbmEjY2xpcCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcbn1cblxuLmlzbGFuZG9yYS1vYmplY3QtdGh1bWIsXG4uaXNsYW5kb3JhLW9iamVjdC1jYXB0aW9uIHtcbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5pc2xhbmRvcmEtb2JqZWN0cy1kaXNwbGF5LXN3aXRjaCB7XG4gIGZsb2F0OiBub25lO1xuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2UtLXhzKSAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGEge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS0tYmxhY2spO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgfVxuICB9XG59XG5cbi8qIEdyYXkgYm94IGFyb3VuZCBvYmplY3RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaXNsYW5kb3JhLWF1ZGlvLWNvbnRlbnQsXG4uaXNsYW5kb3JhLWJhc2ljLWltYWdlLWNvbnRlbnQsXG4uaXNsYW5kb3JhLWxhcmdlLWltYWdlLWNvbnRlbnQsXG4uaXNsYW5kb3JhLW9yYWxoaXN0b3JpZXMtY29udGVudCxcbi5pc2xhbmRvcmEtcGRmLWNvbnRlbnQsXG4uaXNsYW5kb3JhLXZpZGVvLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmJvZHkucGFnZS1pc2xhbmRvcmEtb2JqZWN0IHtcbiAgLnBhbmUtcGFnZS10aXRsZSB7XG4gICAgaDEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS0yeGwpO1xuICAgIH1cbiAgfVxuXG4gIC8qIGdyaWQgdmlldyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaXNsYW5kb3JhLW9iamVjdHMtZ3JpZC1pdGVtIHtcbiAgICBicmVhay13b3JkOiBicmVhay1hbGw7XG5cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgLyogaW1hZ2Ugdmlld2VyIG9uIHNpbmdsZSBvYmplY3QgcGFnZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5pc2xhbmRvcmEtbGFyZ2UtaW1hZ2UtY29udGVudCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvKiBTaWRlYmFyIHBhbmVscyAqL1xuICAubGF5b3V0X19yZWdpb24tLWZpcnN0IHtcbiAgICAucGFuZWwtcGFuZSB7XG4gICAgICBAaW5jbHVkZSBsaWdodGVzdC1ncmF5LWJnO1xuXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1tZCk7XG4gICAgfVxuICB9XG5cbiAgLmxheW91dF9fcmVnaW9uLS1zZWNvbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtLWxnKTtcbiAgfVxufVxuXG4vKiBEZXRhaWxzICovXG4uaXNsYW5kb3JhLW1ldGFkYXRhLXNldCB7XG4gIGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKTtcbiAgfVxufVxuXG4uaXNsYW5kb3JhLW1ldGFkYXRhLXNldCBmaWVsZHNldCxcbmZpZWxkc2V0LmlzbGFuZG9yYS1tZXRhZGF0YS1zZXQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xufVxuXG4vKiBTaWRlIGJ5IHNpZGUgZGV0YWlscyAqL1xuLmxheW91dC0tdHdvY29sLXNlY3Rpb24ge1xuICBkbC5pc2xhbmRvcmEtaW5saW5lLW1ldGFkYXRhIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcblxuICAgIGR0IHtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIGRkIHtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKSAwIHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLW1kKTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBTZWFyY2ggcmVzdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlLWlzbGFuZG9yYS1zZWFyY2gge1xuICAucGFuZS1wYWdlLXRpdGxlIHtcbiAgICBoMSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIH1cbiAgfVxuXG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuaXNsYW5kb3JhLXNvbHItc2VhcmNoLXJlc3VsdCB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0tc20pIHZhcigtLXNwYWNlLS1tZCk7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLS1zbSkgdmFyKC0tZ3JheSk7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgbWFyZ2luOiBpbml0aWFsO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBkbC5zb2xyLWZpZWxkcyB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIC5zb2xyLWZpZWxkcyBkdCxcbiAgICAuc29sci1maWVsZHMgZGQge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LS1saWdodGVyLS02MCk7XG4gICAgfVxuXG4gICAgZGwge1xuICAgICAgJi5zb2xyLXRodW1iLFxuICAgICAgJi5zb2xyLWZpZWxkcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWF4LXdpZHRoICRtZWRpdW0pIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc29sci10aHVtYiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlzbGFuZG9yYS1pbmxpbmUtbWV0YWRhdGEge1xuICAgICAgZHQge1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtLXJlZ3VsYXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pc2xhbmRvcmEtc29sci1ncmlkIHtcbiAgICBhIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXRfX3JlZ2lvbi0tc2Vjb25kIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLS1tZCk7XG4gIH1cbn1cblxuLyogVGhlIGZvbGxvd2luZyBhcmUgZm9yIHRoZSByZXN1bCBsaW1pdC9zb3J0L2Rpc3BsYXkgb3B0aW9ucywgd2hpY2ggYWxzbyBhZmZlY3Rcbm9iamVjdCAncmVzdWx0JyBwYWdlcywgaWUgJ2Jyb3dzZSB0aGUgY29sbGVjdGlvbicgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZXhwYW5kLXNvbHItcGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0tbGlnaHRlci0tNjApO1xuXG4gIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0tc3BhY2UtLTJ4cyk7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTAuMjVyZW0sIC01MCUpO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuLmRhdGUtZmlsdGVyLXRvZ2dsZS10ZXh0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRhdGUtcmFuZ2UtZmlsdGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4jc2tpcC10by1zZWFyY2gtcmVzdWx0czpmb2N1cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1tZCk7XG59XG5cbiNpc2xhbmRvcmEtc29sci1yZXN1bHQtY291bnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuI3NlY29uZGFyeS1kaXNwbGF5LXByb2ZpbGVzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2VkaXQtcmFuZ2Utc2xpZGVyLXN1Ym1pdCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbiNlZGl0LWRhdGUtZmlsdGVyLWRhdGUtZmlsdGVyLXN1Ym1pdCB7XG4gIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuI2VkaXQtZGF0ZS1maWx0ZXItZGF0ZS1maWx0ZXItZnJvbSxcbiNlZGl0LWRhdGUtZmlsdGVyLWRhdGUtZmlsdGVyLXRvIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBWaXJ0dWFsIGNvbGxlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udmlldy12aXJ0dWFsLWNvbGxlY3Rpb24tZ3JpZCB7XG4gIC5jYXJkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IHZhcigtLXNwYWNlLS1tZCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtLXJvdW5kZXIpO1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgIGVsbGlwc2UgYXQgdG9wIGxlZnQsXG4gICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDY1JSxcbiAgICAgIHJnYmEoMjI5LCAyMjksIDIyOSwgMC45KSAxMDAlXG4gICAgKTtcbiAgICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC41cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjIpLFxuICAgICAgMCAwLjM3NXJlbSAxLjI1cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgfVxuICAuY2FyZCAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG4gIH1cblxuICB1bC5kYi1yb3cge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxuXG4gIHVsLmRiLXJvdyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWF4LWhlaWdodDogMTguNzVyZW07XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLS1yb3VuZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICBlbGxpcHNlIGF0IHRvcCBsZWZ0LFxuICAgICAgd2hpdGUgNjUlLFxuICAgICAgcmdiYSgyMjksIDIyOSwgMjI5LCAwLjkpIDEwMCVcbiAgICApO1xuICAgIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjVyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMiksXG4gICAgICAwIDAuMzc1cmVtIDEuMjVyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xuICB9XG5cbiAgdWwuZGItcm93IGxpIGltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAxMi41cmVtO1xuICB9XG5cbiAgLml0ZW0tbGlzdCB7XG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBTaXRlcyAtIE1BQkVMIC0gQm9va21hcmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNpc2xhbmRvcmEtYm9va21hcmsge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0teHMpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICBoMyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBpbnB1dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1zbSk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG5ib2R5LnBhZ2UtaXNsYW5kb3JhLW9iamVjdCB7XG4gIC5sYXlvdXRfX3JlZ2lvbi0tZmlyc3Qge1xuICAgIC5wYW5lLWlzbGFuZG9yYS1ib29rbWFyay1pc2xhbmRvcmEtYm9va21hcmsge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBDb2xsZWN0aW9uIHNlYXJjaFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiNpc2xhbmRvcmEtY29sbGVjdGlvbi1zZWFyY2gtZm9ybSB7XG4gIGxhYmVsIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuZm9ybS13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjZS0teHMpO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcIm1lbnUgbWVudVwiXG4gICAgICBcInRleHQgICBnb1wiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgfVxuXG4gIC5mb3JtLXR5cGUtc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBncmlkLWFyZWE6IG1lbnU7XG4gIH1cblxuICAuZm9ybS10eXBlLXRleHRmaWVsZCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICB9XG5cbiAgLmZvcm0tdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIH1cblxuICAuZm9ybS1zdWJtaXQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIGdyaWQtYXJlYTogZ287XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBGYWNldHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhbmUtaXNsYW5kb3JhLXNvbHItYmFzaWMtZmFjZXRzIHtcbiAgLS1wbHVzLW1pbnVzLXNpemVyOiAwLjUzM3JlbTtcbiAgLyogRGF0ZSByYW5nZSBzbGlkZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5pc2xhbmRvcmEtc29sci1yYW5nZS1zbGlkZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWJsdWUtLWRhcmtlci0tNDApO1xuICAgIH1cblxuICAgIC51aS1zbGlkZXItaGFuZGxlLnVpLXN0YXRlLWRlZmF1bHQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudCBzb2xpZCAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiB0cmFuc3BhcmVudCBzb2xpZCB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tZGFyay1ibHVlLS1kYXJrZXItLTQwKSBzb2xpZCB2YXIoLS1zcGFjZS0tbWQpO1xuICAgICAgYm9yZGVyLWxlZnQ6IHRyYW5zcGFyZW50IHNvbGlkIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAudWktc2xpZGVyLWhvcml6b250YWwge1xuICAgICAgbWF4LWhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIC5zbGlkZXItcG9wdXAtZnJvbS13cmFwcGVyLFxuICAgIC5zbGlkZXItcG9wdXAtdG8td3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xLjg3NXJlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiA3LjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTMuNzVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zbGlkZXItcG9wdXAtZnJvbSxcbiAgICAgIC5zbGlkZXItcG9wdXAtdG8ge1xuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLS1zbSkgdmFyKC0tYm9yZGVyLXdpZHRoLS1tZCkgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZWRpdC1yYW5nZS1zbGlkZXItc3VibWl0IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0teHMpO1xuICB9XG5cbiAgLnJhbmdlLXNsaWRlci1mcm9tdG8sXG4gIC5kYXRlLXJhbmdlLXNsaWRlci1nYXAge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuXG4gIC8qIEZhY2V0cyAqL1xuICAuaXNsYW5kb3JhLXNvbHItZmFjZXQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwicGx1c21pbnVzIGxpbmtcIlxuICAgICAgICBcImNvdW50ICAgIGNvdW50XCI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGNhbGMoXG4gICAgICAgICAgdmFyKC0tcGx1cy1taW51cy1zaXplcikgKiAyICsgdmFyKC0tc3BhY2UtLXNtKVxuICAgICAgICApIGF1dG87XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWl0ZW1zOiBzdGFydDtcblxuICAgICAgPiBhIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBsaW5rO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgMCB2YXIoLS1zcGFjZS0teHMpIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvdW50IHtcbiAgICAgIGdyaWQtYXJlYTogY291bnQ7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICB9XG5cbiAgICAucGx1c21pbnVzIHtcbiAgICAgIGdyaWQtYXJlYTogcGx1c21pbnVzO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1wbHVzLW1pbnVzLXNpemVyKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1wbHVzLW1pbnVzLXNpemVyKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tMnhzKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBTaXRlcyAtIE1BQkVMIC0gT3JhbCBoaXN0b3JpZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmlzbGFuZG9yYS1vcmFsaGlzdG9yaWVzLWNvbnRlbnQge1xuICAudWktd2lkZ2V0IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgLnVpLXdpZGdldC1oZWFkZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKSB2YXIoLS1ncmF5KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC51aS10YWJzIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpIDAgMCAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC51aS10YWJzIC51aS10YWJzLW5hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXhzKTtcbiAgfVxuXG4gIC51aS1zdGF0ZS1hY3RpdmUsXG4gIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtYWN0aXZlLFxuICAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5KTtcbiAgfVxuXG4gIC51aS1zdGF0ZS1hY3RpdmUgYSxcbiAgLnVpLXN0YXRlLWFjdGl2ZSBhOmxpbmssXG4gIC51aS1zdGF0ZS1hY3RpdmUgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgLnVpLXRhYnMgLnVpLXRhYnMtcGFuZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBEaXNwbGF5c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFuZS1pc2xhbmRvcmEtc29sci1kaXNwbGF5LXN3aXRjaCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIHdpZHRoOiAxMS4yNXJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgIHdpZHRoOiAxMi41cmVtO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tc3BhY2UtLXhzKSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuXG4gIC5pdGVtLWxpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LS1saWdodGVyLS04MCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLXhzKSB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IGNhbGMoLTEgKiB2YXIoLS1zcGFjZS0teHMpKSAoLXZhcigtLXNwYWNlLS1zbSkpO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpIHZhcigtLXNwYWNlLS1zbSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBDb21wb3VuZCBvYmplY3QgbmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY29tcG91bmQtbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZW5kO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xufVxuXG4jaXNsYW5kb3JhLWNvbXBvdW5kLXNlcXVlbmNlLXBvc2l0aW9uIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuI2lzbGFuZG9yYS1jb21wb3VuZC1wcmV2aW91cy1saW5rLFxuI2lzbGFuZG9yYS1jb21wb3VuZC1uZXh0LWxpbmsge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0teHMpIHZhcigtLXNwYWNlLS1zbSk7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheSk7XG4gIH1cbn1cblxuI2lzbGFuZG9yYS1jb21wb3VuZC1wcmV2aW91cy1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMDM5ICBcIjtcbn1cblxuI2lzbGFuZG9yYS1jb21wb3VuZC1uZXh0LWxpbms6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcXDIwM0FcIjtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBPYmplY3QgamFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jYmxvY2staXNsYW5kb3JhLWNvbXBvdW5kLW9iamVjdC1jb21wb3VuZC1qYWlsLWRpc3BsYXkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBib3JkZXI6IHNvbGlkIHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKSB2YXIoLS1ib3JkZXItd2lkdGgtLWxnKTtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogNDYuODc1cmVtO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICBib3JkZXI6IHNvbGlkIHZhcigtLWdyYXktLWxpZ2h0ZXItLTYwKSB2YXIoLS1ib3JkZXItd2lkdGgtLW1kKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtLXNtKTtcblxuICAuZm9ybS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICAuZm9ybS10eXBlLWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gICYgPiBkaXYge1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICY6bm90KC5mb3JtLWl0ZW0pIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgIGE6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLS14cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBTaXRlcyAtIE1BQkVMIC0gU29ydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFuZS1pc2xhbmRvcmEtc29sci1zb3J0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXNwYWNlLS1tZCkpO1xuXG4gIC5wYW5lLXRpdGxlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cblxuICAuaXRlbS1saXN0IHtcbiAgICBmbGV4OiAxO1xuXG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2UtLXhzKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtLTJ4cyk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ibHVlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ncmVlbik7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstYmx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNvcnQtYXNjIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0tc20pO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICYubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNvcnQtZGVzYyB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICYubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNlLS1sZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuVGVtcGxhdGVzOiBTaXRlcyAtIE1BQkVMIC0gTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFuZS1pc2xhbmRvcmEtc29sci1zZWFyY2gtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcblxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogM2ZyIDFmciAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcblxuICBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0tc20pO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cyk7XG4gIH1cblxuICAjaXNsYW5kb3JhLXNvbHItc2VhcmNoLXByZXYtbGluayxcbiAgI2lzbGFuZG9yYS1zb2xyLXNlYXJjaC1uZXh0LWxpbmsge1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICB9XG5cbiAgI2lzbGFuZG9yYS1zb2xyLXNlYXJjaC1yZXR1cm4tbGluayxcbiAgI2lzbGFuZG9yYS1zb2xyLXNlYXJjaC1wcmV2LWxpbmsge1xuICAgIGEge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcMjAzOSAgXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNpc2xhbmRvcmEtc29sci1zZWFyY2gtbmV4dC1saW5rIHtcbiAgICBhIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcXDIwM0FcIjtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogQ29sdW1uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkZvciBjcmVhdGluZyBtdWx0aS1jb2x1bW4gbGF5b3V0cywgaGFuZHkgZm9yIERydXBhbCB2aWV3cyBvciBmdWxsIEhUTUwgY29udGVudC5cbkNvbHVtbnMgd2lsbCBjb2xsYXBzZSBvbiBtb2JpbGUuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbHVtbi1jb3VudC0tMixcbi5jb2x1bW4tY291bnQtLTMsXG4uY29sdW1uLWNvdW50LS00IHtcbiAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuLmNvbHVtbi1jb3VudC0tMiB7XG4gIGNvbHVtbi1jb3VudDogMjtcbn1cblxuLmNvbHVtbi1jb3VudC0tMyB7XG4gIGNvbHVtbi1jb3VudDogMztcbn1cblxuLmNvbHVtbi1jb3VudC0tNCB7XG4gIGNvbHVtbi1jb3VudDogNDtcbn1cblxuLmNvbHVtbi1jb3VudC0tNSB7XG4gIGNvbHVtbi1jb3VudDogNTtcbn1cblxuLmNvbHVtbi1jb3VudC0tNiB7XG4gIGNvbHVtbi1jb3VudDogNjtcbn1cblxuLmdyaWQtY29sdW1uLWNvdW50LS0yLFxuLmdyaWQtY29sdW1uLWNvdW50LS0zLFxuLmdyaWQtY29sdW1uLWNvdW50LS00LFxuLmdyaWQtY29sdW1uLWNvdW50LS01LFxuLmdyaWQtY29sdW1uLWNvdW50LS02IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjZS0tc20pO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAuZ3JpZC1jb2x1bW4tY291bnQtLTIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICB9XG4gIC5ncmlkLWNvbHVtbi1jb3VudC0tMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcbiAgfVxuICAuZ3JpZC1jb2x1bW4tY291bnQtLTQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIGF1dG8gYXV0bztcbiAgfVxuICAuZ3JpZC1jb2x1bW4tY291bnQtLTUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICB9XG4gIC5ncmlkLWNvbHVtbi1jb3VudC0tNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG8gYXV0bztcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRlbXBsYXRlczogU2l0ZXMgLSBNQUJFTCAtIFZpZGVvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pc2xhbmRvcmFfdmlkZW9qcy1kaW1lbnNpb25zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogaW5pdGlhbDtcbn1cblxuLnZpZGVvLWpzIC52anMtdGVjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5UZW1wbGF0ZXM6IFNpdGVzIC0gTUFCRUwgLSBSZXN1bHQgbGltaXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhbmUtaXNsYW5kb3JhLXNvbHItcmVzdWx0LWxpbWl0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgd2lkdGg6IDExLjI1cmVtO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgd2lkdGg6IDEyLjVyZW07XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogY2FsYygtMSAqIHZhcigtLXNwYWNlLXhzKSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tc3BhY2UtLXNtKSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcblxuICAuaXRlbS1saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0tbGlnaHRlci0tODApO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLS1zbSk7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAoY2FsYygtMSAqIHZhcigtLXNwYWNlLXhzKSkpICgtdmFyKC0tc3BhY2UtLXNtKSk7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLS14cykgdmFyKC0tc3BhY2UtLXNtKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jaXNsYW5kb3JhX3NvbHJfcmVzdWx0c19saW1pdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5IZWxwZXJzOiBBZG1pblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkZpeGVzIGZvciBEcnVwYWwgYWRtaW5pc3RyYXRpb24gdGhlbWUuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRvb2xiYXItYmFyIGJ1dHRvbixcbi5zaS1idXR0b24ge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBQcmV2ZW50IGNvbnRleHR1YWwgbGlua3MgaW4gc3BsYXNoIGZyb20gYnJlYWtpbmcgbGF5b3V0IC0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNwbGFzaCA+IGRpdjpudGgtb2YtdHlwZSgxKSBkaXZbZGF0YS1jb250ZXh0dWFsLWlkXSB7XG4gIGhlaWdodDogaW5pdGlhbDtcbn1cblxuLmNvbnRleHR1YWwtbGlua3MgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogQWxpZ25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Gb3IgYWRqdXN0aW5nIGFsaWdubWVudHMuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFsaWduLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG59XG4uYWxpZ24tbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtLXNtKTtcbn1cbi5hbGlnbi1jZW50ZXIge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICYuYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleCgtNTAlKTtcbiAgfVxuXG4gIC5pbWFnZS1idXR0b24ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4udGV4dC1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50ZXh0LWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi50ZXh0LWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogQmxhenlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5CbGF6eSBpbWFnZSBmaXhlcy4gSWYgdGhlc2UgZG9uJ3Qgd29yaywgYWRkIGRhdGEtdW5ibGF6eSBhcyBhbiBhdHRyaWJ1dGUuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJhY2tncm91bmQtaW1hZ2UgLmJsYXp5LFxuLmJhY2tncm91bmQtaW1hZ2UgLm1lZGlhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5IZWxwZXJzOiBCb3JkZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5yb3VuZC1lZGdlcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtLXJvdW5kZXIpO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkhlbHBlcnM6IFNwYWNlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zdGFuZGFyZC1tYXJnaW4ge1xuICBtYXJnaW46IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5zdGFuZGFyZC1tYXJnaW4tLXRvcCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5zdGFuZGFyZC1tYXJnaW4tLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tc20pO1xufVxuXG4uc3RhbmRhcmQtbWFyZ2luLS1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0tc20pO1xufVxuXG4uc3RhbmRhcmQtbWFyZ2luLS1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5kb3VibGUtbWFyZ2luIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0tbWQpO1xufVxuXG4uZG91YmxlLW1hcmdpbi0tdG9wIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuLmRvdWJsZS1tYXJnaW4tLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbWQpO1xufVxuXG4uZG91YmxlLW1hcmdpbi0tYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuLmRvdWJsZS1tYXJnaW4tLWxlZnQge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtLW1kKTtcbn1cblxuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm5vLW1hcmdpbi0tdG9wIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLm5vLW1hcmdpbi0tcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5uby1tYXJnaW4tLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5uby1tYXJnaW4tLWxlZnQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnN0YW5kYXJkLXBhZGRpbmcge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0tc20pO1xufVxuXG4uc3RhbmRhcmQtcGFkZGluZy0tdG9wIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5zdGFuZGFyZC1wYWRkaW5nLS1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5zdGFuZGFyZC1wYWRkaW5nLS1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtLXNtKTtcbn1cblxuLnN0YW5kYXJkLXBhZGRpbmctLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS1zbSk7XG59XG5cbi5kb3VibGUtcGFkZGluZyB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLS1tZCk7XG59XG5cbi5kb3VibGUtcGFkZGluZy0tdG9wIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLS1tZCk7XG59XG5cbi5kb3VibGUtcGFkZGluZy0tcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0tbWQpO1xufVxuXG4uZG91YmxlLXBhZGRpbmctLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS0tbWQpO1xufVxuXG4uZG91YmxlLXBhZGRpbmctLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLS1tZCk7XG59XG5cbi5uby1wYWRkaW5nIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm5vLXBhZGRpbmctLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ubm8tcGFkZGluZy0tcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubm8tcGFkZGluZy0tYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5uby1wYWRkaW5nLS1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4vKiBzcGFjZSBjcmVhdGluZyBibG9ja3MgKi9cbi52ZXJ0aWNhbC1zcGFjZS0tMXgge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNlLS1zbSk7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS0yeCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogMik7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS0zeCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogMyk7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS00eCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogNCk7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS01eCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogNSk7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS02eCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogNik7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS03eCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogNyk7XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNwYWNlLS04eCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjZS0tc20pICogOCk7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5IZWxwZXJzOiBTaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLmZ1bGwtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWluLWhlaWdodC0tMjV2aCB7XG4gIG1pbi1oZWlnaHQ6IDI1dmg7XG59XG5cbi5taW4taGVpZ2h0LS01MHZoIHtcbiAgbWluLWhlaWdodDogNTB2aDtcbn1cblxuLm1pbi1oZWlnaHQtLTc1dmgge1xuICBtaW4taGVpZ2h0OiA3NXZoO1xufVxuXG4ubWluLWhlaWdodC0tMTAwdmgge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLm1heC13aWR0aC0tY29udGVudCB7XG4gIG1heC13aWR0aDogdmFyKC0tY29udGVudC1hcmVhLW1heC13aWR0aCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5mdWxsLXZ3IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDUwdncgLSA1MCUpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDUwdncgLSA1MCUpO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkhlbHBlciBDbGFzc2VzOiBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9udC0tc2Fucy1zZXJpZiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LS1zYW5zLXNlcmlmKTtcbn1cblxuLmZvbnQtLXNlcmlmIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtLXNlcmlmKTtcbn1cblxuLmZvbnQtLXRpdGxlLWZvbnQge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC0tdGl0bGUtZm9udCk7XG59XG5cbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LS1ib2xkKTtcbn1cblxuLml0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkhlbHBlcnM6IERpc3BsYXlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnZpc3VhbGx5LWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpOyAvLyBJRSBzdXBwb3J0IG1haW5seSwgY2xpcCBwYXRoIGlzIHByZWZlcnJlZFxuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogTGF5b3V0IEJ1aWxkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BZmZlY3RzIHRoZSBsYXlvdXQgYnVpbGRlciBpbnRlcmZhY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGF5b3V0LWJ1aWxkZXItLWNvbnRlbnQtcHJldmlldy1kaXNhYmxlZCAqIHtcbiAgd2lkdGg6IGluaXRpYWw7XG4gIG1pbi1oZWlnaHQ6IGluaXRpYWw7XG59XG5cbiNkcnVwYWwtb2ZmLWNhbnZhcyAuZmllbGQtLW5hbWUtZmllbGQtYWNjb3JkaW9uLWl0ZW0gdHIuZHJhZ2dhYmxlLFxuI2RydXBhbC1vZmYtY2FudmFzIC5maWVsZC0tbmFtZS1maWVsZC1jb250ZW50LXN3aXRjaGVyLWl0ZW0gdHIuZHJhZ2dhYmxlLFxuI2RydXBhbC1vZmYtY2FudmFzIC5maWVsZC0tbmFtZS1maWVsZC1zdGF0aXN0aWMgdHIuZHJhZ2dhYmxlLFxuI2RydXBhbC1vZmYtY2FudmFzIC5maWVsZC0tbmFtZS1maWVsZC1zY2hlZHVsZS1pdGVtIHRyLmRyYWdnYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbiNkcnVwYWwtb2ZmLWNhbnZhcyAubWVzc2FnZXMtLWVycm9yIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAxJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA1MCU7XG59XG4jZHJ1cGFsLW9mZi1jYW52YXMgLnVpLWF1dG9jb21wbGV0ZSBsaSBhIHtcbiAgY29sb3I6ICM2M2MyZmYgIWltcG9ydGFudDtcbn1cblxuLmRhcmstbW9kZSB7XG4gIC5sYXlvdXQtYnVpbGRlciB7XG4gICAgQGluY2x1ZGUgYmxhY2stYmc7XG4gIH1cblxuICAubGF5b3V0LWJ1aWxkZXIsXG4gIC5sYXlvdXQtYnVpbGRlci1ibG9jayxcbiAgLmxheW91dC1idWlsZGVyX19hZGQtc2VjdGlvbixcbiAgLmxheW91dC1idWlsZGVyX19hZGQtYmxvY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JheS0tZGFya2VyLS04MCk7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5IZWxwZXJzOiBPdmVybGF5c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblRoZXNlIGNsYXNzZXMgYXJlIHVzZWZ1bCBmb3IgaW1wcm92aW5nIGNvbnRyYXN0IGJldHdlZW4gdGV4dCBhbmQgYmFja2dyb3VuZFxuaW1hZ2VzIGZvciBiYW5uZXJzLCBpbWFnZSBDVEFzLCBldGMuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmRhcmstbW9kZSB7XG4gIC5ibG9jay0tYmFubmVyLFxuICAuYmxvY2stLWltYWdlLWJ1dHRvbixcbiAgLmJsb2NrLS1pbWFnZSB7XG4gICAgLmltYWdlLFxuICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjgpIGNvbnRyYXN0KDEuMik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS0xMCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjkpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS0yMCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjgpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS0zMCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjcpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS00MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjYpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS01MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS02MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjQpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS03MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjMpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS04MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjIpO1xuICB9XG59XG5cbi5pbWFnZS1kYXJrZXItLS05MCB7XG4gIC5pbWFnZSxcbiAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjEpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogUHJpbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Vc2UgdGhpcyBjbGFzcyB0byBwcmV2ZW50IGFuIGVsZW1lbnQgZnJvbSBzaG93aW5nIHVwIG9uIHRoZSBwcmludCB2ZXJzaW9uIG9mXG5hIHNpdGUgKGZvciBleGFtcGxlLCBkZWNvcmF0aXZlIGVsZW1lbnRzIHRoYXQgdGFrZSB1cCBhIGxvdCBvZiBzcGFjZSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubm8tcHJpbnRpbmcge1xuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5IZWxwZXJzOiBVbnNldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYWZ0ZXItdW5zZXQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYmVmb3JlLXVuc2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSGVscGVyczogVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmVtYmVkLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iXX0= */
