@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700&display=swap);
@charset "UTF-8";
/*
grey light : #5D839D
green-blue : #ababab
blue : #0028F5 / #67D6FB
*/
/*
{"palette":{"common":{"black":"rgba(51, 51, 51, 1)","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"rgba(51, 83, 247, 1)","main":"rgba(0, 40, 245, 1)","dark":"rgba(0, 28, 171, 1)","contrastText":"#fff"},"secondary":{"light":"rgba(72, 149, 175, 1)","main":"rgba(103, 214, 251, 1)","dark":"rgba(133, 222, 251, 1)","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"}}}
*/
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Medium"), url(/build/images/CircularStd-Medium.61d34836.svg) format("svg"), url(/build/fonts/CircularStd-Medium.e39d4081.woff) format("woff"), url(/build/fonts/CircularStd-Medium.6fb73f93.ttf) format("ttf"), url(/build/fonts/CircularStd-Medium.bba31ddc.eot) format("embedded-opentype");
  font-style: normal;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-MediumItalic"), url(/build/images/CircularStd-MediumItalic.5614e440.svg) format("svg"), url(/build/fonts/CircularStd-MediumItalic.8ffa91cf.woff) format("woff"), url(/build/fonts/CircularStd-MediumItalic.df104e4b.ttf) format("ttf"), url(/build/fonts/CircularStd-MediumItalic.4936f24b.eot) format("embedded-opentype");
  font-style: italic;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: bold;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 500;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 700;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-BoldItalic"), url(/build/images/CircularStd-BoldItalic.abb32a5c.svg) format("svg"), url(/build/fonts/CircularStd-BoldItalic.eeb47162.woff) format("woff"), url(/build/fonts/CircularStd-BoldItalic.4c0949c4.ttf) format("ttf"), url(/build/fonts/CircularStd-BoldItalic.af155cb0.eot) format("embedded-opentype");
  font-weight: 500;
  font-style: italic;
}
.aviva-bg {
  background-color: #ffd900;
}

.aviva-color {
  color: #004fb6;
}

.btn-aviva {
  background-color: #004fb6;
  color: #ffd900;
}

#mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
#mask.open {
  width: 100%;
  height: 100%;
}
#mask.visible {
  background: rgba(128, 128, 128, 0.25);
}

#popup {
  position: fixed;
  background: #FFF;
  z-index: 99;
  display: none;
  max-height: 90vh;
  overflow-y: auto;
}
#popup.open {
  display: block;
  padding: 25px;
  border-radius: 20px;
  top: 5vh;
  left: 15%;
  width: 70%;
}

.custom-file-label::after {
  content: "Parcourir" !important;
}

.primary-bg, .btn-primary, .btn-aviva {
  background-color: #333EFF;
}

.primary-color, .btn-outline-primary {
  color: #333EFF;
}

.primary-H-bg, .btn-primary-H {
  background-color: #1A26FF;
}

.primary-H-color, .btn-outline-primary-H {
  color: #1A26FF;
}

.primary-HH-bg {
  background-color: #000646;
}

.primary-HH-color {
  color: #000646;
}

.primary-L-bg, .btn-primary-L {
  background-color: #4D56FF;
}

.primary-L-color, .btn-outline-primary-L {
  color: #4D56FF;
}

.primary-LL-bg {
  background-color: #666EFF;
}

.primary-LL-color {
  color: #666EFF;
}

.secondary-bg, .btn-secondary {
  background-color: #B3B7FF;
}

.secondary-color, .btn-outline-secondary {
  color: #B3B7FF;
}

.secondary-H-bg, .btn-secondary-H {
  background-color: #999FFF;
}

.secondary-H-color, .btn-outline-secondary-H {
  color: #999FFF;
}

.secondary-HH-bg {
  background-color: #8086FF;
}

.secondary-HH-color {
  color: #8086FF;
}

.secondary-L-bg {
  background-color: #CCCFFF;
}

.secondary-L-color {
  color: #CCCFFF;
}

.secondary-LL-bg {
  background-color: #E6E7FF;
}

.secondary-LL-color {
  color: #E6E7FF;
}

.secondary-LLL-bg {
  background-color: #9fffff;
}

.secondary-LLL-color {
  color: #9fffff;
}

.third-bg {
  background-color: #707070;
}

.third-color {
  color: #707070;
}

.teal-bg {
  background-color: #00a099;
}

.teal-color {
  color: #00a099;
}

.gradien-bg {
  background: linear-gradient(45deg, #333EFF, #B3B7FF);
}

.gradien-H-bg {
  background: linear-gradient(90deg, #1A26FF, #999FFF);
}

.gray-light-bg {
  background-color: #EFE6EF;
}

.gray-light-color {
  color: #EFE6EF;
}

.white-bg {
  background-color: #ffffff;
}

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

.red-bg {
  background-color: #FB4E4E;
}

.red-color {
  color: #FB4E4E !important;
}

.green-bg {
  background-color: #39b54a;
}

.green-color {
  color: #39b54a !important;
}

.box, #popup.open {
  box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.25);
  background: #fff;
}

.btn-primary:hover {
  color: #fff;
  opacity: 0.8;
}

.btn-outline-primary {
  border: 1px solid #333EFF;
}

.btn-primary-H {
  color: #fff;
}
.btn-primary-H:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-H {
  border: 1px solid #1A26FF;
}

.btn-primary-L {
  color: #fff;
}
.btn-primary-L:hover {
  opacity: 0.9;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-L {
  border: 1px solid #4D56FF;
}

.btn-secondary {
  border-color: #B3B7FF;
}

.btn-outline-secondary {
  border: 1px solid #B3B7FF;
}

.btn-outline-secondary-H {
  border: 1px solid #999FFF;
}

.btn-link {
  background-color: #B3B7FF;
  color: #3E3E3E;
}
.btn-link:hover {
  background-color: #666EFF;
  color: white;
  text-decoration: none;
}

.btn-outline-white {
  background-color: white;
  border: 1px solid #3E3E3E;
  color: #3E3E3E;
  text-decoration: none;
}
.btn-outline-white:hover {
  background-color: #666EFF;
  border: 1px solid #666EFF;
  color: white;
}

.border-primary {
  border: 2px solid #333EFF;
}

.border-primary-H {
  border: 2px solid #1A26FF;
}

.border-primary-L {
  border: 2px solid #4D56FF;
}

.border-secondary {
  border: 2px solid #B3B7FF;
}

.border-secondary-H {
  border: 2px solid #999FFF;
}

.border-secondary-L {
  border: 2px solid #CCCFFF;
}

.border-top-primary {
  border-top: 2px solid #333EFF;
}

.border-top-primary-H {
  border-top: 2px solid #1A26FF;
}

.border-top-primary-L {
  border-top: 2px solid #4D56FF;
}

.border-top-secondary {
  border-top: 2px solid #B3B7FF;
}

.border-top-secondary-H {
  border-top: 2px solid #999FFF;
}

.border-top-secondary-L {
  border-top: 2px solid #CCCFFF;
}

.border-20 {
  border-radius: 20px;
}

.border-50 {
  border-radius: 50px;
}

.emoji {
  font-family: Apple Color Emoji;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-6 {
  z-index: 6;
}

.z-7 {
  z-index: 7;
}

.z-8 {
  z-index: 8;
}

.z-9 {
  z-index: 9;
}

.z-10 {
  z-index: 10;
}

.font-7 {
  font-size: 7px;
}

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

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

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

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

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

.font-13 {
  font-size: 13px;
}

.font-14, .meta-title-container .meta-title-header h6 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16, .meta-title-container .meta-title-header h5 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

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

.font-19 {
  font-size: 19px;
}

.font-20, .meta-title-container .meta-title-header h4 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-23 {
  font-size: 23px;
}

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

.font-25 {
  font-size: 25px;
}

.font-26, .meta-title-container .meta-title-header h3 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

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

.font-29 {
  font-size: 29px;
}

.font-30, .meta-title-container .meta-title-header h2 {
  font-size: 30px;
}

.font-31 {
  font-size: 31px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-34 {
  font-size: 34px;
}

.font-35 {
  font-size: 35px;
}

.font-36, .meta-title-container .meta-title-header h1 {
  font-size: 36px;
}

.font-37 {
  font-size: 37px;
}

.font-38 {
  font-size: 38px;
}

.font-39 {
  font-size: 39px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-42 {
  font-size: 42px;
}

.font-43 {
  font-size: 43px;
}

.font-44 {
  font-size: 44px;
}

.font-45 {
  font-size: 45px;
}

.font-46 {
  font-size: 46px;
}

.font-47 {
  font-size: 47px;
}

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

.font-49 {
  font-size: 49px;
}

.font-50 {
  font-size: 50px;
}

.font-51 {
  font-size: 51px;
}

.font-52 {
  font-size: 52px;
}

.font-53 {
  font-size: 53px;
}

.font-54 {
  font-size: 54px;
}

.font-55 {
  font-size: 55px;
}

.font-56 {
  font-size: 56px;
}

.font-57 {
  font-size: 57px;
}

.font-58 {
  font-size: 58px;
}

.font-59 {
  font-size: 59px;
}

.font-60 {
  font-size: 60px;
}

.font-61 {
  font-size: 61px;
}

.font-62 {
  font-size: 62px;
}

.font-63 {
  font-size: 63px;
}

.font-64 {
  font-size: 64px;
}

.font-65 {
  font-size: 65px;
}

.font-66 {
  font-size: 66px;
}

.font-67 {
  font-size: 67px;
}

.font-68 {
  font-size: 68px;
}

.font-69 {
  font-size: 69px;
}

.font-70 {
  font-size: 70px;
}

@media (min-width: 768px) {
  .font-md-7 {
    font-size: 7px;
  }

  .font-md-8 {
    font-size: 8px;
  }

  .font-md-9 {
    font-size: 9px;
  }

  .font-md-10 {
    font-size: 10px;
  }

  .font-md-11 {
    font-size: 11px;
  }

  .font-md-12 {
    font-size: 12px;
  }

  .font-md-13 {
    font-size: 13px;
  }

  .font-md-14 {
    font-size: 14px;
  }

  .font-md-15 {
    font-size: 15px;
  }

  .font-md-16 {
    font-size: 16px;
  }

  .font-md-17 {
    font-size: 17px;
  }

  .font-md-18 {
    font-size: 18px;
  }

  .font-md-19 {
    font-size: 19px;
  }

  .font-md-20, .meta-title-container .meta-title-header h6 {
    font-size: 20px;
  }

  .font-md-21 {
    font-size: 21px;
  }

  .font-md-22 {
    font-size: 22px;
  }

  .font-md-23 {
    font-size: 23px;
  }

  .font-md-24 {
    font-size: 24px;
  }

  .font-md-25 {
    font-size: 25px;
  }

  .font-md-26 {
    font-size: 26px;
  }

  .font-md-27 {
    font-size: 27px;
  }

  .font-md-28 {
    font-size: 28px;
  }

  .font-md-29 {
    font-size: 29px;
  }

  .font-md-30, .meta-title-container .meta-title-header h5 {
    font-size: 30px;
  }

  .font-md-31 {
    font-size: 31px;
  }

  .font-md-32 {
    font-size: 32px;
  }

  .font-md-33 {
    font-size: 33px;
  }

  .font-md-34 {
    font-size: 34px;
  }

  .font-md-35 {
    font-size: 35px;
  }

  .font-md-36 {
    font-size: 36px;
  }

  .font-md-37 {
    font-size: 37px;
  }

  .font-md-38 {
    font-size: 38px;
  }

  .font-md-39 {
    font-size: 39px;
  }

  .font-md-40, .meta-title-container .meta-title-header h4 {
    font-size: 40px;
  }

  .font-md-41 {
    font-size: 41px;
  }

  .font-md-42 {
    font-size: 42px;
  }

  .font-md-43 {
    font-size: 43px;
  }

  .font-md-44 {
    font-size: 44px;
  }

  .font-md-45 {
    font-size: 45px;
  }

  .font-md-46 {
    font-size: 46px;
  }

  .font-md-47 {
    font-size: 47px;
  }

  .font-md-48 {
    font-size: 48px;
  }

  .font-md-49 {
    font-size: 49px;
  }

  .font-md-50, .meta-title-container .meta-title-header h3 {
    font-size: 50px;
  }

  .font-md-51 {
    font-size: 51px;
  }

  .font-md-52 {
    font-size: 52px;
  }

  .font-md-53 {
    font-size: 53px;
  }

  .font-md-54 {
    font-size: 54px;
  }

  .font-md-55 {
    font-size: 55px;
  }

  .font-md-56 {
    font-size: 56px;
  }

  .font-md-57 {
    font-size: 57px;
  }

  .font-md-58 {
    font-size: 58px;
  }

  .font-md-59 {
    font-size: 59px;
  }

  .font-md-60, .meta-title-container .meta-title-header h2 {
    font-size: 60px;
  }

  .font-md-61 {
    font-size: 61px;
  }

  .font-md-62 {
    font-size: 62px;
  }

  .font-md-63 {
    font-size: 63px;
  }

  .font-md-64 {
    font-size: 64px;
  }

  .font-md-65, .meta-title-container .meta-title-header h1 {
    font-size: 65px;
  }

  .font-md-66 {
    font-size: 66px;
  }

  .font-md-67 {
    font-size: 67px;
  }

  .font-md-68 {
    font-size: 68px;
  }

  .font-md-69 {
    font-size: 69px;
  }

  .font-md-70 {
    font-size: 70px;
  }
}
.opacity-0 {
  opacity: 0;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-20 {
  opacity: 0.2;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-80 {
  opacity: 0.8;
}

.opacity-90 {
  opacity: 0.9;
}

.opacity-100 {
  opacity: 1;
}

/*!
 * Bootstrap v4.6.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #FB4E4E;
  --orange: #ff7140;
  --yellow: #fff125;
  --green: #39b54a;
  --teal: #00a099;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #333EFF;
  --secondary: #B3B7FF;
  --success: #39b54a;
  --info: #17a2b8;
  --warning: #fff125;
  --danger: #FB4E4E;
  --light: #f8f9fa;
  --dark: #3E3E3E;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

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

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

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #333EFF;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #000ce6;
  text-decoration: underline;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

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

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container,
.container-fluid,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

  .order-sm-1 {
    order: 1;
  }

  .order-sm-2 {
    order: 2;
  }

  .order-sm-3 {
    order: 3;
  }

  .order-sm-4 {
    order: 4;
  }

  .order-sm-5 {
    order: 5;
  }

  .order-sm-6 {
    order: 6;
  }

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }

  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }

  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }

  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }

  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }

  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }

  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

  .order-md-1 {
    order: 1;
  }

  .order-md-2 {
    order: 2;
  }

  .order-md-3 {
    order: 3;
  }

  .order-md-4 {
    order: 4;
  }

  .order-md-5 {
    order: 5;
  }

  .order-md-6 {
    order: 6;
  }

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.3333333333%;
  }

  .offset-md-2 {
    margin-left: 16.6666666667%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }

  .offset-md-4 {
    margin-left: 33.3333333333%;
  }

  .offset-md-5 {
    margin-left: 41.6666666667%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }

  .offset-md-7 {
    margin-left: 58.3333333333%;
  }

  .offset-md-8 {
    margin-left: 66.6666666667%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }

  .offset-md-10 {
    margin-left: 83.3333333333%;
  }

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

  .order-lg-1 {
    order: 1;
  }

  .order-lg-2 {
    order: 2;
  }

  .order-lg-3 {
    order: 3;
  }

  .order-lg-4 {
    order: 4;
  }

  .order-lg-5 {
    order: 5;
  }

  .order-lg-6 {
    order: 6;
  }

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }

  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }

  .offset-lg-3 {
    margin-left: 25%;
  }

  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }

  .offset-lg-6 {
    margin-left: 50%;
  }

  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }

  .offset-lg-9 {
    margin-left: 75%;
  }

  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

  .order-xl-1 {
    order: 1;
  }

  .order-xl-2 {
    order: 2;
  }

  .order-xl-3 {
    order: 3;
  }

  .order-xl-4 {
    order: 4;
  }

  .order-xl-5 {
    order: 5;
  }

  .order-xl-6 {
    order: 6;
  }

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }

  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }

  .offset-xl-3 {
    margin-left: 25%;
  }

  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }

  .offset-xl-6 {
    margin-left: 50%;
  }

  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }

  .offset-xl-9 {
    margin-left: 75%;
  }

  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}
.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #c6c9ff;
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #959bff;
}

.table-hover .table-primary:hover {
  background-color: #adb1ff;
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #adb1ff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #eaebff;
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #d7daff;
}

.table-hover .table-secondary:hover {
  background-color: #d1d3ff;
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #d1d3ff;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c8eacc;
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #98d9a1;
}

.table-hover .table-success:hover {
  background-color: #b6e3bb;
}
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b6e3bb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #fffbc2;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #fff88e;
}

.table-hover .table-warning:hover {
  background-color: #fff9a9;
}
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #fff9a9;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #fecdcd;
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #fda3a3;
}

.table-hover .table-danger:hover {
  background-color: #feb4b4;
}
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #feb4b4;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c9c9c9;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #9b9b9b;
}

.table-hover .table-dark:hover {
  background-color: #bcbcbc;
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #bcbcbc;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}
.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}
.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #b3b7ff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  appearance: none;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #39b54a;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(57, 181, 74, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .valid-tooltip, .form-row > [class*=col-] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #39b54a;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2339b54a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #39b54a;
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #39b54a;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2339b54a' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #39b54a;
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #39b54a;
}
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #39b54a;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #39b54a;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #57ca67;
  background-color: #57ca67;
}
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.25);
}
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #39b54a;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #39b54a;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #39b54a;
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #FB4E4E;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(251, 78, 78, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .invalid-tooltip, .form-row > [class*=col-] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #FB4E4E;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23FB4E4E' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23FB4E4E' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #FB4E4E;
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #FB4E4E;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23FB4E4E' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23FB4E4E' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #FB4E4E;
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #FB4E4E;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #FB4E4E;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #FB4E4E;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #fc8080;
  background-color: #fc8080;
}
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.25);
}
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #FB4E4E;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #FB4E4E;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #FB4E4E;
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
.form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #212529;
  text-decoration: none;
}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.btn-primary:hover {
  color: #fff;
  background-color: #0d1aff;
  border-color: #000eff;
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0d1aff;
  border-color: #000eff;
  box-shadow: 0 0 0 0.2rem rgba(82, 91, 255, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #000eff;
  border-color: #000df2;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 91, 255, 0.5);
}

.btn-secondary {
  color: #212529;
  background-color: #B3B7FF;
  border-color: #B3B7FF;
}
.btn-secondary:hover {
  color: #212529;
  background-color: #8d93ff;
  border-color: #8087ff;
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #212529;
  background-color: #8d93ff;
  border-color: #8087ff;
  box-shadow: 0 0 0 0.2rem rgba(157, 161, 223, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #212529;
  background-color: #B3B7FF;
  border-color: #B3B7FF;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #8087ff;
  border-color: #737bff;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(157, 161, 223, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #39b54a;
  border-color: #39b54a;
}
.btn-success:hover {
  color: #fff;
  background-color: #30983e;
  border-color: #2d8e3a;
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #30983e;
  border-color: #2d8e3a;
  box-shadow: 0 0 0 0.2rem rgba(87, 192, 101, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #39b54a;
  border-color: #39b54a;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #2d8e3a;
  border-color: #2a8536;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(87, 192, 101, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #fff125;
  border-color: #fff125;
}
.btn-warning:hover {
  color: #212529;
  background-color: #feed00;
  border-color: #f1e200;
}
.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #feed00;
  border-color: #f1e200;
  box-shadow: 0 0 0 0.2rem rgba(222, 210, 38, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #fff125;
  border-color: #fff125;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #f1e200;
  border-color: #e4d600;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 210, 38, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #FB4E4E;
  border-color: #FB4E4E;
}
.btn-danger:hover {
  color: #fff;
  background-color: #fa2929;
  border-color: #fa1c1c;
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #fa2929;
  border-color: #fa1c1c;
  box-shadow: 0 0 0 0.2rem rgba(252, 105, 105, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #FB4E4E;
  border-color: #FB4E4E;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #fa1c1c;
  border-color: #fa1010;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(252, 105, 105, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}
.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #3E3E3E;
  border-color: #3E3E3E;
}
.btn-dark:hover {
  color: #fff;
  background-color: #2b2b2b;
  border-color: #252525;
}
.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #2b2b2b;
  border-color: #252525;
  box-shadow: 0 0 0 0.2rem rgba(91, 91, 91, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #3E3E3E;
  border-color: #3E3E3E;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #252525;
  border-color: #1e1e1e;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(91, 91, 91, 0.5);
}

.btn-outline-primary {
  color: #333EFF;
  border-color: #333EFF;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #333EFF;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.5);
}

.btn-outline-secondary {
  color: #B3B7FF;
  border-color: #B3B7FF;
}
.btn-outline-secondary:hover {
  color: #212529;
  background-color: #B3B7FF;
  border-color: #B3B7FF;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(179, 183, 255, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #B3B7FF;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
  color: #212529;
  background-color: #B3B7FF;
  border-color: #B3B7FF;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(179, 183, 255, 0.5);
}

.btn-outline-success {
  color: #39b54a;
  border-color: #39b54a;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #39b54a;
  border-color: #39b54a;
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #39b54a;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #39b54a;
  border-color: #39b54a;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #fff125;
  border-color: #fff125;
}
.btn-outline-warning:hover {
  color: #212529;
  background-color: #fff125;
  border-color: #fff125;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 241, 37, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #fff125;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #fff125;
  border-color: #fff125;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 241, 37, 0.5);
}

.btn-outline-danger {
  color: #FB4E4E;
  border-color: #FB4E4E;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #FB4E4E;
  border-color: #FB4E4E;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #FB4E4E;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #FB4E4E;
  border-color: #FB4E4E;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #3E3E3E;
  border-color: #3E3E3E;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #3E3E3E;
  border-color: #3E3E3E;
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(62, 62, 62, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #3E3E3E;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #3E3E3E;
  border-color: #3E3E3E;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(62, 62, 62, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #333EFF;
  text-decoration: none;
}
.btn-link:hover {
  color: #000ce6;
  text-decoration: underline;
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #333EFF;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}
.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > .form-control:nth-last-child(n+3),
.input-group.has-validation > .custom-select:nth-last-child(n+3),
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}
.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #333EFF;
  background-color: #333EFF;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #b3b7ff;
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #e6e7ff;
  border-color: #e6e7ff;
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}
.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50%/50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #333EFF;
  background-color: #333EFF;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(51, 62, 255, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(51, 62, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(51, 62, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(51, 62, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}
.custom-select:focus {
  border-color: #b3b7ff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}
.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  border-color: #b3b7ff;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input:lang(es) ~ .custom-file-label::after {
  content: "Elegir";
}
.custom-file-input:lang(fr) ~ .custom-file-label::after {
  content: "Parcourir";
}
.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}
.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}
.custom-range:focus {
  outline: 0;
}
.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #333EFF;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: #e6e7ff;
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #333EFF;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: #e6e7ff;
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #333EFF;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: #e6e7ff;
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
.custom-file-label,
.custom-select {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #333EFF;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50%/100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-text a {
  color: #fff;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}
.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #333EFF;
  background-color: #fff;
  border: 1px solid #dee2e6;
}
.page-link:hover {
  z-index: 2;
  color: #000ce6;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #333EFF;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #000eff;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 62, 255, 0.5);
}

.badge-secondary {
  color: #212529;
  background-color: #B3B7FF;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #212529;
  background-color: #8087ff;
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(179, 183, 255, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #39b54a;
}
a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #2d8e3a;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(57, 181, 74, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}
a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #fff125;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #f1e200;
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 241, 37, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #FB4E4E;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #fa1c1c;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(251, 78, 78, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}
a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #3E3E3E;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #252525;
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(62, 62, 62, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #1b2085;
  background-color: #d6d8ff;
  border-color: #c6c9ff;
}
.alert-primary hr {
  border-top-color: #adb1ff;
}
.alert-primary .alert-link {
  color: #12165b;
}

.alert-secondary {
  color: #5d5f85;
  background-color: #f0f1ff;
  border-color: #eaebff;
}
.alert-secondary hr {
  border-top-color: #d1d3ff;
}
.alert-secondary .alert-link {
  color: #484a67;
}

.alert-success {
  color: #1e5e26;
  background-color: #d7f0db;
  border-color: #c8eacc;
}
.alert-success hr {
  border-top-color: #b6e3bb;
}
.alert-success .alert-link {
  color: #123716;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}
.alert-info hr {
  border-top-color: #abdde5;
}
.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #857d13;
  background-color: #fffcd3;
  border-color: #fffbc2;
}
.alert-warning hr {
  border-top-color: #fff9a9;
}
.alert-warning .alert-link {
  color: #58530d;
}

.alert-danger {
  color: #832929;
  background-color: #fedcdc;
  border-color: #fecdcd;
}
.alert-danger hr {
  border-top-color: #feb4b4;
}
.alert-danger .alert-link {
  color: #5c1d1d;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light hr {
  border-top-color: #ececf6;
}
.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #202020;
  background-color: #d8d8d8;
  border-color: #c9c9c9;
}
.alert-dark hr {
  border-top-color: #bcbcbc;
}
.alert-dark .alert-link {
  color: #070707;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #333EFF;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #333EFF;
  border-color: #333EFF;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #1b2085;
  background-color: #c6c9ff;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #1b2085;
  background-color: #adb1ff;
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #1b2085;
  border-color: #1b2085;
}

.list-group-item-secondary {
  color: #5d5f85;
  background-color: #eaebff;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #5d5f85;
  background-color: #d1d3ff;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #5d5f85;
  border-color: #5d5f85;
}

.list-group-item-success {
  color: #1e5e26;
  background-color: #c8eacc;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #1e5e26;
  background-color: #b6e3bb;
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #1e5e26;
  border-color: #1e5e26;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #857d13;
  background-color: #fffbc2;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #857d13;
  background-color: #fff9a9;
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #857d13;
  border-color: #857d13;
}

.list-group-item-danger {
  color: #832929;
  background-color: #fecdcd;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #832929;
  background-color: #feb4b4;
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #832929;
  border-color: #832929;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #202020;
  background-color: #c9c9c9;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #202020;
  background-color: #bcbcbc;
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #202020;
  border-color: #202020;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
}
.close:hover {
  color: #000;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}

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

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

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}
.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.toast.showing {
  opacity: 1;
}
.toast.show {
  display: block;
  opacity: 1;
}
.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

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

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

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

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

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

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

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.5rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .bs-popover-auto[x-placement^=right] {
  margin-left: 0.5rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.5rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .bs-popover-auto[x-placement^=left] {
  margin-right: 0.5rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50%/100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: 0.75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: 0.75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    animation-duration: 1.5s;
  }
}
.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #333EFF !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #000eff !important;
}

.bg-secondary {
  background-color: #B3B7FF !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #8087ff !important;
}

.bg-success {
  background-color: #39b54a !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #2d8e3a !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #fff125 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #f1e200 !important;
}

.bg-danger {
  background-color: #FB4E4E !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #fa1c1c !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #3E3E3E !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #252525 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #333EFF !important;
}

.border-secondary {
  border-color: #B3B7FF !important;
}

.border-success {
  border-color: #39b54a !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #fff125 !important;
}

.border-danger {
  border-color: #FB4E4E !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #3E3E3E !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

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

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.8571428571%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

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

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
.float-left {
  float: left !important;
}

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

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

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }

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

  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }

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

  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }

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

  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }

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

  .float-xl-none {
    float: none !important;
  }
}
.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

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

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

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

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

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

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

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

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

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

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .mt-sm-0,
.my-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0,
.mx-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0,
.my-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0,
.mx-sm-0 {
    margin-left: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .mt-sm-1,
.my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
.mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
.my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
.mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
.my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
.mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
.my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
.mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
.my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
.mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
.my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
.mx-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
.my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
.mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
.my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
.mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
.my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
.mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
.my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
.mx-sm-5 {
    margin-left: 3rem !important;
  }

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

  .pt-sm-0,
.py-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0,
.px-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0,
.py-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0,
.px-sm-0 {
    padding-left: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .pt-sm-1,
.py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
.px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
.py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
.px-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
.py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
.px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
.py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
.px-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
.py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
.px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
.py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
.px-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
.py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
.px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
.py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
.px-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
.py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
.px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
.py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
.px-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
.my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
.mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
.my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
.mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
.my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
.mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
.my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
.mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
.my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
.mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
.my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
.mx-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
.my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
.mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
.my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
.mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
.my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
.mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
.my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
.mx-sm-n5 {
    margin-left: -3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
.my-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto,
.mx-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto,
.my-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto,
.mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .mt-md-0,
.my-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0,
.mx-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0,
.my-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0,
.mx-md-0 {
    margin-left: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .mt-md-1,
.my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
.mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
.my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
.mx-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
.my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
.mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
.my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
.mx-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
.my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
.mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
.my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
.mx-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
.my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
.mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
.my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
.mx-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
.my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
.mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
.my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
.mx-md-5 {
    margin-left: 3rem !important;
  }

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

  .pt-md-0,
.py-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0,
.px-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0,
.py-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0,
.px-md-0 {
    padding-left: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .pt-md-1,
.py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
.px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
.py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
.px-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
.py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
.px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
.py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
.px-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
.py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
.px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
.py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
.px-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
.py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
.px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
.py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
.px-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
.py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
.px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
.py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
.px-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
.my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
.mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
.my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
.mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
.my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
.mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
.my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
.mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
.my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
.mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
.my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
.mx-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
.my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
.mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
.my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
.mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
.my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
.mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
.my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
.mx-md-n5 {
    margin-left: -3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
.my-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto,
.mx-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto,
.my-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto,
.mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .mt-lg-0,
.my-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0,
.mx-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0,
.my-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0,
.mx-lg-0 {
    margin-left: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .mt-lg-1,
.my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
.mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
.my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
.mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
.my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
.mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
.my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
.mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
.my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
.mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
.my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
.mx-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
.my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
.mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
.my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
.mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
.my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
.mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
.my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
.mx-lg-5 {
    margin-left: 3rem !important;
  }

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

  .pt-lg-0,
.py-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0,
.px-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0,
.py-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0,
.px-lg-0 {
    padding-left: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .pt-lg-1,
.py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
.px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
.py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
.px-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
.py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
.px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
.py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
.px-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
.py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
.px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
.py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
.px-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
.py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
.px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
.py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
.px-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
.py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
.px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
.py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
.px-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
.my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
.mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
.my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
.mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
.my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
.mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
.my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
.mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
.my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
.mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
.my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
.mx-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
.my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
.mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
.my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
.mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
.my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
.mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
.my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
.mx-lg-n5 {
    margin-left: -3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
.my-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto,
.mx-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto,
.my-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto,
.mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .mt-xl-0,
.my-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0,
.mx-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0,
.my-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0,
.mx-xl-0 {
    margin-left: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .mt-xl-1,
.my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
.mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
.my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
.mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
.my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
.mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
.my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
.mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
.my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
.mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
.my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
.mx-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
.my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
.mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
.my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
.mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
.my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
.mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
.my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
.mx-xl-5 {
    margin-left: 3rem !important;
  }

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

  .pt-xl-0,
.py-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0,
.px-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0,
.py-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0,
.px-xl-0 {
    padding-left: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .pt-xl-1,
.py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
.px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
.py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
.px-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
.py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
.px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
.py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
.px-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
.py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
.px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
.py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
.px-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
.py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
.px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
.py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
.px-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
.py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
.px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
.py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
.px-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
.my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
.mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
.my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
.mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
.my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
.mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
.my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
.mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
.my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
.mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
.my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
.mx-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
.my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
.mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
.my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
.mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
.my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
.mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
.my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
.mx-xl-n5 {
    margin-left: -3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
.my-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto,
.mx-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto,
.my-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto,
.mx-xl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

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

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }

  .text-sm-right {
    text-align: right !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }

  .text-md-right {
    text-align: right !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }

  .text-lg-right {
    text-align: right !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }

  .text-xl-right {
    text-align: right !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #333EFF !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #000ce6 !important;
}

.text-secondary {
  color: #B3B7FF !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #676fff !important;
}

.text-success {
  color: #39b54a !important;
}

a.text-success:hover, a.text-success:focus {
  color: #277b32 !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #fff125 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #d8ca00 !important;
}

.text-danger {
  color: #FB4E4E !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #f70606 !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #3E3E3E !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #181818 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
.table th {
    background-color: #fff !important;
  }

  .table-bordered th,
.table-bordered td {
    border: 1px solid #dee2e6 !important;
  }

  .table-dark {
    color: inherit;
  }
  .table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
    border-color: #dee2e6;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}
/*
grey light : #5D839D
green-blue : #ababab
blue : #0028F5 / #67D6FB
*/
/*
{"palette":{"common":{"black":"rgba(51, 51, 51, 1)","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"rgba(51, 83, 247, 1)","main":"rgba(0, 40, 245, 1)","dark":"rgba(0, 28, 171, 1)","contrastText":"#fff"},"secondary":{"light":"rgba(72, 149, 175, 1)","main":"rgba(103, 214, 251, 1)","dark":"rgba(133, 222, 251, 1)","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"}}}
*/
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Medium"), url(/build/images/CircularStd-Medium.61d34836.svg) format("svg"), url(/build/fonts/CircularStd-Medium.e39d4081.woff) format("woff"), url(/build/fonts/CircularStd-Medium.6fb73f93.ttf) format("ttf"), url(/build/fonts/CircularStd-Medium.bba31ddc.eot) format("embedded-opentype");
  font-style: normal;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-MediumItalic"), url(/build/images/CircularStd-MediumItalic.5614e440.svg) format("svg"), url(/build/fonts/CircularStd-MediumItalic.8ffa91cf.woff) format("woff"), url(/build/fonts/CircularStd-MediumItalic.df104e4b.ttf) format("ttf"), url(/build/fonts/CircularStd-MediumItalic.4936f24b.eot) format("embedded-opentype");
  font-style: italic;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: bold;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 500;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 700;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-BoldItalic"), url(/build/images/CircularStd-BoldItalic.abb32a5c.svg) format("svg"), url(/build/fonts/CircularStd-BoldItalic.eeb47162.woff) format("woff"), url(/build/fonts/CircularStd-BoldItalic.4c0949c4.ttf) format("ttf"), url(/build/fonts/CircularStd-BoldItalic.af155cb0.eot) format("embedded-opentype");
  font-weight: 500;
  font-style: italic;
}
.aviva-bg {
  background-color: #ffd900;
}

.aviva-color {
  color: #004fb6;
}

.btn-aviva {
  background-color: #004fb6;
  color: #ffd900;
}

#mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
#mask.open {
  width: 100%;
  height: 100%;
}
#mask.visible {
  background: rgba(128, 128, 128, 0.25);
}

#popup {
  position: fixed;
  background: #FFF;
  z-index: 99;
  display: none;
  max-height: 90vh;
  overflow-y: auto;
}
#popup.open {
  display: block;
  padding: 25px;
  border-radius: 20px;
  top: 5vh;
  left: 15%;
  width: 70%;
}

.custom-file-label::after {
  content: "Parcourir" !important;
}

.primary-bg, .btn-aviva, .btn-primary {
  background-color: #333EFF;
}

.primary-color, .btn-outline-primary {
  color: #333EFF;
}

.primary-H-bg, .btn-primary-H {
  background-color: #1A26FF;
}

.primary-H-color, .btn-outline-primary-H {
  color: #1A26FF;
}

.primary-HH-bg {
  background-color: #000646;
}

.primary-HH-color {
  color: #000646;
}

.primary-L-bg, .btn-primary-L {
  background-color: #4D56FF;
}

.primary-L-color, .btn-outline-primary-L {
  color: #4D56FF;
}

.primary-LL-bg {
  background-color: #666EFF;
}

.primary-LL-color {
  color: #666EFF;
}

.secondary-bg, .btn-secondary {
  background-color: #B3B7FF;
}

.secondary-color, .btn-outline-secondary {
  color: #B3B7FF;
}

.secondary-H-bg, .btn-secondary-H {
  background-color: #999FFF;
}

.secondary-H-color, .btn-outline-secondary-H {
  color: #999FFF;
}

.secondary-HH-bg {
  background-color: #8086FF;
}

.secondary-HH-color {
  color: #8086FF;
}

.secondary-L-bg {
  background-color: #CCCFFF;
}

.secondary-L-color {
  color: #CCCFFF;
}

.secondary-LL-bg {
  background-color: #E6E7FF;
}

.secondary-LL-color {
  color: #E6E7FF;
}

.secondary-LLL-bg {
  background-color: #9fffff;
}

.secondary-LLL-color {
  color: #9fffff;
}

.third-bg {
  background-color: #707070;
}

.third-color {
  color: #707070;
}

.teal-bg {
  background-color: #00a099;
}

.teal-color {
  color: #00a099;
}

.gradien-bg {
  background: linear-gradient(45deg, #333EFF, #B3B7FF);
}

.gradien-H-bg {
  background: linear-gradient(90deg, #1A26FF, #999FFF);
}

.gray-light-bg {
  background-color: #EFE6EF;
}

.gray-light-color {
  color: #EFE6EF;
}

.white-bg {
  background-color: #ffffff;
}

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

.red-bg {
  background-color: #FB4E4E;
}

.red-color {
  color: #FB4E4E !important;
}

.green-bg {
  background-color: #39b54a;
}

.green-color {
  color: #39b54a !important;
}

.box, #popup.open {
  box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.25);
  background: #fff;
}

.btn-primary:hover {
  color: #fff;
  opacity: 0.8;
}

.btn-outline-primary {
  border: 1px solid #333EFF;
}

.btn-primary-H {
  color: #fff;
}
.btn-primary-H:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-H {
  border: 1px solid #1A26FF;
}

.btn-primary-L {
  color: #fff;
}
.btn-primary-L:hover {
  opacity: 0.9;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-L {
  border: 1px solid #4D56FF;
}

.btn-secondary {
  border-color: #B3B7FF;
}

.btn-outline-secondary {
  border: 1px solid #B3B7FF;
}

.btn-outline-secondary-H {
  border: 1px solid #999FFF;
}

.btn-link {
  background-color: #B3B7FF;
  color: #3E3E3E;
}
.btn-link:hover {
  background-color: #666EFF;
  color: white;
  text-decoration: none;
}

.btn-outline-white {
  background-color: white;
  border: 1px solid #3E3E3E;
  color: #3E3E3E;
  text-decoration: none;
}
.btn-outline-white:hover {
  background-color: #666EFF;
  border: 1px solid #666EFF;
  color: white;
}

.border-primary {
  border: 2px solid #333EFF;
}

.border-primary-H {
  border: 2px solid #1A26FF;
}

.border-primary-L {
  border: 2px solid #4D56FF;
}

.border-secondary {
  border: 2px solid #B3B7FF;
}

.border-secondary-H {
  border: 2px solid #999FFF;
}

.border-secondary-L {
  border: 2px solid #CCCFFF;
}

.border-top-primary {
  border-top: 2px solid #333EFF;
}

.border-top-primary-H {
  border-top: 2px solid #1A26FF;
}

.border-top-primary-L {
  border-top: 2px solid #4D56FF;
}

.border-top-secondary {
  border-top: 2px solid #B3B7FF;
}

.border-top-secondary-H {
  border-top: 2px solid #999FFF;
}

.border-top-secondary-L {
  border-top: 2px solid #CCCFFF;
}

.border-20 {
  border-radius: 20px;
}

.border-50 {
  border-radius: 50px;
}

.emoji {
  font-family: Apple Color Emoji;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-6 {
  z-index: 6;
}

.z-7 {
  z-index: 7;
}

.z-8 {
  z-index: 8;
}

.z-9 {
  z-index: 9;
}

.z-10 {
  z-index: 10;
}

.font-7 {
  font-size: 7px;
}

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

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

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

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

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

.font-13 {
  font-size: 13px;
}

.font-14, .meta-title-container .meta-title-header h6 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16, .meta-title-container .meta-title-header h5 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

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

.font-19 {
  font-size: 19px;
}

.font-20, .meta-title-container .meta-title-header h4 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-23 {
  font-size: 23px;
}

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

.font-25 {
  font-size: 25px;
}

.font-26, .meta-title-container .meta-title-header h3 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

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

.font-29 {
  font-size: 29px;
}

.font-30, .meta-title-container .meta-title-header h2 {
  font-size: 30px;
}

.font-31 {
  font-size: 31px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-34 {
  font-size: 34px;
}

.font-35 {
  font-size: 35px;
}

.font-36, .meta-title-container .meta-title-header h1 {
  font-size: 36px;
}

.font-37 {
  font-size: 37px;
}

.font-38 {
  font-size: 38px;
}

.font-39 {
  font-size: 39px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-42 {
  font-size: 42px;
}

.font-43 {
  font-size: 43px;
}

.font-44 {
  font-size: 44px;
}

.font-45 {
  font-size: 45px;
}

.font-46 {
  font-size: 46px;
}

.font-47 {
  font-size: 47px;
}

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

.font-49 {
  font-size: 49px;
}

.font-50 {
  font-size: 50px;
}

.font-51 {
  font-size: 51px;
}

.font-52 {
  font-size: 52px;
}

.font-53 {
  font-size: 53px;
}

.font-54 {
  font-size: 54px;
}

.font-55 {
  font-size: 55px;
}

.font-56 {
  font-size: 56px;
}

.font-57 {
  font-size: 57px;
}

.font-58 {
  font-size: 58px;
}

.font-59 {
  font-size: 59px;
}

.font-60 {
  font-size: 60px;
}

.font-61 {
  font-size: 61px;
}

.font-62 {
  font-size: 62px;
}

.font-63 {
  font-size: 63px;
}

.font-64 {
  font-size: 64px;
}

.font-65 {
  font-size: 65px;
}

.font-66 {
  font-size: 66px;
}

.font-67 {
  font-size: 67px;
}

.font-68 {
  font-size: 68px;
}

.font-69 {
  font-size: 69px;
}

.font-70 {
  font-size: 70px;
}

@media (min-width: 768px) {
  .font-md-7 {
    font-size: 7px;
  }

  .font-md-8 {
    font-size: 8px;
  }

  .font-md-9 {
    font-size: 9px;
  }

  .font-md-10 {
    font-size: 10px;
  }

  .font-md-11 {
    font-size: 11px;
  }

  .font-md-12 {
    font-size: 12px;
  }

  .font-md-13 {
    font-size: 13px;
  }

  .font-md-14 {
    font-size: 14px;
  }

  .font-md-15 {
    font-size: 15px;
  }

  .font-md-16 {
    font-size: 16px;
  }

  .font-md-17 {
    font-size: 17px;
  }

  .font-md-18 {
    font-size: 18px;
  }

  .font-md-19 {
    font-size: 19px;
  }

  .font-md-20, .meta-title-container .meta-title-header h6 {
    font-size: 20px;
  }

  .font-md-21 {
    font-size: 21px;
  }

  .font-md-22 {
    font-size: 22px;
  }

  .font-md-23 {
    font-size: 23px;
  }

  .font-md-24 {
    font-size: 24px;
  }

  .font-md-25 {
    font-size: 25px;
  }

  .font-md-26 {
    font-size: 26px;
  }

  .font-md-27 {
    font-size: 27px;
  }

  .font-md-28 {
    font-size: 28px;
  }

  .font-md-29 {
    font-size: 29px;
  }

  .font-md-30, .meta-title-container .meta-title-header h5 {
    font-size: 30px;
  }

  .font-md-31 {
    font-size: 31px;
  }

  .font-md-32 {
    font-size: 32px;
  }

  .font-md-33 {
    font-size: 33px;
  }

  .font-md-34 {
    font-size: 34px;
  }

  .font-md-35 {
    font-size: 35px;
  }

  .font-md-36 {
    font-size: 36px;
  }

  .font-md-37 {
    font-size: 37px;
  }

  .font-md-38 {
    font-size: 38px;
  }

  .font-md-39 {
    font-size: 39px;
  }

  .font-md-40, .meta-title-container .meta-title-header h4 {
    font-size: 40px;
  }

  .font-md-41 {
    font-size: 41px;
  }

  .font-md-42 {
    font-size: 42px;
  }

  .font-md-43 {
    font-size: 43px;
  }

  .font-md-44 {
    font-size: 44px;
  }

  .font-md-45 {
    font-size: 45px;
  }

  .font-md-46 {
    font-size: 46px;
  }

  .font-md-47 {
    font-size: 47px;
  }

  .font-md-48 {
    font-size: 48px;
  }

  .font-md-49 {
    font-size: 49px;
  }

  .font-md-50, .meta-title-container .meta-title-header h3 {
    font-size: 50px;
  }

  .font-md-51 {
    font-size: 51px;
  }

  .font-md-52 {
    font-size: 52px;
  }

  .font-md-53 {
    font-size: 53px;
  }

  .font-md-54 {
    font-size: 54px;
  }

  .font-md-55 {
    font-size: 55px;
  }

  .font-md-56 {
    font-size: 56px;
  }

  .font-md-57 {
    font-size: 57px;
  }

  .font-md-58 {
    font-size: 58px;
  }

  .font-md-59 {
    font-size: 59px;
  }

  .font-md-60, .meta-title-container .meta-title-header h2 {
    font-size: 60px;
  }

  .font-md-61 {
    font-size: 61px;
  }

  .font-md-62 {
    font-size: 62px;
  }

  .font-md-63 {
    font-size: 63px;
  }

  .font-md-64 {
    font-size: 64px;
  }

  .font-md-65, .meta-title-container .meta-title-header h1 {
    font-size: 65px;
  }

  .font-md-66 {
    font-size: 66px;
  }

  .font-md-67 {
    font-size: 67px;
  }

  .font-md-68 {
    font-size: 68px;
  }

  .font-md-69 {
    font-size: 69px;
  }

  .font-md-70 {
    font-size: 70px;
  }
}
.opacity-0 {
  opacity: 0;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-20 {
  opacity: 0.2;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-80 {
  opacity: 0.8;
}

.opacity-90 {
  opacity: 0.9;
}

.opacity-100 {
  opacity: 1;
}

.anim-all, #lbp-launch {
  -webkit-transition: all 500ms ease-in-out;
  -moz-transition: all 500ms ease-in-out;
  -ms-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
}

.anim-all-1s {
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -ms-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}

/* ROTATION */
@-moz-keyframes spin {
  100% {
    -moz-transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spin-reverse {
  100% {
    -moz-transform: rotate(-360deg);
  }
}
@-webkit-keyframes spin-reverse {
  100% {
    -webkit-transform: rotate(-360deg);
  }
}
@keyframes spin-reverse {
  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
.rotate-1s {
  -webkit-animation: spin 1s linear forwards infinite;
  -moz-animation: spin 1s linear forwards infinite;
  animation: spin 1s linear forwards infinite;
}

.rotate-reverse-1s {
  -webkit-animation: spin-reverse 1s linear forwards infinite;
  -moz-animation: spin-reverse 1s linear forwards infinite;
  animation: spin-reverse 1s linear forwards infinite;
}

.rotate-2s {
  -webkit-animation: spin 2s linear forwards infinite;
  -moz-animation: spin 2s linear forwards infinite;
  animation: spin 2s linear forwards infinite;
}

.rotate-reverse-2s {
  -webkit-animation: spin-reverse 2s linear forwards infinite;
  -moz-animation: spin-reverse 2s linear forwards infinite;
  animation: spin-reverse 2s linear forwards infinite;
}

.rotate-3s {
  -webkit-animation: spin 3s linear forwards infinite;
  -moz-animation: spin 3s linear forwards infinite;
  animation: spin 3s linear forwards infinite;
}

.rotate-reverse-3s {
  -webkit-animation: spin-reverse 3s linear forwards infinite;
  -moz-animation: spin-reverse 3s linear forwards infinite;
  animation: spin-reverse 3s linear forwards infinite;
}

.rotate-4s {
  -webkit-animation: spin 4s linear forwards infinite;
  -moz-animation: spin 4s linear forwards infinite;
  animation: spin 4s linear forwards infinite;
}

.rotate-reverse-4s {
  -webkit-animation: spin-reverse 4s linear forwards infinite;
  -moz-animation: spin-reverse 4s linear forwards infinite;
  animation: spin-reverse 4s linear forwards infinite;
}

.rotate-5s {
  -webkit-animation: spin 5s linear forwards infinite;
  -moz-animation: spin 5s linear forwards infinite;
  animation: spin 5s linear forwards infinite;
}

.rotate-reverse-5s {
  -webkit-animation: spin-reverse 5s linear forwards infinite;
  -moz-animation: spin-reverse 5s linear forwards infinite;
  animation: spin-reverse 5s linear forwards infinite;
}

.rotate-6s {
  -webkit-animation: spin 6s linear forwards infinite;
  -moz-animation: spin 6s linear forwards infinite;
  animation: spin 6s linear forwards infinite;
}

.rotate-reverse-6s {
  -webkit-animation: spin-reverse 6s linear forwards infinite;
  -moz-animation: spin-reverse 6s linear forwards infinite;
  animation: spin-reverse 6s linear forwards infinite;
}

.rotate-7s {
  -webkit-animation: spin 7s linear forwards infinite;
  -moz-animation: spin 7s linear forwards infinite;
  animation: spin 7s linear forwards infinite;
}

.rotate-reverse-7s {
  -webkit-animation: spin-reverse 7s linear forwards infinite;
  -moz-animation: spin-reverse 7s linear forwards infinite;
  animation: spin-reverse 7s linear forwards infinite;
}

.rotate-8s {
  -webkit-animation: spin 8s linear forwards infinite;
  -moz-animation: spin 8s linear forwards infinite;
  animation: spin 8s linear forwards infinite;
}

.rotate-reverse-8s, .bg-shape.-sq10 {
  -webkit-animation: spin-reverse 8s linear forwards infinite;
  -moz-animation: spin-reverse 8s linear forwards infinite;
  animation: spin-reverse 8s linear forwards infinite;
}

.rotate-9s {
  -webkit-animation: spin 9s linear forwards infinite;
  -moz-animation: spin 9s linear forwards infinite;
  animation: spin 9s linear forwards infinite;
}

.rotate-reverse-9s, .bg-shape.-sq8, .bg-shape.-sq3 {
  -webkit-animation: spin-reverse 9s linear forwards infinite;
  -moz-animation: spin-reverse 9s linear forwards infinite;
  animation: spin-reverse 9s linear forwards infinite;
}

.rotate-10s, .bg-shape.-sq2 {
  -webkit-animation: spin 10s linear forwards infinite;
  -moz-animation: spin 10s linear forwards infinite;
  animation: spin 10s linear forwards infinite;
}

.rotate-reverse-10s {
  -webkit-animation: spin-reverse 10s linear forwards infinite;
  -moz-animation: spin-reverse 10s linear forwards infinite;
  animation: spin-reverse 10s linear forwards infinite;
}

.rotate-11s, .bg-shape.-sq9, .bg-shape.-sq4 {
  -webkit-animation: spin 11s linear forwards infinite;
  -moz-animation: spin 11s linear forwards infinite;
  animation: spin 11s linear forwards infinite;
}

.rotate-reverse-11s {
  -webkit-animation: spin-reverse 11s linear forwards infinite;
  -moz-animation: spin-reverse 11s linear forwards infinite;
  animation: spin-reverse 11s linear forwards infinite;
}

.rotate-12s {
  -webkit-animation: spin 12s linear forwards infinite;
  -moz-animation: spin 12s linear forwards infinite;
  animation: spin 12s linear forwards infinite;
}

.rotate-reverse-12s {
  -webkit-animation: spin-reverse 12s linear forwards infinite;
  -moz-animation: spin-reverse 12s linear forwards infinite;
  animation: spin-reverse 12s linear forwards infinite;
}

.rotate-13s {
  -webkit-animation: spin 13s linear forwards infinite;
  -moz-animation: spin 13s linear forwards infinite;
  animation: spin 13s linear forwards infinite;
}

.rotate-reverse-13s {
  -webkit-animation: spin-reverse 13s linear forwards infinite;
  -moz-animation: spin-reverse 13s linear forwards infinite;
  animation: spin-reverse 13s linear forwards infinite;
}

.rotate-14s {
  -webkit-animation: spin 14s linear forwards infinite;
  -moz-animation: spin 14s linear forwards infinite;
  animation: spin 14s linear forwards infinite;
}

.rotate-reverse-14s {
  -webkit-animation: spin-reverse 14s linear forwards infinite;
  -moz-animation: spin-reverse 14s linear forwards infinite;
  animation: spin-reverse 14s linear forwards infinite;
}

.rotate-15s {
  -webkit-animation: spin 15s linear forwards infinite;
  -moz-animation: spin 15s linear forwards infinite;
  animation: spin 15s linear forwards infinite;
}

.rotate-reverse-15s {
  -webkit-animation: spin-reverse 15s linear forwards infinite;
  -moz-animation: spin-reverse 15s linear forwards infinite;
  animation: spin-reverse 15s linear forwards infinite;
}

.rotate-16s {
  -webkit-animation: spin 16s linear forwards infinite;
  -moz-animation: spin 16s linear forwards infinite;
  animation: spin 16s linear forwards infinite;
}

.rotate-reverse-16s {
  -webkit-animation: spin-reverse 16s linear forwards infinite;
  -moz-animation: spin-reverse 16s linear forwards infinite;
  animation: spin-reverse 16s linear forwards infinite;
}

.rotate-17s {
  -webkit-animation: spin 17s linear forwards infinite;
  -moz-animation: spin 17s linear forwards infinite;
  animation: spin 17s linear forwards infinite;
}

.rotate-reverse-17s {
  -webkit-animation: spin-reverse 17s linear forwards infinite;
  -moz-animation: spin-reverse 17s linear forwards infinite;
  animation: spin-reverse 17s linear forwards infinite;
}

.rotate-18s {
  -webkit-animation: spin 18s linear forwards infinite;
  -moz-animation: spin 18s linear forwards infinite;
  animation: spin 18s linear forwards infinite;
}

.rotate-reverse-18s {
  -webkit-animation: spin-reverse 18s linear forwards infinite;
  -moz-animation: spin-reverse 18s linear forwards infinite;
  animation: spin-reverse 18s linear forwards infinite;
}

.rotate-19s {
  -webkit-animation: spin 19s linear forwards infinite;
  -moz-animation: spin 19s linear forwards infinite;
  animation: spin 19s linear forwards infinite;
}

.rotate-reverse-19s {
  -webkit-animation: spin-reverse 19s linear forwards infinite;
  -moz-animation: spin-reverse 19s linear forwards infinite;
  animation: spin-reverse 19s linear forwards infinite;
}

.rotate-20s, .bg-shape.-sq7 {
  -webkit-animation: spin 20s linear forwards infinite;
  -moz-animation: spin 20s linear forwards infinite;
  animation: spin 20s linear forwards infinite;
}

.rotate-reverse-20s, .bg-shape.-sq6, .bg-shape.-sq1 {
  -webkit-animation: spin-reverse 20s linear forwards infinite;
  -moz-animation: spin-reverse 20s linear forwards infinite;
  animation: spin-reverse 20s linear forwards infinite;
}

@-webkit-keyframes fadein-anim {
  0% {
    opacity: 0;
    display: none;
  }
  1% {
    opacity: 0;
    display: block;
  }
  50% {
    opacity: 1;
    max-height: 999px;
  }
  100% {
    opacity: 1;
    max-height: 999px;
  }
}
@-moz-keyframes fadein-anim {
  0% {
    opacity: 0;
    display: none;
  }
  1% {
    opacity: 0;
    display: block;
  }
  50% {
    opacity: 1;
    max-height: 999px;
  }
  100% {
    opacity: 1;
    max-height: 999px;
  }
}
@-ms-keyframes fadein-anim {
  0% {
    opacity: 0;
    display: none;
  }
  1% {
    opacity: 0;
    display: block;
  }
  50% {
    opacity: 1;
    max-height: 999px;
  }
  100% {
    opacity: 1;
    max-height: 999px;
  }
}
@keyframes fadein-anim {
  0% {
    opacity: 0;
    display: none;
  }
  1% {
    opacity: 0;
    display: block;
  }
  50% {
    opacity: 1;
    max-height: 999px;
  }
  100% {
    opacity: 1;
    max-height: 999px;
  }
}
@-webkit-keyframes fadeout-anim {
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@-moz-keyframes fadeout-anim {
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@-ms-keyframes fadeout-anim {
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@keyframes fadeout-anim {
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@-webkit-keyframes update-color {
  50% {
    background: #333EFF;
  }
}
@-moz-keyframes update-color {
  50% {
    background: #333EFF;
  }
}
@-ms-keyframes update-color {
  50% {
    background: #333EFF;
  }
}
@keyframes update-color {
  50% {
    background: #333EFF;
  }
}
@-webkit-keyframes move-shape {
  0% {
    transform: translate3d(-5%, 0%, 0px) rotate(0);
  }
  50% {
    transform: translate3d(350%, 50%, 0px) rotate(360deg);
  }
  95% {
    transform: translate3d(-5%, 0%, 0px);
  }
}
@-moz-keyframes move-shape {
  0% {
    transform: translate3d(-5%, 0%, 0px) rotate(0);
  }
  50% {
    transform: translate3d(350%, 50%, 0px) rotate(360deg);
  }
  95% {
    transform: translate3d(-5%, 0%, 0px);
  }
}
@-ms-keyframes move-shape {
  0% {
    transform: translate3d(-5%, 0%, 0px) rotate(0);
  }
  50% {
    transform: translate3d(350%, 50%, 0px) rotate(360deg);
  }
  95% {
    transform: translate3d(-5%, 0%, 0px);
  }
}
@keyframes move-shape {
  0% {
    transform: translate3d(-5%, 0%, 0px) rotate(0);
  }
  50% {
    transform: translate3d(350%, 50%, 0px) rotate(360deg);
  }
  95% {
    transform: translate3d(-5%, 0%, 0px);
  }
}
@-webkit-keyframes bg-change {
  0% {
    background-color: yellow;
  }
  25% {
    background-color: red;
  }
  50% {
    background-color: yellow;
  }
  75% {
    background-color: black;
  }
  100% {
    background-color: yellow;
  }
}
@-moz-keyframes bg-change {
  0% {
    background-color: yellow;
  }
  25% {
    background-color: red;
  }
  50% {
    background-color: yellow;
  }
  75% {
    background-color: black;
  }
  100% {
    background-color: yellow;
  }
}
@-ms-keyframes bg-change {
  0% {
    background-color: yellow;
  }
  25% {
    background-color: red;
  }
  50% {
    background-color: yellow;
  }
  75% {
    background-color: black;
  }
  100% {
    background-color: yellow;
  }
}
@keyframes bg-change {
  0% {
    background-color: yellow;
  }
  25% {
    background-color: red;
  }
  50% {
    background-color: yellow;
  }
  75% {
    background-color: black;
  }
  100% {
    background-color: yellow;
  }
}
@-webkit-keyframes scall-n-rotate {
  0% {
    transform: scale(0) rotate(0);
    margin: 0;
  }
  10% {
    transform: scale(0.1) rotate(180);
    margin: -20px 0 0 10px;
  }
  20% {
    transform: scale(0.2) rotate(360);
    margin: 20px 0 0 -5px;
  }
  40% {
    transform: scale(0.4) rotate(-360);
    margin: 0 0 0 20px;
  }
  60% {
    transform: scale(0.6) rotate(360);
    margin: -20px 0 0 -5px;
  }
  80% {
    transform: scale(1) rotate(-360deg);
    margin: 0;
    opacity: 1;
  }
  100% {
    transform: scale(0.5) rotate(-360deg);
    opacity: 0;
  }
}
@-moz-keyframes scall-n-rotate {
  0% {
    transform: scale(0) rotate(0);
    margin: 0;
  }
  10% {
    transform: scale(0.1) rotate(180);
    margin: -20px 0 0 10px;
  }
  20% {
    transform: scale(0.2) rotate(360);
    margin: 20px 0 0 -5px;
  }
  40% {
    transform: scale(0.4) rotate(-360);
    margin: 0 0 0 20px;
  }
  60% {
    transform: scale(0.6) rotate(360);
    margin: -20px 0 0 -5px;
  }
  80% {
    transform: scale(1) rotate(-360deg);
    margin: 0;
    opacity: 1;
  }
  100% {
    transform: scale(0.5) rotate(-360deg);
    opacity: 0;
  }
}
@-ms-keyframes scall-n-rotate {
  0% {
    transform: scale(0) rotate(0);
    margin: 0;
  }
  10% {
    transform: scale(0.1) rotate(180);
    margin: -20px 0 0 10px;
  }
  20% {
    transform: scale(0.2) rotate(360);
    margin: 20px 0 0 -5px;
  }
  40% {
    transform: scale(0.4) rotate(-360);
    margin: 0 0 0 20px;
  }
  60% {
    transform: scale(0.6) rotate(360);
    margin: -20px 0 0 -5px;
  }
  80% {
    transform: scale(1) rotate(-360deg);
    margin: 0;
    opacity: 1;
  }
  100% {
    transform: scale(0.5) rotate(-360deg);
    opacity: 0;
  }
}
@keyframes scall-n-rotate {
  0% {
    transform: scale(0) rotate(0);
    margin: 0;
  }
  10% {
    transform: scale(0.1) rotate(180);
    margin: -20px 0 0 10px;
  }
  20% {
    transform: scale(0.2) rotate(360);
    margin: 20px 0 0 -5px;
  }
  40% {
    transform: scale(0.4) rotate(-360);
    margin: 0 0 0 20px;
  }
  60% {
    transform: scale(0.6) rotate(360);
    margin: -20px 0 0 -5px;
  }
  80% {
    transform: scale(1) rotate(-360deg);
    margin: 0;
    opacity: 1;
  }
  100% {
    transform: scale(0.5) rotate(-360deg);
    opacity: 0;
  }
}
@-webkit-keyframes scall-n-launch {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1) rotate(0deg);
  }
  52% {
    transform: scale(1) rotate(3deg);
  }
  53% {
    transform: scale(1) rotate(-3deg);
  }
  54% {
    transform: scale(1) rotate(2deg);
  }
  55% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(1deg);
    top: 330px;
    right: 50px;
  }
  100% {
    top: -200px;
    right: -200px;
  }
}
@-moz-keyframes scall-n-launch {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1) rotate(0deg);
  }
  52% {
    transform: scale(1) rotate(3deg);
  }
  53% {
    transform: scale(1) rotate(-3deg);
  }
  54% {
    transform: scale(1) rotate(2deg);
  }
  55% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(1deg);
    top: 330px;
    right: 50px;
  }
  100% {
    top: -200px;
    right: -200px;
  }
}
@-ms-keyframes scall-n-launch {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1) rotate(0deg);
  }
  52% {
    transform: scale(1) rotate(3deg);
  }
  53% {
    transform: scale(1) rotate(-3deg);
  }
  54% {
    transform: scale(1) rotate(2deg);
  }
  55% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(1deg);
    top: 330px;
    right: 50px;
  }
  100% {
    top: -200px;
    right: -200px;
  }
}
@keyframes scall-n-launch {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1) rotate(0deg);
  }
  52% {
    transform: scale(1) rotate(3deg);
  }
  53% {
    transform: scale(1) rotate(-3deg);
  }
  54% {
    transform: scale(1) rotate(2deg);
  }
  55% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(-2deg);
  }
  56% {
    transform: scale(1) rotate(1deg);
    top: 330px;
    right: 50px;
  }
  100% {
    top: -200px;
    right: -200px;
  }
}
.emoji.-em-earth.on {
  opacity: 1;
  -webkit-animation: scall-n-rotate 10s linear forwards 1;
  -moz-animation: scall-n-rotate 10s linear forwards 1;
  animation: scall-n-rotate 10s linear forwards 1;
}
.emoji.-em-rocket.on {
  opacity: 1;
  -webkit-animation: scall-n-launch 5s linear forwards 1;
  -moz-animation: scall-n-launch 5s linear forwards 1;
  animation: scall-n-launch 5s linear forwards 1;
}

/*
.meta-title-shapes{
	$time: 10s;
-webkit-animation:update-color $time*2 linear forwards infinite;
	-moz-animation:update-color $time*2 linear forwards infinite;
	animation:update-color $time*2 linear forwards  infinite;

	.meta-title-shape{

		-webkit-animation:move-shape $time linear forwards infinite;
		-moz-animation:move-shape $time linear forwards infinite;
		animation:move-shape $time linear forwards infinite;

	}
}*/
@-webkit-keyframes move-img-card {
  25% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-3deg);
  }
}
@-moz-keyframes move-img-card {
  25% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-3deg);
  }
}
@-ms-keyframes move-img-card {
  25% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-3deg);
  }
}
@keyframes move-img-card {
  25% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-3deg);
  }
}
.fadeout {
  -webkit-animation: fadeout-anim 1s linear forwards 1;
  -moz-animation: fadeout-anim 1s linear forwards 1;
  animation: fadeout-anim 1s linear forwards 1;
}

.fadein {
  -webkit-animation: fadein-anim 1s linear forwards 1;
  -moz-animation: fadein-anim 1s linear forwards 1;
  animation: fadein-anim 1s linear forwards 1;
}

@-webkit-keyframes emoji-waving {
  0% {
    top: 10%;
    left: 120%;
  }
  7% {
    opacity: 1;
  }
  15% {
    top: 20%;
  }
  25% {
    top: 30%;
  }
  30% {
    top: 25%;
  }
  35% {
    top: 35%;
  }
  45% {
    top: 45%;
  }
  55% {
    top: 51%;
  }
  65% {
    top: 45%;
  }
  75% {
    top: 35%;
  }
  85% {
    top: 45%;
  }
  95% {
    top: 52%;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 45%;
    left: -20%;
    opacity: 0;
  }
}
@-moz-keyframes emoji-waving {
  0% {
    top: 10%;
    left: 120%;
  }
  7% {
    opacity: 1;
  }
  15% {
    top: 20%;
  }
  25% {
    top: 30%;
  }
  30% {
    top: 25%;
  }
  35% {
    top: 35%;
  }
  45% {
    top: 45%;
  }
  55% {
    top: 51%;
  }
  65% {
    top: 45%;
  }
  75% {
    top: 35%;
  }
  85% {
    top: 45%;
  }
  95% {
    top: 52%;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 45%;
    left: -20%;
    opacity: 0;
  }
}
@-ms-keyframes emoji-waving {
  0% {
    top: 10%;
    left: 120%;
  }
  7% {
    opacity: 1;
  }
  15% {
    top: 20%;
  }
  25% {
    top: 30%;
  }
  30% {
    top: 25%;
  }
  35% {
    top: 35%;
  }
  45% {
    top: 45%;
  }
  55% {
    top: 51%;
  }
  65% {
    top: 45%;
  }
  75% {
    top: 35%;
  }
  85% {
    top: 45%;
  }
  95% {
    top: 52%;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 45%;
    left: -20%;
    opacity: 0;
  }
}
@keyframes emoji-waving {
  0% {
    top: 10%;
    left: 120%;
  }
  7% {
    opacity: 1;
  }
  15% {
    top: 20%;
  }
  25% {
    top: 30%;
  }
  30% {
    top: 25%;
  }
  35% {
    top: 35%;
  }
  45% {
    top: 45%;
  }
  55% {
    top: 51%;
  }
  65% {
    top: 45%;
  }
  75% {
    top: 35%;
  }
  85% {
    top: 45%;
  }
  95% {
    top: 52%;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 45%;
    left: -20%;
    opacity: 0;
  }
}
#skills .emoji.on {
  opacity: 1;
  -webkit-animation: emoji-waving 15s ease-in-out forwards 1;
  -moz-animation: emoji-waving 15s ease-in-out forwards 1;
  animation: emoji-waving 15s ease-in-out forwards 1;
}

/*
grey light : #5D839D
green-blue : #ababab
blue : #0028F5 / #67D6FB
*/
/*
{"palette":{"common":{"black":"rgba(51, 51, 51, 1)","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"rgba(51, 83, 247, 1)","main":"rgba(0, 40, 245, 1)","dark":"rgba(0, 28, 171, 1)","contrastText":"#fff"},"secondary":{"light":"rgba(72, 149, 175, 1)","main":"rgba(103, 214, 251, 1)","dark":"rgba(133, 222, 251, 1)","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"}}}
*/
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Medium"), url(/build/images/CircularStd-Medium.61d34836.svg) format("svg"), url(/build/fonts/CircularStd-Medium.e39d4081.woff) format("woff"), url(/build/fonts/CircularStd-Medium.6fb73f93.ttf) format("ttf"), url(/build/fonts/CircularStd-Medium.bba31ddc.eot) format("embedded-opentype");
  font-style: normal;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-MediumItalic"), url(/build/images/CircularStd-MediumItalic.5614e440.svg) format("svg"), url(/build/fonts/CircularStd-MediumItalic.8ffa91cf.woff) format("woff"), url(/build/fonts/CircularStd-MediumItalic.df104e4b.ttf) format("ttf"), url(/build/fonts/CircularStd-MediumItalic.4936f24b.eot) format("embedded-opentype");
  font-style: italic;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: bold;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 500;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 700;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-BoldItalic"), url(/build/images/CircularStd-BoldItalic.abb32a5c.svg) format("svg"), url(/build/fonts/CircularStd-BoldItalic.eeb47162.woff) format("woff"), url(/build/fonts/CircularStd-BoldItalic.4c0949c4.ttf) format("ttf"), url(/build/fonts/CircularStd-BoldItalic.af155cb0.eot) format("embedded-opentype");
  font-weight: 500;
  font-style: italic;
}
.aviva-bg {
  background-color: #ffd900;
}

.aviva-color {
  color: #004fb6;
}

.btn-aviva {
  background-color: #004fb6;
  color: #ffd900;
}

#mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
#mask.open {
  width: 100%;
  height: 100%;
}
#mask.visible {
  background: rgba(128, 128, 128, 0.25);
}

#popup {
  position: fixed;
  background: #FFF;
  z-index: 99;
  display: none;
  max-height: 90vh;
  overflow-y: auto;
}
#popup.open {
  display: block;
  padding: 25px;
  border-radius: 20px;
  top: 5vh;
  left: 15%;
  width: 70%;
}

.custom-file-label::after {
  content: "Parcourir" !important;
}

.primary-bg, .btn-aviva, .btn-primary {
  background-color: #333EFF;
}

.primary-color, .btn-outline-primary {
  color: #333EFF;
}

.primary-H-bg, .btn-primary-H {
  background-color: #1A26FF;
}

.primary-H-color, .btn-outline-primary-H {
  color: #1A26FF;
}

.primary-HH-bg {
  background-color: #000646;
}

.primary-HH-color {
  color: #000646;
}

.primary-L-bg, .btn-primary-L {
  background-color: #4D56FF;
}

.primary-L-color, .btn-outline-primary-L {
  color: #4D56FF;
}

.primary-LL-bg {
  background-color: #666EFF;
}

.primary-LL-color {
  color: #666EFF;
}

.secondary-bg, .btn-secondary {
  background-color: #B3B7FF;
}

.secondary-color, .btn-outline-secondary {
  color: #B3B7FF;
}

.secondary-H-bg, .btn-secondary-H {
  background-color: #999FFF;
}

.secondary-H-color, .btn-outline-secondary-H {
  color: #999FFF;
}

.secondary-HH-bg {
  background-color: #8086FF;
}

.secondary-HH-color {
  color: #8086FF;
}

.secondary-L-bg {
  background-color: #CCCFFF;
}

.secondary-L-color {
  color: #CCCFFF;
}

.secondary-LL-bg {
  background-color: #E6E7FF;
}

.secondary-LL-color {
  color: #E6E7FF;
}

.secondary-LLL-bg {
  background-color: #9fffff;
}

.secondary-LLL-color {
  color: #9fffff;
}

.third-bg {
  background-color: #707070;
}

.third-color {
  color: #707070;
}

.teal-bg {
  background-color: #00a099;
}

.teal-color {
  color: #00a099;
}

.gradien-bg {
  background: linear-gradient(45deg, #333EFF, #B3B7FF);
}

.gradien-H-bg {
  background: linear-gradient(90deg, #1A26FF, #999FFF);
}

.gray-light-bg {
  background-color: #EFE6EF;
}

.gray-light-color {
  color: #EFE6EF;
}

.white-bg {
  background-color: #ffffff;
}

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

.red-bg {
  background-color: #FB4E4E;
}

.red-color {
  color: #FB4E4E !important;
}

.green-bg {
  background-color: #39b54a;
}

.green-color {
  color: #39b54a !important;
}

.box, #popup.open {
  box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.25);
  background: #fff;
}

.btn-primary:hover {
  color: #fff;
  opacity: 0.8;
}

.btn-outline-primary {
  border: 1px solid #333EFF;
}

.btn-primary-H {
  color: #fff;
}
.btn-primary-H:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-H {
  border: 1px solid #1A26FF;
}

.btn-primary-L {
  color: #fff;
}
.btn-primary-L:hover {
  opacity: 0.9;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-L {
  border: 1px solid #4D56FF;
}

.btn-secondary {
  border-color: #B3B7FF;
}

.btn-outline-secondary {
  border: 1px solid #B3B7FF;
}

.btn-outline-secondary-H {
  border: 1px solid #999FFF;
}

.btn-link {
  background-color: #B3B7FF;
  color: #3E3E3E;
}
.btn-link:hover {
  background-color: #666EFF;
  color: white;
  text-decoration: none;
}

.btn-outline-white {
  background-color: white;
  border: 1px solid #3E3E3E;
  color: #3E3E3E;
  text-decoration: none;
}
.btn-outline-white:hover {
  background-color: #666EFF;
  border: 1px solid #666EFF;
  color: white;
}

.border-primary {
  border: 2px solid #333EFF;
}

.border-primary-H {
  border: 2px solid #1A26FF;
}

.border-primary-L {
  border: 2px solid #4D56FF;
}

.border-secondary {
  border: 2px solid #B3B7FF;
}

.border-secondary-H {
  border: 2px solid #999FFF;
}

.border-secondary-L {
  border: 2px solid #CCCFFF;
}

.border-top-primary {
  border-top: 2px solid #333EFF;
}

.border-top-primary-H {
  border-top: 2px solid #1A26FF;
}

.border-top-primary-L {
  border-top: 2px solid #4D56FF;
}

.border-top-secondary {
  border-top: 2px solid #B3B7FF;
}

.border-top-secondary-H {
  border-top: 2px solid #999FFF;
}

.border-top-secondary-L {
  border-top: 2px solid #CCCFFF;
}

.border-20 {
  border-radius: 20px;
}

.border-50 {
  border-radius: 50px;
}

.emoji {
  font-family: Apple Color Emoji;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-6 {
  z-index: 6;
}

.z-7 {
  z-index: 7;
}

.z-8 {
  z-index: 8;
}

.z-9 {
  z-index: 9;
}

.z-10 {
  z-index: 10;
}

.font-7 {
  font-size: 7px;
}

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

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

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

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

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

.font-13 {
  font-size: 13px;
}

.font-14, .meta-title-container .meta-title-header h6 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16, .meta-title-container .meta-title-header h5 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

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

.font-19 {
  font-size: 19px;
}

.font-20, .meta-title-container .meta-title-header h4 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-23 {
  font-size: 23px;
}

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

.font-25 {
  font-size: 25px;
}

.font-26, .meta-title-container .meta-title-header h3 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

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

.font-29 {
  font-size: 29px;
}

.font-30, .meta-title-container .meta-title-header h2 {
  font-size: 30px;
}

.font-31 {
  font-size: 31px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-34 {
  font-size: 34px;
}

.font-35 {
  font-size: 35px;
}

.font-36, .meta-title-container .meta-title-header h1 {
  font-size: 36px;
}

.font-37 {
  font-size: 37px;
}

.font-38 {
  font-size: 38px;
}

.font-39 {
  font-size: 39px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-42 {
  font-size: 42px;
}

.font-43 {
  font-size: 43px;
}

.font-44 {
  font-size: 44px;
}

.font-45 {
  font-size: 45px;
}

.font-46 {
  font-size: 46px;
}

.font-47 {
  font-size: 47px;
}

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

.font-49 {
  font-size: 49px;
}

.font-50 {
  font-size: 50px;
}

.font-51 {
  font-size: 51px;
}

.font-52 {
  font-size: 52px;
}

.font-53 {
  font-size: 53px;
}

.font-54 {
  font-size: 54px;
}

.font-55 {
  font-size: 55px;
}

.font-56 {
  font-size: 56px;
}

.font-57 {
  font-size: 57px;
}

.font-58 {
  font-size: 58px;
}

.font-59 {
  font-size: 59px;
}

.font-60 {
  font-size: 60px;
}

.font-61 {
  font-size: 61px;
}

.font-62 {
  font-size: 62px;
}

.font-63 {
  font-size: 63px;
}

.font-64 {
  font-size: 64px;
}

.font-65 {
  font-size: 65px;
}

.font-66 {
  font-size: 66px;
}

.font-67 {
  font-size: 67px;
}

.font-68 {
  font-size: 68px;
}

.font-69 {
  font-size: 69px;
}

.font-70 {
  font-size: 70px;
}

@media (min-width: 768px) {
  .font-md-7 {
    font-size: 7px;
  }

  .font-md-8 {
    font-size: 8px;
  }

  .font-md-9 {
    font-size: 9px;
  }

  .font-md-10 {
    font-size: 10px;
  }

  .font-md-11 {
    font-size: 11px;
  }

  .font-md-12 {
    font-size: 12px;
  }

  .font-md-13 {
    font-size: 13px;
  }

  .font-md-14 {
    font-size: 14px;
  }

  .font-md-15 {
    font-size: 15px;
  }

  .font-md-16 {
    font-size: 16px;
  }

  .font-md-17 {
    font-size: 17px;
  }

  .font-md-18 {
    font-size: 18px;
  }

  .font-md-19 {
    font-size: 19px;
  }

  .font-md-20, .meta-title-container .meta-title-header h6 {
    font-size: 20px;
  }

  .font-md-21 {
    font-size: 21px;
  }

  .font-md-22 {
    font-size: 22px;
  }

  .font-md-23 {
    font-size: 23px;
  }

  .font-md-24 {
    font-size: 24px;
  }

  .font-md-25 {
    font-size: 25px;
  }

  .font-md-26 {
    font-size: 26px;
  }

  .font-md-27 {
    font-size: 27px;
  }

  .font-md-28 {
    font-size: 28px;
  }

  .font-md-29 {
    font-size: 29px;
  }

  .font-md-30, .meta-title-container .meta-title-header h5 {
    font-size: 30px;
  }

  .font-md-31 {
    font-size: 31px;
  }

  .font-md-32 {
    font-size: 32px;
  }

  .font-md-33 {
    font-size: 33px;
  }

  .font-md-34 {
    font-size: 34px;
  }

  .font-md-35 {
    font-size: 35px;
  }

  .font-md-36 {
    font-size: 36px;
  }

  .font-md-37 {
    font-size: 37px;
  }

  .font-md-38 {
    font-size: 38px;
  }

  .font-md-39 {
    font-size: 39px;
  }

  .font-md-40, .meta-title-container .meta-title-header h4 {
    font-size: 40px;
  }

  .font-md-41 {
    font-size: 41px;
  }

  .font-md-42 {
    font-size: 42px;
  }

  .font-md-43 {
    font-size: 43px;
  }

  .font-md-44 {
    font-size: 44px;
  }

  .font-md-45 {
    font-size: 45px;
  }

  .font-md-46 {
    font-size: 46px;
  }

  .font-md-47 {
    font-size: 47px;
  }

  .font-md-48 {
    font-size: 48px;
  }

  .font-md-49 {
    font-size: 49px;
  }

  .font-md-50, .meta-title-container .meta-title-header h3 {
    font-size: 50px;
  }

  .font-md-51 {
    font-size: 51px;
  }

  .font-md-52 {
    font-size: 52px;
  }

  .font-md-53 {
    font-size: 53px;
  }

  .font-md-54 {
    font-size: 54px;
  }

  .font-md-55 {
    font-size: 55px;
  }

  .font-md-56 {
    font-size: 56px;
  }

  .font-md-57 {
    font-size: 57px;
  }

  .font-md-58 {
    font-size: 58px;
  }

  .font-md-59 {
    font-size: 59px;
  }

  .font-md-60, .meta-title-container .meta-title-header h2 {
    font-size: 60px;
  }

  .font-md-61 {
    font-size: 61px;
  }

  .font-md-62 {
    font-size: 62px;
  }

  .font-md-63 {
    font-size: 63px;
  }

  .font-md-64 {
    font-size: 64px;
  }

  .font-md-65, .meta-title-container .meta-title-header h1 {
    font-size: 65px;
  }

  .font-md-66 {
    font-size: 66px;
  }

  .font-md-67 {
    font-size: 67px;
  }

  .font-md-68 {
    font-size: 68px;
  }

  .font-md-69 {
    font-size: 69px;
  }

  .font-md-70 {
    font-size: 70px;
  }
}
.opacity-0 {
  opacity: 0;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-20 {
  opacity: 0.2;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-80 {
  opacity: 0.8;
}

.opacity-90 {
  opacity: 0.9;
}

.opacity-100 {
  opacity: 1;
}

/*
grey light : #5D839D
green-blue : #ababab
blue : #0028F5 / #67D6FB
*/
/*
{"palette":{"common":{"black":"rgba(51, 51, 51, 1)","white":"#fff"},"background":{"paper":"#fff","default":"#fafafa"},"primary":{"light":"rgba(51, 83, 247, 1)","main":"rgba(0, 40, 245, 1)","dark":"rgba(0, 28, 171, 1)","contrastText":"#fff"},"secondary":{"light":"rgba(72, 149, 175, 1)","main":"rgba(103, 214, 251, 1)","dark":"rgba(133, 222, 251, 1)","contrastText":"#fff"},"error":{"light":"#e57373","main":"#f44336","dark":"#d32f2f","contrastText":"#fff"},"text":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","hint":"rgba(0, 0, 0, 0.38)"}}}
*/
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Medium"), url(/build/images/CircularStd-Medium.61d34836.svg) format("svg"), url(/build/fonts/CircularStd-Medium.e39d4081.woff) format("woff"), url(/build/fonts/CircularStd-Medium.6fb73f93.ttf) format("ttf"), url(/build/fonts/CircularStd-Medium.bba31ddc.eot) format("embedded-opentype");
  font-style: normal;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-MediumItalic"), url(/build/images/CircularStd-MediumItalic.5614e440.svg) format("svg"), url(/build/fonts/CircularStd-MediumItalic.8ffa91cf.woff) format("woff"), url(/build/fonts/CircularStd-MediumItalic.df104e4b.ttf) format("ttf"), url(/build/fonts/CircularStd-MediumItalic.4936f24b.eot) format("embedded-opentype");
  font-style: italic;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: bold;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 500;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-Bold"), url(/build/images/CircularStd-Bold.9ba9259b.svg) format("svg"), url(/build/fonts/CircularStd-Bold.4bae1919.woff) format("woff"), url(/build/fonts/CircularStd-Bold.54433420.ttf) format("ttf"), url(/build/fonts/CircularStd-Bold.d0d14e84.eot) format("embedded-opentype");
  font-weight: 700;
}
@font-face {
  font-family: "CircularStd";
  src: local("CircularStd-BoldItalic"), url(/build/images/CircularStd-BoldItalic.abb32a5c.svg) format("svg"), url(/build/fonts/CircularStd-BoldItalic.eeb47162.woff) format("woff"), url(/build/fonts/CircularStd-BoldItalic.4c0949c4.ttf) format("ttf"), url(/build/fonts/CircularStd-BoldItalic.af155cb0.eot) format("embedded-opentype");
  font-weight: 500;
  font-style: italic;
}
.aviva-bg {
  background-color: #ffd900;
}

.aviva-color {
  color: #004fb6;
}

.btn-aviva {
  background-color: #004fb6;
  color: #ffd900;
}

#mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
#mask.open {
  width: 100%;
  height: 100%;
}
#mask.visible {
  background: rgba(128, 128, 128, 0.25);
}

#popup {
  position: fixed;
  background: #FFF;
  z-index: 99;
  display: none;
  max-height: 90vh;
  overflow-y: auto;
}
#popup.open {
  display: block;
  padding: 25px;
  border-radius: 20px;
  top: 5vh;
  left: 15%;
  width: 70%;
}

.custom-file-label::after {
  content: "Parcourir" !important;
}

.primary-bg, .btn-aviva, .btn-primary {
  background-color: #333EFF;
}

.primary-color, .btn-outline-primary {
  color: #333EFF;
}

.primary-H-bg, .btn-primary-H {
  background-color: #1A26FF;
}

.primary-H-color, .btn-outline-primary-H {
  color: #1A26FF;
}

.primary-HH-bg {
  background-color: #000646;
}

.primary-HH-color {
  color: #000646;
}

.primary-L-bg, .btn-primary-L {
  background-color: #4D56FF;
}

.primary-L-color, .btn-outline-primary-L {
  color: #4D56FF;
}

.primary-LL-bg {
  background-color: #666EFF;
}

.primary-LL-color {
  color: #666EFF;
}

.secondary-bg, .btn-secondary {
  background-color: #B3B7FF;
}

.secondary-color, .btn-outline-secondary {
  color: #B3B7FF;
}

.secondary-H-bg, .btn-secondary-H {
  background-color: #999FFF;
}

.secondary-H-color, .btn-outline-secondary-H {
  color: #999FFF;
}

.secondary-HH-bg {
  background-color: #8086FF;
}

.secondary-HH-color {
  color: #8086FF;
}

.secondary-L-bg {
  background-color: #CCCFFF;
}

.secondary-L-color {
  color: #CCCFFF;
}

.secondary-LL-bg {
  background-color: #E6E7FF;
}

.secondary-LL-color {
  color: #E6E7FF;
}

.secondary-LLL-bg {
  background-color: #9fffff;
}

.secondary-LLL-color {
  color: #9fffff;
}

.third-bg {
  background-color: #707070;
}

.third-color {
  color: #707070;
}

.teal-bg {
  background-color: #00a099;
}

.teal-color {
  color: #00a099;
}

.gradien-bg {
  background: linear-gradient(45deg, #333EFF, #B3B7FF);
}

.gradien-H-bg {
  background: linear-gradient(90deg, #1A26FF, #999FFF);
}

.gray-light-bg {
  background-color: #EFE6EF;
}

.gray-light-color {
  color: #EFE6EF;
}

.white-bg {
  background-color: #ffffff;
}

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

.red-bg {
  background-color: #FB4E4E;
}

.red-color {
  color: #FB4E4E !important;
}

.green-bg {
  background-color: #39b54a;
}

.green-color {
  color: #39b54a !important;
}

.box, #popup.open {
  box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.25);
  background: #fff;
}

.btn-primary:hover {
  color: #fff;
  opacity: 0.8;
}

.btn-outline-primary {
  border: 1px solid #333EFF;
}

.btn-primary-H {
  color: #fff;
}
.btn-primary-H:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-H {
  border: 1px solid #1A26FF;
}

.btn-primary-L {
  color: #fff;
}
.btn-primary-L:hover {
  opacity: 0.9;
  color: #fff;
  text-decoration: none;
  font-style: italic;
}

.btn-outline-primary-L {
  border: 1px solid #4D56FF;
}

.btn-secondary {
  border-color: #B3B7FF;
}

.btn-outline-secondary {
  border: 1px solid #B3B7FF;
}

.btn-outline-secondary-H {
  border: 1px solid #999FFF;
}

.btn-link {
  background-color: #B3B7FF;
  color: #3E3E3E;
}
.btn-link:hover {
  background-color: #666EFF;
  color: white;
  text-decoration: none;
}

.btn-outline-white {
  background-color: white;
  border: 1px solid #3E3E3E;
  color: #3E3E3E;
  text-decoration: none;
}
.btn-outline-white:hover {
  background-color: #666EFF;
  border: 1px solid #666EFF;
  color: white;
}

.border-primary {
  border: 2px solid #333EFF;
}

.border-primary-H {
  border: 2px solid #1A26FF;
}

.border-primary-L {
  border: 2px solid #4D56FF;
}

.border-secondary {
  border: 2px solid #B3B7FF;
}

.border-secondary-H {
  border: 2px solid #999FFF;
}

.border-secondary-L {
  border: 2px solid #CCCFFF;
}

.border-top-primary {
  border-top: 2px solid #333EFF;
}

.border-top-primary-H {
  border-top: 2px solid #1A26FF;
}

.border-top-primary-L {
  border-top: 2px solid #4D56FF;
}

.border-top-secondary {
  border-top: 2px solid #B3B7FF;
}

.border-top-secondary-H {
  border-top: 2px solid #999FFF;
}

.border-top-secondary-L {
  border-top: 2px solid #CCCFFF;
}

.border-20 {
  border-radius: 20px;
}

.border-50 {
  border-radius: 50px;
}

.emoji {
  font-family: Apple Color Emoji;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-6 {
  z-index: 6;
}

.z-7 {
  z-index: 7;
}

.z-8 {
  z-index: 8;
}

.z-9 {
  z-index: 9;
}

.z-10 {
  z-index: 10;
}

.font-7 {
  font-size: 7px;
}

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

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

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

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

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

.font-13 {
  font-size: 13px;
}

.font-14, .meta-title-container .meta-title-header h6 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16, .meta-title-container .meta-title-header h5 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

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

.font-19 {
  font-size: 19px;
}

.font-20, .meta-title-container .meta-title-header h4 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-23 {
  font-size: 23px;
}

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

.font-25 {
  font-size: 25px;
}

.font-26, .meta-title-container .meta-title-header h3 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

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

.font-29 {
  font-size: 29px;
}

.font-30, .meta-title-container .meta-title-header h2 {
  font-size: 30px;
}

.font-31 {
  font-size: 31px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-34 {
  font-size: 34px;
}

.font-35 {
  font-size: 35px;
}

.font-36, .meta-title-container .meta-title-header h1 {
  font-size: 36px;
}

.font-37 {
  font-size: 37px;
}

.font-38 {
  font-size: 38px;
}

.font-39 {
  font-size: 39px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-42 {
  font-size: 42px;
}

.font-43 {
  font-size: 43px;
}

.font-44 {
  font-size: 44px;
}

.font-45 {
  font-size: 45px;
}

.font-46 {
  font-size: 46px;
}

.font-47 {
  font-size: 47px;
}

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

.font-49 {
  font-size: 49px;
}

.font-50 {
  font-size: 50px;
}

.font-51 {
  font-size: 51px;
}

.font-52 {
  font-size: 52px;
}

.font-53 {
  font-size: 53px;
}

.font-54 {
  font-size: 54px;
}

.font-55 {
  font-size: 55px;
}

.font-56 {
  font-size: 56px;
}

.font-57 {
  font-size: 57px;
}

.font-58 {
  font-size: 58px;
}

.font-59 {
  font-size: 59px;
}

.font-60 {
  font-size: 60px;
}

.font-61 {
  font-size: 61px;
}

.font-62 {
  font-size: 62px;
}

.font-63 {
  font-size: 63px;
}

.font-64 {
  font-size: 64px;
}

.font-65 {
  font-size: 65px;
}

.font-66 {
  font-size: 66px;
}

.font-67 {
  font-size: 67px;
}

.font-68 {
  font-size: 68px;
}

.font-69 {
  font-size: 69px;
}

.font-70 {
  font-size: 70px;
}

@media (min-width: 768px) {
  .font-md-7 {
    font-size: 7px;
  }

  .font-md-8 {
    font-size: 8px;
  }

  .font-md-9 {
    font-size: 9px;
  }

  .font-md-10 {
    font-size: 10px;
  }

  .font-md-11 {
    font-size: 11px;
  }

  .font-md-12 {
    font-size: 12px;
  }

  .font-md-13 {
    font-size: 13px;
  }

  .font-md-14 {
    font-size: 14px;
  }

  .font-md-15 {
    font-size: 15px;
  }

  .font-md-16 {
    font-size: 16px;
  }

  .font-md-17 {
    font-size: 17px;
  }

  .font-md-18 {
    font-size: 18px;
  }

  .font-md-19 {
    font-size: 19px;
  }

  .font-md-20, .meta-title-container .meta-title-header h6 {
    font-size: 20px;
  }

  .font-md-21 {
    font-size: 21px;
  }

  .font-md-22 {
    font-size: 22px;
  }

  .font-md-23 {
    font-size: 23px;
  }

  .font-md-24 {
    font-size: 24px;
  }

  .font-md-25 {
    font-size: 25px;
  }

  .font-md-26 {
    font-size: 26px;
  }

  .font-md-27 {
    font-size: 27px;
  }

  .font-md-28 {
    font-size: 28px;
  }

  .font-md-29 {
    font-size: 29px;
  }

  .font-md-30, .meta-title-container .meta-title-header h5 {
    font-size: 30px;
  }

  .font-md-31 {
    font-size: 31px;
  }

  .font-md-32 {
    font-size: 32px;
  }

  .font-md-33 {
    font-size: 33px;
  }

  .font-md-34 {
    font-size: 34px;
  }

  .font-md-35 {
    font-size: 35px;
  }

  .font-md-36 {
    font-size: 36px;
  }

  .font-md-37 {
    font-size: 37px;
  }

  .font-md-38 {
    font-size: 38px;
  }

  .font-md-39 {
    font-size: 39px;
  }

  .font-md-40, .meta-title-container .meta-title-header h4 {
    font-size: 40px;
  }

  .font-md-41 {
    font-size: 41px;
  }

  .font-md-42 {
    font-size: 42px;
  }

  .font-md-43 {
    font-size: 43px;
  }

  .font-md-44 {
    font-size: 44px;
  }

  .font-md-45 {
    font-size: 45px;
  }

  .font-md-46 {
    font-size: 46px;
  }

  .font-md-47 {
    font-size: 47px;
  }

  .font-md-48 {
    font-size: 48px;
  }

  .font-md-49 {
    font-size: 49px;
  }

  .font-md-50, .meta-title-container .meta-title-header h3 {
    font-size: 50px;
  }

  .font-md-51 {
    font-size: 51px;
  }

  .font-md-52 {
    font-size: 52px;
  }

  .font-md-53 {
    font-size: 53px;
  }

  .font-md-54 {
    font-size: 54px;
  }

  .font-md-55 {
    font-size: 55px;
  }

  .font-md-56 {
    font-size: 56px;
  }

  .font-md-57 {
    font-size: 57px;
  }

  .font-md-58 {
    font-size: 58px;
  }

  .font-md-59 {
    font-size: 59px;
  }

  .font-md-60, .meta-title-container .meta-title-header h2 {
    font-size: 60px;
  }

  .font-md-61 {
    font-size: 61px;
  }

  .font-md-62 {
    font-size: 62px;
  }

  .font-md-63 {
    font-size: 63px;
  }

  .font-md-64 {
    font-size: 64px;
  }

  .font-md-65, .meta-title-container .meta-title-header h1 {
    font-size: 65px;
  }

  .font-md-66 {
    font-size: 66px;
  }

  .font-md-67 {
    font-size: 67px;
  }

  .font-md-68 {
    font-size: 68px;
  }

  .font-md-69 {
    font-size: 69px;
  }

  .font-md-70 {
    font-size: 70px;
  }
}
.opacity-0 {
  opacity: 0;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-20 {
  opacity: 0.2;
}

.opacity-25 {
  opacity: 0.25;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-75 {
  opacity: 0.75;
}

.opacity-80 {
  opacity: 0.8;
}

.opacity-90 {
  opacity: 0.9;
}

.opacity-100 {
  opacity: 1;
}

@media (min-width: 768px) {
  .navbar-center {
    position: absolute;
    left: 50%;
    transform: translatex(-50%);
  }
}
@media (max-width: 768px) {
  #main-content {
    z-index: 6;
  }

  #cards {
    border-radius: 10px 10px 0 0 !important;
  }

  nav {
    height: 50px;
  }
  nav button.navbar-toggler {
    position: absolute;
    top: 5px;
  }
  nav #top_menu_content .navbar-collapse.show {
    box-shadow: 4px 4px 3px -3px rgba(0, 0, 0, 0.25);
    background: #fff;
    padding-bottom: 20px;
    border-radius: 0 0 20px 20px;
  }
  nav #menu {
    background: #fff;
  }

  #skills #skill-desc .skill-desc {
    position: relative !important;
    overflow: auto !important;
    left: 0 !important;
    height: auto !important;
  }
  #skills #emoji-bar {
    display: none;
  }
}
.bg-shape {
  position: absolute;
  z-index: 2;
  border-radius: 15%;
}
.bg-shape.-sq1 {
  top: 125px;
  left: -375px;
  width: 450px;
  height: 450px;
  border: 2px solid #000646;
  z-index: 2;
}
.bg-shape.-sq2 {
  top: 510px;
  left: 5%;
  width: 100px;
  height: 100px;
  background: transparent;
  border: 1px solid rgba(0, 6, 70, 0.08);
  z-index: 3;
}
.bg-shape.-sq3 {
  top: 680px;
  left: 8%;
  width: 50px;
  height: 50px;
  border: 2px solid #000646;
  border-radius: 10%;
}
.bg-shape.-sq4 {
  top: 640px;
  left: 3%;
  width: 34px;
  height: 34px;
  background: #333EFF;
  border: 2px solid #333EFF;
}
.bg-shape.-sq6 {
  top: 275px;
  right: -325px;
  width: 450px;
  height: 450px;
  border: 2px solid #000646;
  z-index: 4;
}
.bg-shape.-sq7 {
  top: 70px;
  right: -100px;
  width: 717px;
  height: 717px;
  background: rgba(0, 6, 70, 0.08);
  /*border:2px solid $primary-120;*/
  z-index: 2;
}
.bg-shape.-sq8 {
  top: 680px;
  right: 8%;
  width: 50px;
  height: 50px;
  border: 2px solid #000646;
}
.bg-shape.-sq9 {
  top: 640px;
  right: 3%;
  width: 34px;
  height: 34px;
  background: #333EFF;
  border: 2px solid #333EFF;
}
.bg-shape.-sq10 {
  top: 560px;
  right: 6%;
  width: 45px;
  height: 45px;
  background: #000646;
  border: 2px solid #000646;
}

/* main titles */
.meta-title {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.meta-title-container {
  border: 0px solid transparent;
  padding: 0;
  width: 100%;
  transform: matrix(1, 0, 0, 1, 0, 0);
}
.meta-title-container .meta-title-header {
  border: 0;
  position: relative;
  contain: layout style;
}
.meta-title-container .meta-title-header .meta-title-shapes {
  position: absolute;
  top: -10px;
  left: -5px;
  right: -5px;
  bottom: -50px;
  overflow: hidden;
  /*background: $primary-120;*/
  display: block;
  contain: strict;
}
.meta-title-container .meta-title-header .meta-title-shapes .meta-title-shape {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  will-change: transform;
  border: 1px solid #333;
  -webkit-border-radius: 20%;
  -moz-border-radius: 20%;
  border-radius: 20%;
}
.meta-title-container .meta-title-header .meta-title-shapes .meta-title-shape.-v1 {
  width: 650px;
  height: 650px;
  margin: -325px 0 0 -325px;
  background: #1A26FF;
}
.meta-title-container .meta-title-header .meta-title-shapes .meta-title-shape.-v2 {
  width: 440px;
  height: 440px;
  margin: -220px 0 0 -220px;
  background: #CCCFFF;
}
.meta-title-container .meta-title-header .meta-title-shapes .meta-title-shape.-v3 {
  width: 270px;
  height: 270px;
  margin: -135px 0 0 -135px;
  background: #333EFF;
}
.meta-title-container .meta-title-header .meta-title-shapes .square-shape {
  position: absolute;
  top: 0;
  will-change: transform;
  transform: rotate(75deg);
  border: 1px solid #333;
  -webkit-border-radius: 20%;
  -moz-border-radius: 20%;
  border-radius: 20%;
}
.meta-title-container .meta-title-header .meta-title-shapes .square-shape.-sh1 {
  width: 40%;
  height: 400px;
  left: 5%;
  background: #333EFF;
}
.meta-title-container .meta-title-header .meta-title-shapes .square-shape.-sh2 {
  width: 50%;
  height: 200px;
  top: -5%;
  right: 10%;
  background: #666EFF;
}
.meta-title-container .meta-title-header-blend {
  color: #000646;
  background: #fff;
  mix-blend-mode: screen;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  transform: translateZ(0);
  position: relative;
  z-index: 1;
}
.meta-title-container .meta-title-header-blend::before {
  content: "";
  position: absolute;
  top: -12px;
  left: -6px;
  right: -6px;
  bottom: -52px;
  z-index: -1;
}
.meta-title-container .meta-title-header-blend h1, .meta-title-container .meta-title-header-blend h2, .meta-title-container .meta-title-header-blend h3, .meta-title-container .meta-title-header-blend h4, .meta-title-container .meta-title-header-blend h5, .meta-title-container .meta-title-header-blend h6 {
  line-height: 1.2;
  font-weight: bold;
  display: inline-block;
  padding: 0;
  margin: 0;
  letter-spacing: normal;
  text-rendering: optimizeSpeed;
}

.emoji {
  position: absolute;
  z-index: 5;
  width: 120px;
  height: 120px;
  background: center center #fff no-repeat;
  background-size: 80px 80px;
  border-radius: 10%;
  box-shadow: 0 60px 60px 0 rgba(0, 0, 0, 0.13);
}
.emoji.-em-earth, .emoji.emoji-earth {
  background-image: url(/build/images/earth.f535d37c.png);
}
.emoji.-em-rock, .emoji.emoji-rock {
  background-image: url(/build/images/rock.6c3b9961.png);
}
.emoji.-em-handshake, .emoji.emoji-handshake {
  background-image: url(/build/images/handshake.40c3f945.png);
}
.emoji.-em-speaker, .emoji.emoji-speaker {
  background-image: url(/build/images/speaker.8330e7c5.png);
}
.emoji.-em-rocket, .emoji.emoji-rocket {
  background-image: url(/build/images/rocket.005da9ac.png);
}
.emoji.-em-script, .emoji.emoji-script {
  background-image: url(/build/images/script.f129ba30.png);
}
.emoji.-em-newspaper, .emoji.emoji-newspaper {
  background-image: url(/build/images/newspaper.e945c0e1.png);
}
.emoji.-em-hello, .emoji.emoji-hello {
  background-image: url(/build/images/hello.cd9def2c.png);
}
.emoji.-em-gear, .emoji.emoji-gear {
  background-image: url(/build/images/gear.71f1ebf8.png);
}
.emoji.-em-computer, .emoji.emoji-computer {
  background-image: url(/build/images/computer.728d6b9a.png);
}
.emoji.-em-shopping, .emoji.emoji-shopping {
  background-image: url(/build/images/shopping.4c63f799.png);
}
.emoji.-em-art, .emoji.emoji-art {
  background-image: url(/build/images/art.650fab70.png);
}
.emoji.-em-computer3, .emoji.emoji-computer3 {
  background-image: url(/build/images/computer3.494a75bf.png);
}
.emoji.-em-nerd, .emoji.emoji-nerd {
  background-image: url(/build/images/nerd.2a107c63.png);
}
.emoji.-em-invader, .emoji.emoji-invader {
  background-image: url(/build/images/invader.a2fa1371.png);
}
.emoji.-em-mobile, .emoji.emoji-mobile {
  background-image: url(/build/images/mobile.01a381c0.png);
}
.emoji.-em-coffee, .emoji.emoji-coffee {
  background-image: url(/build/images/coffee.4c6e408c.png);
}
.emoji.-em-first, .emoji.emoji-first {
  background-image: url(/build/images/first.9e94262a.png);
}
.emoji.-em-robot, .emoji.emoji-robot {
  background-image: url(/build/images/robot.c5cb1ca9.png);
}
.emoji.-em-computer2, .emoji.emoji-computer2 {
  background-image: url(/build/images/computer2.208a0548.png);
}
.emoji.-em-book, .emoji.emoji-book {
  background-image: url(/build/images/book.682eeba7.png);
}
.emoji.-em-hashtag, .emoji.emoji-hashtag {
  background-image: url(/build/images/hashtag.6b1f3d64.png);
}
.emoji.-em-print, .emoji.emoji-print {
  background-image: url(/build/images/print.55902e65.png);
}
.emoji.-em-picture, .emoji.emoji-picture {
  background-image: url(/build/images/picture.bf353475.png);
}
.emoji.-em-video, .emoji.emoji-video {
  background-image: url(/build/images/video.f9cf395c.png);
}
.emoji.-em-film, .emoji.emoji-film {
  background-image: url(/build/images/film.19a93710.png);
}
.emoji.-em-bar-chart, .emoji.emoji-bar-chart {
  background-image: url(/build/images/bar-chart.cd64bfc4.png);
}
.emoji.-em-writing, .emoji.emoji-writing {
  background-image: url(/build/images/writing.83492712.png);
}
.emoji.-em-loudspeaker, .emoji.emoji-loudspeaker {
  background-image: url(/build/images/loudspeaker.f13e6184.png);
}
.emoji.-em-chart, .emoji.emoji-chart {
  background-image: url(/build/images/chart.17e45e34.png);
}
.emoji.-em-idea, .emoji.emoji-idea {
  background-image: url(/build/images/idea.43ca5d13.png);
}
.emoji.-em-glasses, .emoji.emoji-glasses {
  background-image: url(/build/images/glasses.e7d02ab6.png);
}
.emoji.-em-strong, .emoji.emoji-strong {
  background-image: url(/build/images/strong.3bd6bb81.png);
}
.emoji.-em-coffee, .emoji.emoji-coffee {
  background-image: url(/build/images/coffee.4c6e408c.png);
}
.emoji.-em-first, .emoji.emoji-first {
  background-image: url(/build/images/first.9e94262a.png);
}
.emoji.-em-robot, .emoji.emoji-robot {
  background-image: url(/build/images/robot.c5cb1ca9.png);
}
.emoji.-em-mobile, .emoji.emoji-mobile {
  background-image: url(/build/images/mobile.01a381c0.png);
}
.emoji.-em-education, .emoji.emoji-education {
  background-image: url(/build/images/education.6e612b31.png);
}
.emoji.-em-food, .emoji.emoji-food {
  background-image: url(/build/images/food.c5b4e5c2.png);
}
.emoji.-em-health, .emoji.emoji-health {
  background-image: url(/build/images/health.a694ad06.png);
}
.emoji.-em-you, .emoji.emoji-you {
  background-image: url(/build/images/you.43ca5d13.png);
}
.emoji.-em-animals, .emoji.emoji-animals {
  background-image: url(/build/images/animals.0a308de4.png);
}

/* layout animation */
#lbp-launch {
  background: #000646;
  text-align: center;
}
#lbp-launch:hover {
  background: #1A26FF;
}
#lbp-launch a:hover {
  /*font-style: italic;
    b{
    text-decoration: underline;
  }*/
}

nav.navbar-light {
  background: rgba(255, 255, 255, 0.95);
}
nav.navbar-light .navbar-nav a.nav-link {
  color: #000646;
  font-size: 16px;
}
nav.navbar-light .navbar-nav a.nav-link:hover {
  color: #333EFF;
}
nav.navbar-light img {
  vertical-align: top;
}

blockquote {
  margin-left: 15px;
  padding-left: 15px;
  border-left: 5px solid #E6E7FF;
}

footer #footer-logo {
  width: auto;
  max-height: 60px;
}
footer a {
  display: inline-block;
  color: white;
}
footer a:hover {
  color: #E6E7FF;
  text-decoration: none;
}

#blog {
  min-height: 80vh;
  position: relative;
  z-index: 5;
}

.bg-shape {
  position: fixed;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdC1zdHlsZS4wZDkzOWE4Ni5jc3MiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGdCQUFnQjtBQ0NoQjs7OztDQUFBO0FBUUE7O0NBQUE7QUFLQTtFQUNBO0VBQ0E7RUFNQTtBRExBO0FDT0E7RUFDQTtFQUNBO0VBTUE7QURWQTtBQ1lBO0VBQ0E7RUFDQTtFQU1BO0FEZkE7QUNpQkE7RUFDQTtFQUNBO0VBTUE7QURwQkE7QUNzQkE7RUFDQTtFQUNBO0VBTUE7QUR6QkE7QUM0QkE7RUFDQTtFQUNBO0VBTUE7RUFDQTtBRC9CQTtBQytHQTtFQUFXO0FENUdYOztBQzZHQTtFQUFjO0FEekdkOztBQzBHQTtFQUVFO0VBQ0E7QUR4R0Y7O0FDMkdBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QUR6R0Y7QUMwR0U7RUFDRTtFQUNBO0FEeEdKO0FDMEdFO0VBQ0U7QUR4R0o7O0FDNkdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEMUdGO0FDMkdFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEMUdKOztBQ2dIQTtFQUEwQjtBRDVHMUI7O0FDK0dBO0VBQWEseUJBdEdIO0FETFY7O0FDNEdBO0VBQWUsY0F2R0w7QUREVjs7QUMwR0E7RUFBZSx5QkF4R0E7QURFZjs7QUN1R0E7RUFBa0IsY0F6R0g7QURNZjs7QUNvR0E7RUFBZ0IseUJBdkdFO0FET2xCOztBQ2lHQTtFQUFtQixjQXhHRDtBRFdsQjs7QUMrRkE7RUFBZSx5QkF6R0M7QURjaEI7O0FDNEZBO0VBQWlCLGNBMUdEO0FEa0JoQjs7QUN5RkE7RUFBZSx5QkExR0c7QURxQmxCOztBQ3NGQTtFQUFrQixjQTNHQTtBRHlCbEI7O0FDb0ZBO0VBQWUseUJBbkdIO0FEbUJaOztBQ2lGQTtFQUFpQixjQXBHTDtBRHVCWjs7QUM4RUE7RUFBaUIseUJBcEdBO0FEMEJqQjs7QUMyRUE7RUFBbUIsY0FyR0Y7QUQ4QmpCOztBQ3dFQTtFQUFrQix5QkFyR0M7QURpQ25COztBQ3FFQTtFQUFvQixjQXRHRDtBRHFDbkI7O0FDa0VBO0VBQWlCLHlCQXRHQTtBRHdDakI7O0FDK0RBO0VBQW1CLGNBdkdGO0FENENqQjs7QUM0REE7RUFBa0IseUJBdkdDO0FEK0NuQjs7QUN5REE7RUFBb0IsY0F4R0Q7QURtRG5COztBQ3NEQTtFQUFtQix5QkF4R0M7QURzRHBCOztBQ21EQTtFQUFxQixjQXpHRDtBRDBEcEI7O0FDaURBO0VBQVcseUJBN0lIO0FEZ0dSOztBQzhDQTtFQUFhLGNBOUlMO0FEb0dSOztBQzJDQTtFQUFVLHlCQXJGSDtBRDhDUDs7QUN3Q0E7RUFBWSxjQXRGTDtBRGtEUDs7QUNzQ0E7RUFBWSxvREFsR0M7QURnRWI7O0FDbUNBO0VBQWMsb0RBbEdDO0FEbUVmOztBQ2lDQTtFQUFnQix5QkE1Rkg7QUQrRGI7O0FDOEJBO0VBQWtCLGNBN0ZMO0FEbUViOztBQzZCQTtFQUFXO0FEekJYOztBQzBCQTtFQUFhO0FEdEJiOztBQ3lCQTtFQUFTLHlCQTNKSDtBRHNJTjs7QUNzQkE7RUFBVztBRGxCWDs7QUNvQkE7RUFBVyx5QkF4Skg7QUR3SVI7O0FDaUJBO0VBQWE7QURiYjs7QUNlQTtFQUFNO0VBQ047QURYQTs7QUNpQkU7RUFDRTtFQUNBO0FEZEo7O0FDaUJBO0VBQ0U7QURkRjs7QUNrQkE7RUFFRTtBRGhCRjtBQ2lCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEZko7O0FDa0JBO0VBQ0U7QURmRjs7QUNtQkE7RUFFRTtBRGpCRjtBQ2tCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEaEJKOztBQ3NCQTtFQUNFO0FEbkJGOztBQ3VCQTtFQUVFLHFCQTFMVTtBRHFLWjs7QUN1QkE7RUFDRTtBRHBCRjs7QUM4QkE7RUFFRTtBRDVCRjs7QUMrQkE7RUFDRSx5QkE3TVU7RUE4TVYsY0FqT0s7QURxTVA7QUM4QkU7RUFDRSx5QkEzTmM7RUE0TmQ7RUFDQTtBRDVCSjs7QUMrQkE7RUFDRTtFQUNBO0VBQ0EsY0E1T0s7RUE2T0w7QUQ1QkY7QUM2QkU7RUFDRSx5QkF0T2M7RUF1T2Q7RUFDQTtBRDNCSjs7QUNpQ0E7RUFBaUI7QUQ3QmpCOztBQzhCQTtFQUFtQjtBRDFCbkI7O0FDMkJBO0VBQW1CO0FEdkJuQjs7QUN3QkE7RUFBbUI7QURwQm5COztBQ3FCQTtFQUFxQjtBRGpCckI7O0FDa0JBO0VBQXFCO0FEZHJCOztBQ2dCQTtFQUFxQjtBRFpyQjs7QUNhQTtFQUF1QjtBRFR2Qjs7QUNVQTtFQUF1QjtBRE52Qjs7QUNPQTtFQUF1QjtBREh2Qjs7QUNJQTtFQUF5QjtBREF6Qjs7QUNDQTtFQUF5QjtBREd6Qjs7QUNEQTtFQUFZO0FES1o7O0FDSkE7RUFBWTtBRFFaOztBQ05BO0VBQ0c7QURTSDs7QUNORTtFQUNFO0FEU0o7O0FDVkU7RUFDRTtBRGFKOztBQ2RFO0VBQ0U7QURpQko7O0FDbEJFO0VBQ0U7QURxQko7O0FDdEJFO0VBQ0U7QUR5Qko7O0FDMUJFO0VBQ0U7QUQ2Qko7O0FDOUJFO0VBQ0U7QURpQ0o7O0FDbENFO0VBQ0U7QURxQ0o7O0FDdENFO0VBQ0U7QUR5Q0o7O0FDMUNFO0VBQ0U7QUQ2Q0o7O0FDekNFO0VBQ0U7QUQ0Q0o7O0FDN0NFO0VBQ0U7QURnREo7O0FDakRFO0VBQ0U7QURvREo7O0FDckRFO0VBQ0U7QUR3REo7O0FDekRFO0VBQ0U7QUQ0REo7O0FDN0RFO0VBQ0U7QURnRUo7O0FDakVFO0VBQ0U7QURvRUo7O0FDckVFO0VBQ0U7QUR3RUo7O0FDekVFO0VBQ0U7QUQ0RUo7O0FDN0VFO0VBQ0U7QURnRko7O0FDakZFO0VBQ0U7QURvRko7O0FDckZFO0VBQ0U7QUR3Rko7O0FDekZFO0VBQ0U7QUQ0Rko7O0FDN0ZFO0VBQ0U7QURnR0o7O0FDakdFO0VBQ0U7QURvR0o7O0FDckdFO0VBQ0U7QUR3R0o7O0FDekdFO0VBQ0U7QUQ0R0o7O0FDN0dFO0VBQ0U7QURnSEo7O0FDakhFO0VBQ0U7QURvSEo7O0FDckhFO0VBQ0U7QUR3SEo7O0FDekhFO0VBQ0U7QUQ0SEo7O0FDN0hFO0VBQ0U7QURnSUo7O0FDaklFO0VBQ0U7QURvSUo7O0FDcklFO0VBQ0U7QUR3SUo7O0FDeklFO0VBQ0U7QUQ0SUo7O0FDN0lFO0VBQ0U7QURnSko7O0FDakpFO0VBQ0U7QURvSko7O0FDckpFO0VBQ0U7QUR3Sko7O0FDekpFO0VBQ0U7QUQ0Sko7O0FDN0pFO0VBQ0U7QURnS0o7O0FDaktFO0VBQ0U7QURvS0o7O0FDcktFO0VBQ0U7QUR3S0o7O0FDektFO0VBQ0U7QUQ0S0o7O0FDN0tFO0VBQ0U7QURnTEo7O0FDakxFO0VBQ0U7QURvTEo7O0FDckxFO0VBQ0U7QUR3TEo7O0FDekxFO0VBQ0U7QUQ0TEo7O0FDN0xFO0VBQ0U7QURnTUo7O0FDak1FO0VBQ0U7QURvTUo7O0FDck1FO0VBQ0U7QUR3TUo7O0FDek1FO0VBQ0U7QUQ0TUo7O0FDN01FO0VBQ0U7QURnTko7O0FDak5FO0VBQ0U7QURvTko7O0FDck5FO0VBQ0U7QUR3Tko7O0FDek5FO0VBQ0U7QUQ0Tko7O0FDN05FO0VBQ0U7QURnT0o7O0FDak9FO0VBQ0U7QURvT0o7O0FDck9FO0VBQ0U7QUR3T0o7O0FDek9FO0VBQ0U7QUQ0T0o7O0FDN09FO0VBQ0U7QURnUEo7O0FDalBFO0VBQ0U7QURvUEo7O0FDclBFO0VBQ0U7QUR3UEo7O0FDelBFO0VBQ0U7QUQ0UEo7O0FDN1BFO0VBQ0U7QURnUUo7O0FDalFFO0VBQ0U7QURvUUo7O0FDclFFO0VBQ0U7QUR3UUo7O0FDelFFO0VBQ0U7QUQ0UUo7O0FDN1FFO0VBQ0U7QURnUko7O0FDalJFO0VBQ0U7QURvUko7O0FDclJFO0VBQ0U7QUR3Uko7O0FDelJFO0VBQ0U7QUQ0Uko7O0FDN1JFO0VBQ0U7QURnU0o7O0FDalNFO0VBQ0U7QURvU0o7O0FDclNFO0VBQ0U7QUR3U0o7O0FDclNBO0VBRUk7SUFDRTtFRHVTSjs7RUN4U0U7SUFDRTtFRDJTSjs7RUM1U0U7SUFDRTtFRCtTSjs7RUNoVEU7SUFDRTtFRG1USjs7RUNwVEU7SUFDRTtFRHVUSjs7RUN4VEU7SUFDRTtFRDJUSjs7RUM1VEU7SUFDRTtFRCtUSjs7RUNoVUU7SUFDRTtFRG1VSjs7RUNwVUU7SUFDRTtFRHVVSjs7RUN4VUU7SUFDRTtFRDJVSjs7RUM1VUU7SUFDRTtFRCtVSjs7RUNoVkU7SUFDRTtFRG1WSjs7RUNwVkU7SUFDRTtFRHVWSjs7RUN4VkU7SUFDRTtFRDJWSjs7RUM1VkU7SUFDRTtFRCtWSjs7RUNoV0U7SUFDRTtFRG1XSjs7RUNwV0U7SUFDRTtFRHVXSjs7RUN4V0U7SUFDRTtFRDJXSjs7RUM1V0U7SUFDRTtFRCtXSjs7RUNoWEU7SUFDRTtFRG1YSjs7RUNwWEU7SUFDRTtFRHVYSjs7RUN4WEU7SUFDRTtFRDJYSjs7RUM1WEU7SUFDRTtFRCtYSjs7RUNoWUU7SUFDRTtFRG1ZSjs7RUNwWUU7SUFDRTtFRHVZSjs7RUN4WUU7SUFDRTtFRDJZSjs7RUM1WUU7SUFDRTtFRCtZSjs7RUNoWkU7SUFDRTtFRG1aSjs7RUNwWkU7SUFDRTtFRHVaSjs7RUN4WkU7SUFDRTtFRDJaSjs7RUM1WkU7SUFDRTtFRCtaSjs7RUNoYUU7SUFDRTtFRG1hSjs7RUNwYUU7SUFDRTtFRHVhSjs7RUN4YUU7SUFDRTtFRDJhSjs7RUM1YUU7SUFDRTtFRCthSjs7RUNoYkU7SUFDRTtFRG1iSjs7RUNwYkU7SUFDRTtFRHViSjs7RUN4YkU7SUFDRTtFRDJiSjs7RUM1YkU7SUFDRTtFRCtiSjs7RUNoY0U7SUFDRTtFRG1jSjs7RUNwY0U7SUFDRTtFRHVjSjs7RUN4Y0U7SUFDRTtFRDJjSjs7RUM1Y0U7SUFDRTtFRCtjSjs7RUNoZEU7SUFDRTtFRG1kSjs7RUNwZEU7SUFDRTtFRHVkSjs7RUN4ZEU7SUFDRTtFRDJkSjs7RUM1ZEU7SUFDRTtFRCtkSjs7RUNoZUU7SUFDRTtFRG1lSjs7RUNwZUU7SUFDRTtFRHVlSjs7RUN4ZUU7SUFDRTtFRDJlSjs7RUM1ZUU7SUFDRTtFRCtlSjs7RUNoZkU7SUFDRTtFRG1mSjs7RUNwZkU7SUFDRTtFRHVmSjs7RUN4ZkU7SUFDRTtFRDJmSjs7RUM1ZkU7SUFDRTtFRCtmSjs7RUNoZ0JFO0lBQ0U7RURtZ0JKOztFQ3BnQkU7SUFDRTtFRHVnQko7O0VDeGdCRTtJQUNFO0VEMmdCSjs7RUM1Z0JFO0lBQ0U7RUQrZ0JKOztFQ2hoQkU7SUFDRTtFRG1oQko7O0VDcGhCRTtJQUNFO0VEdWhCSjs7RUN4aEJFO0lBQ0U7RUQyaEJKOztFQzVoQkU7SUFDRTtFRCtoQko7O0VDaGlCRTtJQUNFO0VEbWlCSjtBQUNGO0FDaGlCQTtFQUFZO0FEbWlCWjs7QUNsaUJBO0VBQWE7QURzaUJiOztBQ3JpQkE7RUFBYTtBRHlpQmI7O0FDeGlCQTtFQUFhO0FENGlCYjs7QUMzaUJBO0VBQWE7QUQraUJiOztBQzlpQkE7RUFBYTtBRGtqQmI7O0FDampCQTtFQUFhO0FEcWpCYjs7QUNwakJBO0VBQWE7QUR3akJiOztBQ3ZqQkE7RUFBYztBRDJqQmQ7O0FFLzdCQTs7Ozs7RUFBQTtBQ0FBO0VBR0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUtGO0VBQ0E7QUhtOUJGOztBSWw5QkE7OztFQUdFO0FKcTlCRjs7QUlsOUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUpxOUJGOztBSS84QkE7RUFDRTtBSms5QkY7O0FJeDhCQTtFQUNFO0VBQ0EscU5DcU80QjtFQ3JKeEIsZUF0Q2E7RUZ4Q2pCLGdCQzhPNEI7RUQ3TzVCLGdCQ2tQNEI7RURqUDVCLGNDbkNTO0VEb0NUO0VBQ0Esc0JDOUNTO0FMeS9CWDs7QUkvN0JBO0VBQ0U7QUprOEJGOztBSXo3QkE7RUFDRTtFQUNBO0VBQ0E7QUo0N0JGOztBSS82QkE7RUFDRTtFQUNBLHFCQ2dONEI7QUxrdUI5Qjs7QUkzNkJBO0VBQ0U7RUFDQSxtQkNvRjBCO0FMMDFCNUI7O0FJbjZCQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKczZCRjs7QUluNkJBO0VBQ0U7RUFDQTtFQUNBO0FKczZCRjs7QUluNkJBOzs7RUFHRTtFQUNBO0FKczZCRjs7QUluNkJBOzs7O0VBSUU7QUpzNkJGOztBSW42QkE7RUFDRSxnQkNpSjRCO0FMcXhCOUI7O0FJbjZCQTtFQUNFO0VBQ0E7QUpzNkJGOztBSW42QkE7RUFDRTtBSnM2QkY7O0FJbjZCQTs7RUFFRSxtQkNvSTRCO0FMa3lCOUI7O0FJbjZCQTtFRXhGSTtBTisvQko7O0FJOTVCQTs7RUFFRTtFRW5HRTtFRnFHRjtFQUNBO0FKaTZCRjs7QUk5NUJBO0VBQU07QUprNkJOOztBSWo2QkE7RUFBTTtBSnE2Qk47O0FJOTVCQTtFQUNFLGNDWHdDO0VEWXhDLHFCQ1h3QztFRFl4QztBSmk2QkY7QU9qbENFO0VIbUxFLGNDZHNDO0VEZXRDLDBCQ2RzQztBTCs2QjFDOztBSXg1QkE7RUFDRTtFQUNBO0FKMjVCRjtBTzFsQ0U7RUhrTUU7RUFDQTtBSjI1Qko7O0FJbDVCQTs7OztFQUlFLGlHQ3lENEI7RUM3TTFCO0FOMGlDSjs7QUlsNUJBO0VBRUU7RUFFQTtFQUVBO0VBR0E7QUpnNUJGOztBSXg0QkE7RUFFRTtBSjA0QkY7O0FJbDRCQTtFQUNFO0VBQ0E7QUpxNEJGOztBSWw0QkE7RUFHRTtFQUNBO0FKbTRCRjs7QUkzM0JBO0VBQ0U7QUo4M0JGOztBSTMzQkE7RUFDRSxvQkM2RTRCO0VENUU1Qix1QkM0RTRCO0VEM0U1QixjQ3RRUztFRHVRVDtFQUNBO0FKODNCRjs7QUl2M0JBO0VBRUU7RUFDQTtBSnkzQkY7O0FJajNCQTtFQUVFO0VBQ0EscUJDMkpzQztBTHd0QnhDOztBSTcyQkE7RUFFRTtBSisyQkY7O0FJdjJCQTtFQUNFO0FKMDJCRjs7QUl2MkJBOzs7OztFQUtFO0VBQ0E7RUU1UEU7RUY4UEY7QUowMkJGOztBSXYyQkE7O0VBRUU7QUowMkJGOztBSXYyQkE7O0VBRUU7QUowMkJGOztBSXAyQkE7RUFDRTtBSnUyQkY7O0FJajJCQTtFQUNFO0FKbzJCRjs7QUk3MUJBOzs7O0VBSUU7QUpnMkJGOztBSXYxQkk7Ozs7RUFDRTtBSjYxQk47O0FJdjFCQTs7OztFQUlFO0VBQ0E7QUowMUJGOztBSXYxQkE7O0VBRUU7RUFDQTtBSjAxQkY7O0FJdDFCQTtFQUNFO0VBRUE7QUp3MUJGOztBSXIxQkE7RUFNRTtFQUVBO0VBQ0E7RUFDQTtBSmsxQkY7O0FJNzBCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUVuU0ksaUJBdENhO0VGMlVqQjtFQUNBO0VBQ0E7QUpnMUJGOztBSTcwQkE7RUFDRTtBSmcxQkY7O0FJNTBCQTs7RUFFRTtBSiswQkY7O0FJNTBCQTtFQUtFO0VBQ0E7QUoyMEJGOztBSXAwQkE7RUFDRTtBSnUwQkY7O0FJL3pCQTtFQUNFO0VBQ0E7QUprMEJGOztBSTN6QkE7RUFDRTtBSjh6QkY7O0FJM3pCQTtFQUNFO0VBQ0E7QUo4ekJGOztBSTN6QkE7RUFDRTtBSjh6QkY7O0FJenpCQTtFQUNFO0FKNHpCRjs7QVF4eENBOztFQUVFLHFCSHFTNEI7RUduUzVCLGdCSHFTNEI7RUdwUzVCLGdCSHFTNEI7QUxxL0I5Qjs7QVF0eENBO0VGZ0hNLGlCQXRDYTtBTmd0Q25COztBUXp4Q0E7RUYrR00sZUF0Q2E7QU5vdENuQjs7QVE1eENBO0VGOEdNLGtCQXRDYTtBTnd0Q25COztBUS94Q0E7RUY2R00saUJBdENhO0FONHRDbkI7O0FRbHlDQTtFRjRHTSxrQkF0Q2E7QU5ndUNuQjs7QVFyeUNBO0VGMkdNLGVBdENhO0FOb3VDbkI7O0FRdnlDQTtFRnlHTSxrQkF0Q2E7RUVqRWpCLGdCSHVTNEI7QUxtZ0M5Qjs7QVF0eUNBO0VGbUdNLGVBdENhO0VFM0RqQixnQkgwUjRCO0VHelI1QixnQkhpUjRCO0FMd2hDOUI7O0FRdnlDQTtFRjhGTSxpQkF0Q2E7RUV0RGpCLGdCSHNSNEI7RUdyUjVCLGdCSDRRNEI7QUw4aEM5Qjs7QVF4eUNBO0VGeUZNLGlCQXRDYTtFRWpEakIsZ0JIa1I0QjtFR2pSNUIsZ0JIdVE0QjtBTG9pQzlCOztBUXp5Q0E7RUZvRk0saUJBdENhO0VFNUNqQixnQkg4UTRCO0VHN1E1QixnQkhrUTRCO0FMMGlDOUI7O0FRcHlDQTtFQUNFLGdCSGdGTztFRy9FUCxtQkgrRU87RUc5RVA7RUFDQTtBUnV5Q0Y7O0FRL3hDQTs7RUZNSTtFRUhGLGdCSDBONEI7QUx3a0M5Qjs7QVEveENBOztFQUVFLGNIa1E0QjtFR2pRNUIseUJIMFE0QjtBTHdoQzlCOztBUTF4Q0E7RUMvRUU7RUFDQTtBVDYyQ0Y7O0FRMXhDQTtFQ3BGRTtFQUNBO0FUazNDRjs7QVE1eENBO0VBQ0U7QVIreENGO0FRN3hDRTtFQUNFLG9CSG9QMEI7QUwyaUM5Qjs7QVFyeENBO0VGakNJO0VFbUNGO0FSd3hDRjs7QVFweENBO0VBQ0UsbUJIdUJPO0VDUkgsa0JBdENhO0FOK3lDbkI7O0FRcHhDQTtFQUNFO0VGN0NFO0VFK0NGLGNIMUdTO0FMaTRDWDtBUXJ4Q0U7RUFDRTtBUnV4Q0o7O0FVMTRDQTtFQ0lFO0VBR0E7QVh3NENGOztBVXo0Q0E7RUFDRSxnQkxtZ0NrQztFS2xnQ2xDLHNCTFJTO0VLU1Q7RUVFRTtFRFBGO0VBR0E7QVhpNUNGOztBVW40Q0E7RUFFRTtBVnE0Q0Y7O0FVbDRDQTtFQUNFO0VBQ0E7QVZxNENGOztBVWw0Q0E7RUprQ0k7RUloQ0YsY0wzQlM7QUxnNkNYOztBYTU2Q0E7RVB1RUk7RU9yRUYsY1JtQ1E7RVFsQ1I7QWIrNkNGO0FhNTZDRTtFQUNFO0FiODZDSjs7QWF6NkNBO0VBQ0U7RVAwREU7RU94REYsV1JUUztFUVVULHlCUkRTO0VPRVA7QVo0NkNKO0FhejZDRTtFQUNFO0VQa0RBO0VPaERBLGdCUndRMEI7QUxtcUM5Qjs7QWFyNkNBO0VBQ0U7RVB5Q0U7RU92Q0YsY1JqQlM7QUx5N0NYO0FhcjZDRTtFUG9DRTtFT2xDQTtFQUNBO0FidTZDSjs7QWFsNkNBO0VBQ0UsaUJSOGpDa0M7RVE3akNsQztBYnE2Q0Y7O0FjNzhDRTs7Ozs7O0VDREE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnU5Q0Y7O0FnQnA2Q0k7RUZ6Q0U7SUFDRSxnQlQ4TGU7RUxteENyQjtBQUNGO0FnQjE2Q0k7RUZ6Q0U7SUFDRSxnQlQ4TGU7RUx3eENyQjtBQUNGO0FnQi82Q0k7RUZ6Q0U7SUFDRSxnQlQ4TGU7RUw2eENyQjtBQUNGO0FnQnA3Q0k7RUZ6Q0U7SUFDRSxpQlQ4TGU7RUxreUNyQjtBQUNGO0FjcjhDRTtFQ25DQTtFQUNBO0VBQ0E7RUFDQTtBZjIrQ0Y7O0FjcjhDRTtFQUNFO0VBQ0E7QWR3OENKO0FjdDhDSTs7RUFFRTtFQUNBO0FkdzhDTjs7QWlCOS9DRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpCc2dESjs7QWlCaC9DTTtFQUNFO0VBQ0E7RUFDQTtBakJtL0NSOztBZXY5Q0U7RUFDRTtFQUNBO0FmMDlDSjs7QWU1OUNFO0VBQ0U7RUFDQTtBZis5Q0o7O0FlaitDRTtFQUNFO0VBQ0E7QWZvK0NKOztBZXQrQ0U7RUFDRTtFQUNBO0FmeStDSjs7QWUzK0NFO0VBQ0U7RUFDQTtBZjgrQ0o7O0FlaC9DRTtFQUNFO0VBQ0E7QWZtL0NKOztBaUJ0Z0RNO0VGQ0o7RUFDQTtFQUNBO0FmeWdERjs7QWlCdGdEVTtFRmJSO0VBSUE7QWZvaERGOztBaUIzZ0RVO0VGYlI7RUFJQTtBZnloREY7O0FpQmhoRFU7RUZiUjtFQUlBO0FmOGhERjs7QWlCcmhEVTtFRmJSO0VBSUE7QWZtaURGOztBaUIxaERVO0VGYlI7RUFJQTtBZndpREY7O0FpQi9oRFU7RUZiUjtFQUlBO0FmNmlERjs7QWlCcGlEVTtFRmJSO0VBSUE7QWZrakRGOztBaUJ6aURVO0VGYlI7RUFJQTtBZnVqREY7O0FpQjlpRFU7RUZiUjtFQUlBO0FmNGpERjs7QWlCbmpEVTtFRmJSO0VBSUE7QWZpa0RGOztBaUJ4akRVO0VGYlI7RUFJQTtBZnNrREY7O0FpQjdqRFU7RUZiUjtFQUlBO0FmMmtERjs7QWlCNWpETTtFQUF3QjtBakJna0Q5Qjs7QWlCOWpETTtFQUF1QjtBakJra0Q3Qjs7QWlCL2pEUTtFQUF3QixRQURiO0FqQm9rRG5COztBaUJua0RRO0VBQXdCLFFBRGI7QWpCd2tEbkI7O0FpQnZrRFE7RUFBd0IsUUFEYjtBakI0a0RuQjs7QWlCM2tEUTtFQUF3QixRQURiO0FqQmdsRG5COztBaUIva0RRO0VBQXdCLFFBRGI7QWpCb2xEbkI7O0FpQm5sRFE7RUFBd0IsUUFEYjtBakJ3bERuQjs7QWlCdmxEUTtFQUF3QixRQURiO0FqQjRsRG5COztBaUIzbERRO0VBQXdCLFFBRGI7QWpCZ21EbkI7O0FpQi9sRFE7RUFBd0IsUUFEYjtBakJvbURuQjs7QWlCbm1EUTtFQUF3QixRQURiO0FqQndtRG5COztBaUJ2bURRO0VBQXdCLFNBRGI7QWpCNG1EbkI7O0FpQjNtRFE7RUFBd0IsU0FEYjtBakJnbkRuQjs7QWlCL21EUTtFQUF3QixTQURiO0FqQm9uRG5COztBaUI1bURZO0VGaEJWO0FmZ29ERjs7QWlCaG5EWTtFRmhCVjtBZm9vREY7O0FpQnBuRFk7RUZoQlY7QWZ3b0RGOztBaUJ4bkRZO0VGaEJWO0FmNG9ERjs7QWlCNW5EWTtFRmhCVjtBZmdwREY7O0FpQmhvRFk7RUZoQlY7QWZvcERGOztBaUJwb0RZO0VGaEJWO0Fmd3BERjs7QWlCeG9EWTtFRmhCVjtBZjRwREY7O0FpQjVvRFk7RUZoQlY7QWZncURGOztBaUJocERZO0VGaEJWO0Fmb3FERjs7QWlCcHBEWTtFRmhCVjtBZndxREY7O0FnQm5xREk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWpCa3NETjs7RWV0cURBO0lBQ0U7SUFDQTtFZnlxREY7O0VlM3FEQTtJQUNFO0lBQ0E7RWY4cURGOztFZWhyREE7SUFDRTtJQUNBO0VmbXJERjs7RWVyckRBO0lBQ0U7SUFDQTtFZndyREY7O0VlMXJEQTtJQUNFO0lBQ0E7RWY2ckRGOztFZS9yREE7SUFDRTtJQUNBO0Vma3NERjs7RWlCcnRESTtJRkNKO0lBQ0E7SUFDQTtFZnd0REE7O0VpQnJ0RFE7SUZiUjtJQUlBO0VmbXVEQTs7RWlCMXREUTtJRmJSO0lBSUE7RWZ3dURBOztFaUIvdERRO0lGYlI7SUFJQTtFZjZ1REE7O0VpQnB1RFE7SUZiUjtJQUlBO0Vma3ZEQTs7RWlCenVEUTtJRmJSO0lBSUE7RWZ1dkRBOztFaUI5dURRO0lGYlI7SUFJQTtFZjR2REE7O0VpQm52RFE7SUZiUjtJQUlBO0VmaXdEQTs7RWlCeHZEUTtJRmJSO0lBSUE7RWZzd0RBOztFaUI3dkRRO0lGYlI7SUFJQTtFZjJ3REE7O0VpQmx3RFE7SUZiUjtJQUlBO0VmZ3hEQTs7RWlCdndEUTtJRmJSO0lBSUE7RWZxeERBOztFaUI1d0RRO0lGYlI7SUFJQTtFZjB4REE7O0VpQjN3REk7SUFBd0I7RWpCK3dENUI7O0VpQjd3REk7SUFBdUI7RWpCaXhEM0I7O0VpQjl3RE07SUFBd0IsUUFEYjtFakJteERqQjs7RWlCbHhETTtJQUF3QixRQURiO0VqQnV4RGpCOztFaUJ0eERNO0lBQXdCLFFBRGI7RWpCMnhEakI7O0VpQjF4RE07SUFBd0IsUUFEYjtFakIreERqQjs7RWlCOXhETTtJQUF3QixRQURiO0VqQm15RGpCOztFaUJseURNO0lBQXdCLFFBRGI7RWpCdXlEakI7O0VpQnR5RE07SUFBd0IsUUFEYjtFakIyeURqQjs7RWlCMXlETTtJQUF3QixRQURiO0VqQit5RGpCOztFaUI5eURNO0lBQXdCLFFBRGI7RWpCbXpEakI7O0VpQmx6RE07SUFBd0IsUUFEYjtFakJ1ekRqQjs7RWlCdHpETTtJQUF3QixTQURiO0VqQjJ6RGpCOztFaUIxekRNO0lBQXdCLFNBRGI7RWpCK3pEakI7O0VpQjl6RE07SUFBd0IsU0FEYjtFakJtMERqQjs7RWlCM3pEVTtJRmhCVjtFZiswREE7O0VpQi96RFU7SUZoQlY7RWZtMURBOztFaUJuMERVO0lGaEJWO0VmdTFEQTs7RWlCdjBEVTtJRmhCVjtFZjIxREE7O0VpQjMwRFU7SUZoQlY7RWYrMURBOztFaUIvMERVO0lGaEJWO0VmbTJEQTs7RWlCbjFEVTtJRmhCVjtFZnUyREE7O0VpQnYxRFU7SUZoQlY7RWYyMkRBOztFaUIzMURVO0lGaEJWO0VmKzJEQTs7RWlCLzFEVTtJRmhCVjtFZm0zREE7O0VpQm4yRFU7SUZoQlY7RWZ1M0RBOztFaUJ2MkRVO0lGaEJWO0VmMjNEQTtBQUNGO0FnQnYzREk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWpCcTVETjs7RWV6M0RBO0lBQ0U7SUFDQTtFZjQzREY7O0VlOTNEQTtJQUNFO0lBQ0E7RWZpNERGOztFZW40REE7SUFDRTtJQUNBO0VmczRERjs7RWV4NERBO0lBQ0U7SUFDQTtFZjI0REY7O0VlNzREQTtJQUNFO0lBQ0E7RWZnNURGOztFZWw1REE7SUFDRTtJQUNBO0VmcTVERjs7RWlCeDZESTtJRkNKO0lBQ0E7SUFDQTtFZjI2REE7O0VpQng2RFE7SUZiUjtJQUlBO0VmczdEQTs7RWlCNzZEUTtJRmJSO0lBSUE7RWYyN0RBOztFaUJsN0RRO0lGYlI7SUFJQTtFZmc4REE7O0VpQnY3RFE7SUZiUjtJQUlBO0VmcThEQTs7RWlCNTdEUTtJRmJSO0lBSUE7RWYwOERBOztFaUJqOERRO0lGYlI7SUFJQTtFZis4REE7O0VpQnQ4RFE7SUZiUjtJQUlBO0VmbzlEQTs7RWlCMzhEUTtJRmJSO0lBSUE7RWZ5OURBOztFaUJoOURRO0lGYlI7SUFJQTtFZjg5REE7O0VpQnI5RFE7SUZiUjtJQUlBO0VmbStEQTs7RWlCMTlEUTtJRmJSO0lBSUE7RWZ3K0RBOztFaUIvOURRO0lGYlI7SUFJQTtFZjYrREE7O0VpQjk5REk7SUFBd0I7RWpCaytENUI7O0VpQmgrREk7SUFBdUI7RWpCbytEM0I7O0VpQmorRE07SUFBd0IsUUFEYjtFakJzK0RqQjs7RWlCcitETTtJQUF3QixRQURiO0VqQjArRGpCOztFaUJ6K0RNO0lBQXdCLFFBRGI7RWpCOCtEakI7O0VpQjcrRE07SUFBd0IsUUFEYjtFakJrL0RqQjs7RWlCai9ETTtJQUF3QixRQURiO0VqQnMvRGpCOztFaUJyL0RNO0lBQXdCLFFBRGI7RWpCMC9EakI7O0VpQnovRE07SUFBd0IsUUFEYjtFakI4L0RqQjs7RWlCNy9ETTtJQUF3QixRQURiO0VqQmtnRWpCOztFaUJqZ0VNO0lBQXdCLFFBRGI7RWpCc2dFakI7O0VpQnJnRU07SUFBd0IsUUFEYjtFakIwZ0VqQjs7RWlCemdFTTtJQUF3QixTQURiO0VqQjhnRWpCOztFaUI3Z0VNO0lBQXdCLFNBRGI7RWpCa2hFakI7O0VpQmpoRU07SUFBd0IsU0FEYjtFakJzaEVqQjs7RWlCOWdFVTtJRmhCVjtFZmtpRUE7O0VpQmxoRVU7SUZoQlY7RWZzaUVBOztFaUJ0aEVVO0lGaEJWO0VmMGlFQTs7RWlCMWhFVTtJRmhCVjtFZjhpRUE7O0VpQjloRVU7SUZoQlY7RWZrakVBOztFaUJsaUVVO0lGaEJWO0Vmc2pFQTs7RWlCdGlFVTtJRmhCVjtFZjBqRUE7O0VpQjFpRVU7SUZoQlY7RWY4akVBOztFaUI5aUVVO0lGaEJWO0Vma2tFQTs7RWlCbGpFVTtJRmhCVjtFZnNrRUE7O0VpQnRqRVU7SUZoQlY7RWYwa0VBOztFaUIxakVVO0lGaEJWO0VmOGtFQTtBQUNGO0FnQjFrRUk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWpCd21FTjs7RWU1a0VBO0lBQ0U7SUFDQTtFZitrRUY7O0VlamxFQTtJQUNFO0lBQ0E7RWZvbEVGOztFZXRsRUE7SUFDRTtJQUNBO0VmeWxFRjs7RWUzbEVBO0lBQ0U7SUFDQTtFZjhsRUY7O0VlaG1FQTtJQUNFO0lBQ0E7RWZtbUVGOztFZXJtRUE7SUFDRTtJQUNBO0Vmd21FRjs7RWlCM25FSTtJRkNKO0lBQ0E7SUFDQTtFZjhuRUE7O0VpQjNuRVE7SUZiUjtJQUlBO0VmeW9FQTs7RWlCaG9FUTtJRmJSO0lBSUE7RWY4b0VBOztFaUJyb0VRO0lGYlI7SUFJQTtFZm1wRUE7O0VpQjFvRVE7SUZiUjtJQUlBO0Vmd3BFQTs7RWlCL29FUTtJRmJSO0lBSUE7RWY2cEVBOztFaUJwcEVRO0lGYlI7SUFJQTtFZmtxRUE7O0VpQnpwRVE7SUZiUjtJQUlBO0VmdXFFQTs7RWlCOXBFUTtJRmJSO0lBSUE7RWY0cUVBOztFaUJucUVRO0lGYlI7SUFJQTtFZmlyRUE7O0VpQnhxRVE7SUZiUjtJQUlBO0Vmc3JFQTs7RWlCN3FFUTtJRmJSO0lBSUE7RWYyckVBOztFaUJsckVRO0lGYlI7SUFJQTtFZmdzRUE7O0VpQmpyRUk7SUFBd0I7RWpCcXJFNUI7O0VpQm5yRUk7SUFBdUI7RWpCdXJFM0I7O0VpQnByRU07SUFBd0IsUUFEYjtFakJ5ckVqQjs7RWlCeHJFTTtJQUF3QixRQURiO0VqQjZyRWpCOztFaUI1ckVNO0lBQXdCLFFBRGI7RWpCaXNFakI7O0VpQmhzRU07SUFBd0IsUUFEYjtFakJxc0VqQjs7RWlCcHNFTTtJQUF3QixRQURiO0VqQnlzRWpCOztFaUJ4c0VNO0lBQXdCLFFBRGI7RWpCNnNFakI7O0VpQjVzRU07SUFBd0IsUUFEYjtFakJpdEVqQjs7RWlCaHRFTTtJQUF3QixRQURiO0VqQnF0RWpCOztFaUJwdEVNO0lBQXdCLFFBRGI7RWpCeXRFakI7O0VpQnh0RU07SUFBd0IsUUFEYjtFakI2dEVqQjs7RWlCNXRFTTtJQUF3QixTQURiO0VqQml1RWpCOztFaUJodUVNO0lBQXdCLFNBRGI7RWpCcXVFakI7O0VpQnB1RU07SUFBd0IsU0FEYjtFakJ5dUVqQjs7RWlCanVFVTtJRmhCVjtFZnF2RUE7O0VpQnJ1RVU7SUZoQlY7RWZ5dkVBOztFaUJ6dUVVO0lGaEJWO0VmNnZFQTs7RWlCN3VFVTtJRmhCVjtFZml3RUE7O0VpQmp2RVU7SUZoQlY7RWZxd0VBOztFaUJydkVVO0lGaEJWO0VmeXdFQTs7RWlCenZFVTtJRmhCVjtFZjZ3RUE7O0VpQjd2RVU7SUZoQlY7RWZpeEVBOztFaUJqd0VVO0lGaEJWO0VmcXhFQTs7RWlCcndFVTtJRmhCVjtFZnl4RUE7O0VpQnp3RVU7SUZoQlY7RWY2eEVBOztFaUI3d0VVO0lGaEJWO0VmaXlFQTtBQUNGO0FnQjd4RUk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RWpCMnpFTjs7RWUveEVBO0lBQ0U7SUFDQTtFZmt5RUY7O0VlcHlFQTtJQUNFO0lBQ0E7RWZ1eUVGOztFZXp5RUE7SUFDRTtJQUNBO0VmNHlFRjs7RWU5eUVBO0lBQ0U7SUFDQTtFZml6RUY7O0VlbnpFQTtJQUNFO0lBQ0E7RWZzekVGOztFZXh6RUE7SUFDRTtJQUNBO0VmMnpFRjs7RWlCOTBFSTtJRkNKO0lBQ0E7SUFDQTtFZmkxRUE7O0VpQjkwRVE7SUZiUjtJQUlBO0VmNDFFQTs7RWlCbjFFUTtJRmJSO0lBSUE7RWZpMkVBOztFaUJ4MUVRO0lGYlI7SUFJQTtFZnMyRUE7O0VpQjcxRVE7SUZiUjtJQUlBO0VmMjJFQTs7RWlCbDJFUTtJRmJSO0lBSUE7RWZnM0VBOztFaUJ2MkVRO0lGYlI7SUFJQTtFZnEzRUE7O0VpQjUyRVE7SUZiUjtJQUlBO0VmMDNFQTs7RWlCajNFUTtJRmJSO0lBSUE7RWYrM0VBOztFaUJ0M0VRO0lGYlI7SUFJQTtFZm80RUE7O0VpQjMzRVE7SUZiUjtJQUlBO0VmeTRFQTs7RWlCaDRFUTtJRmJSO0lBSUE7RWY4NEVBOztFaUJyNEVRO0lGYlI7SUFJQTtFZm01RUE7O0VpQnA0RUk7SUFBd0I7RWpCdzRFNUI7O0VpQnQ0RUk7SUFBdUI7RWpCMDRFM0I7O0VpQnY0RU07SUFBd0IsUUFEYjtFakI0NEVqQjs7RWlCMzRFTTtJQUF3QixRQURiO0VqQmc1RWpCOztFaUIvNEVNO0lBQXdCLFFBRGI7RWpCbzVFakI7O0VpQm41RU07SUFBd0IsUUFEYjtFakJ3NUVqQjs7RWlCdjVFTTtJQUF3QixRQURiO0VqQjQ1RWpCOztFaUIzNUVNO0lBQXdCLFFBRGI7RWpCZzZFakI7O0VpQi81RU07SUFBd0IsUUFEYjtFakJvNkVqQjs7RWlCbjZFTTtJQUF3QixRQURiO0VqQnc2RWpCOztFaUJ2NkVNO0lBQXdCLFFBRGI7RWpCNDZFakI7O0VpQjM2RU07SUFBd0IsUUFEYjtFakJnN0VqQjs7RWlCLzZFTTtJQUF3QixTQURiO0VqQm83RWpCOztFaUJuN0VNO0lBQXdCLFNBRGI7RWpCdzdFakI7O0VpQnY3RU07SUFBd0IsU0FEYjtFakI0N0VqQjs7RWlCcDdFVTtJRmhCVjtFZnc4RUE7O0VpQng3RVU7SUZoQlY7RWY0OEVBOztFaUI1N0VVO0lGaEJWO0VmZzlFQTs7RWlCaDhFVTtJRmhCVjtFZm85RUE7O0VpQnA4RVU7SUZoQlY7RWZ3OUVBOztFaUJ4OEVVO0lGaEJWO0VmNDlFQTs7RWlCNThFVTtJRmhCVjtFZmcrRUE7O0VpQmg5RVU7SUZoQlY7RWZvK0VBOztFaUJwOUVVO0lGaEJWO0VmdytFQTs7RWlCeDlFVTtJRmhCVjtFZjQrRUE7O0VpQjU5RVU7SUZoQlY7RWZnL0VBOztFaUJoK0VVO0lGaEJWO0Vmby9FQTtBQUNGO0FrQnhpRkE7RUFDRTtFQUNBLG1CYmlJTztFYWhJUCxjYlNTO0FMaWlGWDtBa0J2aUZFOztFQUVFLGdCYmtWMEI7RWFqVjFCO0VBQ0E7QWxCeWlGSjtBa0J0aUZFO0VBQ0U7RUFDQTtBbEJ3aUZKO0FrQnJpRkU7RUFDRTtBbEJ1aUZKOztBa0I3aEZFOztFQUVFLGViNFQwQjtBTG91RTlCOztBa0J2aEZBO0VBQ0U7QWxCMGhGRjtBa0J4aEZFOztFQUVFO0FsQjBoRko7QWtCdGhGSTs7RUFFRTtBbEJ3aEZOOztBa0JsaEZFOzs7O0VBSUU7QWxCcWhGSjs7QWtCNWdGRTtFQUNFLHFDYndSMEI7QUx1dkU5Qjs7QU85a0ZFO0VXMkVJLGNidkVLO0Vhd0VMLHNDYjZRd0I7QUwwdkU5Qjs7QW1CemxGSTs7O0VBR0UseUJEMkYrQjtBbEJpZ0ZyQztBbUJ4bEZNOzs7O0VBSUUscUJEbUZ5RTtBbEJ1Z0ZqRjs7QU8vbEZFO0VZaUJNLHlCQUplO0FuQnNsRnZCO0FtQmhsRlE7O0VBRUUseUJBUmE7QW5CMGxGdkI7O0FtQjdtRkk7OztFQUdFLHlCRDJGK0I7QWxCcWhGckM7QW1CNW1GTTs7OztFQUlFLHFCRG1GeUU7QWxCMmhGakY7O0FPbm5GRTtFWWlCTSx5QkFKZTtBbkIwbUZ2QjtBbUJwbUZROztFQUVFLHlCQVJhO0FuQjhtRnZCOztBbUJqb0ZJOzs7RUFHRSx5QkQyRitCO0FsQnlpRnJDO0FtQmhvRk07Ozs7RUFJRSxxQkRtRnlFO0FsQitpRmpGOztBT3ZvRkU7RVlpQk0seUJBSmU7QW5COG5GdkI7QW1CeG5GUTs7RUFFRSx5QkFSYTtBbkJrb0Z2Qjs7QW1CcnBGSTs7O0VBR0UseUJEMkYrQjtBbEI2akZyQztBbUJwcEZNOzs7O0VBSUUscUJEbUZ5RTtBbEJta0ZqRjs7QU8zcEZFO0VZaUJNLHlCQUplO0FuQmtwRnZCO0FtQjVvRlE7O0VBRUUseUJBUmE7QW5Cc3BGdkI7O0FtQnpxRkk7OztFQUdFLHlCRDJGK0I7QWxCaWxGckM7QW1CeHFGTTs7OztFQUlFLHFCRG1GeUU7QWxCdWxGakY7O0FPL3FGRTtFWWlCTSx5QkFKZTtBbkJzcUZ2QjtBbUJocUZROztFQUVFLHlCQVJhO0FuQjBxRnZCOztBbUI3ckZJOzs7RUFHRSx5QkQyRitCO0FsQnFtRnJDO0FtQjVyRk07Ozs7RUFJRSxxQkRtRnlFO0FsQjJtRmpGOztBT25zRkU7RVlpQk0seUJBSmU7QW5CMHJGdkI7QW1CcHJGUTs7RUFFRSx5QkFSYTtBbkI4ckZ2Qjs7QW1CanRGSTs7O0VBR0UseUJEMkYrQjtBbEJ5bkZyQztBbUJodEZNOzs7O0VBSUUscUJEbUZ5RTtBbEIrbkZqRjs7QU92dEZFO0VZaUJNLHlCQUplO0FuQjhzRnZCO0FtQnhzRlE7O0VBRUUseUJBUmE7QW5Ca3RGdkI7O0FtQnJ1Rkk7OztFQUdFLHlCRDJGK0I7QWxCNm9GckM7QW1CcHVGTTs7OztFQUlFLHFCRG1GeUU7QWxCbXBGakY7O0FPM3VGRTtFWWlCTSx5QkFKZTtBbkJrdUZ2QjtBbUI1dEZROztFQUVFLHlCQVJhO0FuQnN1RnZCOztBbUJ6dkZJOzs7RUFHRSxzQ2Q0VndCO0FMZzZFOUI7O0FPenZGRTtFWWlCTSxzQ0FKZTtBbkJndkZ2QjtBbUIxdUZROztFQUVFLHNDQVJhO0FuQm92RnZCOztBa0I1cEZJO0VBQ0UsV2IzR0s7RWE0R0wseUJicEdLO0VhcUdMLHFCYmdRd0I7QUwrNUU5QjtBa0IxcEZJO0VBQ0UsY2I1R0s7RWE2R0wseUJibEhLO0VhbUhMLHFCYmxISztBTDh3Rlg7O0FrQnZwRkE7RUFDRSxXYjNIUztFYTRIVCx5QmJwSFM7QUw4d0ZYO0FrQnhwRkU7OztFQUdFLHFCYjRPMEI7QUw4NkU5QjtBa0J2cEZFO0VBQ0U7QWxCeXBGSjtBa0JycEZJO0VBQ0UsMkNiZ093QjtBTHU3RTlCO0FPNXhGRTtFVzRJTSxXYmpKRztFYWtKSCw0Q2IwTnNCO0FMeTdFOUI7O0FnQm51Rkk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFbEJxb0ZOO0VrQmxvRk07SUFDRTtFbEJvb0ZSO0FBQ0Y7QWdCL3VGSTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VsQmdwRk47RWtCN29GTTtJQUNFO0VsQitvRlI7QUFDRjtBZ0IxdkZJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RWxCMnBGTjtFa0J4cEZNO0lBQ0U7RWxCMHBGUjtBQUNGO0FnQnJ3Rkk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFbEJzcUZOO0VrQm5xRk07SUFDRTtFbEJxcUZSO0FBQ0Y7QWtCL3FGSTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0FsQmdyRlI7QWtCN3FGUTtFQUNFO0FsQitxRlY7O0FvQjUxRkE7RUFDRTtFQUNBO0VBQ0EsbUNmMGVzQztFZXpldEM7RWRxSEksZUF0Q2E7RWM1RWpCLGdCZmtSNEI7RWVqUjVCLGdCZnNSNEI7RWVyUjVCLGNmRFM7RWVFVCxzQmZUUztFZVVUO0VBQ0E7RVJBRTtFU0ZFLHdFRFFKO0FwQjAxRkY7QXFCOTFGTTtFRGROO0lDZVE7RXJCaTJGTjtBQUNGO0FvQjUxRkU7RUFDRTtFQUNBO0FwQjgxRko7QW9CMTFGRTtFQUNFO0VBQ0E7QXBCNDFGSjtBc0JsM0ZFO0VBQ0U7RUFDQSxzQmpCUk87RWlCU1AscUJqQnFkb0M7RWlCcGRwQztFQUtFLGdEakJvWHdCO0FMNC9FOUI7QW9CNTFGRTtFQUNFLGNmOUJPO0VlZ0NQO0FwQjYxRko7QW9CcjFGRTtFQUVFLHlCZjlDTztFZWdEUDtBcEJxMUZKOztBb0I3MEZFOzs7O0VBQ0U7QXBCbTFGSjs7QW9COTBGRTtFQU1FLGNmL0RPO0VlZ0VQLHNCZnZFTztBTG01Rlg7O0FvQnYwRkE7O0VBRUU7RUFDQTtBcEIwMEZGOztBb0JoMEZBO0VBQ0U7RUFDQTtFQUNBO0VkM0JFO0VjNkJGLGdCZitMNEI7QUxvb0Y5Qjs7QW9CaDBGQTtFQUNFO0VBQ0E7RWRxQkksa0JBdENhO0VjbUJqQixnQmY2SDRCO0FMc3NGOUI7O0FvQmgwRkE7RUFDRTtFQUNBO0VkY0ksbUJBdENhO0VjMEJqQixnQmZ1SDRCO0FMNHNGOUI7O0FvQjF6RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFZERJLGVBdENhO0VjeUNqQixnQmZrSzRCO0Vlaks1QixjZm5IUztFZW9IVDtFQUNBO0VBQ0E7QXBCNnpGRjtBb0IzekZFO0VBRUU7RUFDQTtBcEI0ekZKOztBb0JoekZBO0VBQ0Usa0NmNFZzQztFZTNWdEM7RWQxQkksbUJBdENhO0Vja0VqQixnQmYrRTRCO0VPeE4xQjtBWjY3Rko7O0FvQmh6RkE7RUFDRSxnQ2ZxVnNDO0VlcFZ0QztFZGxDSSxrQkF0Q2E7RWMwRWpCLGdCZnNFNEI7RU92TjFCO0FacThGSjs7QW9COXlGRTtFQUVFO0FwQmd6Rko7O0FvQjV5RkE7RUFDRTtBcEIreUZGOztBb0J2eUZBO0VBQ0UsbUJmMFVzQztBTGcrRXhDOztBb0J2eUZBO0VBQ0U7RUFDQSxtQmYyVHNDO0FMKytFeEM7O0FvQmx5RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEJxeUZGO0FvQm55RkU7O0VBRUU7RUFDQTtBcEJxeUZKOztBb0I1eEZBO0VBQ0U7RUFDQTtFQUNBLHFCZmdTc0M7QUwrL0V4Qzs7QW9CNXhGQTtFQUNFO0VBQ0Esa0JmNFJzQztFZTNSdEM7QXBCK3hGRjtBb0I1eEZFO0VBRUUsY2Z6Tk87QUxzL0ZYOztBb0J6eEZBO0VBQ0U7QXBCNHhGRjs7QW9CenhGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHFCZjZRc0M7QUwrZ0Z4QztBb0J6eEZFO0VBQ0U7RUFDQTtFQUNBLHVCZndRb0M7RWV2UXBDO0FwQjJ4Rko7O0FzQngrRkU7RUFDRTtFQUNBO0VBQ0EsbUJqQjBjb0M7RUNqYnBDO0VnQnZCQSxjRnFOcUM7QXBCc3hGekM7O0FzQngrRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQm1FRSxtQkF0Q2E7RWdCM0JmLGdCakJzTzBCO0VpQnJPMUI7RUFDQTtFVjlDQTtBWjBoR0o7QXNCditGSTtFQUVFO0F0QncrRk47O0FzQm4rRkk7Ozs7RUFFRTtBdEJ3K0ZOOztBc0J0aEdJO0VBb0RFLHFCRmtMbUM7RUUvS2pDLG9DakJ3WmdDO0VpQnZaaEM7RUFDQTtFQUNBO0VBQ0E7QXRCbytGUjtBc0JqK0ZNO0VBQ0UscUJGdUtpQztFRXRLakM7QXRCbStGUjs7QXNCbmlHSTtFQXlFSSxvQ2pCc1lnQztFaUJyWWhDO0F0Qjg5RlI7O0FzQnhpR0k7RUFpRkUscUJGcUptQztFRWxKakMsdUNqQnVkb0M7RWlCdGRwQztBdEJ5OUZSO0FzQnQ5Rk07RUFDRSxxQkY2SWlDO0VFNUlqQztBdEJ3OUZSOztBc0JqOUZNO0VBQ0UsY0ZvSWlDO0FwQmcxRnpDO0FzQmo5Rk07OztFQUVFO0F0Qm85RlI7O0FzQjc4Rk07RUFDRSxjRnVIaUM7QXBCeTFGekM7QXNCOThGUTtFQUNFLHFCRm9IK0I7QXBCNDFGekM7QXNCMzhGUTtFQUNFO0VDbEpOLHlCRG1KMkI7QXRCNjhGL0I7QXNCeDhGUTtFQUNFO0F0QjA4RlY7QXNCdjhGUTtFQUNFLHFCQVZxQjtBdEJtOUYvQjs7QXNCaDhGTTtFQUNFLHFCQXBCdUI7QXRCdTlGL0I7QXNCLzdGUTtFQUNFLHFCQXpCcUI7RUEwQnJCO0F0Qmk4RlY7O0FzQnhrR0U7RUFDRTtFQUNBO0VBQ0EsbUJqQjBjb0M7RUNqYnBDO0VnQnZCQSxjRnFOcUM7QXBCczNGekM7O0FzQnhrR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQm1FRSxtQkF0Q2E7RWdCM0JmLGdCakJzTzBCO0VpQnJPMUI7RUFDQTtFVjlDQTtBWjBuR0o7QXNCdmtHSTtFQUVFO0F0QndrR047O0FzQm5rR0k7Ozs7RUFFRTtBdEJ3a0dOOztBc0J0bkdJO0VBb0RFLHFCRmtMbUM7RUUvS2pDLG9DakJ3WmdDO0VpQnZaaEM7RUFDQTtFQUNBO0VBQ0E7QXRCb2tHUjtBc0Jqa0dNO0VBQ0UscUJGdUtpQztFRXRLakM7QXRCbWtHUjs7QXNCbm9HSTtFQXlFSSxvQ2pCc1lnQztFaUJyWWhDO0F0QjhqR1I7O0FzQnhvR0k7RUFpRkUscUJGcUptQztFRWxKakMsdUNqQnVkb0M7RWlCdGRwQztBdEJ5akdSO0FzQnRqR007RUFDRSxxQkY2SWlDO0VFNUlqQztBdEJ3akdSOztBc0JqakdNO0VBQ0UsY0ZvSWlDO0FwQmc3RnpDO0FzQmpqR007OztFQUVFO0F0Qm9qR1I7O0FzQjdpR007RUFDRSxjRnVIaUM7QXBCeTdGekM7QXNCOWlHUTtFQUNFLHFCRm9IK0I7QXBCNDdGekM7QXNCM2lHUTtFQUNFO0VDbEpOLHlCRG1KMkI7QXRCNmlHL0I7QXNCeGlHUTtFQUNFO0F0QjBpR1Y7QXNCdmlHUTtFQUNFLHFCQVZxQjtBdEJtakcvQjs7QXNCaGlHTTtFQUNFLHFCQXBCdUI7QXRCdWpHL0I7QXNCL2hHUTtFQUNFLHFCQXpCcUI7RUEwQnJCO0F0QmlpR1Y7O0FvQmw4RkE7RUFDRTtFQUNBO0VBQ0E7QXBCcThGRjtBb0JoOEZFO0VBQ0U7QXBCazhGSjtBZ0JqcUdJO0VJb09BO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBCZzhGSjtFb0I1N0ZFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFcEI4N0ZKO0VvQjE3RkU7SUFDRTtJQUNBO0lBQ0E7RXBCNDdGSjtFb0J4N0ZFO0lBQ0U7RXBCMDdGSjtFb0J2N0ZFOztJQUVFO0VwQnk3Rko7RW9CcDdGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBCczdGSjtFb0JwN0ZFO0lBQ0U7SUFDQTtJQUNBO0lBQ0EscUJmK0trQztJZTlLbEM7RXBCczdGSjtFb0JuN0ZFO0lBQ0U7SUFDQTtFcEJxN0ZKO0VvQm43RkU7SUFDRTtFcEJxN0ZKO0FBQ0Y7O0F3QnZ3R0E7RUFDRTtFQUVBLGdCbkJzUjRCO0VtQnJSNUIsY25CTVM7RW1CTFQ7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQ3VGQTtFbkJ1QkksZUF0Q2E7RW1CaUJqQixnQnBCMEw0QjtFT2xSMUI7RVNGRSxxSUdHSjtBeEIwd0dGO0FxQnp3R007RUdkTjtJSGVRO0VyQjR3R047QUFDRjtBT3R4R0U7RWlCVUUsY25CTk87RW1CT1A7QXhCK3dHSjtBd0I1d0dFO0VBRUU7RUFDQSxnRG5CNlcwQjtBTGc2RjlCO0F3Qnp3R0U7RUFFRSxhbkJpWjBCO0FMeTNGOUI7QXdCdHdHRTtFQUNFO0F4Qnd3R0o7QXdCMXZHQTs7RUFFRTtBeEI0dkdGOztBd0JudkdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTDh1R2Y7QU85eUdFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBekIwekd6RztBeUI5eUdFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F6QjJ5R047QXlCdHlHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTDh2R2Y7QXlCaHlHRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBekIwMEc3TDtBeUIzeEdJO0VBS0k7QXpCeXhHUjs7QXdCanhHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUw0d0dmO0FPNTBHRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXpCdzFHekc7QXlCNTBHRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBekJ5MEdOO0F5QnAwR0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUw0eEdmO0F5Qjl6R0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXpCdzJHN0w7QXlCenpHSTtFQUtJO0F6QnV6R1I7O0F3Qi95R0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMMHlHZjtBTzEyR0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0F6QnMzR3pHO0F5QjEyR0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXpCdTJHTjtBeUJsMkdFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMMHpHZjtBeUI1MUdFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0F6QnM0RzdMO0F5QnYxR0k7RUFLSTtBekJxMUdSOztBd0I3MEdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTHcwR2Y7QU94NEdFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBekJvNUd6RztBeUJ4NEdFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F6QnE0R047QXlCaDRHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTHcxR2Y7QXlCMTNHRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBekJvNkc3TDtBeUJyM0dJO0VBS0k7QXpCbTNHUjs7QXdCMzJHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxzMkdmO0FPdDZHRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXpCazdHekc7QXlCdDZHRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBekJtNkdOO0F5Qjk1R0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxzM0dmO0F5Qng1R0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXpCazhHN0w7QXlCbjVHSTtFQUtJO0F6Qmk1R1I7O0F3Qno0R0U7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FMbzRHZjtBT3A4R0U7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0F6Qmc5R3pHO0F5QnA4R0U7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QXpCaThHTjtBeUI1N0dFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FMbzVHZjtBeUJ0N0dFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0F6QmcrRzdMO0F5Qmo3R0k7RUFLSTtBekIrNkdSOztBd0J2NkdFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBTGs2R2Y7QU9sK0dFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBekI4K0d6RztBeUJsK0dFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0F6Qis5R047QXlCMTlHRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBTGs3R2Y7QXlCcDlHRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBekI4L0c3TDtBeUIvOEdJO0VBS0k7QXpCNjhHUjs7QXdCcjhHRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QUxnOEdmO0FPaGdIRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QXpCNGdIekc7QXlCaGdIRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBekI2L0dOO0F5QngvR0U7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QUxnOUdmO0F5QmwvR0U7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QXpCNGhIN0w7QXlCNytHSTtFQUtJO0F6QjIrR1I7O0F3Qjc5R0U7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw2OUdmO0FPN2hIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGsrR2Y7QXlCcitHRTtFQUVFO0F6QnMrR0o7QXlCbitHRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm8rR0o7QXlCaitHRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDgrR2Y7QXlCLzlHSTtFQUtJO0F6QjY5R1I7O0F3QnQvR0U7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxzL0dmO0FPdGpIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDIvR2Y7QXlCOS9HRTtFQUVFO0F6QisvR0o7QXlCNS9HRTtFQUVFLGNwQkpXO0VvQktYO0F6QjYvR0o7QXlCMS9HRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHVnSGY7QXlCeC9HSTtFQUtJO0F6QnMvR1I7O0F3Qi9nSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwrZ0hmO0FPL2tIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTG9oSGY7QXlCdmhIRTtFQUVFO0F6QndoSEo7QXlCcmhIRTtFQUVFLGNwQkpXO0VvQktYO0F6QnNoSEo7QXlCbmhIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGdpSGY7QXlCamhISTtFQUtJO0F6QitnSFI7O0F3QnhpSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUx3aUhmO0FPeG1IRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTDZpSGY7QXlCaGpIRTtFQUVFO0F6QmlqSEo7QXlCOWlIRTtFQUVFLGNwQkpXO0VvQktYO0F6QitpSEo7QXlCNWlIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTHlqSGY7QXlCMWlISTtFQUtJO0F6QndpSFI7O0F3QmprSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxpa0hmO0FPam9IRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHNrSGY7QXlCemtIRTtFQUVFO0F6QjBrSEo7QXlCdmtIRTtFQUVFLGNwQkpXO0VvQktYO0F6QndrSEo7QXlCcmtIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTGtsSGY7QXlCbmtISTtFQUtJO0F6QmlrSFI7O0F3QjFsSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUwwbEhmO0FPMXBIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTCtsSGY7QXlCbG1IRTtFQUVFO0F6Qm1tSEo7QXlCaG1IRTtFQUVFLGNwQkpXO0VvQktYO0F6QmltSEo7QXlCOWxIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDJtSGY7QXlCNWxISTtFQUtJO0F6QjBsSFI7O0F3Qm5uSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUxtbkhmO0FPbnJIRTtFa0J3REUsY0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTHduSGY7QXlCM25IRTtFQUVFO0F6QjRuSEo7QXlCem5IRTtFQUVFLGNwQkpXO0VvQktYO0F6QjBuSEo7QXlCdm5IRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTG9vSGY7QXlCcm5ISTtFQUtJO0F6Qm1uSFI7O0F3QjVvSEU7RUNQQSxjcEJZYTtFb0JYYixxQnBCV2E7QUw0b0hmO0FPNXNIRTtFa0J3REUsV0FMZ0Q7RUFNaEQseUJwQk9XO0VvQk5YLHFCcEJNVztBTGlwSGY7QXlCcHBIRTtFQUVFO0F6QnFwSEo7QXlCbHBIRTtFQUVFLGNwQkpXO0VvQktYO0F6Qm1wSEo7QXlCaHBIRTtFQUdFO0VBQ0EseUJwQlpXO0VvQmFYLHFCcEJiVztBTDZwSGY7QXlCOW9ISTtFQUtJO0F6QjRvSFI7O0F3QjFwSEE7RUFDRSxnQm5CNE00QjtFbUIzTTVCLGNuQjJGd0M7RW1CMUZ4QyxxQm5CMkZ3QztBTGtrSDFDO0FPdHVIRTtFaUI0RUUsY25CeUZzQztFbUJ4RnRDLDBCbkJ5RnNDO0FMb2tIMUM7QXdCMXBIRTtFQUVFLDBCbkJvRnNDO0FMdWtIMUM7QXdCeHBIRTtFQUVFLGNuQnRGTztFbUJ1RlA7QXhCeXBISjs7QXdCOW9IQTtFQ1BFO0VuQnVCSSxrQkF0Q2E7RW1CaUJqQixnQnBCK0g0QjtFT3ZOMUI7QVprdkhKOztBd0JqcEhBO0VDWEU7RW5CdUJJLG1CQXRDYTtFbUJpQmpCLGdCcEJnSTRCO0VPeE4xQjtBWnl2SEo7O0F3Qi9vSEE7RUFDRTtFQUNBO0F4QmtwSEY7QXdCL29IRTtFQUNFLGtCbkJ1VDBCO0FMMDFHOUI7O0F3QnpvSEU7OztFQUNFO0F4QjhvSEo7O0EwQnp4SEE7RUxnQk0sZ0NLZko7QTFCNHhIRjtBcUJ6d0hNO0VLcEJOO0lMcUJRO0VyQjR3SE47QUFDRjtBMEIveEhFO0VBQ0U7QTFCaXlISjs7QTBCNXhIRTtFQUNFO0ExQit4SEo7O0EwQjN4SEE7RUFDRTtFQUNBO0VBQ0E7RUxESSw2QktFSjtBMUI4eEhGO0FxQjV4SE07RUtOTjtJTE9RO0VyQit4SE47QUFDRjs7QTJCcHpIQTs7OztFQUlFO0EzQnV6SEY7O0EyQnB6SEE7RUFDRTtBM0J1ekhGO0E0Qm55SEk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBNUJzMEhGO0E0Qmp4SEk7RUFDRTtBNUJteEhOOztBMkI3ekhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXRCd3BCa0M7RXNCdnBCbEM7RUFDQTtFQUNBLGdCdEJndUJrQztFc0IvdEJsQztFQUNBO0VyQnNHSSxlQXRDYTtFcUI5RGpCLGN0QlhTO0VzQllUO0VBQ0E7RUFDQSxzQnRCdkJTO0VzQndCVDtFQUNBO0VmZEU7QVorMEhKOztBMkJ4ekhJO0VBQ0U7RUFDQTtBM0IyekhOOztBMkJ4ekhJO0VBQ0U7RUFDQTtBM0IyekhOOztBZ0IveUhJO0VXbkJBO0lBQ0U7SUFDQTtFM0JzMEhKOztFMkJuMEhFO0lBQ0U7SUFDQTtFM0JzMEhKO0FBQ0Y7QWdCM3pISTtFV25CQTtJQUNFO0lBQ0E7RTNCaTFISjs7RTJCOTBIRTtJQUNFO0lBQ0E7RTNCaTFISjtBQUNGO0FnQnQwSEk7RVduQkE7SUFDRTtJQUNBO0UzQjQxSEo7O0UyQnoxSEU7SUFDRTtJQUNBO0UzQjQxSEo7QUFDRjtBZ0JqMUhJO0VXbkJBO0lBQ0U7SUFDQTtFM0J1MkhKOztFMkJwMkhFO0lBQ0U7SUFDQTtFM0J1MkhKO0FBQ0Y7QTJCaDJIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHVCdEI4ckJnQztBTG9xR3BDO0E0Qmo0SEk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBNUI2NUhGO0E0Qi8ySEk7RUFDRTtBNUJpM0hOOztBMkJ0MkhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQnRCZ3JCZ0M7QUx5ckdwQztBNEJ0NUhJO0VBQ0U7RUFDQSxvQnZCK053QjtFdUI5TnhCLHVCdkI2TndCO0V1QjVOeEI7RUFsQko7RUFDQTtFQUNBO0VBQ0E7QTVCMjZIRjtBNEJwNEhJO0VBQ0U7QTVCczRITjtBMkJqM0hJO0VBQ0U7QTNCbTNITjs7QTJCNzJIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0J0QitwQmdDO0FMaXRHcEM7QTRCOTZISTtFQUNFO0VBQ0Esb0J2QitOd0I7RXVCOU54Qix1QnZCNk53QjtFdUI1TnhCO0E1Qmc3SE47QTRCcjZITTtFQUNFO0E1QnU2SFI7QTRCcDZITTtFQUNFO0VBQ0EscUJ2QjRNc0I7RXVCM010Qix1QnZCME1zQjtFdUJ6TXRCO0VBOUJOO0VBQ0E7RUFDQTtBNUJxOEhGO0E0QnA2SEk7RUFDRTtBNUJzNkhOO0EyQmg0SEk7RUFDRTtBM0JrNEhOOztBMkIxM0hFO0VBSUU7RUFDQTtBM0IwM0hKOztBMkJyM0hBO0VFOUdFO0VBQ0E7RUFDQTtFQUNBO0E3QnUrSEY7O0EyQnIzSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCdEJnSzRCO0VzQi9KNUIsY3RCaEhTO0VzQmlIVDtFQUVBO0VBQ0E7RUFDQTtBM0J1M0hGO0FPNStIRTtFb0JvSUUsY3RCbW5CZ0M7RXNCbG5CaEM7RUovSUEseUJsQkdPO0FMdy9IWDtBMkJ4MkhFO0VBRUUsV3RCcEpPO0VzQnFKUDtFSnRKQSx5QmxCb1AwQjtBTDR3SDlCO0EyQnQySEU7RUFFRSxjdEJ0Sk87RXNCdUpQO0VBQ0E7QTNCdTJISjs7QTJCLzFIQTtFQUNFO0EzQmsySEY7O0EyQjkxSEE7RUFDRTtFQUNBLHNCdEJnbUJrQztFc0IvbEJsQztFckJyREksbUJBdENhO0VxQjZGakIsY3RCektTO0VzQjBLVDtBM0JpMkhGOztBMkI3MUhBO0VBQ0U7RUFDQTtFQUNBLGN0QjlLUztBTDhnSVg7O0E4QjNoSUE7O0VBRUU7RUFDQTtFQUNBO0E5QjhoSUY7QThCNWhJRTs7RUFDRTtFQUNBO0E5QitoSUo7QU85aElFOztFdUJJSTtBOUI4aElOO0E4QjVoSUk7Ozs7RUFHRTtBOUIraElOOztBOEJ6aElBO0VBQ0U7RUFDQTtFQUNBO0E5QjRoSUY7QThCMWhJRTtFQUNFO0E5QjRoSUo7O0E4QnRoSUU7O0VBRUU7QTlCeWhJSjtBOEJyaElFOztFbEJYRTtFQUNBO0Fab2lJSjtBOEJyaElFOztFbEJGRTtFQUNBO0FaMmhJSjs7QThCeGdJQTtFQUNFO0VBQ0E7QTlCMmdJRjtBOEJ6Z0lFO0VBR0U7QTlCeWdJSjtBOEJ0Z0lFO0VBQ0U7QTlCd2dJSjs7QThCcGdJQTtFQUNFO0VBQ0E7QTlCdWdJRjs7QThCcGdJQTtFQUNFO0VBQ0E7QTlCdWdJRjs7QThCbi9IQTtFQUNFO0VBQ0E7RUFDQTtBOUJzL0hGO0E4QnAvSEU7O0VBRUU7QTlCcy9ISjtBOEJuL0hFOztFQUVFO0E5QnEvSEo7QThCai9IRTs7RWxCckZFO0VBQ0E7QVowa0lKO0E4QmovSEU7O0VsQnhHRTtFQUNBO0FaNmxJSjs7QThCbCtIRTs7RUFFRTtBOUJxK0hKO0E4Qm4rSEk7Ozs7RUFFRTtFQUNBO0VBQ0E7QTlCdStITjs7QStCaG9JQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CbW9JRjtBK0Jqb0lFOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Jtb0lKO0ErQmpvSUk7Ozs7Ozs7Ozs7OztFQUdFO0EvQjRvSU47QStCdm9JRTs7O0VBR0U7QS9CeW9JSjtBK0Jyb0lFO0VBQ0U7QS9CdW9JSjtBK0Jsb0lJOztFbkJJQTtFQUNBO0Faa29JSjtBK0Jsb0lFO0VBQ0U7RUFDQTtBL0Jvb0lKO0ErQmxvSUk7RW5CTEE7RUFDQTtBWjBvSUo7QStCam9JSTs7O0VuQnhCQTtFQUNBO0FaOHBJSjtBK0IvbklJOzs7RW5CaENBO0VBQ0E7QVpvcUlKOztBK0J0bklBOztFQUVFO0EvQnluSUY7QStCcG5JRTs7RUFDRTtFQUNBO0EvQnVuSUo7QStCcm5JSTs7RUFDRTtBL0J3bklOO0ErQnBuSUU7Ozs7Ozs7O0VBSUU7QS9CMG5JSjs7QStCdG5JQTtFQUF1QjtBL0Iwbkl2Qjs7QStCem5JQTtFQUFzQjtBL0I2bkl0Qjs7QStCcm5JQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0V6QlNJLGVBdENhO0V5QitCakIsZ0IxQnVLNEI7RTBCdEs1QixnQjFCMks0QjtFMEIxSzVCLGMxQjVHUztFMEI2R1Q7RUFDQTtFQUNBLHlCMUJwSFM7RTBCcUhUO0VuQjVHRTtBWnF1SUo7QStCcm5JRTs7RUFFRTtBL0J1bklKOztBK0I3bUlBOztFQUVFLGdDMUJxV3NDO0FMMndIeEM7O0ErQjdtSUE7Ozs7OztFQU1FO0V6QjFCSSxrQkF0Q2E7RXlCa0VqQixnQjFCOEU0QjtFT3ZOMUI7QVowdklKOztBK0I3bUlBOztFQUVFLGtDMUJtVnNDO0FMNnhIeEM7O0ErQjdtSUE7Ozs7OztFQU1FO0V6QjNDSSxtQkF0Q2E7RXlCbUZqQixnQjFCOEQ0QjtFT3hOMUI7QVoyd0lKOztBK0I3bUlBOztFQUVFO0EvQmduSUY7O0ErQnJtSUE7Ozs7Ozs7O0VuQjNKSTtFQUNBO0FaMndJSjs7QStCdG1JQTs7Ozs7O0VuQnhKSTtFQUNBO0FadXdJSjs7QWdDL3lJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENreklGOztBZ0MveUlBO0VBQ0U7RUFDQSxrQjNCd2ZzQztBTDB6SHhDOztBZ0MveUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsVzNCb2ZzQztFMkJuZnRDO0VBQ0E7QWhDa3pJRjtBZ0NoeklFO0VBQ0UsVzNCekJPO0UyQjBCUCxxQjNCeU4wQjtFa0JwUDFCLHlCbEJvUDBCO0FMMGxJOUI7QWdDOXlJRTtFQUtJLGdEM0IrVndCO0FMNjhIOUI7QWdDeHlJRTtFQUNFLHFCM0JxYm9DO0FMcTNIeEM7QWdDdnlJRTtFQUNFLFczQjdDTztFMkI4Q1AseUIzQmlmNEM7RTJCaGY1QyxxQjNCZ2Y0QztBTHl6SGhEO0FnQ2x5SUk7RUFDRSxjM0JqREs7QUxxMUlYO0FnQ2x5SU07RUFDRSx5QjNCeERHO0FMNDFJWDs7QWdDMXhJQTtFQUNFO0VBQ0E7RUFFQTtBaEM0eElGO0FnQ3h4SUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFczQnVib0M7RTJCdGJwQyxZM0JzYm9DO0UyQnJicEM7RUFDQTtFQUNBLHNCM0JyRk87RTJCc0ZQO0FoQzB4SUo7QWdDcnhJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzNCd2FvQztFMkJ2YXBDLFkzQnVhb0M7RTJCdGFwQztFQUNBO0FoQ3V4SUo7O0FnQzd3SUU7RXBCbEdFO0FabTNJSjtBZ0M1d0lJO0VBQ0U7QWhDOHdJTjtBZ0N6d0lJO0VBQ0UscUIzQjBId0I7RWtCcFAxQix5QmxCb1AwQjtBTGtwSTlCO0FnQ3h3SUk7RUFDRTtBaEMwd0lOO0FnQ3J3SUk7RVRwSUEsd0NsQndoQjRDO0FMbzNIaEQ7QWdDcndJSTtFVHZJQSx3Q2xCd2hCNEM7QUx1M0hoRDs7QWdDN3ZJRTtFQUVFLGtCM0J5WjRDO0FMczJIaEQ7QWdDM3ZJSTtFQUNFO0FoQzZ2SU47QWdDeHZJSTtFVDlKQSx3Q2xCd2hCNEM7QUxpNEhoRDs7QWdDaHZJQTtFQUNFO0FoQ212SUY7QWdDaHZJSTtFQUNFO0VBQ0EsYzNCaVkwQztFMkJoWTFDO0VBRUEscUIzQitYMEM7QUxrM0hoRDtBZ0M5dUlJO0VBQ0U7RUFDQTtFQUNBLHVCM0IwWDBDO0UyQnpYMUMsd0IzQnlYMEM7RTJCeFgxQyx5QjNCcExLO0UyQnNMTCxxQjNCcVgwQztFZ0J2aUIxQyx5SVdtTEE7QWhDK3VJTjtBcUI5NUlNO0VXdUtGO0lYdEtJO0VyQmk2SU47QUFDRjtBZ0MvdUlJO0VBQ0Usc0IzQmxNSztFMkJtTUw7QWhDaXZJTjtBZ0M1dUlJO0VUek1BLHdDbEJ3aEI0QztBTGc2SGhEOztBZ0NsdUlBO0VBQ0U7RUFDQTtFQUNBLG1DM0JvUnNDO0UyQm5SdEM7RTFCakdJLGVBdENhO0UwQjBJakIsZ0IzQjRENEI7RTJCM0Q1QixnQjNCZ0U0QjtFMkIvRDVCLGMzQnZOUztFMkJ3TlQ7RUFDQTtFQUNBO0VwQnRORTtFb0J5TkY7QWhDbXVJRjtBZ0NqdUlFO0VBQ0UscUIzQnVQb0M7RTJCdFBwQztFQUtFLGdEM0JrVzhCO0FMNjNIcEM7QWdDNXRJSTtFQU1FLGMzQi9PSztFMkJnUEwsc0IzQnZQSztBTGc5SVg7QWdDcnRJRTtFQUVFO0VBQ0Esc0IzQjhIMEI7RTJCN0gxQjtBaENzdElKO0FnQ250SUU7RUFDRSxjM0I3UE87RTJCOFBQLHlCM0JsUU87QUx1OUlYO0FnQ2p0SUU7RUFDRTtBaENtdElKO0FnQy9zSUU7RUFDRTtFQUNBO0FoQ2l0SUo7O0FnQzdzSUE7RUFDRSxrQzNCeU5zQztFMkJ4TnRDLG9CM0JnSDRCO0UyQi9HNUIsdUIzQitHNEI7RTJCOUc1QixvQjNCK0c0QjtFQzlReEIsbUJBdENhO0FOczVJbkI7O0FnQzdzSUE7RUFDRSxnQzNCa05zQztFMkJqTnRDLG1CM0I2RzRCO0UyQjVHNUIsc0IzQjRHNEI7RTJCM0c1QixrQjNCNEc0QjtFQ25SeEIsa0JBdENhO0FOODVJbkI7O0FnQ3hzSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzNCZ01zQztFMkIvTHRDO0FoQzJzSUY7O0FnQ3hzSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQzNCd0xzQztFMkJ2THRDO0VBQ0E7RUFDQTtBaEMyc0lGO0FnQ3pzSUU7RUFDRSxxQjNCb0tvQztFMkJuS3BDLGdEM0J3RTBCO0FMbW9JOUI7QWdDdnNJRTtFQUVFLHlCM0IvVE87QUx1Z0pYO0FnQ3BzSUk7RUFDRSxpQi9CNUxhO0FEazRJbkI7QWdDdnNJSTtFQUNFLGlCL0I1TGE7QURxNEluQjtBZ0Mxc0lJO0VBQ0Usb0IvQjVMYTtBRHc0SW5CO0FnQ3hzSUU7RUFDRTtBaEMwc0lKOztBZ0N0c0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1DM0J1SnNDO0UyQnRKdEM7RUFDQTtFQUVBLGdCM0JqRTRCO0UyQmtFNUIsZ0IzQjdENEI7RTJCOEQ1QixjM0JwVlM7RTJCcVZULHNCM0I1VlM7RTJCNlZUO0VwQmxWRTtBWjJoSko7QWdDcnNJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCM0JnSW9DO0UyQi9IcEM7RUFDQSxnQjNCN0UwQjtFMkI4RTFCLGMzQnBXTztFMkJxV1A7RVQ3V0EseUJsQkdPO0UyQjRXUDtFcEJuV0E7QVoyaUpKOztBZ0M3cklBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENnc0lGO0FnQzlySUU7RUFDRTtBaENnc0lKO0FnQzVySUk7RUFBMEIsZ0UzQm1PZTtBTDQ5SDdDO0FnQzlySUk7RUFBMEIsZ0UzQmtPZTtBTCs5SDdDO0FnQ2hzSUk7RUFBMEIsZ0UzQmlPZTtBTGsrSDdDO0FnQ2hzSUU7RUFDRTtBaENrc0lKO0FnQy9ySUU7RUFDRSxXM0JtTnlDO0UyQmxOekMsWTNCa055QztFMkJqTnpDO0VUbFpBLHlCbEJvUDBCO0UyQmdLMUIsUzNCa055QztFTzFsQnpDO0VTRkUsNEdXNllGO0VBQ0E7QWhDZ3NJSjtBcUIxa0pNO0VXaVlKO0lYaFlNO0VyQjZrSk47QUFDRjtBZ0Nuc0lJO0VUMVpBLHlCbEIybUJ5QztBTHEvSDdDO0FnQ2pzSUU7RUFDRSxXM0I0TGdDO0UyQjNMaEMsYzNCNExnQztFMkIzTGhDO0VBQ0EsZTNCMkxnQztFMkIxTGhDLHlCM0JoYU87RTJCaWFQO0VwQnpaQTtBWjZsSko7QWdDL3JJRTtFQUNFLFczQndMeUM7RTJCdkx6QyxZM0J1THlDO0VrQm5tQnpDLHlCbEJvUDBCO0UyQjBMMUIsUzNCd0x5QztFTzFsQnpDO0VTRkUsNEdXdWFGO0VBQ0E7QWhDZ3NJSjtBcUJwbUpNO0VXNFpKO0lYM1pNO0VyQnVtSk47QUFDRjtBZ0Nuc0lJO0VUcGJBLHlCbEIybUJ5QztBTCtnSTdDO0FnQ2pzSUU7RUFDRSxXM0JrS2dDO0UyQmpLaEMsYzNCa0tnQztFMkJqS2hDO0VBQ0EsZTNCaUtnQztFMkJoS2hDLHlCM0IxYk87RTJCMmJQO0VwQm5iQTtBWnVuSko7QWdDL3JJRTtFQUNFLFczQjhKeUM7RTJCN0p6QyxZM0I2SnlDO0UyQjVKekM7RUFDQSxvQjNCdEUwQjtFMkJ1RTFCLG1CM0J2RTBCO0VrQmxZMUIseUJsQm9QMEI7RTJCdU4xQixTM0IySnlDO0VPMWxCekM7RVNGRSw0R1dvY0Y7RUFDQTtBaENnc0lKO0FxQmpvSk07RVdzYko7SVhyYk07RXJCb29KTjtBQUNGO0FnQ25zSUk7RVRqZEEseUJsQjJtQnlDO0FMNGlJN0M7QWdDanNJRTtFQUNFLFczQnFJZ0M7RTJCcEloQyxjM0JxSWdDO0UyQnBJaEM7RUFDQSxlM0JvSWdDO0UyQm5JaEM7RUFDQTtFQUNBO0FoQ21zSUo7QWdDL3JJRTtFQUNFLHlCM0I5ZE87RU9RUDtBWndwSko7QWdDOXJJRTtFQUNFO0VBQ0EseUIzQnBlTztFT1FQO0FaNnBKSjtBZ0M1cklJO0VBQ0UseUIzQnhlSztBTHNxSlg7QWdDM3JJSTtFQUNFO0FoQzZySU47QWdDMXJJSTtFQUNFLHlCM0JoZks7QUw0cUpYO0FnQ3pySUk7RUFDRTtBaEMycklOO0FnQ3hySUk7RUFDRSx5QjNCeGZLO0FMa3JKWDs7QWdDcnJJQTs7O0VYemZNLDRHVzRmSjtBaEN3cklGO0FxQmhySk07RVdxZk47OztJWHBmUTtFckJxckpOO0FBQ0Y7O0FpQ3RzSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQ3lzSkY7O0FpQ3RzSkE7RUFDRTtFQUNBO0FqQ3lzSkY7QU94c0pFO0UwQkdFO0FqQ3dzSko7QWlDcHNKRTtFQUNFLGM1QlhPO0U0QllQO0VBQ0E7QWpDc3NKSjs7QWlDOXJKQTtFQUNFO0FqQ2lzSkY7QWlDL3JKRTtFQUNFO0VBQ0E7RXJCWkE7RUFDQTtBWjhzSko7QU8xdEpFO0UwQjJCSSxxQzVCbXBCOEI7QUwraUlwQztBaUMvckpJO0VBQ0UsYzVCbENLO0U0Qm1DTDtFQUNBO0FqQ2lzSk47QWlDN3JKRTs7RUFFRSxjNUJ6Q087RTRCMENQLHNCNUJqRE87RTRCa0RQLGtDNUJ3b0JnQztBTHVqSXBDO0FpQzVySkU7RUFFRTtFckJuQ0E7RUFDQTtBWml1Sko7O0FpQ25ySkU7RXJCeERFO0FaK3VKSjtBaUNuckpFOztFQUVFLFc1QnpFTztFNEIwRVAseUI1QnlLMEI7QUw0Z0o5Qjs7QWlDM3FKRTs7RUFFRTtFQUNBO0FqQzhxSko7O0FpQ3pxSkU7O0VBRUU7RUFDQTtFQUNBO0FqQzRxSko7O0FpQ2xxSkU7RUFDRTtBakNxcUpKO0FpQ25xSkU7RUFDRTtBakNxcUpKOztBa0N6d0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzR3SkY7QWtDeHdKRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxDK3dKSjtBa0MzdkpBO0VBQ0U7RUFDQSxzQjdCaXFCa0M7RTZCaHFCbEMseUI3QmdxQmtDO0U2Qi9wQmxDLGtCN0JnRk87RUNSSCxrQkF0Q2E7RTRCaENqQjtFQUNBO0FsQzZ2SkY7QU92eUpFO0UyQjZDRTtBbEM2dkpKOztBa0NwdkpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1dkpGO0FrQ3J2SkU7RUFDRTtFQUNBO0FsQ3V2Sko7QWtDcHZKRTtFQUNFO0VBQ0E7QWxDc3ZKSjs7QWtDN3VKQTtFQUNFO0VBQ0EsbUI3QndsQmtDO0U2QnZsQmxDLHNCN0J1bEJrQztBTHlwSXBDOztBa0NwdUpBO0VBQ0U7RUFDQTtFQUdBO0FsQ3F1SkY7O0FrQ2p1SkE7RUFDRTtFNUJTSSxrQkF0Q2E7RTRCK0JqQjtFQUNBO0VBQ0E7RXRCeEdFO0FaNjBKSjtBTy8wSkU7RTJCOEdFO0FsQ291Sko7O0FrQzl0SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDaXVKRjs7QWtDOXRKQTtFQUNFLGdCN0Ira0JrQztFNkI5a0JsQztBbENpdUpGOztBZ0J2eUpJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFbEM4dEpSO0FBQ0Y7QWdCaDBKSTtFa0I2RkE7SUFvQkk7SUFDQTtFbENtdEpOO0VrQ2p0Sk07SUFDRTtFbENtdEpSO0VrQ2p0SlE7SUFDRTtFbENtdEpWO0VrQ2h0SlE7SUFDRSxxQjdCd2hCd0I7STZCdmhCeEIsb0I3QnVoQndCO0VMMnJJbEM7RWtDN3NKTTs7Ozs7O0lBQ0U7RWxDb3RKUjtFa0N0c0pNO0lBQ0U7RWxDd3NKUjtFa0Nyc0pNO0lBQ0U7SUFHQTtFbENxc0pSO0VrQ2xzSk07SUFDRTtFbENvc0pSO0FBQ0Y7QWdCcjFKSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RWxDMndKUjtBQUNGO0FnQjcySkk7RWtCNkZBO0lBb0JJO0lBQ0E7RWxDZ3dKTjtFa0M5dkpNO0lBQ0U7RWxDZ3dKUjtFa0M5dkpRO0lBQ0U7RWxDZ3dKVjtFa0M3dkpRO0lBQ0UscUI3QndoQndCO0k2QnZoQnhCLG9CN0J1aEJ3QjtFTHd1SWxDO0VrQzF2Sk07Ozs7OztJQUNFO0VsQ2l3SlI7RWtDbnZKTTtJQUNFO0VsQ3F2SlI7RWtDbHZKTTtJQUNFO0lBR0E7RWxDa3ZKUjtFa0MvdUpNO0lBQ0U7RWxDaXZKUjtBQUNGO0FnQmw0Skk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VsQ3d6SlI7QUFDRjtBZ0IxNUpJO0VrQjZGQTtJQW9CSTtJQUNBO0VsQzZ5Sk47RWtDM3lKTTtJQUNFO0VsQzZ5SlI7RWtDM3lKUTtJQUNFO0VsQzZ5SlY7RWtDMXlKUTtJQUNFLHFCN0J3aEJ3QjtJNkJ2aEJ4QixvQjdCdWhCd0I7RUxxeElsQztFa0N2eUpNOzs7Ozs7SUFDRTtFbEM4eUpSO0VrQ2h5Sk07SUFDRTtFbENreUpSO0VrQy94Sk07SUFDRTtJQUdBO0VsQyt4SlI7RWtDNXhKTTtJQUNFO0VsQzh4SlI7QUFDRjtBZ0IvNkpJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFbENxMkpSO0FBQ0Y7QWdCdjhKSTtFa0I2RkE7SUFvQkk7SUFDQTtFbEMwMUpOO0VrQ3gxSk07SUFDRTtFbEMwMUpSO0VrQ3gxSlE7SUFDRTtFbEMwMUpWO0VrQ3YxSlE7SUFDRSxxQjdCd2hCd0I7STZCdmhCeEIsb0I3QnVoQndCO0VMazBJbEM7RWtDcDFKTTs7Ozs7O0lBQ0U7RWxDMjFKUjtFa0M3MEpNO0lBQ0U7RWxDKzBKUjtFa0M1MEpNO0lBQ0U7SUFHQTtFbEM0MEpSO0VrQ3owSk07SUFDRTtFbEMyMEpSO0FBQ0Y7QWtDNTRKSTtFQW9CSTtFQUNBO0FsQzIzSlI7QWtDOTRKUTs7Ozs7O0VBQ0U7RUFDQTtBbENxNUpWO0FrQ2w0SlE7RUFDRTtBbENvNEpWO0FrQ2w0SlU7RUFDRTtBbENvNEpaO0FrQ2o0SlU7RUFDRSxxQjdCd2hCd0I7RTZCdmhCeEIsb0I3QnVoQndCO0FMNDJJcEM7QWtDOTNKUTs7Ozs7O0VBQ0U7QWxDcTRKVjtBa0N2M0pRO0VBQ0U7QWxDeTNKVjtBa0N0M0pRO0VBQ0U7RUFHQTtBbENzM0pWO0FrQ24zSlE7RUFDRTtBbENxM0pWOztBa0N2MkpFO0VBQ0UseUI3QmdnQmdDO0FMMDJJcEM7QU9sa0tFO0UyQjJOSSx5QjdCNmY4QjtBTDYySXBDO0FrQ3IySkk7RUFDRSx5QjdCcWY4QjtBTGszSXBDO0FPeGtLRTtFMkJvT00seUI3Qm1mNEI7QUxvM0lwQztBa0NwMkpNO0VBQ0UseUI3QmlmNEI7QUxxM0lwQztBa0NsMkpJOzs7O0VBSUUseUI3QndlOEI7QUw0M0lwQztBa0NoMkpFO0VBQ0UseUI3QmllZ0M7RTZCaGVoQyxnQzdCcWVnQztBTDYzSXBDO0FrQy8xSkU7RUFDRTtBbENpMkpKO0FrQzkxSkU7RUFDRSx5QjdCd2RnQztBTHc0SXBDO0FrQy8xSkk7RUFDRSx5QjdCd2Q4QjtBTHk0SXBDO0FPam1LRTtFMkJtUU0seUI3QnFkNEI7QUw0NElwQzs7QWtDejFKRTtFQUNFLFc3QnJSTztBTGluS1g7QU94bUtFO0UyQitRSSxXN0J4Uks7QUxvbktYO0FrQ3YxSkk7RUFDRSwrQjdCMGI4QjtBTCs1SXBDO0FPOW1LRTtFMkJ3Uk0sZ0M3QndiNEI7QUxpNklwQztBa0N0MUpNO0VBQ0UsZ0M3QnNiNEI7QUxrNklwQztBa0NwMUpJOzs7O0VBSUUsVzdCN1NLO0FMbW9LWDtBa0NsMUpFO0VBQ0UsK0I3QnNhZ0M7RTZCcmFoQyxzQzdCMGFnQztBTDA2SXBDO0FrQ2oxSkU7RUFDRTtBbENtMUpKO0FrQ2gxSkU7RUFDRSwrQjdCNlpnQztBTHE3SXBDO0FrQ2oxSkk7RUFDRSxXN0I3VEs7QUxncEtYO0FPdm9LRTtFMkJ1VE0sVzdCaFVHO0FMbXBLWDs7QW1DdHBLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQjlCSlM7RThCS1Q7RUFDQTtFdkJLRTtBWm9wS0o7QW1DdHBLRTtFQUNFO0VBQ0E7QW5Dd3BLSjtBbUNycEtFO0VBQ0U7RUFDQTtBbkN1cEtKO0FtQ3JwS0k7RUFDRTtFdkJDRjtFQUNBO0FadXBLSjtBbUNycEtJO0VBQ0U7RXZCVUY7RUFDQTtBWjhvS0o7QW1DbHBLRTs7RUFFRTtBbkNvcEtKOztBbUNocEtBO0VBR0U7RUFHQTtFQUNBLGdCOUI4d0JrQztBTGk0SXBDOztBbUMzb0tBO0VBQ0Usc0I5Qnd3QmtDO0FMczRJcEM7O0FtQzNvS0E7RUFDRTtFQUNBO0FuQzhvS0Y7O0FtQzNvS0E7RUFDRTtBbkM4b0tGOztBT25zS0U7RTRCMERFO0FuQzZvS0o7QW1DMW9LRTtFQUNFLG9COUJ1dkJnQztBTHE1SXBDOztBbUNwb0tBO0VBQ0U7RUFDQTtFQUVBLHFDOUJndkJrQztFOEIvdUJsQztBbkNzb0tGO0FtQ3BvS0U7RXZCdkVFO0FaOHNLSjs7QW1DbG9LQTtFQUNFO0VBRUEscUM5QnF1QmtDO0U4QnB1QmxDO0FuQ29vS0Y7QW1DbG9LRTtFdkJsRkU7QVp1dEtKOztBbUMzbktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5DOG5LRjs7QW1DM25LQTtFQUNFO0VBQ0E7QW5DOG5LRjs7QW1DMW5LQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjlCMnNCa0M7RU8xekJoQztBWjZ1S0o7O0FtQzFuS0E7OztFQUdFO0VBQ0E7QW5DNm5LRjs7QW1DMW5LQTs7RXZCakhJO0VBQ0E7QVpndktKOztBbUMzbktBOztFdkJ4R0k7RUFDQTtBWnd1S0o7O0FtQ3huS0U7RUFDRSxtQjlCbXJCZ0M7QUx3OElwQztBZ0IxdEtJO0VtQjZGSjtJQU1JO0lBQ0E7SUFDQTtJQUNBO0VuQzJuS0Y7RW1Dem5LRTtJQUVFO0lBQ0Esa0I5QnVxQjhCO0k4QnRxQjlCO0lBQ0EsaUI5QnFxQjhCO0VMcTlJbEM7QUFDRjs7QW1DOW1LRTtFQUNFLG1COUJ1cEJnQztBTDA5SXBDO0FnQjV1S0k7RW1CdUhKO0lBUUk7SUFDQTtFbkNpbktGO0VtQzltS0U7SUFFRTtJQUNBO0VuQyttS0o7RW1DN21LSTtJQUNFO0lBQ0E7RW5DK21LTjtFbUMxbUtNO0l2QnpLSjtJQUNBO0Vac3hLRjtFbUMzbUtROztJQUdFO0VuQzRtS1Y7RW1DMW1LUTs7SUFHRTtFbkMybUtWO0VtQ3ZtS007SXZCMUtKO0lBQ0E7RVpveEtGO0VtQ3htS1E7O0lBR0U7RW5DeW1LVjtFbUN2bUtROztJQUdFO0VuQ3dtS1Y7QUFDRjs7QW1DM2xLRTtFQUNFLHNCOUI0a0JnQztBTGtoSnBDO0FnQnR4S0k7RW1Cc0xKO0lBTUksZTlCeWxCZ0M7SThCeGxCaEMsbUI5QnlsQmdDO0k4QnhsQmhDO0lBQ0E7RW5DOGxLRjtFbUM1bEtFO0lBQ0U7SUFDQTtFbkM4bEtKO0FBQ0Y7O0FtQ3JsS0E7RUFDRTtBbkN3bEtGO0FtQ3RsS0U7RUFDRTtBbkN3bEtKO0FtQ3RsS0k7RUFDRTtFdkJ2T0Y7RUFDQTtBWmcwS0o7QW1DdGxLSTtFdkJ6UEE7RUFDQTtBWmsxS0o7QW1DdGxLSTtFdkJ0UUE7RXVCd1FFO0FuQ3dsS047O0FvQ2wzS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQi9CbWlDa0M7RStCamlDbEM7RUFDQSx5Qi9CRVM7RU9TUDtBWjAyS0o7O0FvQy8yS0U7RUFDRSxvQi9CdWhDZ0M7QUwyMUlwQztBb0NoM0tJO0VBQ0U7RUFDQSxxQi9CbWhDOEI7RStCbGhDOUIsYy9CTks7RStCT0w7QXBDazNLTjtBb0N4MktFO0VBQ0U7QXBDMDJLSjtBb0N2MktFO0VBQ0U7QXBDeTJLSjtBb0N0MktFO0VBQ0UsYy9CMUJPO0FMazRLWDs7QXFDLzRLQTtFQUNFO0U1QkdBO0VBQ0E7RUdhRTtBWm80S0o7O0FxQ2g1S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGlCaENteEJrQztFZ0NseEJsQyxjaENtS3dDO0VnQ2pLeEMsc0JoQ1BTO0VnQ1FUO0FyQ2s1S0Y7QXFDaDVLRTtFQUNFO0VBQ0EsY2hDOEpzQztFZ0M3SnRDO0VBQ0EseUJoQ1pPO0VnQ2FQLHFCaENaTztBTDg1S1g7QXFDLzRLRTtFQUNFO0VBQ0EsVWhDMndCZ0M7RWdDMXdCaEMsZ0RoQzhXMEI7QUxtaUs5Qjs7QXFDMzRLSTtFQUNFO0V6QmFGO0VBQ0E7QVprNEtKO0FxQzM0S0k7RXpCTkE7RUFDQTtBWm81S0o7QXFDMTRLRTtFQUNFO0VBQ0EsV2hDeENPO0VnQ3lDUCx5QmhDME0wQjtFZ0N6TTFCLHFCaEN5TTBCO0FMbXNLOUI7QXFDejRLRTtFQUNFLGNoQ3hDTztFZ0N5Q1A7RUFFQTtFQUNBLHNCaENsRE87RWdDbURQLHFCaENoRE87QUwwN0tYOztBc0NqOEtFO0VBQ0U7RWhDMkhFLGtCQXRDYTtFZ0NuRmYsZ0JqQ21PMEI7QUxpdUs5QjtBc0MvN0tNO0UxQnFDRjtFQUNBO0FaNjVLSjtBc0M5N0tNO0UxQmtCRjtFQUNBO0FaKzZLSjs7QXNDLzhLRTtFQUNFO0VoQzJIRSxtQkF0Q2E7RWdDbkZmLGdCakNvTzBCO0FMOHVLOUI7QXNDNzhLTTtFMUJxQ0Y7RUFDQTtBWjI2S0o7QXNDNThLTTtFMUJrQkY7RUFDQTtBWjY3S0o7O0F1QzM5S0E7RUFDRTtFQUNBO0VqQ2lFRTtFaUMvREYsZ0JsQ3VSNEI7RWtDdFI1QjtFQUNBO0VBQ0E7RUFDQTtFM0JLRTtFU0ZFLHFJa0JESjtBdkM4OUtGO0FxQno5S007RWtCZk47SWxCZ0JRO0VyQjQ5S047QUFDRjtBT2wrS0U7RWdDR0k7QXZDaytLTjs7QXVDNzlLRTtFQUNFO0F2Q2crS0o7O0F1QzM5S0E7RUFDRTtFQUNBO0F2Qzg5S0Y7O0F1Q3Y5S0E7RUFDRSxvQmxDKzNCa0M7RWtDOTNCbEMsbUJsQzgzQmtDO0VPcjVCaEM7QVprL0tKOztBdUNsOUtFO0VDakRBO0VBQ0EseUJuQzBFYTtBTDY3S2Y7QU96L0tFO0VpQ1ZJO0VBQ0E7QXhDc2dMTjtBd0NuZ0xJO0VBRUU7RUFDQTtBeENvZ0xOOztBdUMvOUtFO0VDakRBO0VBQ0EseUJuQzBFYTtBTDA4S2Y7QU90Z0xFO0VpQ1ZJO0VBQ0E7QXhDbWhMTjtBd0NoaExJO0VBRUU7RUFDQTtBeENpaExOOztBdUM1K0tFO0VDakRBO0VBQ0EseUJuQzBFYTtBTHU5S2Y7QU9uaExFO0VpQ1ZJO0VBQ0E7QXhDZ2lMTjtBd0M3aExJO0VBRUU7RUFDQTtBeEM4aExOOztBdUN6L0tFO0VDakRBO0VBQ0EseUJuQzBFYTtBTG8rS2Y7QU9oaUxFO0VpQ1ZJO0VBQ0E7QXhDNmlMTjtBd0MxaUxJO0VBRUU7RUFDQTtBeEMyaUxOOztBdUN0Z0xFO0VDakRBO0VBQ0EseUJuQzBFYTtBTGkvS2Y7QU83aUxFO0VpQ1ZJO0VBQ0E7QXhDMGpMTjtBd0N2akxJO0VBRUU7RUFDQTtBeEN3akxOOztBdUNuaExFO0VDakRBO0VBQ0EseUJuQzBFYTtBTDgvS2Y7QU8xakxFO0VpQ1ZJO0VBQ0E7QXhDdWtMTjtBd0Nwa0xJO0VBRUU7RUFDQTtBeENxa0xOOztBdUNoaUxFO0VDakRBO0VBQ0EseUJuQzBFYTtBTDJnTGY7QU92a0xFO0VpQ1ZJO0VBQ0E7QXhDb2xMTjtBd0NqbExJO0VBRUU7RUFDQTtBeENrbExOOztBdUM3aUxFO0VDakRBO0VBQ0EseUJuQzBFYTtBTHdoTGY7QU9wbExFO0VpQ1ZJO0VBQ0E7QXhDaW1MTjtBd0M5bExJO0VBRUU7RUFDQTtBeEMrbExOOztBeUM1bUxBO0VBQ0U7RUFDQSxtQnBDdXpCa0M7RW9DcnpCbEMseUJwQ0tTO0VPU1A7QVppbUxKO0FnQnZqTEk7RXlCNURKO0lBUUk7RXpDK21MRjtBQUNGOztBeUM1bUxBO0VBQ0U7RUFDQTtFN0JJRTtBWjRtTEo7O0EwQzFuTEE7RUFDRTtFQUNBO0VBQ0EsbUJyQ3U5QmtDO0VxQ3Q5QmxDO0U5QlVFO0Fab25MSjs7QTBDem5MQTtFQUVFO0ExQzJuTEY7O0EwQ3ZuTEE7RUFDRSxnQnJDNFE0QjtBTDgySzlCOztBMENsbkxBO0VBQ0U7QTFDcW5MRjtBMENsbkxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQ29uTEo7O0EwQzFtTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDK21MdkU7QTJDM3BMRTtFQUNFO0EzQzZwTEo7QTJDMXBMRTtFQUNFO0EzQzRwTEo7O0EwQ3RuTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDMm5MdkU7QTJDdnFMRTtFQUNFO0EzQ3lxTEo7QTJDdHFMRTtFQUNFO0EzQ3dxTEo7O0EwQ2xvTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDdW9MdkU7QTJDbnJMRTtFQUNFO0EzQ3FyTEo7QTJDbHJMRTtFQUNFO0EzQ29yTEo7O0EwQzlvTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDbXBMdkU7QTJDL3JMRTtFQUNFO0EzQ2lzTEo7QTJDOXJMRTtFQUNFO0EzQ2dzTEo7O0EwQzFwTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDK3BMdkU7QTJDM3NMRTtFQUNFO0EzQzZzTEo7QTJDMXNMRTtFQUNFO0EzQzRzTEo7O0EwQ3RxTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDMnFMdkU7QTJDdnRMRTtFQUNFO0EzQ3l0TEo7QTJDdHRMRTtFQUNFO0EzQ3d0TEo7O0EwQ2xyTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDdXJMdkU7QTJDbnVMRTtFQUNFO0EzQ3F1TEo7QTJDbHVMRTtFQUNFO0EzQ291TEo7O0EwQzlyTEU7RUMvQ0EsY0RnRHFIO0VuQjNDbkgseUJtQjJDdUI7RUM5Q3pCLHFCRDhDcUU7QTFDbXNMdkU7QTJDL3VMRTtFQUNFO0EzQ2l2TEo7QTJDOXVMRTtFQUNFO0EzQ2d2TEo7O0E0Q3h2TEU7RUFDRTtJQUFPO0U1QzR2TFQ7RTRDM3ZMRTtJQUFLO0U1Qzh2TFA7QUFDRjtBNEMzdkxBO0VBQ0U7RUFDQSxZdkNnK0JrQztFdUMvOUJsQztFQUNBO0V0Q21ISSxrQkF0Q2E7RXNDM0VqQix5QnZDTFM7RU9TUDtBWjB2TEo7O0E0Q3p2TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFd2Q2pCUztFdUNrQlQ7RUFDQTtFQUNBLHlCdkNxOUJrQztFZ0JoK0I5QiwyQnVCWUo7QTVDNHZMRjtBcUJwd0xNO0V1QkROO0l2QkVRO0VyQnV3TE47QUFDRjs7QTRDOXZMQTtFckJZRTtFcUJWQTtBNUNpd0xGOztBNEM3dkxFO0VBQ0U7QTVDZ3dMSjtBNEM3dkxNO0VBSko7SUFLTTtFNUNnd0xOO0FBQ0Y7O0E2QzN5TEE7RUFDRTtFQUNBO0E3Qzh5TEY7O0E2QzN5TEE7RUFDRTtBN0M4eUxGOztBOENoekxBO0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RWxDUUU7QVoweUxKOztBOEN4eUxBO0VBQ0U7RUFDQSxjekNSUztFeUNTVDtBOUMyeUxGO0FPbHpMRTtFdUNXRTtFQUNBLGN6Q2RPO0V5Q2VQO0VBQ0EseUJ6Q3RCTztBTGcwTFg7QThDdnlMRTtFQUNFLGN6Q2xCTztFeUNtQlAseUJ6QzFCTztBTG0wTFg7O0E4Q2h5TEE7RUFDRTtFQUNBO0VBQ0E7RUFHQSxzQnpDM0NTO0V5QzRDVDtBOUNpeUxGO0E4Qy94TEU7RWxDMUJFO0VBQ0E7QVo0ekxKO0E4Qy94TEU7RWxDaEJFO0VBQ0E7QVprekxKO0E4Qy94TEU7RUFFRSxjekNsRE87RXlDbURQO0VBQ0Esc0J6QzFETztBTDAxTFg7QThDNXhMRTtFQUNFO0VBQ0EsV3pDaEVPO0V5Q2lFUCx5QnpDa0wwQjtFeUNqTDFCLHFCekNpTDBCO0FMNm1MOUI7QThDM3hMRTtFQUNFO0E5QzZ4TEo7QThDM3hMSTtFQUNFO0VBQ0EscUJ6QzJKd0I7QUxrb0w5Qjs7QThDL3dMSTtFQUNFO0E5Q2t4TE47QThDL3dMUTtFbEMxQko7RUFaQTtBWnl6TEo7QThDOXdMUTtFbEMzQ0o7RUFZQTtBWml6TEo7QThDN3dMUTtFQUNFO0E5Qyt3TFY7QThDNXdMUTtFQUNFLHFCekMwSG9CO0V5Q3pIcEI7QTlDOHdMVjtBOEM1d0xVO0VBQ0U7RUFDQSxzQnpDcUhrQjtBTHlwTDlCOztBZ0J6MExJO0U4Qm1DQTtJQUNFO0U5QzB5TEo7RThDdnlMTTtJbEMxQko7SUFaQTtFWmkxTEY7RThDdHlMTTtJbEMzQ0o7SUFZQTtFWnkwTEY7RThDcnlMTTtJQUNFO0U5Q3V5TFI7RThDcHlMTTtJQUNFLHFCekMwSG9CO0l5Q3pIcEI7RTlDc3lMUjtFOENweUxRO0lBQ0U7SUFDQSxzQnpDcUhrQjtFTGlyTDVCO0FBQ0Y7QWdCbDJMSTtFOEJtQ0E7SUFDRTtFOUNrMExKO0U4Qy96TE07SWxDMUJKO0lBWkE7RVp5MkxGO0U4Qzl6TE07SWxDM0NKO0lBWUE7RVppMkxGO0U4Qzd6TE07SUFDRTtFOUMrekxSO0U4QzV6TE07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0U5Qzh6TFI7RThDNXpMUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RUx5c0w1QjtBQUNGO0FnQjEzTEk7RThCbUNBO0lBQ0U7RTlDMDFMSjtFOEN2MUxNO0lsQzFCSjtJQVpBO0VaaTRMRjtFOEN0MUxNO0lsQzNDSjtJQVlBO0VaeTNMRjtFOENyMUxNO0lBQ0U7RTlDdTFMUjtFOENwMUxNO0lBQ0UscUJ6QzBIb0I7SXlDekhwQjtFOUNzMUxSO0U4Q3AxTFE7SUFDRTtJQUNBLHNCekNxSGtCO0VMaXVMNUI7QUFDRjtBZ0JsNUxJO0U4Qm1DQTtJQUNFO0U5Q2szTEo7RThDLzJMTTtJbEMxQko7SUFaQTtFWnk1TEY7RThDOTJMTTtJbEMzQ0o7SUFZQTtFWmk1TEY7RThDNzJMTTtJQUNFO0U5QysyTFI7RThDNTJMTTtJQUNFLHFCekMwSG9CO0l5Q3pIcEI7RTlDODJMUjtFOEM1MkxRO0lBQ0U7SUFDQSxzQnpDcUhrQjtFTHl2TDVCO0FBQ0Y7QThDajJMQTtFbENuSEk7QVp1OUxKO0E4Q2oyTEU7RUFDRTtBOUNtMkxKO0E4Q2oyTEk7RUFDRTtBOUNtMkxOOztBK0M1K0xFO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E5QzQxTDNDO0FPcCtMRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0EvQzgrTFI7QStDMytMTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTlDcTJMMUU7O0ErQzEvTEU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QTlDMDJMM0M7QU9sL0xFO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QS9DNC9MUjtBK0N6L0xNO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBOUNtM0wxRTs7QStDeGdNRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBOUN3M0wzQztBT2hnTUU7RXdDUE0sY0QrSWtFO0VDOUlsRTtBL0MwZ01SO0ErQ3ZnTU07RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0E5Q2k0TDFFOztBK0N0aE1FO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E5Q3M0TDNDO0FPOWdNRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0EvQ3doTVI7QStDcmhNTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTlDKzRMMUU7O0ErQ3BpTUU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QTlDbzVMM0M7QU81aE1FO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QS9Dc2lNUjtBK0NuaU1NO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBOUM2NUwxRTs7QStDbGpNRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBOUNrNkwzQztBTzFpTUU7RXdDUE0sY0QrSWtFO0VDOUlsRTtBL0Nvak1SO0ErQ2pqTU07RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0E5QzI2TDFFOztBK0Noa01FO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0E5Q2c3TDNDO0FPeGpNRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0EvQ2trTVI7QStDL2pNTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QTlDeTdMMUU7O0ErQzlrTUU7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QTlDODdMM0M7QU90a01FO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QS9DZ2xNUjtBK0M3a01NO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBOUN1OEwxRTs7QWdEL2xNQTtFQUNFO0UxQzhISSxpQkF0Q2E7RTBDdEZqQixnQjNDNlI0QjtFMkM1UjVCO0VBQ0EsVzNDWVM7RTJDWFQseUIzQ3NsQ2tDO0UyQ3JsQ2xDO0FoRGttTUY7QU83bE1FO0V5Q0RFLFczQ01PO0UyQ0xQO0FoRGltTUo7QU83bE1FO0V5Q0NJO0FoRCtsTU47O0FnRHBsTUE7RUFDRTtFQUNBO0VBQ0E7QWhEdWxNRjs7QWdEamxNQTtFQUNFO0FoRG9sTUY7O0FpRDFuTUE7RUFHRSxpQjVDeTRCa0M7RTRDeDRCbEMsZ0I1Q3c0QmtDO0VDN3dCOUIsbUJBdENhO0UyQ2xGakIsMkM1QzA0QmtDO0U0Q3o0QmxDO0VBQ0E7RUFDQSxnRDVDMjRCa0M7RTRDMTRCbEM7RXJDT0U7QVpvbk1KO0FpRHhuTUU7RUFDRSxzQjVDODNCZ0M7QUw0dktwQztBaUR2bk1FO0VBQ0U7QWpEeW5NSjtBaUR0bk1FO0VBQ0U7RUFDQTtBakR3bk1KO0FpRHJuTUU7RUFDRTtBakR1bk1KOztBaURubk1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYzVDdkJTO0U0Q3dCVCwyQzVDbTNCa0M7RTRDbDNCbEM7RUFDQTtFckNaRTtFQUNBO0FabW9NSjs7QWlEcG5NQTtFQUNFLGdCNUNpMkJrQztBTHN4S3BDOztBa0Q3cE1BO0VBRUU7QWxEK3BNRjtBa0Q3cE1FO0VBQ0U7RUFDQTtBbEQrcE1KOztBa0QxcE1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYTdDMnBCa0M7RTZDMXBCbEM7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBbEQycE1GOztBa0RwcE1BO0VBQ0U7RUFDQTtFQUNBLGM3Qys0QmtDO0U2Qzc0QmxDO0FsRHNwTUY7QWtEbnBNRTtFN0IzQkksbUM2QjRCRjtFQUNBLDhCN0NxNkJnQztBTGd2S3BDO0FxQjlxTU07RTZCdUJKO0k3QnRCTTtFckJpck1OO0FBQ0Y7QWtEeHBNRTtFQUNFLGU3Q202QmdDO0FMdXZLcEM7QWtEdHBNRTtFQUNFLHNCN0NnNkJnQztBTHd2S3BDOztBa0RwcE1BO0VBQ0U7RUFDQTtBbER1cE1GO0FrRHJwTUU7RUFDRTtFQUNBO0FsRHVwTUo7QWtEcHBNRTs7RUFFRTtBbERzcE1KO0FrRG5wTUU7RUFDRTtBbERxcE1KOztBa0RqcE1BO0VBQ0U7RUFDQTtFQUNBO0FsRG9wTUY7QWtEanBNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRG1wTUo7QWtEL29NRTtFQUNFO0VBQ0E7RUFDQTtBbERpcE1KO0FrRC9vTUk7RUFDRTtBbERpcE1OO0FrRDlvTUk7RUFDRTtBbERncE1OOztBa0Qxb01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBLHNCN0MzR1M7RTZDNEdUO0VBQ0E7RXRDbEdFO0VzQ3NHRjtBbER5b01GOztBa0Ryb01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYTdDK2lCa0M7RTZDOWlCbEM7RUFDQTtFQUNBLHNCN0NsSFM7QUwwdk1YO0FrRHJvTUU7RUFBUztBbER3b01YO0FrRHZvTUU7RUFBUyxZN0M2ekJ5QjtBTDYwS3BDOztBa0Ryb01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0Esa0I3QzJ6QmtDO0U2QzF6QmxDO0V0Q3RIRTtFQUNBO0FaK3ZNSjtBa0R2b01FO0VBQ0Usa0I3Q3N6QmdDO0U2Q3B6QmhDO0FsRHdvTUo7O0FrRG5vTUE7RUFDRTtFQUNBLGdCN0NzSTRCO0FMZ2dNOUI7O0FrRGpvTUE7RUFDRTtFQUdBO0VBQ0EsYTdDd3dCa0M7QUwwM0twQzs7QWtEOW5NQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdEN6SUU7RUFDQTtBWjJ3TUo7QWtEN25NRTtFQUNFO0FsRCtuTUo7O0FrRDFuTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRDZuTUY7O0FnQnB3TUk7RWtDNklGO0lBQ0UsZ0I3Q3F3QmdDO0k2Q3B3QmhDO0VsRDJuTUY7O0VrRHhuTUE7SUFDRTtFbEQybk1GO0VrRHpuTUU7SUFDRTtFbEQybk1KOztFa0R2bk1BO0lBQ0U7RWxEMG5NRjtFa0R4bk1FO0lBQ0U7SUFDQTtFbEQwbk1KOztFa0Rsbk1BO0lBQVksZ0I3QzZ1QnNCO0VMeTRLbEM7QUFDRjtBZ0I5eE1JO0VrQzJLRjs7SUFFRSxnQjdDcXVCZ0M7RUxpNUtsQztBQUNGO0FnQnB5TUk7RWtDa0xGO0lBQVksaUI3Qyt0QnNCO0VMdTVLbEM7QUFDRjtBbURwMk1BO0VBQ0U7RUFDQSxhOUMrcUJrQztFOEM5cUJsQztFQUNBLFM5QzIxQmtDO0UrQy8xQmxDLHFOL0NtUjRCO0UrQ2pSNUI7RUFDQSxnQi9DMlI0QjtFK0MxUjVCLGdCL0MrUjRCO0UrQzlSNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTlDZ0hJLG1CQXRDYTtFNkM5RWpCO0VBQ0E7QW5EZzNNRjtBbUQ5Mk1FO0VBQVMsWTlDKzBCeUI7QUxraUxwQztBbUQvMk1FO0VBQ0U7RUFDQTtFQUNBLGE5QyswQmdDO0U4QzkwQmhDLGM5QyswQmdDO0FMa2lMcEM7QW1ELzJNSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRGkzTU47O0FtRDUyTUE7RUFDRTtBbkQrMk1GO0FtRDcyTUU7RUFDRTtBbkQrMk1KO0FtRDcyTUk7RUFDRTtFQUNBO0VBQ0Esc0I5Q3ZCSztBTHM0TVg7O0FtRDEyTUE7RUFDRTtBbkQ2Mk1GO0FtRDMyTUU7RUFDRTtFQUNBLGE5Q2l6QmdDO0U4Q2h6QmhDLGM5Qyt5QmdDO0FMOGpMcEM7QW1EMzJNSTtFQUNFO0VBQ0E7RUFDQSx3QjlDdkNLO0FMbzVNWDs7QW1EeDJNQTtFQUNFO0FuRDIyTUY7QW1EejJNRTtFQUNFO0FuRDIyTUo7QW1EejJNSTtFQUNFO0VBQ0E7RUFDQSx5QjlDckRLO0FMZzZNWDs7QW1EdDJNQTtFQUNFO0FuRHkyTUY7QW1EdjJNRTtFQUNFO0VBQ0EsYTlDbXhCZ0M7RThDbHhCaEMsYzlDaXhCZ0M7QUx3bExwQztBbUR2Mk1JO0VBQ0U7RUFDQTtFQUNBLHVCOUNyRUs7QUw4Nk1YOztBbURwMU1BO0VBQ0UsZ0I5QzZ1QmtDO0U4QzV1QmxDO0VBQ0EsVzlDdkdTO0U4Q3dHVDtFQUNBLHNCOUMvRlM7RU9DUDtBWnM3TUo7O0FxRHg4TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhaEQ2cUJrQztFZ0Q1cUJsQztFQUNBLGdCaEQ2MkJrQztFK0NsM0JsQyxxTi9DbVI0QjtFK0NqUjVCO0VBQ0EsZ0IvQzJSNEI7RStDMVI1QixnQi9DK1I0QjtFK0M5UjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5Q2dISSxtQkF0Q2E7RStDN0VqQjtFQUNBLHNCaEROUztFZ0RPVDtFQUNBO0V6Q0dFO0FabTlNSjtBcURsOU1FO0VBQ0U7RUFDQTtFQUNBLFdoRDYyQmdDO0VnRDUyQmhDLGNoRDYyQmdDO0VnRDUyQmhDO0FyRG85TUo7QXFEbDlNSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEbTlNTjs7QXFEOThNQTtFQUNFLHFCaEQ4MUJrQztBTG1uTHBDO0FxRC84TUU7RUFDRTtBckRpOU1KO0FxRC84TUk7RUFDRTtFQUNBO0VBQ0EscUNoRHkxQjhCO0FMd25McEM7QXFEOThNSTtFQUNFLFdoRDBMd0I7RWdEekx4QjtFQUNBLHNCaEQ3Q0s7QUw2L01YOztBcUQzOE1BO0VBQ0UsbUJoRDAwQmtDO0FMb29McEM7QXFENThNRTtFQUNFO0VBQ0EsYWhEczBCZ0M7RWdEcjBCaEMsWWhEbzBCZ0M7RWdEbjBCaEM7QXJEODhNSjtBcUQ1OE1JO0VBQ0U7RUFDQTtFQUNBLHVDaERrMEI4QjtBTDRvTHBDO0FxRDM4TUk7RUFDRSxTaERtS3dCO0VnRGxLeEI7RUFDQSx3QmhEcEVLO0FMaWhOWDs7QXFEeDhNQTtFQUNFLGtCaERtekJrQztBTHdwTHBDO0FxRHo4TUU7RUFDRTtBckQyOE1KO0FxRHo4TUk7RUFDRTtFQUNBO0VBQ0Esd0NoRDh5QjhCO0FMNnBMcEM7QXFEeDhNSTtFQUNFLFFoRCtJd0I7RWdEOUl4QjtFQUNBLHlCaER4Rks7QUxraU5YO0FxRHI4TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdoRDB4QmdDO0VnRHp4QmhDO0VBQ0E7RUFDQTtBckR1OE1KOztBcURuOE1BO0VBQ0Usb0JoRG14QmtDO0FMbXJMcEM7QXFEcDhNRTtFQUNFO0VBQ0EsYWhEK3dCZ0M7RWdEOXdCaEMsWWhENndCZ0M7RWdENXdCaEM7QXJEczhNSjtBcURwOE1JO0VBQ0U7RUFDQTtFQUNBLHNDaEQyd0I4QjtBTDJyTHBDO0FxRG44TUk7RUFDRSxVaEQ0R3dCO0VnRDNHeEI7RUFDQSx1QmhEM0hLO0FMZ2tOWDs7QXFELzZNQTtFQUNFO0VBQ0E7RS9DM0JJLGVBdENhO0UrQ29FakIseUJoRDZ0QmtDO0VnRDV0QmxDO0V6Q25JRTtFQUNBO0FacWpOSjtBcURoN01FO0VBQ0U7QXJEazdNSjs7QXFEOTZNQTtFQUNFO0VBQ0EsY2hEeEpTO0FMeWtOWDs7QXNENWtOQTtFQUNFO0F0RCtrTkY7O0FzRDVrTkE7RUFDRTtBdEQra05GOztBc0Q1a05BO0VBQ0U7RUFDQTtFQUNBO0F0RCtrTkY7QXVEdG1ORTtFQUNFO0VBQ0E7RUFDQTtBdkR3bU5KOztBc0RobE5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQ2xCSSxzQ2lDbUJKO0F0RG1sTkY7QXFCbG1OTTtFaUNRTjtJakNQUTtFckJxbU5OO0FBQ0Y7O0FzRHJsTkE7OztFQUdFO0F0RHdsTkY7O0FzRHJsTkE7O0VBRUU7QXREd2xORjs7QXNEcmxOQTs7RUFFRTtBdER3bE5GOztBc0Qva05FO0VBQ0U7RUFDQTtFQUNBO0F0RGtsTko7QXNEL2tORTs7O0VBR0U7RUFDQTtBdERpbE5KO0FzRDlrTkU7O0VBRUU7RUFDQTtFakM1REUsMkJpQzZERjtBdERnbE5KO0FxQnpvTk07RWlDcURKOztJakNwRE07RXJCNm9OTjtBQUNGOztBc0Q3a05BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWpEbzlCbUM7RWlEbjlCbkMsV2pEMUZTO0VpRDJGVDtFQUNBLFlqRGs5Qm1DO0VnQnJpQy9CLDhCaUNvRko7QXREK2tORjtBcUIvcE5NO0VpQ2tFTjs7SWpDakVRO0VyQm1xTk47QUFDRjtBT3pxTkU7OztFK0N3RkUsV2pEakdPO0VpRGtHUDtFQUNBO0VBQ0EsWWpEMjhCaUM7QUwyb0xyQzs7QXNEbmxOQTtFQUNFO0F0RHNsTkY7O0FzRGpsTkE7RUFDRTtBdERvbE5GOztBc0Q3a05BOztFQUVFO0VBQ0EsV2pEbzhCbUM7RWlEbjhCbkMsWWpEbThCbUM7RWlEbDhCbkM7QXREZ2xORjs7QXNEOWtOQTtFQUNFO0F0RGlsTkY7O0FzRC9rTkE7RUFDRTtBdERrbE5GOztBc0R6a05BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCakQwNUJtQztFaUR6NUJuQyxnQmpEeTVCbUM7RWlEeDVCbkM7QXREMmtORjtBc0R6a05FO0VBQ0U7RUFDQTtFQUNBLFdqRHc1QmlDO0VpRHY1QmpDLFdqRHc1QmlDO0VpRHY1QmpDLGlCakR5NUJpQztFaUR4NUJqQyxnQmpEdzVCaUM7RWlEdjVCakM7RUFDQTtFQUNBLHNCakRoS087RWlEaUtQO0VBRUE7RUFDQTtFQUNBO0VqQzVKRSw2QmlDNkpGO0F0RDBrTko7QXFCbnVOTTtFaUMwSUo7SWpDeklNO0VyQnN1Tk47QUFDRjtBc0Q1a05FO0VBQ0U7QXREOGtOSjs7QXNEcmtOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pEM0xTO0VpRDRMVDtBdER3a05GOztBd0R2d05BO0VBQ0U7SUFBSztFeEQyd05MO0FBQ0Y7QXdEendOQTtFQUNFO0VBQ0EsV25Eb2tDc0I7RW1EbmtDdEIsWW5EbWtDc0I7RW1EbGtDdEI7RUFDQTtFQUNBO0VBRUE7RUFDQTtBeEQwd05GOztBd0R2d05BO0VBQ0UsV25ENmpDd0I7RW1ENWpDeEIsWW5ENGpDd0I7RW1EM2pDeEIsbUJuRDZqQ3dCO0FMNnNMMUI7O0F3RG53TkE7RUFDRTtJQUNFO0V4RHN3TkY7RXdEcHdOQTtJQUNFO0lBQ0E7RXhEc3dORjtBQUNGO0F3RG53TkE7RUFDRTtFQUNBLFduRG9pQ3NCO0VtRG5pQ3RCLFluRG1pQ3NCO0VtRGxpQ3RCO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QXhEb3dORjs7QXdEandOQTtFQUNFLFduRDZoQ3dCO0VtRDVoQ3hCLFluRDRoQ3dCO0FMd3VMMUI7O0F3RGh3TkU7RUFDRTs7SUFFRTtFeERtd05KO0FBQ0Y7QXlEL3pOQTtFQUFxQjtBekRrME5yQjs7QXlEajBOQTtFQUFxQjtBekRxME5yQjs7QXlEcDBOQTtFQUFxQjtBekR3ME5yQjs7QXlEdjBOQTtFQUFxQjtBekQyME5yQjs7QXlEMTBOQTtFQUFxQjtBekQ4ME5yQjs7QXlENzBOQTtFQUFxQjtBekRpMU5yQjs7QTBEbjFORTtFQUNFO0ExRHMxTko7O0FPNTBORTs7O0VtRExJO0ExRHUxTk47O0EwRDcxTkU7RUFDRTtBMURnMk5KOztBT3QxTkU7OztFbURMSTtBMURpMk5OOztBMER2Mk5FO0VBQ0U7QTFEMDJOSjs7QU9oMk5FOzs7RW1ETEk7QTFEMjJOTjs7QTBEajNORTtFQUNFO0ExRG8zTko7O0FPMTJORTs7O0VtRExJO0ExRHEzTk47O0EwRDMzTkU7RUFDRTtBMUQ4M05KOztBT3AzTkU7OztFbURMSTtBMUQrM05OOztBMERyNE5FO0VBQ0U7QTFEdzROSjs7QU85M05FOzs7RW1ETEk7QTFEeTROTjs7QTBELzRORTtFQUNFO0ExRGs1Tko7O0FPeDRORTs7O0VtRExJO0ExRG01Tk47O0EwRHo1TkU7RUFDRTtBMUQ0NU5KOztBT2w1TkU7OztFbURMSTtBMUQ2NU5OOztBMkQ1NU5BO0VBQ0U7QTNEKzVORjs7QTJENTVOQTtFQUNFO0EzRCs1TkY7O0E0RDE2TkE7RUFBa0I7QTVEODZObEI7O0E0RDc2TkE7RUFBa0I7QTVEaTdObEI7O0E0RGg3TkE7RUFBa0I7QTVEbzdObEI7O0E0RG43TkE7RUFBa0I7QTVEdTdObEI7O0E0RHQ3TkE7RUFBa0I7QTVEMDdObEI7O0E0RHg3TkE7RUFBbUI7QTVENDdObkI7O0E0RDM3TkE7RUFBbUI7QTVEKzdObkI7O0E0RDk3TkE7RUFBbUI7QTVEazhObkI7O0E0RGo4TkE7RUFBbUI7QTVEcThObkI7O0E0RHA4TkE7RUFBbUI7QTVEdzhObkI7O0E0RHI4TkU7RUFDRTtBNUR3OE5KOztBNER6OE5FO0VBQ0U7QTVENDhOSjs7QTRENzhORTtFQUNFO0E1RGc5Tko7O0E0RGo5TkU7RUFDRTtBNURvOU5KOztBNERyOU5FO0VBQ0U7QTVEdzlOSjs7QTREejlORTtFQUNFO0E1RDQ5Tko7O0E0RDc5TkU7RUFDRTtBNURnK05KOztBNERqK05FO0VBQ0U7QTVEbytOSjs7QTREaCtOQTtFQUNFO0E1RG0rTkY7O0E0RDU5TkE7RUFDRTtBNUQrOU5GOztBNEQ1OU5BO0VBQ0U7QTVEKzlORjs7QTRENTlOQTtFQUNFO0VBQ0E7QTVEKzlORjs7QTRENTlOQTtFQUNFO0VBQ0E7QTVEKzlORjs7QTRENTlOQTtFQUNFO0VBQ0E7QTVEKzlORjs7QTRENTlOQTtFQUNFO0VBQ0E7QTVEKzlORjs7QTRENTlOQTtFQUNFO0E1RCs5TkY7O0E0RDU5TkE7RUFDRTtBNUQrOU5GOztBNEQ1OU5BO0VBQ0U7QTVEKzlORjs7QTRENTlOQTtFQUNFO0E1RCs5TkY7O0F1RHZpT0U7RUFDRTtFQUNBO0VBQ0E7QXZEMGlPSjs7QTZEbmlPTTtFQUF3QjtBN0R1aU85Qjs7QTZEdmlPTTtFQUF3QjtBN0QyaU85Qjs7QTZEM2lPTTtFQUF3QjtBN0QraU85Qjs7QTZEL2lPTTtFQUF3QjtBN0Rtak85Qjs7QTZEbmpPTTtFQUF3QjtBN0R1ak85Qjs7QTZEdmpPTTtFQUF3QjtBN0Qyak85Qjs7QTZEM2pPTTtFQUF3QjtBN0Qrak85Qjs7QTZEL2pPTTtFQUF3QjtBN0Rta085Qjs7QTZEbmtPTTtFQUF3QjtBN0R1a085Qjs7QWdCdGhPSTtFNkNqREU7SUFBd0I7RTdENGtPNUI7O0U2RDVrT0k7SUFBd0I7RTdEZ2xPNUI7O0U2RGhsT0k7SUFBd0I7RTdEb2xPNUI7O0U2RHBsT0k7SUFBd0I7RTdEd2xPNUI7O0U2RHhsT0k7SUFBd0I7RTdENGxPNUI7O0U2RDVsT0k7SUFBd0I7RTdEZ21PNUI7O0U2RGhtT0k7SUFBd0I7RTdEb21PNUI7O0U2RHBtT0k7SUFBd0I7RTdEd21PNUI7O0U2RHhtT0k7SUFBd0I7RTdENG1PNUI7QUFDRjtBZ0I1ak9JO0U2Q2pERTtJQUF3QjtFN0Rpbk81Qjs7RTZEam5PSTtJQUF3QjtFN0Rxbk81Qjs7RTZEcm5PSTtJQUF3QjtFN0R5bk81Qjs7RTZEem5PSTtJQUF3QjtFN0Q2bk81Qjs7RTZEN25PSTtJQUF3QjtFN0Rpb081Qjs7RTZEam9PSTtJQUF3QjtFN0Rxb081Qjs7RTZEcm9PSTtJQUF3QjtFN0R5b081Qjs7RTZEem9PSTtJQUF3QjtFN0Q2b081Qjs7RTZEN29PSTtJQUF3QjtFN0RpcE81QjtBQUNGO0FnQmptT0k7RTZDakRFO0lBQXdCO0U3RHNwTzVCOztFNkR0cE9JO0lBQXdCO0U3RDBwTzVCOztFNkQxcE9JO0lBQXdCO0U3RDhwTzVCOztFNkQ5cE9JO0lBQXdCO0U3RGtxTzVCOztFNkRscU9JO0lBQXdCO0U3RHNxTzVCOztFNkR0cU9JO0lBQXdCO0U3RDBxTzVCOztFNkQxcU9JO0lBQXdCO0U3RDhxTzVCOztFNkQ5cU9JO0lBQXdCO0U3RGtyTzVCOztFNkRsck9JO0lBQXdCO0U3RHNyTzVCO0FBQ0Y7QWdCdG9PSTtFNkNqREU7SUFBd0I7RTdEMnJPNUI7O0U2RDNyT0k7SUFBd0I7RTdEK3JPNUI7O0U2RC9yT0k7SUFBd0I7RTdEbXNPNUI7O0U2RG5zT0k7SUFBd0I7RTdEdXNPNUI7O0U2RHZzT0k7SUFBd0I7RTdEMnNPNUI7O0U2RDNzT0k7SUFBd0I7RTdEK3NPNUI7O0U2RC9zT0k7SUFBd0I7RTdEbXRPNUI7O0U2RG50T0k7SUFBd0I7RTdEdXRPNUI7O0U2RHZ0T0k7SUFBd0I7RTdEMnRPNUI7QUFDRjtBNkRsdE9BO0VBRUk7SUFBcUI7RTdEb3RPdkI7O0U2RHB0T0U7SUFBcUI7RTdEd3RPdkI7O0U2RHh0T0U7SUFBcUI7RTdENHRPdkI7O0U2RDV0T0U7SUFBcUI7RTdEZ3VPdkI7O0U2RGh1T0U7SUFBcUI7RTdEb3VPdkI7O0U2RHB1T0U7SUFBcUI7RTdEd3VPdkI7O0U2RHh1T0U7SUFBcUI7RTdENHVPdkI7O0U2RDV1T0U7SUFBcUI7RTdEZ3ZPdkI7O0U2RGh2T0U7SUFBcUI7RTdEb3ZPdkI7QUFDRjtBOEQxd09BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUQ0d09GO0E4RDF3T0U7RUFDRTtFQUNBO0E5RDR3T0o7QThEendPRTs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUQyd09KOztBOERsd09JO0VBQ0U7QTlEcXdPTjs7QThEdHdPSTtFQUNFO0E5RHl3T047O0E4RDF3T0k7RUFDRTtBOUQ2d09OOztBOEQ5d09JO0VBQ0U7QTlEaXhPTjs7QStEMXlPSTtFQUFnQztBL0Q4eU9wQzs7QStEN3lPSTtFQUFnQztBL0Rpek9wQzs7QStEaHpPSTtFQUFnQztBL0Rvek9wQzs7QStEbnpPSTtFQUFnQztBL0R1ek9wQzs7QStEcnpPSTtFQUE4QjtBL0R5ek9sQzs7QStEeHpPSTtFQUE4QjtBL0Q0ek9sQzs7QStEM3pPSTtFQUE4QjtBL0Qrek9sQzs7QStEOXpPSTtFQUE4QjtBL0RrME9sQzs7QStEajBPSTtFQUE4QjtBL0RxME9sQzs7QStEcDBPSTtFQUE4QjtBL0R3ME9sQzs7QStEdjBPSTtFQUE4QjtBL0QyME9sQzs7QStEMTBPSTtFQUE4QjtBL0Q4ME9sQzs7QStENTBPSTtFQUFvQztBL0RnMU94Qzs7QStELzBPSTtFQUFvQztBL0RtMU94Qzs7QStEbDFPSTtFQUFvQztBL0RzMU94Qzs7QStEcjFPSTtFQUFvQztBL0R5MU94Qzs7QStEeDFPSTtFQUFvQztBL0Q0MU94Qzs7QStEMTFPSTtFQUFpQztBL0Q4MU9yQzs7QStENzFPSTtFQUFpQztBL0RpMk9yQzs7QStEaDJPSTtFQUFpQztBL0RvMk9yQzs7QStEbjJPSTtFQUFpQztBL0R1Mk9yQzs7QStEdDJPSTtFQUFpQztBL0QwMk9yQzs7QStEeDJPSTtFQUFrQztBL0Q0Mk90Qzs7QStEMzJPSTtFQUFrQztBL0QrMk90Qzs7QStEOTJPSTtFQUFrQztBL0RrM090Qzs7QStEajNPSTtFQUFrQztBL0RxM090Qzs7QStEcDNPSTtFQUFrQztBL0R3M090Qzs7QStEdjNPSTtFQUFrQztBL0QyM090Qzs7QStEejNPSTtFQUFnQztBL0Q2M09wQzs7QStENTNPSTtFQUFnQztBL0RnNE9wQzs7QStELzNPSTtFQUFnQztBL0RtNE9wQzs7QStEbDRPSTtFQUFnQztBL0RzNE9wQzs7QStEcjRPSTtFQUFnQztBL0R5NE9wQzs7QStEeDRPSTtFQUFnQztBL0Q0NE9wQzs7QWdCaDRPSTtFK0NsREE7SUFBZ0M7RS9EdTdPbEM7O0UrRHQ3T0U7SUFBZ0M7RS9EMDdPbEM7O0UrRHo3T0U7SUFBZ0M7RS9ENjdPbEM7O0UrRDU3T0U7SUFBZ0M7RS9EZzhPbEM7O0UrRDk3T0U7SUFBOEI7RS9EazhPaEM7O0UrRGo4T0U7SUFBOEI7RS9EcThPaEM7O0UrRHA4T0U7SUFBOEI7RS9EdzhPaEM7O0UrRHY4T0U7SUFBOEI7RS9EMjhPaEM7O0UrRDE4T0U7SUFBOEI7RS9EODhPaEM7O0UrRDc4T0U7SUFBOEI7RS9EaTlPaEM7O0UrRGg5T0U7SUFBOEI7RS9EbzlPaEM7O0UrRG45T0U7SUFBOEI7RS9EdTlPaEM7O0UrRHI5T0U7SUFBb0M7RS9EeTlPdEM7O0UrRHg5T0U7SUFBb0M7RS9ENDlPdEM7O0UrRDM5T0U7SUFBb0M7RS9EKzlPdEM7O0UrRDk5T0U7SUFBb0M7RS9EaytPdEM7O0UrRGorT0U7SUFBb0M7RS9EcStPdEM7O0UrRG4rT0U7SUFBaUM7RS9EdStPbkM7O0UrRHQrT0U7SUFBaUM7RS9EMCtPbkM7O0UrRHorT0U7SUFBaUM7RS9ENitPbkM7O0UrRDUrT0U7SUFBaUM7RS9EZy9PbkM7O0UrRC8rT0U7SUFBaUM7RS9EbS9PbkM7O0UrRGovT0U7SUFBa0M7RS9EcS9PcEM7O0UrRHAvT0U7SUFBa0M7RS9Edy9PcEM7O0UrRHYvT0U7SUFBa0M7RS9EMi9PcEM7O0UrRDEvT0U7SUFBa0M7RS9EOC9PcEM7O0UrRDcvT0U7SUFBa0M7RS9EaWdQcEM7O0UrRGhnUEU7SUFBa0M7RS9Eb2dQcEM7O0UrRGxnUEU7SUFBZ0M7RS9Ec2dQbEM7O0UrRHJnUEU7SUFBZ0M7RS9EeWdQbEM7O0UrRHhnUEU7SUFBZ0M7RS9ENGdQbEM7O0UrRDNnUEU7SUFBZ0M7RS9EK2dQbEM7O0UrRDlnUEU7SUFBZ0M7RS9Ea2hQbEM7O0UrRGpoUEU7SUFBZ0M7RS9EcWhQbEM7QUFDRjtBZ0IxZ1BJO0UrQ2xEQTtJQUFnQztFL0Rna1BsQzs7RStEL2pQRTtJQUFnQztFL0Rta1BsQzs7RStEbGtQRTtJQUFnQztFL0Rza1BsQzs7RStEcmtQRTtJQUFnQztFL0R5a1BsQzs7RStEdmtQRTtJQUE4QjtFL0Qya1BoQzs7RStEMWtQRTtJQUE4QjtFL0Q4a1BoQzs7RStEN2tQRTtJQUE4QjtFL0RpbFBoQzs7RStEaGxQRTtJQUE4QjtFL0RvbFBoQzs7RStEbmxQRTtJQUE4QjtFL0R1bFBoQzs7RStEdGxQRTtJQUE4QjtFL0QwbFBoQzs7RStEemxQRTtJQUE4QjtFL0Q2bFBoQzs7RStENWxQRTtJQUE4QjtFL0RnbVBoQzs7RStEOWxQRTtJQUFvQztFL0RrbVB0Qzs7RStEam1QRTtJQUFvQztFL0RxbVB0Qzs7RStEcG1QRTtJQUFvQztFL0R3bVB0Qzs7RStEdm1QRTtJQUFvQztFL0QybVB0Qzs7RStEMW1QRTtJQUFvQztFL0Q4bVB0Qzs7RStENW1QRTtJQUFpQztFL0RnblBuQzs7RStEL21QRTtJQUFpQztFL0RtblBuQzs7RStEbG5QRTtJQUFpQztFL0RzblBuQzs7RStEcm5QRTtJQUFpQztFL0R5blBuQzs7RStEeG5QRTtJQUFpQztFL0Q0blBuQzs7RStEMW5QRTtJQUFrQztFL0Q4blBwQzs7RStEN25QRTtJQUFrQztFL0Rpb1BwQzs7RStEaG9QRTtJQUFrQztFL0Rvb1BwQzs7RStEbm9QRTtJQUFrQztFL0R1b1BwQzs7RStEdG9QRTtJQUFrQztFL0Qwb1BwQzs7RStEem9QRTtJQUFrQztFL0Q2b1BwQzs7RStEM29QRTtJQUFnQztFL0Qrb1BsQzs7RStEOW9QRTtJQUFnQztFL0RrcFBsQzs7RStEanBQRTtJQUFnQztFL0RxcFBsQzs7RStEcHBQRTtJQUFnQztFL0R3cFBsQzs7RStEdnBQRTtJQUFnQztFL0QycFBsQzs7RStEMXBQRTtJQUFnQztFL0Q4cFBsQztBQUNGO0FnQm5wUEk7RStDbERBO0lBQWdDO0UvRHlzUGxDOztFK0R4c1BFO0lBQWdDO0UvRDRzUGxDOztFK0Qzc1BFO0lBQWdDO0UvRCtzUGxDOztFK0Q5c1BFO0lBQWdDO0UvRGt0UGxDOztFK0RodFBFO0lBQThCO0UvRG90UGhDOztFK0RudFBFO0lBQThCO0UvRHV0UGhDOztFK0R0dFBFO0lBQThCO0UvRDB0UGhDOztFK0R6dFBFO0lBQThCO0UvRDZ0UGhDOztFK0Q1dFBFO0lBQThCO0UvRGd1UGhDOztFK0QvdFBFO0lBQThCO0UvRG11UGhDOztFK0RsdVBFO0lBQThCO0UvRHN1UGhDOztFK0RydVBFO0lBQThCO0UvRHl1UGhDOztFK0R2dVBFO0lBQW9DO0UvRDJ1UHRDOztFK0QxdVBFO0lBQW9DO0UvRDh1UHRDOztFK0Q3dVBFO0lBQW9DO0UvRGl2UHRDOztFK0RodlBFO0lBQW9DO0UvRG92UHRDOztFK0RudlBFO0lBQW9DO0UvRHV2UHRDOztFK0RydlBFO0lBQWlDO0UvRHl2UG5DOztFK0R4dlBFO0lBQWlDO0UvRDR2UG5DOztFK0QzdlBFO0lBQWlDO0UvRCt2UG5DOztFK0Q5dlBFO0lBQWlDO0UvRGt3UG5DOztFK0Rqd1BFO0lBQWlDO0UvRHF3UG5DOztFK0Rud1BFO0lBQWtDO0UvRHV3UHBDOztFK0R0d1BFO0lBQWtDO0UvRDB3UHBDOztFK0R6d1BFO0lBQWtDO0UvRDZ3UHBDOztFK0Q1d1BFO0lBQWtDO0UvRGd4UHBDOztFK0Qvd1BFO0lBQWtDO0UvRG14UHBDOztFK0RseFBFO0lBQWtDO0UvRHN4UHBDOztFK0RweFBFO0lBQWdDO0UvRHd4UGxDOztFK0R2eFBFO0lBQWdDO0UvRDJ4UGxDOztFK0QxeFBFO0lBQWdDO0UvRDh4UGxDOztFK0Q3eFBFO0lBQWdDO0UvRGl5UGxDOztFK0RoeVBFO0lBQWdDO0UvRG95UGxDOztFK0RueVBFO0lBQWdDO0UvRHV5UGxDO0FBQ0Y7QWdCNXhQSTtFK0NsREE7SUFBZ0M7RS9EazFQbEM7O0UrRGoxUEU7SUFBZ0M7RS9EcTFQbEM7O0UrRHAxUEU7SUFBZ0M7RS9EdzFQbEM7O0UrRHYxUEU7SUFBZ0M7RS9EMjFQbEM7O0UrRHoxUEU7SUFBOEI7RS9ENjFQaEM7O0UrRDUxUEU7SUFBOEI7RS9EZzJQaEM7O0UrRC8xUEU7SUFBOEI7RS9EbTJQaEM7O0UrRGwyUEU7SUFBOEI7RS9EczJQaEM7O0UrRHIyUEU7SUFBOEI7RS9EeTJQaEM7O0UrRHgyUEU7SUFBOEI7RS9ENDJQaEM7O0UrRDMyUEU7SUFBOEI7RS9EKzJQaEM7O0UrRDkyUEU7SUFBOEI7RS9EazNQaEM7O0UrRGgzUEU7SUFBb0M7RS9EbzNQdEM7O0UrRG4zUEU7SUFBb0M7RS9EdTNQdEM7O0UrRHQzUEU7SUFBb0M7RS9EMDNQdEM7O0UrRHozUEU7SUFBb0M7RS9ENjNQdEM7O0UrRDUzUEU7SUFBb0M7RS9EZzRQdEM7O0UrRDkzUEU7SUFBaUM7RS9EazRQbkM7O0UrRGo0UEU7SUFBaUM7RS9EcTRQbkM7O0UrRHA0UEU7SUFBaUM7RS9EdzRQbkM7O0UrRHY0UEU7SUFBaUM7RS9EMjRQbkM7O0UrRDE0UEU7SUFBaUM7RS9EODRQbkM7O0UrRDU0UEU7SUFBa0M7RS9EZzVQcEM7O0UrRC80UEU7SUFBa0M7RS9EbTVQcEM7O0UrRGw1UEU7SUFBa0M7RS9EczVQcEM7O0UrRHI1UEU7SUFBa0M7RS9EeTVQcEM7O0UrRHg1UEU7SUFBa0M7RS9ENDVQcEM7O0UrRDM1UEU7SUFBa0M7RS9EKzVQcEM7O0UrRDc1UEU7SUFBZ0M7RS9EaTZQbEM7O0UrRGg2UEU7SUFBZ0M7RS9EbzZQbEM7O0UrRG42UEU7SUFBZ0M7RS9EdTZQbEM7O0UrRHQ2UEU7SUFBZ0M7RS9EMDZQbEM7O0UrRHo2UEU7SUFBZ0M7RS9ENjZQbEM7O0UrRDU2UEU7SUFBZ0M7RS9EZzdQbEM7QUFDRjtBZ0UzOVBJO0VBQXdCO0FoRTg5UDVCOztBZ0U3OVBJO0VBQXdCO0FoRWkrUDVCOztBZ0VoK1BJO0VBQXdCO0FoRW8rUDVCOztBZ0JoN1BJO0VnRHREQTtJQUF3QjtFaEUyK1AxQjs7RWdFMStQRTtJQUF3QjtFaEU4K1AxQjs7RWdFNytQRTtJQUF3QjtFaEVpL1AxQjtBQUNGO0FnQjk3UEk7RWdEdERBO0lBQXdCO0VoRXcvUDFCOztFZ0V2L1BFO0lBQXdCO0VoRTIvUDFCOztFZ0UxL1BFO0lBQXdCO0VoRTgvUDFCO0FBQ0Y7QWdCMzhQSTtFZ0R0REE7SUFBd0I7RWhFcWdRMUI7O0VnRXBnUUU7SUFBd0I7RWhFd2dRMUI7O0VnRXZnUUU7SUFBd0I7RWhFMmdRMUI7QUFDRjtBZ0J4OVBJO0VnRHREQTtJQUF3QjtFaEVraFExQjs7RWdFamhRRTtJQUF3QjtFaEVxaFExQjs7RWdFcGhRRTtJQUF3QjtFaEV3aFExQjtBQUNGO0FpRTloUUU7RUFBeUI7QWpFaWlRM0I7O0FpRWppUUU7RUFBeUI7QWpFcWlRM0I7O0FpRXJpUUU7RUFBeUI7QWpFeWlRM0I7O0FrRXppUUU7RUFBc0I7QWxFNmlReEI7O0FrRTdpUUU7RUFBc0I7QWxFaWpReEI7O0FtRWhqUUU7RUFBeUI7QW5Fb2pRM0I7O0FtRXBqUUU7RUFBeUI7QW5Fd2pRM0I7O0FtRXhqUUU7RUFBeUI7QW5FNGpRM0I7O0FtRTVqUUU7RUFBeUI7QW5FZ2tRM0I7O0FtRWhrUUU7RUFBeUI7QW5Fb2tRM0I7O0FtRS9qUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE5RGdxQmtDO0FMazZPcEM7O0FtRS9qUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGE5RHdwQmtDO0FMMDZPcEM7O0FtRTlqUUU7RUFERjtJQUVJO0lBQ0E7SUFDQSxhOURncEJnQztFTGs3T2xDO0FBQ0Y7O0FvRTVsUUE7RUNFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJFOGxRRjs7QXFFcGxRRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckVzbFFKOztBc0VublFBO0VBQWE7QXRFdW5RYjs7QXNFdG5RQTtFQUFVO0F0RTBuUVY7O0FzRXpuUUE7RUFBYTtBdEU2blFiOztBc0U1blFBO0VBQWU7QXRFZ29RZjs7QXVFL25RSTtFQUF1QjtBdkVtb1EzQjs7QXVFbm9RSTtFQUF1QjtBdkV1b1EzQjs7QXVFdm9RSTtFQUF1QjtBdkUyb1EzQjs7QXVFM29RSTtFQUF1QjtBdkUrb1EzQjs7QXVFL29RSTtFQUF1QjtBdkVtcFEzQjs7QXVFbnBRSTtFQUF1QjtBdkV1cFEzQjs7QXVFdnBRSTtFQUF1QjtBdkUycFEzQjs7QXVFM3BRSTtFQUF1QjtBdkUrcFEzQjs7QXVFL3BRSTtFQUF1QjtBdkVtcVEzQjs7QXVFbnFRSTtFQUF1QjtBdkV1cVEzQjs7QXVFbnFRQTtFQUFVO0F2RXVxUVY7O0F1RXRxUUE7RUFBVTtBdkUwcVFWOztBdUV0cVFBO0VBQWM7QXZFMHFRZDs7QXVFenFRQTtFQUFjO0F2RTZxUWQ7O0F1RTNxUUE7RUFBVTtBdkUrcVFWOztBdUU5cVFBO0VBQVU7QXZFa3JRVjs7QXdFM3JRUTtFQUFnQztBeEUrclF4Qzs7QXdFOXJRUTs7RUFFRTtBeEVpc1FWOztBd0UvclFROztFQUVFO0F4RWtzUVY7O0F3RWhzUVE7O0VBRUU7QXhFbXNRVjs7QXdFanNRUTs7RUFFRTtBeEVvc1FWOztBd0VudFFRO0VBQWdDO0F4RXV0UXhDOztBd0V0dFFROztFQUVFO0F4RXl0UVY7O0F3RXZ0UVE7O0VBRUU7QXhFMHRRVjs7QXdFeHRRUTs7RUFFRTtBeEUydFFWOztBd0V6dFFROztFQUVFO0F4RTR0UVY7O0F3RTN1UVE7RUFBZ0M7QXhFK3VReEM7O0F3RTl1UVE7O0VBRUU7QXhFaXZRVjs7QXdFL3VRUTs7RUFFRTtBeEVrdlFWOztBd0VodlFROztFQUVFO0F4RW12UVY7O0F3RWp2UVE7O0VBRUU7QXhFb3ZRVjs7QXdFbndRUTtFQUFnQztBeEV1d1F4Qzs7QXdFdHdRUTs7RUFFRTtBeEV5d1FWOztBd0V2d1FROztFQUVFO0F4RTB3UVY7O0F3RXh3UVE7O0VBRUU7QXhFMndRVjs7QXdFendRUTs7RUFFRTtBeEU0d1FWOztBd0UzeFFRO0VBQWdDO0F4RSt4UXhDOztBd0U5eFFROztFQUVFO0F4RWl5UVY7O0F3RS94UVE7O0VBRUU7QXhFa3lRVjs7QXdFaHlRUTs7RUFFRTtBeEVteVFWOztBd0VqeVFROztFQUVFO0F4RW95UVY7O0F3RW56UVE7RUFBZ0M7QXhFdXpReEM7O0F3RXR6UVE7O0VBRUU7QXhFeXpRVjs7QXdFdnpRUTs7RUFFRTtBeEUwelFWOztBd0V4elFROztFQUVFO0F4RTJ6UVY7O0F3RXp6UVE7O0VBRUU7QXhFNHpRVjs7QXdFMzBRUTtFQUFnQztBeEUrMFF4Qzs7QXdFOTBRUTs7RUFFRTtBeEVpMVFWOztBd0UvMFFROztFQUVFO0F4RWsxUVY7O0F3RWgxUVE7O0VBRUU7QXhFbTFRVjs7QXdFajFRUTs7RUFFRTtBeEVvMVFWOztBd0VuMlFRO0VBQWdDO0F4RXUyUXhDOztBd0V0MlFROztFQUVFO0F4RXkyUVY7O0F3RXYyUVE7O0VBRUU7QXhFMDJRVjs7QXdFeDJRUTs7RUFFRTtBeEUyMlFWOztBd0V6MlFROztFQUVFO0F4RTQyUVY7O0F3RTMzUVE7RUFBZ0M7QXhFKzNReEM7O0F3RTkzUVE7O0VBRUU7QXhFaTRRVjs7QXdFLzNRUTs7RUFFRTtBeEVrNFFWOztBd0VoNFFROztFQUVFO0F4RW00UVY7O0F3RWo0UVE7O0VBRUU7QXhFbzRRVjs7QXdFbjVRUTtFQUFnQztBeEV1NVF4Qzs7QXdFdDVRUTs7RUFFRTtBeEV5NVFWOztBd0V2NVFROztFQUVFO0F4RTA1UVY7O0F3RXg1UVE7O0VBRUU7QXhFMjVRVjs7QXdFejVRUTs7RUFFRTtBeEU0NVFWOztBd0UzNlFRO0VBQWdDO0F4RSs2UXhDOztBd0U5NlFROztFQUVFO0F4RWk3UVY7O0F3RS82UVE7O0VBRUU7QXhFazdRVjs7QXdFaDdRUTs7RUFFRTtBeEVtN1FWOztBd0VqN1FROztFQUVFO0F4RW83UVY7O0F3RW44UVE7RUFBZ0M7QXhFdThReEM7O0F3RXQ4UVE7O0VBRUU7QXhFeThRVjs7QXdFdjhRUTs7RUFFRTtBeEUwOFFWOztBd0V4OFFROztFQUVFO0F4RTI4UVY7O0F3RXo4UVE7O0VBRUU7QXhFNDhRVjs7QXdFcDhRUTtFQUF3QjtBeEV3OFFoQzs7QXdFdjhRUTs7RUFFRTtBeEUwOFFWOztBd0V4OFFROztFQUVFO0F4RTI4UVY7O0F3RXo4UVE7O0VBRUU7QXhFNDhRVjs7QXdFMThRUTs7RUFFRTtBeEU2OFFWOztBd0U1OVFRO0VBQXdCO0F4RWcrUWhDOztBd0UvOVFROztFQUVFO0F4RWsrUVY7O0F3RWgrUVE7O0VBRUU7QXhFbStRVjs7QXdFaitRUTs7RUFFRTtBeEVvK1FWOztBd0VsK1FROztFQUVFO0F4RXErUVY7O0F3RXAvUVE7RUFBd0I7QXhFdy9RaEM7O0F3RXYvUVE7O0VBRUU7QXhFMC9RVjs7QXdFeC9RUTs7RUFFRTtBeEUyL1FWOztBd0V6L1FROztFQUVFO0F4RTQvUVY7O0F3RTEvUVE7O0VBRUU7QXhFNi9RVjs7QXdFNWdSUTtFQUF3QjtBeEVnaFJoQzs7QXdFL2dSUTs7RUFFRTtBeEVraFJWOztBd0VoaFJROztFQUVFO0F4RW1oUlY7O0F3RWpoUlE7O0VBRUU7QXhFb2hSVjs7QXdFbGhSUTs7RUFFRTtBeEVxaFJWOztBd0VwaVJRO0VBQXdCO0F4RXdpUmhDOztBd0V2aVJROztFQUVFO0F4RTBpUlY7O0F3RXhpUlE7O0VBRUU7QXhFMmlSVjs7QXdFemlSUTs7RUFFRTtBeEU0aVJWOztBd0UxaVJROztFQUVFO0F4RTZpUlY7O0F3RXZpUkk7RUFBbUI7QXhFMmlSdkI7O0F3RTFpUkk7O0VBRUU7QXhFNmlSTjs7QXdFM2lSSTs7RUFFRTtBeEU4aVJOOztBd0U1aVJJOztFQUVFO0F4RStpUk47O0F3RTdpUkk7O0VBRUU7QXhFZ2pSTjs7QWdCempSSTtFd0RsREk7SUFBZ0M7RXhFZ25SdEM7O0V3RS9tUk07O0lBRUU7RXhFa25SUjs7RXdFaG5STTs7SUFFRTtFeEVtblJSOztFd0VqblJNOztJQUVFO0V4RW9uUlI7O0V3RWxuUk07O0lBRUU7RXhFcW5SUjs7RXdFcG9STTtJQUFnQztFeEV3b1J0Qzs7RXdFdm9STTs7SUFFRTtFeEUwb1JSOztFd0V4b1JNOztJQUVFO0V4RTJvUlI7O0V3RXpvUk07O0lBRUU7RXhFNG9SUjs7RXdFMW9STTs7SUFFRTtFeEU2b1JSOztFd0U1cFJNO0lBQWdDO0V4RWdxUnRDOztFd0UvcFJNOztJQUVFO0V4RWtxUlI7O0V3RWhxUk07O0lBRUU7RXhFbXFSUjs7RXdFanFSTTs7SUFFRTtFeEVvcVJSOztFd0VscVJNOztJQUVFO0V4RXFxUlI7O0V3RXByUk07SUFBZ0M7RXhFd3JSdEM7O0V3RXZyUk07O0lBRUU7RXhFMHJSUjs7RXdFeHJSTTs7SUFFRTtFeEUyclJSOztFd0V6clJNOztJQUVFO0V4RTRyUlI7O0V3RTFyUk07O0lBRUU7RXhFNnJSUjs7RXdFNXNSTTtJQUFnQztFeEVndFJ0Qzs7RXdFL3NSTTs7SUFFRTtFeEVrdFJSOztFd0VodFJNOztJQUVFO0V4RW10UlI7O0V3RWp0Uk07O0lBRUU7RXhFb3RSUjs7RXdFbHRSTTs7SUFFRTtFeEVxdFJSOztFd0VwdVJNO0lBQWdDO0V4RXd1UnRDOztFd0V2dVJNOztJQUVFO0V4RTB1UlI7O0V3RXh1Uk07O0lBRUU7RXhFMnVSUjs7RXdFenVSTTs7SUFFRTtFeEU0dVJSOztFd0UxdVJNOztJQUVFO0V4RTZ1UlI7O0V3RTV2Uk07SUFBZ0M7RXhFZ3dSdEM7O0V3RS92Uk07O0lBRUU7RXhFa3dSUjs7RXdFaHdSTTs7SUFFRTtFeEVtd1JSOztFd0Vqd1JNOztJQUVFO0V4RW93UlI7O0V3RWx3Uk07O0lBRUU7RXhFcXdSUjs7RXdFcHhSTTtJQUFnQztFeEV3eFJ0Qzs7RXdFdnhSTTs7SUFFRTtFeEUweFJSOztFd0V4eFJNOztJQUVFO0V4RTJ4UlI7O0V3RXp4Uk07O0lBRUU7RXhFNHhSUjs7RXdFMXhSTTs7SUFFRTtFeEU2eFJSOztFd0U1eVJNO0lBQWdDO0V4RWd6UnRDOztFd0UveVJNOztJQUVFO0V4RWt6UlI7O0V3RWh6Uk07O0lBRUU7RXhFbXpSUjs7RXdFanpSTTs7SUFFRTtFeEVvelJSOztFd0VselJNOztJQUVFO0V4RXF6UlI7O0V3RXAwUk07SUFBZ0M7RXhFdzBSdEM7O0V3RXYwUk07O0lBRUU7RXhFMDBSUjs7RXdFeDBSTTs7SUFFRTtFeEUyMFJSOztFd0V6MFJNOztJQUVFO0V4RTQwUlI7O0V3RTEwUk07O0lBRUU7RXhFNjBSUjs7RXdFNTFSTTtJQUFnQztFeEVnMlJ0Qzs7RXdFLzFSTTs7SUFFRTtFeEVrMlJSOztFd0VoMlJNOztJQUVFO0V4RW0yUlI7O0V3RWoyUk07O0lBRUU7RXhFbzJSUjs7RXdFbDJSTTs7SUFFRTtFeEVxMlJSOztFd0VwM1JNO0lBQWdDO0V4RXczUnRDOztFd0V2M1JNOztJQUVFO0V4RTAzUlI7O0V3RXgzUk07O0lBRUU7RXhFMjNSUjs7RXdFejNSTTs7SUFFRTtFeEU0M1JSOztFd0UxM1JNOztJQUVFO0V4RTYzUlI7O0V3RXIzUk07SUFBd0I7RXhFeTNSOUI7O0V3RXgzUk07O0lBRUU7RXhFMjNSUjs7RXdFejNSTTs7SUFFRTtFeEU0M1JSOztFd0UxM1JNOztJQUVFO0V4RTYzUlI7O0V3RTMzUk07O0lBRUU7RXhFODNSUjs7RXdFNzRSTTtJQUF3QjtFeEVpNVI5Qjs7RXdFaDVSTTs7SUFFRTtFeEVtNVJSOztFd0VqNVJNOztJQUVFO0V4RW81UlI7O0V3RWw1Uk07O0lBRUU7RXhFcTVSUjs7RXdFbjVSTTs7SUFFRTtFeEVzNVJSOztFd0VyNlJNO0lBQXdCO0V4RXk2UjlCOztFd0V4NlJNOztJQUVFO0V4RTI2UlI7O0V3RXo2Uk07O0lBRUU7RXhFNDZSUjs7RXdFMTZSTTs7SUFFRTtFeEU2NlJSOztFd0UzNlJNOztJQUVFO0V4RTg2UlI7O0V3RTc3Uk07SUFBd0I7RXhFaThSOUI7O0V3RWg4Uk07O0lBRUU7RXhFbThSUjs7RXdFajhSTTs7SUFFRTtFeEVvOFJSOztFd0VsOFJNOztJQUVFO0V4RXE4UlI7O0V3RW44Uk07O0lBRUU7RXhFczhSUjs7RXdFcjlSTTtJQUF3QjtFeEV5OVI5Qjs7RXdFeDlSTTs7SUFFRTtFeEUyOVJSOztFd0V6OVJNOztJQUVFO0V4RTQ5UlI7O0V3RTE5Uk07O0lBRUU7RXhFNjlSUjs7RXdFMzlSTTs7SUFFRTtFeEU4OVJSOztFd0V4OVJFO0lBQW1CO0V4RTQ5UnJCOztFd0UzOVJFOztJQUVFO0V4RTg5Uko7O0V3RTU5UkU7O0lBRUU7RXhFKzlSSjs7RXdFNzlSRTs7SUFFRTtFeEVnK1JKOztFd0U5OVJFOztJQUVFO0V4RWkrUko7QUFDRjtBZ0IzK1JJO0V3RGxESTtJQUFnQztFeEVpaVN0Qzs7RXdFaGlTTTs7SUFFRTtFeEVtaVNSOztFd0VqaVNNOztJQUVFO0V4RW9pU1I7O0V3RWxpU007O0lBRUU7RXhFcWlTUjs7RXdFbmlTTTs7SUFFRTtFeEVzaVNSOztFd0VyalNNO0lBQWdDO0V4RXlqU3RDOztFd0V4alNNOztJQUVFO0V4RTJqU1I7O0V3RXpqU007O0lBRUU7RXhFNGpTUjs7RXdFMWpTTTs7SUFFRTtFeEU2alNSOztFd0UzalNNOztJQUVFO0V4RThqU1I7O0V3RTdrU007SUFBZ0M7RXhFaWxTdEM7O0V3RWhsU007O0lBRUU7RXhFbWxTUjs7RXdFamxTTTs7SUFFRTtFeEVvbFNSOztFd0VsbFNNOztJQUVFO0V4RXFsU1I7O0V3RW5sU007O0lBRUU7RXhFc2xTUjs7RXdFcm1TTTtJQUFnQztFeEV5bVN0Qzs7RXdFeG1TTTs7SUFFRTtFeEUybVNSOztFd0V6bVNNOztJQUVFO0V4RTRtU1I7O0V3RTFtU007O0lBRUU7RXhFNm1TUjs7RXdFM21TTTs7SUFFRTtFeEU4bVNSOztFd0U3blNNO0lBQWdDO0V4RWlvU3RDOztFd0Vob1NNOztJQUVFO0V4RW1vU1I7O0V3RWpvU007O0lBRUU7RXhFb29TUjs7RXdFbG9TTTs7SUFFRTtFeEVxb1NSOztFd0Vub1NNOztJQUVFO0V4RXNvU1I7O0V3RXJwU007SUFBZ0M7RXhFeXBTdEM7O0V3RXhwU007O0lBRUU7RXhFMnBTUjs7RXdFenBTTTs7SUFFRTtFeEU0cFNSOztFd0UxcFNNOztJQUVFO0V4RTZwU1I7O0V3RTNwU007O0lBRUU7RXhFOHBTUjs7RXdFN3FTTTtJQUFnQztFeEVpclN0Qzs7RXdFaHJTTTs7SUFFRTtFeEVtclNSOztFd0VqclNNOztJQUVFO0V4RW9yU1I7O0V3RWxyU007O0lBRUU7RXhFcXJTUjs7RXdFbnJTTTs7SUFFRTtFeEVzclNSOztFd0Vyc1NNO0lBQWdDO0V4RXlzU3RDOztFd0V4c1NNOztJQUVFO0V4RTJzU1I7O0V3RXpzU007O0lBRUU7RXhFNHNTUjs7RXdFMXNTTTs7SUFFRTtFeEU2c1NSOztFd0Uzc1NNOztJQUVFO0V4RThzU1I7O0V3RTd0U007SUFBZ0M7RXhFaXVTdEM7O0V3RWh1U007O0lBRUU7RXhFbXVTUjs7RXdFanVTTTs7SUFFRTtFeEVvdVNSOztFd0VsdVNNOztJQUVFO0V4RXF1U1I7O0V3RW51U007O0lBRUU7RXhFc3VTUjs7RXdFcnZTTTtJQUFnQztFeEV5dlN0Qzs7RXdFeHZTTTs7SUFFRTtFeEUydlNSOztFd0V6dlNNOztJQUVFO0V4RTR2U1I7O0V3RTF2U007O0lBRUU7RXhFNnZTUjs7RXdFM3ZTTTs7SUFFRTtFeEU4dlNSOztFd0U3d1NNO0lBQWdDO0V4RWl4U3RDOztFd0VoeFNNOztJQUVFO0V4RW14U1I7O0V3RWp4U007O0lBRUU7RXhFb3hTUjs7RXdFbHhTTTs7SUFFRTtFeEVxeFNSOztFd0VueFNNOztJQUVFO0V4RXN4U1I7O0V3RXJ5U007SUFBZ0M7RXhFeXlTdEM7O0V3RXh5U007O0lBRUU7RXhFMnlTUjs7RXdFenlTTTs7SUFFRTtFeEU0eVNSOztFd0UxeVNNOztJQUVFO0V4RTZ5U1I7O0V3RTN5U007O0lBRUU7RXhFOHlTUjs7RXdFdHlTTTtJQUF3QjtFeEUweVM5Qjs7RXdFenlTTTs7SUFFRTtFeEU0eVNSOztFd0UxeVNNOztJQUVFO0V4RTZ5U1I7O0V3RTN5U007O0lBRUU7RXhFOHlTUjs7RXdFNXlTTTs7SUFFRTtFeEUreVNSOztFd0U5elNNO0lBQXdCO0V4RWswUzlCOztFd0VqMFNNOztJQUVFO0V4RW8wU1I7O0V3RWwwU007O0lBRUU7RXhFcTBTUjs7RXdFbjBTTTs7SUFFRTtFeEVzMFNSOztFd0VwMFNNOztJQUVFO0V4RXUwU1I7O0V3RXQxU007SUFBd0I7RXhFMDFTOUI7O0V3RXoxU007O0lBRUU7RXhFNDFTUjs7RXdFMTFTTTs7SUFFRTtFeEU2MVNSOztFd0UzMVNNOztJQUVFO0V4RTgxU1I7O0V3RTUxU007O0lBRUU7RXhFKzFTUjs7RXdFOTJTTTtJQUF3QjtFeEVrM1M5Qjs7RXdFajNTTTs7SUFFRTtFeEVvM1NSOztFd0VsM1NNOztJQUVFO0V4RXEzU1I7O0V3RW4zU007O0lBRUU7RXhFczNTUjs7RXdFcDNTTTs7SUFFRTtFeEV1M1NSOztFd0V0NFNNO0lBQXdCO0V4RTA0UzlCOztFd0V6NFNNOztJQUVFO0V4RTQ0U1I7O0V3RTE0U007O0lBRUU7RXhFNjRTUjs7RXdFMzRTTTs7SUFFRTtFeEU4NFNSOztFd0U1NFNNOztJQUVFO0V4RSs0U1I7O0V3RXo0U0U7SUFBbUI7RXhFNjRTckI7O0V3RTU0U0U7O0lBRUU7RXhFKzRTSjs7RXdFNzRTRTs7SUFFRTtFeEVnNVNKOztFd0U5NFNFOztJQUVFO0V4RWk1U0o7O0V3RS80U0U7O0lBRUU7RXhFazVTSjtBQUNGO0FnQjU1U0k7RXdEbERJO0lBQWdDO0V4RWs5U3RDOztFd0VqOVNNOztJQUVFO0V4RW85U1I7O0V3RWw5U007O0lBRUU7RXhFcTlTUjs7RXdFbjlTTTs7SUFFRTtFeEVzOVNSOztFd0VwOVNNOztJQUVFO0V4RXU5U1I7O0V3RXQrU007SUFBZ0M7RXhFMCtTdEM7O0V3RXorU007O0lBRUU7RXhFNCtTUjs7RXdFMStTTTs7SUFFRTtFeEU2K1NSOztFd0UzK1NNOztJQUVFO0V4RTgrU1I7O0V3RTUrU007O0lBRUU7RXhFKytTUjs7RXdFOS9TTTtJQUFnQztFeEVrZ1R0Qzs7RXdFamdUTTs7SUFFRTtFeEVvZ1RSOztFd0VsZ1RNOztJQUVFO0V4RXFnVFI7O0V3RW5nVE07O0lBRUU7RXhFc2dUUjs7RXdFcGdUTTs7SUFFRTtFeEV1Z1RSOztFd0V0aFRNO0lBQWdDO0V4RTBoVHRDOztFd0V6aFRNOztJQUVFO0V4RTRoVFI7O0V3RTFoVE07O0lBRUU7RXhFNmhUUjs7RXdFM2hUTTs7SUFFRTtFeEU4aFRSOztFd0U1aFRNOztJQUVFO0V4RStoVFI7O0V3RTlpVE07SUFBZ0M7RXhFa2pUdEM7O0V3RWpqVE07O0lBRUU7RXhFb2pUUjs7RXdFbGpUTTs7SUFFRTtFeEVxalRSOztFd0VualRNOztJQUVFO0V4RXNqVFI7O0V3RXBqVE07O0lBRUU7RXhFdWpUUjs7RXdFdGtUTTtJQUFnQztFeEUwa1R0Qzs7RXdFemtUTTs7SUFFRTtFeEU0a1RSOztFd0Uxa1RNOztJQUVFO0V4RTZrVFI7O0V3RTNrVE07O0lBRUU7RXhFOGtUUjs7RXdFNWtUTTs7SUFFRTtFeEUra1RSOztFd0U5bFRNO0lBQWdDO0V4RWttVHRDOztFd0VqbVRNOztJQUVFO0V4RW9tVFI7O0V3RWxtVE07O0lBRUU7RXhFcW1UUjs7RXdFbm1UTTs7SUFFRTtFeEVzbVRSOztFd0VwbVRNOztJQUVFO0V4RXVtVFI7O0V3RXRuVE07SUFBZ0M7RXhFMG5UdEM7O0V3RXpuVE07O0lBRUU7RXhFNG5UUjs7RXdFMW5UTTs7SUFFRTtFeEU2blRSOztFd0UzblRNOztJQUVFO0V4RThuVFI7O0V3RTVuVE07O0lBRUU7RXhFK25UUjs7RXdFOW9UTTtJQUFnQztFeEVrcFR0Qzs7RXdFanBUTTs7SUFFRTtFeEVvcFRSOztFd0VscFRNOztJQUVFO0V4RXFwVFI7O0V3RW5wVE07O0lBRUU7RXhFc3BUUjs7RXdFcHBUTTs7SUFFRTtFeEV1cFRSOztFd0V0cVRNO0lBQWdDO0V4RTBxVHRDOztFd0V6cVRNOztJQUVFO0V4RTRxVFI7O0V3RTFxVE07O0lBRUU7RXhFNnFUUjs7RXdFM3FUTTs7SUFFRTtFeEU4cVRSOztFd0U1cVRNOztJQUVFO0V4RStxVFI7O0V3RTlyVE07SUFBZ0M7RXhFa3NUdEM7O0V3RWpzVE07O0lBRUU7RXhFb3NUUjs7RXdFbHNUTTs7SUFFRTtFeEVxc1RSOztFd0Vuc1RNOztJQUVFO0V4RXNzVFI7O0V3RXBzVE07O0lBRUU7RXhFdXNUUjs7RXdFdHRUTTtJQUFnQztFeEUwdFR0Qzs7RXdFenRUTTs7SUFFRTtFeEU0dFRSOztFd0UxdFRNOztJQUVFO0V4RTZ0VFI7O0V3RTN0VE07O0lBRUU7RXhFOHRUUjs7RXdFNXRUTTs7SUFFRTtFeEUrdFRSOztFd0V2dFRNO0lBQXdCO0V4RTJ0VDlCOztFd0UxdFRNOztJQUVFO0V4RTZ0VFI7O0V3RTN0VE07O0lBRUU7RXhFOHRUUjs7RXdFNXRUTTs7SUFFRTtFeEUrdFRSOztFd0U3dFRNOztJQUVFO0V4RWd1VFI7O0V3RS91VE07SUFBd0I7RXhFbXZUOUI7O0V3RWx2VE07O0lBRUU7RXhFcXZUUjs7RXdFbnZUTTs7SUFFRTtFeEVzdlRSOztFd0VwdlRNOztJQUVFO0V4RXV2VFI7O0V3RXJ2VE07O0lBRUU7RXhFd3ZUUjs7RXdFdndUTTtJQUF3QjtFeEUyd1Q5Qjs7RXdFMXdUTTs7SUFFRTtFeEU2d1RSOztFd0Uzd1RNOztJQUVFO0V4RTh3VFI7O0V3RTV3VE07O0lBRUU7RXhFK3dUUjs7RXdFN3dUTTs7SUFFRTtFeEVneFRSOztFd0UveFRNO0lBQXdCO0V4RW15VDlCOztFd0VseVRNOztJQUVFO0V4RXF5VFI7O0V3RW55VE07O0lBRUU7RXhFc3lUUjs7RXdFcHlUTTs7SUFFRTtFeEV1eVRSOztFd0VyeVRNOztJQUVFO0V4RXd5VFI7O0V3RXZ6VE07SUFBd0I7RXhFMnpUOUI7O0V3RTF6VE07O0lBRUU7RXhFNnpUUjs7RXdFM3pUTTs7SUFFRTtFeEU4elRSOztFd0U1elRNOztJQUVFO0V4RSt6VFI7O0V3RTd6VE07O0lBRUU7RXhFZzBUUjs7RXdFMXpURTtJQUFtQjtFeEU4elRyQjs7RXdFN3pURTs7SUFFRTtFeEVnMFRKOztFd0U5elRFOztJQUVFO0V4RWkwVEo7O0V3RS96VEU7O0lBRUU7RXhFazBUSjs7RXdFaDBURTs7SUFFRTtFeEVtMFRKO0FBQ0Y7QWdCNzBUSTtFd0RsREk7SUFBZ0M7RXhFbTRUdEM7O0V3RWw0VE07O0lBRUU7RXhFcTRUUjs7RXdFbjRUTTs7SUFFRTtFeEVzNFRSOztFd0VwNFRNOztJQUVFO0V4RXU0VFI7O0V3RXI0VE07O0lBRUU7RXhFdzRUUjs7RXdFdjVUTTtJQUFnQztFeEUyNVR0Qzs7RXdFMTVUTTs7SUFFRTtFeEU2NVRSOztFd0UzNVRNOztJQUVFO0V4RTg1VFI7O0V3RTU1VE07O0lBRUU7RXhFKzVUUjs7RXdFNzVUTTs7SUFFRTtFeEVnNlRSOztFd0UvNlRNO0lBQWdDO0V4RW03VHRDOztFd0VsN1RNOztJQUVFO0V4RXE3VFI7O0V3RW43VE07O0lBRUU7RXhFczdUUjs7RXdFcDdUTTs7SUFFRTtFeEV1N1RSOztFd0VyN1RNOztJQUVFO0V4RXc3VFI7O0V3RXY4VE07SUFBZ0M7RXhFMjhUdEM7O0V3RTE4VE07O0lBRUU7RXhFNjhUUjs7RXdFMzhUTTs7SUFFRTtFeEU4OFRSOztFd0U1OFRNOztJQUVFO0V4RSs4VFI7O0V3RTc4VE07O0lBRUU7RXhFZzlUUjs7RXdFLzlUTTtJQUFnQztFeEVtK1R0Qzs7RXdFbCtUTTs7SUFFRTtFeEVxK1RSOztFd0VuK1RNOztJQUVFO0V4RXMrVFI7O0V3RXArVE07O0lBRUU7RXhFdStUUjs7RXdFcitUTTs7SUFFRTtFeEV3K1RSOztFd0V2L1RNO0lBQWdDO0V4RTIvVHRDOztFd0UxL1RNOztJQUVFO0V4RTYvVFI7O0V3RTMvVE07O0lBRUU7RXhFOC9UUjs7RXdFNS9UTTs7SUFFRTtFeEUrL1RSOztFd0U3L1RNOztJQUVFO0V4RWdnVVI7O0V3RS9nVU07SUFBZ0M7RXhFbWhVdEM7O0V3RWxoVU07O0lBRUU7RXhFcWhVUjs7RXdFbmhVTTs7SUFFRTtFeEVzaFVSOztFd0VwaFVNOztJQUVFO0V4RXVoVVI7O0V3RXJoVU07O0lBRUU7RXhFd2hVUjs7RXdFdmlVTTtJQUFnQztFeEUyaVV0Qzs7RXdFMWlVTTs7SUFFRTtFeEU2aVVSOztFd0UzaVVNOztJQUVFO0V4RThpVVI7O0V3RTVpVU07O0lBRUU7RXhFK2lVUjs7RXdFN2lVTTs7SUFFRTtFeEVnalVSOztFd0UvalVNO0lBQWdDO0V4RW1rVXRDOztFd0Vsa1VNOztJQUVFO0V4RXFrVVI7O0V3RW5rVU07O0lBRUU7RXhFc2tVUjs7RXdFcGtVTTs7SUFFRTtFeEV1a1VSOztFd0Vya1VNOztJQUVFO0V4RXdrVVI7O0V3RXZsVU07SUFBZ0M7RXhFMmxVdEM7O0V3RTFsVU07O0lBRUU7RXhFNmxVUjs7RXdFM2xVTTs7SUFFRTtFeEU4bFVSOztFd0U1bFVNOztJQUVFO0V4RStsVVI7O0V3RTdsVU07O0lBRUU7RXhFZ21VUjs7RXdFL21VTTtJQUFnQztFeEVtblV0Qzs7RXdFbG5VTTs7SUFFRTtFeEVxblVSOztFd0VublVNOztJQUVFO0V4RXNuVVI7O0V3RXBuVU07O0lBRUU7RXhFdW5VUjs7RXdFcm5VTTs7SUFFRTtFeEV3blVSOztFd0V2b1VNO0lBQWdDO0V4RTJvVXRDOztFd0Uxb1VNOztJQUVFO0V4RTZvVVI7O0V3RTNvVU07O0lBRUU7RXhFOG9VUjs7RXdFNW9VTTs7SUFFRTtFeEUrb1VSOztFd0U3b1VNOztJQUVFO0V4RWdwVVI7O0V3RXhvVU07SUFBd0I7RXhFNG9VOUI7O0V3RTNvVU07O0lBRUU7RXhFOG9VUjs7RXdFNW9VTTs7SUFFRTtFeEUrb1VSOztFd0U3b1VNOztJQUVFO0V4RWdwVVI7O0V3RTlvVU07O0lBRUU7RXhFaXBVUjs7RXdFaHFVTTtJQUF3QjtFeEVvcVU5Qjs7RXdFbnFVTTs7SUFFRTtFeEVzcVVSOztFd0VwcVVNOztJQUVFO0V4RXVxVVI7O0V3RXJxVU07O0lBRUU7RXhFd3FVUjs7RXdFdHFVTTs7SUFFRTtFeEV5cVVSOztFd0V4clVNO0lBQXdCO0V4RTRyVTlCOztFd0UzclVNOztJQUVFO0V4RThyVVI7O0V3RTVyVU07O0lBRUU7RXhFK3JVUjs7RXdFN3JVTTs7SUFFRTtFeEVnc1VSOztFd0U5clVNOztJQUVFO0V4RWlzVVI7O0V3RWh0VU07SUFBd0I7RXhFb3RVOUI7O0V3RW50VU07O0lBRUU7RXhFc3RVUjs7RXdFcHRVTTs7SUFFRTtFeEV1dFVSOztFd0VydFVNOztJQUVFO0V4RXd0VVI7O0V3RXR0VU07O0lBRUU7RXhFeXRVUjs7RXdFeHVVTTtJQUF3QjtFeEU0dVU5Qjs7RXdFM3VVTTs7SUFFRTtFeEU4dVVSOztFd0U1dVVNOztJQUVFO0V4RSt1VVI7O0V3RTd1VU07O0lBRUU7RXhFZ3ZVUjs7RXdFOXVVTTs7SUFFRTtFeEVpdlVSOztFd0UzdVVFO0lBQW1CO0V4RSt1VXJCOztFd0U5dVVFOztJQUVFO0V4RWl2VUo7O0V3RS91VUU7O0lBRUU7RXhFa3ZVSjs7RXdFaHZVRTs7SUFFRTtFeEVtdlVKOztFd0VqdlVFOztJQUVFO0V4RW92VUo7QUFDRjtBeUVyelVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0F6RXF6VUo7O0EwRS96VUE7RUFBa0I7QTFFbTBVbEI7O0EwRS96VUE7RUFBaUI7QTFFbTBVakI7O0EwRWwwVUE7RUFBaUI7QTFFczBVakI7O0EwRXIwVUE7RUFBaUI7QTFFeTBVakI7O0EwRXgwVUE7RUNURTtFQUNBO0VBQ0E7QTNFcTFVRjs7QTBFdDBVSTtFQUF3QjtBMUUwMFU1Qjs7QTBFejBVSTtFQUF3QjtBMUU2MFU1Qjs7QTBFNTBVSTtFQUF3QjtBMUVnMVU1Qjs7QWdCM3lVSTtFMER2Q0E7SUFBd0I7RTFFdTFVMUI7O0UwRXQxVUU7SUFBd0I7RTFFMDFVMUI7O0UwRXoxVUU7SUFBd0I7RTFFNjFVMUI7QUFDRjtBZ0J6elVJO0UwRHZDQTtJQUF3QjtFMUVvMlUxQjs7RTBFbjJVRTtJQUF3QjtFMUV1MlUxQjs7RTBFdDJVRTtJQUF3QjtFMUUwMlUxQjtBQUNGO0FnQnQwVUk7RTBEdkNBO0lBQXdCO0UxRWkzVTFCOztFMEVoM1VFO0lBQXdCO0UxRW8zVTFCOztFMEVuM1VFO0lBQXdCO0UxRXUzVTFCO0FBQ0Y7QWdCbjFVSTtFMER2Q0E7SUFBd0I7RTFFODNVMUI7O0UwRTczVUU7SUFBd0I7RTFFaTRVMUI7O0UwRWg0VUU7SUFBd0I7RTFFbzRVMUI7QUFDRjtBMEUvM1VBO0VBQW1CO0ExRWs0VW5COztBMEVqNFVBO0VBQW1CO0ExRXE0VW5COztBMEVwNFVBO0VBQW1CO0ExRXc0VW5COztBMEVwNFVBO0VBQXVCO0ExRXc0VXZCOztBMEV2NFVBO0VBQXVCO0ExRTI0VXZCOztBMEUxNFVBO0VBQXVCO0ExRTg0VXZCOztBMEU3NFVBO0VBQXVCO0ExRWk1VXZCOztBMEVoNVVBO0VBQXVCO0ExRW81VXZCOztBMEVuNVVBO0VBQXVCO0ExRXU1VXZCOztBMEVuNVVBO0VBQWM7QTFFdTVVZDs7QTRFOTdVRTtFQUNFO0E1RWk4VUo7O0FPdjdVRTtFcUVMTTtBNUVnOFVSOztBNEV0OFVFO0VBQ0U7QTVFeThVSjs7QU8vN1VFO0VxRUxNO0E1RXc4VVI7O0E0RTk4VUU7RUFDRTtBNUVpOVVKOztBT3Y4VUU7RXFFTE07QTVFZzlVUjs7QTRFdDlVRTtFQUNFO0E1RXk5VUo7O0FPLzhVRTtFcUVMTTtBNUV3OVVSOztBNEU5OVVFO0VBQ0U7QTVFaStVSjs7QU92OVVFO0VxRUxNO0E1RWcrVVI7O0E0RXQrVUU7RUFDRTtBNUV5K1VKOztBTy85VUU7RXFFTE07QTVFdytVUjs7QTRFOStVRTtFQUNFO0E1RWkvVUo7O0FPditVRTtFcUVMTTtBNUVnL1VSOztBNEV0L1VFO0VBQ0U7QTVFeS9VSjs7QU8vK1VFO0VxRUxNO0E1RXcvVVI7O0EwRWo5VUE7RUFBYTtBMUVxOVViOztBMEVwOVVBO0VBQWM7QTFFdzlVZDs7QTBFdDlVQTtFQUFpQjtBMUUwOVVqQjs7QTBFejlVQTtFQUFpQjtBMUU2OVVqQjs7QTBFejlVQTtFR3ZERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW9oVkY7O0EwRTc5VUE7RUFBd0I7QTFFaStVeEI7O0EwRS85VUE7RUFDRTtFQUNBO0ExRWsrVUY7O0EwRTc5VUE7RUFBYztBMUVpK1VkOztBOEVsaVZBO0VBQ0U7QTlFcWlWRjs7QThFbGlWQTtFQUNFO0E5RXFpVkY7O0ErRXJpVkU7RUFDRTs7O0lBS0U7SUFFQTtFL0VxaVZKOztFK0VqaVZJO0lBQ0U7RS9Fb2lWTjs7RStFM2hWRTtJQUNFO0UvRThoVko7O0UrRWhoVkU7SUFDRTtFL0VtaFZKOztFK0VqaFZFOztJQUVFO0lBQ0E7RS9Fb2hWSjs7RStFNWdWRTtJQUNFO0UvRStnVko7O0UrRTVnVkU7O0lBRUU7RS9FK2dWSjs7RStFNWdWRTs7O0lBR0U7SUFDQTtFL0UrZ1ZKOztFK0U1Z1ZFOztJQUVFO0UvRStnVko7O0UrRXZnVkU7SUFDRSxRMUUraEM4QjtFTDIrU2xDO0UrRXhnVkU7SUFDRTtFL0UwZ1ZKOztFK0V4Z1ZFO0lBQ0U7RS9FMmdWSjs7RStFdmdWRTtJQUNFO0UvRTBnVko7O0UrRXhnVkU7SUFDRTtFL0UyZ1ZKOztFK0V4Z1ZFO0lBQ0U7RS9FMmdWSjtFK0V6Z1ZJOztJQUVFO0UvRTJnVk47O0UrRXRnVkk7O0lBRUU7RS9FeWdWTjs7RStFcmdWRTtJQUNFO0UvRXdnVko7RStFdGdWSTs7OztJQUlFLHFCMUV2SEc7RUwrblZUOztFK0VwZ1ZFO0lBQ0U7SUFDQSxxQjFFN0hLO0VMb29WVDtBQUNGO0FDOW9WQTs7OztDQUFBO0FBUUE7O0NBQUE7QUFLQTtFQUNBO0VBQ0E7RUFNQTtBRHNvVkE7QUNwb1ZBO0VBQ0E7RUFDQTtFQU1BO0FEaW9WQTtBQy9uVkE7RUFDQTtFQUNBO0VBTUE7QUQ0blZBO0FDMW5WQTtFQUNBO0VBQ0E7RUFNQTtBRHVuVkE7QUNyblZBO0VBQ0E7RUFDQTtFQU1BO0FEa25WQTtBQy9tVkE7RUFDQTtFQUNBO0VBTUE7RUFDQTtBRDRtVkE7QUM1aFZBO0VBQVc7QUQraFZYOztBQzloVkE7RUFBYztBRGtpVmQ7O0FDamlWQTtFQUVFO0VBQ0E7QURtaVZGOztBQ2hpVkE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBRGtpVkY7QUNqaVZFO0VBQ0U7RUFDQTtBRG1pVko7QUNqaVZFO0VBQ0U7QURtaVZKOztBQzloVkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURpaVZGO0FDaGlWRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRGlpVko7O0FDM2hWQTtFQUEwQjtBRCtoVjFCOztBQzVoVkE7RUFBYSx5QkF0R0g7QURzb1ZWOztBQy9oVkE7RUFBZSxjQXZHTDtBRDBvVlY7O0FDamlWQTtFQUFlLHlCQXhHQTtBRDZvVmY7O0FDcGlWQTtFQUFrQixjQXpHSDtBRGlwVmY7O0FDdmlWQTtFQUFnQix5QkF2R0U7QURrcFZsQjs7QUMxaVZBO0VBQW1CLGNBeEdEO0FEc3BWbEI7O0FDNWlWQTtFQUFlLHlCQXpHQztBRHlwVmhCOztBQy9pVkE7RUFBaUIsY0ExR0Q7QUQ2cFZoQjs7QUNsalZBO0VBQWUseUJBMUdHO0FEZ3FWbEI7O0FDcmpWQTtFQUFrQixjQTNHQTtBRG9xVmxCOztBQ3ZqVkE7RUFBZSx5QkFuR0g7QUQ4cFZaOztBQzFqVkE7RUFBaUIsY0FwR0w7QURrcVZaOztBQzdqVkE7RUFBaUIseUJBcEdBO0FEcXFWakI7O0FDaGtWQTtFQUFtQixjQXJHRjtBRHlxVmpCOztBQ25rVkE7RUFBa0IseUJBckdDO0FENHFWbkI7O0FDdGtWQTtFQUFvQixjQXRHRDtBRGdyVm5COztBQ3prVkE7RUFBaUIseUJBdEdBO0FEbXJWakI7O0FDNWtWQTtFQUFtQixjQXZHRjtBRHVyVmpCOztBQy9rVkE7RUFBa0IseUJBdkdDO0FEMHJWbkI7O0FDbGxWQTtFQUFvQixjQXhHRDtBRDhyVm5COztBQ3JsVkE7RUFBbUIseUJBeEdDO0FEaXNWcEI7O0FDeGxWQTtFQUFxQixjQXpHRDtBRHFzVnBCOztBQzFsVkE7RUFBVyx5QkE3SUg7QUQydVZSOztBQzdsVkE7RUFBYSxjQTlJTDtBRCt1VlI7O0FDaG1WQTtFQUFVLHlCQXJGSDtBRHlyVlA7O0FDbm1WQTtFQUFZLGNBdEZMO0FENnJWUDs7QUNybVZBO0VBQVksb0RBbEdDO0FEMnNWYjs7QUN4bVZBO0VBQWMsb0RBbEdDO0FEOHNWZjs7QUMxbVZBO0VBQWdCLHlCQTVGSDtBRDBzVmI7O0FDN21WQTtFQUFrQixjQTdGTDtBRDhzVmI7O0FDOW1WQTtFQUFXO0FEa25WWDs7QUNqblZBO0VBQWE7QURxblZiOztBQ2xuVkE7RUFBUyx5QkEzSkg7QURpeFZOOztBQ3JuVkE7RUFBVztBRHluVlg7O0FDdm5WQTtFQUFXLHlCQXhKSDtBRG14VlI7O0FDMW5WQTtFQUFhO0FEOG5WYjs7QUM1blZBO0VBQU07RUFDTjtBRGdvVkE7O0FDMW5WRTtFQUNFO0VBQ0E7QUQ2blZKOztBQzFuVkE7RUFDRTtBRDZuVkY7O0FDem5WQTtFQUVFO0FEMm5WRjtBQzFuVkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRDRuVko7O0FDem5WQTtFQUNFO0FENG5WRjs7QUN4blZBO0VBRUU7QUQwblZGO0FDem5WRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEMm5WSjs7QUNyblZBO0VBQ0U7QUR3blZGOztBQ3BuVkE7RUFFRSxxQkExTFU7QURnelZaOztBQ3BuVkE7RUFDRTtBRHVuVkY7O0FDN21WQTtFQUVFO0FEK21WRjs7QUM1bVZBO0VBQ0UseUJBN01VO0VBOE1WLGNBak9LO0FEZzFWUDtBQzdtVkU7RUFDRSx5QkEzTmM7RUE0TmQ7RUFDQTtBRCttVko7O0FDNW1WQTtFQUNFO0VBQ0E7RUFDQSxjQTVPSztFQTZPTDtBRCttVkY7QUM5bVZFO0VBQ0UseUJBdE9jO0VBdU9kO0VBQ0E7QURnblZKOztBQzFtVkE7RUFBaUI7QUQ4bVZqQjs7QUM3bVZBO0VBQW1CO0FEaW5WbkI7O0FDaG5WQTtFQUFtQjtBRG9uVm5COztBQ25uVkE7RUFBbUI7QUR1blZuQjs7QUN0blZBO0VBQXFCO0FEMG5WckI7O0FDem5WQTtFQUFxQjtBRDZuVnJCOztBQzNuVkE7RUFBcUI7QUQrblZyQjs7QUM5blZBO0VBQXVCO0FEa29WdkI7O0FDam9WQTtFQUF1QjtBRHFvVnZCOztBQ3BvVkE7RUFBdUI7QUR3b1Z2Qjs7QUN2b1ZBO0VBQXlCO0FEMm9WekI7O0FDMW9WQTtFQUF5QjtBRDhvVnpCOztBQzVvVkE7RUFBWTtBRGdwVlo7O0FDL29WQTtFQUFZO0FEbXBWWjs7QUNqcFZBO0VBQ0c7QURvcFZIOztBQ2pwVkU7RUFDRTtBRG9wVko7O0FDcnBWRTtFQUNFO0FEd3BWSjs7QUN6cFZFO0VBQ0U7QUQ0cFZKOztBQzdwVkU7RUFDRTtBRGdxVko7O0FDanFWRTtFQUNFO0FEb3FWSjs7QUNycVZFO0VBQ0U7QUR3cVZKOztBQ3pxVkU7RUFDRTtBRDRxVko7O0FDN3FWRTtFQUNFO0FEZ3JWSjs7QUNqclZFO0VBQ0U7QURvclZKOztBQ3JyVkU7RUFDRTtBRHdyVko7O0FDcHJWRTtFQUNFO0FEdXJWSjs7QUN4clZFO0VBQ0U7QUQyclZKOztBQzVyVkU7RUFDRTtBRCtyVko7O0FDaHNWRTtFQUNFO0FEbXNWSjs7QUNwc1ZFO0VBQ0U7QUR1c1ZKOztBQ3hzVkU7RUFDRTtBRDJzVko7O0FDNXNWRTtFQUNFO0FEK3NWSjs7QUNodFZFO0VBQ0U7QURtdFZKOztBQ3B0VkU7RUFDRTtBRHV0Vko7O0FDeHRWRTtFQUNFO0FEMnRWSjs7QUM1dFZFO0VBQ0U7QUQrdFZKOztBQ2h1VkU7RUFDRTtBRG11Vko7O0FDcHVWRTtFQUNFO0FEdXVWSjs7QUN4dVZFO0VBQ0U7QUQydVZKOztBQzV1VkU7RUFDRTtBRCt1Vko7O0FDaHZWRTtFQUNFO0FEbXZWSjs7QUNwdlZFO0VBQ0U7QUR1dlZKOztBQ3h2VkU7RUFDRTtBRDJ2Vko7O0FDNXZWRTtFQUNFO0FEK3ZWSjs7QUNod1ZFO0VBQ0U7QURtd1ZKOztBQ3B3VkU7RUFDRTtBRHV3Vko7O0FDeHdWRTtFQUNFO0FEMndWSjs7QUM1d1ZFO0VBQ0U7QUQrd1ZKOztBQ2h4VkU7RUFDRTtBRG14Vko7O0FDcHhWRTtFQUNFO0FEdXhWSjs7QUN4eFZFO0VBQ0U7QUQyeFZKOztBQzV4VkU7RUFDRTtBRCt4Vko7O0FDaHlWRTtFQUNFO0FEbXlWSjs7QUNweVZFO0VBQ0U7QUR1eVZKOztBQ3h5VkU7RUFDRTtBRDJ5Vko7O0FDNXlWRTtFQUNFO0FEK3lWSjs7QUNoelZFO0VBQ0U7QURtelZKOztBQ3B6VkU7RUFDRTtBRHV6Vko7O0FDeHpWRTtFQUNFO0FEMnpWSjs7QUM1elZFO0VBQ0U7QUQrelZKOztBQ2gwVkU7RUFDRTtBRG0wVko7O0FDcDBWRTtFQUNFO0FEdTBWSjs7QUN4MFZFO0VBQ0U7QUQyMFZKOztBQzUwVkU7RUFDRTtBRCswVko7O0FDaDFWRTtFQUNFO0FEbTFWSjs7QUNwMVZFO0VBQ0U7QUR1MVZKOztBQ3gxVkU7RUFDRTtBRDIxVko7O0FDNTFWRTtFQUNFO0FEKzFWSjs7QUNoMlZFO0VBQ0U7QURtMlZKOztBQ3AyVkU7RUFDRTtBRHUyVko7O0FDeDJWRTtFQUNFO0FEMjJWSjs7QUM1MlZFO0VBQ0U7QUQrMlZKOztBQ2gzVkU7RUFDRTtBRG0zVko7O0FDcDNWRTtFQUNFO0FEdTNWSjs7QUN4M1ZFO0VBQ0U7QUQyM1ZKOztBQzUzVkU7RUFDRTtBRCszVko7O0FDaDRWRTtFQUNFO0FEbTRWSjs7QUNwNFZFO0VBQ0U7QUR1NFZKOztBQ3g0VkU7RUFDRTtBRDI0Vko7O0FDNTRWRTtFQUNFO0FEKzRWSjs7QUNoNVZFO0VBQ0U7QURtNVZKOztBQ3A1VkU7RUFDRTtBRHU1Vko7O0FDeDVWRTtFQUNFO0FEMjVWSjs7QUM1NVZFO0VBQ0U7QUQrNVZKOztBQ2g2VkU7RUFDRTtBRG02Vko7O0FDcDZWRTtFQUNFO0FEdTZWSjs7QUN4NlZFO0VBQ0U7QUQyNlZKOztBQzU2VkU7RUFDRTtBRCs2Vko7O0FDaDdWRTtFQUNFO0FEbTdWSjs7QUNoN1ZBO0VBRUk7SUFDRTtFRGs3Vko7O0VDbjdWRTtJQUNFO0VEczdWSjs7RUN2N1ZFO0lBQ0U7RUQwN1ZKOztFQzM3VkU7SUFDRTtFRDg3Vko7O0VDLzdWRTtJQUNFO0VEazhWSjs7RUNuOFZFO0lBQ0U7RURzOFZKOztFQ3Y4VkU7SUFDRTtFRDA4Vko7O0VDMzhWRTtJQUNFO0VEODhWSjs7RUMvOFZFO0lBQ0U7RURrOVZKOztFQ245VkU7SUFDRTtFRHM5Vko7O0VDdjlWRTtJQUNFO0VEMDlWSjs7RUMzOVZFO0lBQ0U7RUQ4OVZKOztFQy85VkU7SUFDRTtFRGsrVko7O0VDbitWRTtJQUNFO0VEcytWSjs7RUN2K1ZFO0lBQ0U7RUQwK1ZKOztFQzMrVkU7SUFDRTtFRDgrVko7O0VDLytWRTtJQUNFO0VEay9WSjs7RUNuL1ZFO0lBQ0U7RURzL1ZKOztFQ3YvVkU7SUFDRTtFRDAvVko7O0VDMy9WRTtJQUNFO0VEOC9WSjs7RUMvL1ZFO0lBQ0U7RURrZ1dKOztFQ25nV0U7SUFDRTtFRHNnV0o7O0VDdmdXRTtJQUNFO0VEMGdXSjs7RUMzZ1dFO0lBQ0U7RUQ4Z1dKOztFQy9nV0U7SUFDRTtFRGtoV0o7O0VDbmhXRTtJQUNFO0VEc2hXSjs7RUN2aFdFO0lBQ0U7RUQwaFdKOztFQzNoV0U7SUFDRTtFRDhoV0o7O0VDL2hXRTtJQUNFO0VEa2lXSjs7RUNuaVdFO0lBQ0U7RURzaVdKOztFQ3ZpV0U7SUFDRTtFRDBpV0o7O0VDM2lXRTtJQUNFO0VEOGlXSjs7RUMvaVdFO0lBQ0U7RURraldKOztFQ25qV0U7SUFDRTtFRHNqV0o7O0VDdmpXRTtJQUNFO0VEMGpXSjs7RUMzaldFO0lBQ0U7RUQ4aldKOztFQy9qV0U7SUFDRTtFRGtrV0o7O0VDbmtXRTtJQUNFO0VEc2tXSjs7RUN2a1dFO0lBQ0U7RUQwa1dKOztFQzNrV0U7SUFDRTtFRDhrV0o7O0VDL2tXRTtJQUNFO0VEa2xXSjs7RUNubFdFO0lBQ0U7RURzbFdKOztFQ3ZsV0U7SUFDRTtFRDBsV0o7O0VDM2xXRTtJQUNFO0VEOGxXSjs7RUMvbFdFO0lBQ0U7RURrbVdKOztFQ25tV0U7SUFDRTtFRHNtV0o7O0VDdm1XRTtJQUNFO0VEMG1XSjs7RUMzbVdFO0lBQ0U7RUQ4bVdKOztFQy9tV0U7SUFDRTtFRGtuV0o7O0VDbm5XRTtJQUNFO0VEc25XSjs7RUN2bldFO0lBQ0U7RUQwbldKOztFQzNuV0U7SUFDRTtFRDhuV0o7O0VDL25XRTtJQUNFO0VEa29XSjs7RUNub1dFO0lBQ0U7RURzb1dKOztFQ3ZvV0U7SUFDRTtFRDBvV0o7O0VDM29XRTtJQUNFO0VEOG9XSjs7RUMvb1dFO0lBQ0U7RURrcFdKOztFQ25wV0U7SUFDRTtFRHNwV0o7O0VDdnBXRTtJQUNFO0VEMHBXSjs7RUMzcFdFO0lBQ0U7RUQ4cFdKOztFQy9wV0U7SUFDRTtFRGtxV0o7O0VDbnFXRTtJQUNFO0VEc3FXSjs7RUN2cVdFO0lBQ0U7RUQwcVdKOztFQzNxV0U7SUFDRTtFRDhxV0o7QUFDRjtBQzNxV0E7RUFBWTtBRDhxV1o7O0FDN3FXQTtFQUFhO0FEaXJXYjs7QUNocldBO0VBQWE7QURvcldiOztBQ25yV0E7RUFBYTtBRHVyV2I7O0FDdHJXQTtFQUFhO0FEMHJXYjs7QUN6cldBO0VBQWE7QUQ2cldiOztBQzVyV0E7RUFBYTtBRGdzV2I7O0FDL3JXQTtFQUFhO0FEbXNXYjs7QUNsc1dBO0VBQWM7QURzc1dkOztBZ0Z0a1hBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEZ5a1hEOztBZ0Z2a1hBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEYwa1hEOztBZ0Z0a1hBO0FBQ0E7RUFBdUI7SUFBTztFaEYya1g1QjtBQUNGO0FnRjNrWEE7RUFBMEI7SUFBTztFaEYra1gvQjtBQUNGO0FnRi9rWEE7RUFBa0I7SUFBTztJQUFtQztFaEZvbFgxRDtBQUNGO0FnRm5sWEE7RUFBK0I7SUFBTztFaEZ1bFhwQztBQUNGO0FnRnZsWEE7RUFBa0M7SUFBTztFaEYybFh2QztBQUNGO0FnRjNsWEE7RUFBMEI7SUFBTztJQUFvQztFaEZnbVhuRTtBQUNGO0FnRjlsWEM7RUFDQztFQUNBO0VBQ0E7QWhGZ21YRjs7QWdGNWxYQztFQUNDO0VBQ0E7RUFDQTtBaEYrbFhGOztBZ0Z6bVhDO0VBQ0M7RUFDQTtFQUNBO0FoRjRtWEY7O0FnRnhtWEM7RUFDQztFQUNBO0VBQ0E7QWhGMm1YRjs7QWdGcm5YQztFQUNDO0VBQ0E7RUFDQTtBaEZ3blhGOztBZ0ZwblhDO0VBQ0M7RUFDQTtFQUNBO0FoRnVuWEY7O0FnRmpvWEM7RUFDQztFQUNBO0VBQ0E7QWhGb29YRjs7QWdGaG9YQztFQUNDO0VBQ0E7RUFDQTtBaEZtb1hGOztBZ0Y3b1hDO0VBQ0M7RUFDQTtFQUNBO0FoRmdwWEY7O0FnRjVvWEM7RUFDQztFQUNBO0VBQ0E7QWhGK29YRjs7QWdGenBYQztFQUNDO0VBQ0E7RUFDQTtBaEY0cFhGOztBZ0Z4cFhDO0VBQ0M7RUFDQTtFQUNBO0FoRjJwWEY7O0FnRnJxWEM7RUFDQztFQUNBO0VBQ0E7QWhGd3FYRjs7QWdGcHFYQztFQUNDO0VBQ0E7RUFDQTtBaEZ1cVhGOztBZ0ZqclhDO0VBQ0M7RUFDQTtFQUNBO0FoRm9yWEY7O0FnRmhyWEM7RUFDQztFQUNBO0VBQ0E7QWhGbXJYRjs7QWdGN3JYQztFQUNDO0VBQ0E7RUFDQTtBaEZnc1hGOztBZ0Y1clhDO0VBQ0M7RUFDQTtFQUNBO0FoRityWEY7O0FnRnpzWEM7RUFDQztFQUNBO0VBQ0E7QWhGNHNYRjs7QWdGeHNYQztFQUNDO0VBQ0E7RUFDQTtBaEYyc1hGOztBZ0ZydFhDO0VBQ0M7RUFDQTtFQUNBO0FoRnd0WEY7O0FnRnB0WEM7RUFDQztFQUNBO0VBQ0E7QWhGdXRYRjs7QWdGanVYQztFQUNDO0VBQ0E7RUFDQTtBaEZvdVhGOztBZ0ZodVhDO0VBQ0M7RUFDQTtFQUNBO0FoRm11WEY7O0FnRjd1WEM7RUFDQztFQUNBO0VBQ0E7QWhGZ3ZYRjs7QWdGNXVYQztFQUNDO0VBQ0E7RUFDQTtBaEYrdVhGOztBZ0Z6dlhDO0VBQ0M7RUFDQTtFQUNBO0FoRjR2WEY7O0FnRnh2WEM7RUFDQztFQUNBO0VBQ0E7QWhGMnZYRjs7QWdGcndYQztFQUNDO0VBQ0E7RUFDQTtBaEZ3d1hGOztBZ0Zwd1hDO0VBQ0M7RUFDQTtFQUNBO0FoRnV3WEY7O0FnRmp4WEM7RUFDQztFQUNBO0VBQ0E7QWhGb3hYRjs7QWdGaHhYQztFQUNDO0VBQ0E7RUFDQTtBaEZteFhGOztBZ0Y3eFhDO0VBQ0M7RUFDQTtFQUNBO0FoRmd5WEY7O0FnRjV4WEM7RUFDQztFQUNBO0VBQ0E7QWhGK3hYRjs7QWdGenlYQztFQUNDO0VBQ0E7RUFDQTtBaEY0eVhGOztBZ0Z4eVhDO0VBQ0M7RUFDQTtFQUNBO0FoRjJ5WEY7O0FnRnJ6WEM7RUFDQztFQUNBO0VBQ0E7QWhGd3pYRjs7QWdGcHpYQztFQUNDO0VBQ0E7RUFDQTtBaEZ1elhGOztBZ0ZqMFhDO0VBQ0M7RUFDQTtFQUNBO0FoRm8wWEY7O0FnRmgwWEM7RUFDQztFQUNBO0VBQ0E7QWhGbTBYRjs7QWlGMTJYRTtFRDRDRDtJQUFLO0lBQVc7RWhGbzBYZjtFZ0ZuMFhEO0lBQUs7SUFBVztFaEZ1MFhmO0VnRnQwWEQ7SUFBTTtJQUFhO0VoRjAwWGxCO0VnRnowWEQ7SUFBTztJQUFhO0VoRjYwWG5CO0FBQ0Y7QWlGMTNYRTtFRHlDRDtJQUFLO0lBQVc7RWhGczFYZjtFZ0ZyMVhEO0lBQUs7SUFBVztFaEZ5MVhmO0VnRngxWEQ7SUFBTTtJQUFhO0VoRjQxWGxCO0VnRjMxWEQ7SUFBTztJQUFhO0VoRisxWG5CO0FBQ0Y7QWlGejRYRTtFRHNDRDtJQUFLO0lBQVc7RWhGdzJYZjtFZ0Z2MlhEO0lBQUs7SUFBVztFaEYyMlhmO0VnRjEyWEQ7SUFBTTtJQUFhO0VoRjgyWGxCO0VnRjcyWEQ7SUFBTztJQUFhO0VoRmkzWG5CO0FBQ0Y7QWlGeDVYRTtFRG1DRDtJQUFLO0lBQVc7RWhGMDNYZjtFZ0Z6M1hEO0lBQUs7SUFBVztFaEY2M1hmO0VnRjUzWEQ7SUFBTTtJQUFhO0VoRmc0WGxCO0VnRi8zWEQ7SUFBTztJQUFhO0VoRm00WG5CO0FBQ0Y7QWlGbjdYRTtFRG1ERDtJQUFNO0VoRm80WEw7RWdGbjRYRDtJQUFPO0lBQWE7SUFBYztFaEZ3NFhqQztBQUNGO0FpRjE3WEU7RURnREQ7SUFBTTtFaEY4NFhMO0VnRjc0WEQ7SUFBTztJQUFhO0lBQWM7RWhGazVYakM7QUFDRjtBaUZqOFhFO0VENkNEO0lBQU07RWhGdzVYTDtFZ0Z2NVhEO0lBQU87SUFBYTtJQUFjO0VoRjQ1WGpDO0FBQ0Y7QWlGeDhYRTtFRDBDRDtJQUFNO0VoRms2WEw7RWdGajZYRDtJQUFPO0lBQWE7SUFBYztFaEZzNlhqQztBQUNGO0FpRjM5WEU7RUQwREQ7SUFBTyxtQi9Fd0NFO0VENjNYUjtBQUNGO0FpRjc5WEU7RUR1REQ7SUFBTyxtQi9Fd0NFO0VEazRYUjtBQUNGO0FpRi85WEU7RURvREQ7SUFBTyxtQi9Fd0NFO0VEdTRYUjtBQUNGO0FpRmorWEU7RURpREQ7SUFBTyxtQi9Fd0NFO0VENDRYUjtBQUNGO0FpRi8rWEU7RURnRUQ7SUFBSztFaEZtN1hKO0VnRmw3WEQ7SUFBTztFaEZxN1hOO0VnRnA3WEQ7SUFBTztFaEZ1N1hOO0FBQ0Y7QWlGdi9YRTtFRDZERDtJQUFLO0VoRjg3WEo7RWdGNzdYRDtJQUFPO0VoRmc4WE47RWdGLzdYRDtJQUFPO0VoRms4WE47QUFDRjtBaUYvL1hFO0VEMEREO0lBQUs7RWhGeThYSjtFZ0Z4OFhEO0lBQU87RWhGMjhYTjtFZ0YxOFhEO0lBQU87RWhGNjhYTjtBQUNGO0FpRnZnWUU7RUR1REQ7SUFBSztFaEZvOVhKO0VnRm45WEQ7SUFBTztFaEZzOVhOO0VnRnI5WEQ7SUFBTztFaEZ3OVhOO0FBQ0Y7QWlGM2hZRTtFRHVFRDtJQUFLO0VoRnc5WEo7RWdGdjlYRDtJQUFPO0VoRjA5WE47RWdGejlYRDtJQUFPO0VoRjQ5WE47RWdGMzlYRDtJQUFPO0VoRjg5WE47RWdGNzlYRDtJQUFRO0VoRmcrWFA7QUFDRjtBaUZ6aVlFO0VEb0VEO0lBQUs7RWhGeStYSjtFZ0Z4K1hEO0lBQU87RWhGMitYTjtFZ0YxK1hEO0lBQU87RWhGNitYTjtFZ0Y1K1hEO0lBQU87RWhGKytYTjtFZ0Y5K1hEO0lBQVE7RWhGaS9YUDtBQUNGO0FpRnZqWUU7RURpRUQ7SUFBSztFaEYwL1hKO0VnRnovWEQ7SUFBTztFaEY0L1hOO0VnRjMvWEQ7SUFBTztFaEY4L1hOO0VnRjcvWEQ7SUFBTztFaEZnZ1lOO0VnRi8vWEQ7SUFBUTtFaEZrZ1lQO0FBQ0Y7QWlGcmtZRTtFRDhERDtJQUFLO0VoRjJnWUo7RWdGMWdZRDtJQUFPO0VoRjZnWU47RWdGNWdZRDtJQUFPO0VoRitnWU47RWdGOWdZRDtJQUFPO0VoRmloWU47RWdGaGhZRDtJQUFRO0VoRm1oWVA7QUFDRjtBaUYvbFlFO0VEK0VEO0lBQU07SUFBK0I7RWhGcWhZcEM7RWdGcGhZRDtJQUFRO0lBQWtDO0VoRndoWXpDO0VnRnZoWUQ7SUFBUTtJQUFrQztFaEYyaFl6QztFZ0YxaFlEO0lBQVE7SUFBbUM7RWhGOGhZMUM7RWdGN2hZRDtJQUFRO0lBQWtDO0VoRmlpWXpDO0VnRmhpWUQ7SUFBTztJQUFxQztJQUFVO0VoRnFpWXJEO0VnRnBpWUQ7SUFBUTtJQUF1QztFaEZ3aVk5QztBQUNGO0FpRjNuWUU7RUQ0RUQ7SUFBTTtJQUErQjtFaEZvallwQztFZ0ZuallEO0lBQVE7SUFBa0M7RWhGdWpZekM7RWdGdGpZRDtJQUFRO0lBQWtDO0VoRjBqWXpDO0VnRnpqWUQ7SUFBUTtJQUFtQztFaEY2alkxQztFZ0Y1allEO0lBQVE7SUFBa0M7RWhGZ2tZekM7RWdGL2pZRDtJQUFPO0lBQXFDO0lBQVU7RWhGb2tZckQ7RWdGbmtZRDtJQUFRO0lBQXVDO0VoRnVrWTlDO0FBQ0Y7QWlGdnBZRTtFRHlFRDtJQUFNO0lBQStCO0VoRm1sWXBDO0VnRmxsWUQ7SUFBUTtJQUFrQztFaEZzbFl6QztFZ0ZybFlEO0lBQVE7SUFBa0M7RWhGeWxZekM7RWdGeGxZRDtJQUFRO0lBQW1DO0VoRjRsWTFDO0VnRjNsWUQ7SUFBUTtJQUFrQztFaEYrbFl6QztFZ0Y5bFlEO0lBQU87SUFBcUM7SUFBVTtFaEZtbVlyRDtFZ0ZsbVlEO0lBQVE7SUFBdUM7RWhGc21ZOUM7QUFDRjtBaUZucllFO0VEc0VEO0lBQU07SUFBK0I7RWhGa25ZcEM7RWdGam5ZRDtJQUFRO0lBQWtDO0VoRnFuWXpDO0VnRnBuWUQ7SUFBUTtJQUFrQztFaEZ3bll6QztFZ0Z2bllEO0lBQVE7SUFBbUM7RWhGMm5ZMUM7RWdGMW5ZRDtJQUFRO0lBQWtDO0VoRjhuWXpDO0VnRjduWUQ7SUFBTztJQUFxQztJQUFVO0VoRmtvWXJEO0VnRmpvWUQ7SUFBUTtJQUF1QztFaEZxb1k5QztBQUNGO0FpRjN0WUU7RUQwRkQ7SUFBTTtFaEZxb1lMO0VnRnBvWUQ7SUFBUTtFaEZ1b1lQO0VnRnRvWUQ7SUFBUTtFaEZ5b1lQO0VnRnhvWUQ7SUFBUTtFaEYyb1lQO0VnRjFvWUQ7SUFBUTtFaEY2b1lQO0VnRjVvWUQ7SUFBUTtFaEYrb1lQO0VnRjlvWUQ7SUFBUTtFaEZpcFlQO0VnRmhwWUQ7SUFBUTtJQUFtQztJQUFVO0VoRnFwWXBEO0VnRnBwWUQ7SUFBUTtJQUFZO0VoRndwWW5CO0FBQ0Y7QWlGeHZZRTtFRHVGRDtJQUFNO0VoRnFxWUw7RWdGcHFZRDtJQUFRO0VoRnVxWVA7RWdGdHFZRDtJQUFRO0VoRnlxWVA7RWdGeHFZRDtJQUFRO0VoRjJxWVA7RWdGMXFZRDtJQUFRO0VoRjZxWVA7RWdGNXFZRDtJQUFRO0VoRitxWVA7RWdGOXFZRDtJQUFRO0VoRmlyWVA7RWdGaHJZRDtJQUFRO0lBQW1DO0lBQVU7RWhGcXJZcEQ7RWdGcHJZRDtJQUFRO0lBQVk7RWhGd3JZbkI7QUFDRjtBaUZyeFlFO0VEb0ZEO0lBQU07RWhGcXNZTDtFZ0Zwc1lEO0lBQVE7RWhGdXNZUDtFZ0Z0c1lEO0lBQVE7RWhGeXNZUDtFZ0Z4c1lEO0lBQVE7RWhGMnNZUDtFZ0Yxc1lEO0lBQVE7RWhGNnNZUDtFZ0Y1c1lEO0lBQVE7RWhGK3NZUDtFZ0Y5c1lEO0lBQVE7RWhGaXRZUDtFZ0ZodFlEO0lBQVE7SUFBbUM7SUFBVTtFaEZxdFlwRDtFZ0ZwdFlEO0lBQVE7SUFBWTtFaEZ3dFluQjtBQUNGO0FpRmx6WUU7RURpRkQ7SUFBTTtFaEZxdVlMO0VnRnB1WUQ7SUFBUTtFaEZ1dVlQO0VnRnR1WUQ7SUFBUTtFaEZ5dVlQO0VnRnh1WUQ7SUFBUTtFaEYydVlQO0VnRjF1WUQ7SUFBUTtFaEY2dVlQO0VnRjV1WUQ7SUFBUTtFaEYrdVlQO0VnRjl1WUQ7SUFBUTtFaEZpdllQO0VnRmh2WUQ7SUFBUTtJQUFtQztJQUFVO0VoRnF2WXBEO0VnRnB2WUQ7SUFBUTtJQUFZO0VoRnd2WW5CO0FBQ0Y7QWdGbHZZQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FoRm92WUY7QWdGbHZZQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FoRm92WUY7O0FnRmp2WUM7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUN0SEM7RUR3SUQ7SUFBTztFaEZtdllOO0VnRmx2WUQ7SUFBTztFaEZxdllOO0VnRnB2WUQ7SUFBTztFaEZ1dllOO0FBQ0Y7QWlGLzNZRTtFRHFJRDtJQUFPO0VoRjh2WU47RWdGN3ZZRDtJQUFPO0VoRmd3WU47RWdGL3ZZRDtJQUFPO0VoRmt3WU47QUFDRjtBaUZ2NFlFO0VEa0lEO0lBQU87RWhGeXdZTjtFZ0Z4d1lEO0lBQU87RWhGMndZTjtFZ0Yxd1lEO0lBQU87RWhGNndZTjtBQUNGO0FpRi80WUU7RUQrSEQ7SUFBTztFaEZveFlOO0VnRm54WUQ7SUFBTztFaEZzeFlOO0VnRnJ4WUQ7SUFBTztFaEZ3eFlOO0FBQ0Y7QWdGdHhZQTtFQUVDO0VBQ0E7RUFDQTtBaEZ1eFlEOztBZ0ZweFlBO0VBQ0M7RUFDQTtFQUNBO0FoRnV4WUQ7O0FpRjk2WUU7RUQySkQ7SUFBSztJQUFTO0VoRnl4WWI7RWdGeHhZRDtJQUFLO0VoRjJ4WUo7RWdGMXhZRDtJQUFPO0VoRjZ4WU47RWdGNXhZRDtJQUFPO0VoRit4WU47RWdGOXhZRDtJQUFPO0VoRml5WU47RWdGaHlZRDtJQUFPO0VoRm15WU47RWdGbHlZRDtJQUFPO0VoRnF5WU47RWdGcHlZRDtJQUFPO0VoRnV5WU47RWdGdHlZRDtJQUFPO0VoRnl5WU47RWdGeHlZRDtJQUFPO0VoRjJ5WU47RWdGMXlZRDtJQUFPO0VoRjZ5WU47RWdGNXlZRDtJQUFPO0VoRit5WU47RWdGOXlZRDtJQUFNO0VoRml6WUw7RWdGaHpZRDtJQUFRO0lBQVM7SUFBVztFaEZxelkzQjtBQUNGO0FpRjM5WUU7RUR3SkQ7SUFBSztJQUFTO0VoRncwWWI7RWdGdjBZRDtJQUFLO0VoRjAwWUo7RWdGejBZRDtJQUFPO0VoRjQwWU47RWdGMzBZRDtJQUFPO0VoRjgwWU47RWdGNzBZRDtJQUFPO0VoRmcxWU47RWdGLzBZRDtJQUFPO0VoRmsxWU47RWdGajFZRDtJQUFPO0VoRm8xWU47RWdGbjFZRDtJQUFPO0VoRnMxWU47RWdGcjFZRDtJQUFPO0VoRncxWU47RWdGdjFZRDtJQUFPO0VoRjAxWU47RWdGejFZRDtJQUFPO0VoRjQxWU47RWdGMzFZRDtJQUFPO0VoRjgxWU47RWdGNzFZRDtJQUFNO0VoRmcyWUw7RWdGLzFZRDtJQUFRO0lBQVM7SUFBVztFaEZvMlkzQjtBQUNGO0FpRnZnWkU7RURxSkQ7SUFBSztJQUFTO0VoRnUzWWI7RWdGdDNZRDtJQUFLO0VoRnkzWUo7RWdGeDNZRDtJQUFPO0VoRjIzWU47RWdGMTNZRDtJQUFPO0VoRjYzWU47RWdGNTNZRDtJQUFPO0VoRiszWU47RWdGOTNZRDtJQUFPO0VoRmk0WU47RWdGaDRZRDtJQUFPO0VoRm00WU47RWdGbDRZRDtJQUFPO0VoRnE0WU47RWdGcDRZRDtJQUFPO0VoRnU0WU47RWdGdDRZRDtJQUFPO0VoRnk0WU47RWdGeDRZRDtJQUFPO0VoRjI0WU47RWdGMTRZRDtJQUFPO0VoRjY0WU47RWdGNTRZRDtJQUFNO0VoRis0WUw7RWdGOTRZRDtJQUFRO0lBQVM7SUFBVztFaEZtNVkzQjtBQUNGO0FpRm5qWkU7RURrSkQ7SUFBSztJQUFTO0VoRnM2WWI7RWdGcjZZRDtJQUFLO0VoRnc2WUo7RWdGdjZZRDtJQUFPO0VoRjA2WU47RWdGejZZRDtJQUFPO0VoRjQ2WU47RWdGMzZZRDtJQUFPO0VoRjg2WU47RWdGNzZZRDtJQUFPO0VoRmc3WU47RWdGLzZZRDtJQUFPO0VoRms3WU47RWdGajdZRDtJQUFPO0VoRm83WU47RWdGbjdZRDtJQUFPO0VoRnM3WU47RWdGcjdZRDtJQUFPO0VoRnc3WU47RWdGdjdZRDtJQUFPO0VoRjA3WU47RWdGejdZRDtJQUFPO0VoRjQ3WU47RWdGMzdZRDtJQUFNO0VoRjg3WUw7RWdGNzdZRDtJQUFRO0lBQVM7SUFBVztFaEZrOFkzQjtBQUNGO0FnRjk3WUM7RUFDQztFQUVBO0VBQ0E7RUFDQTtBaEYrN1lGOztBQ2puWkE7Ozs7Q0FBQTtBQVFBOztDQUFBO0FBS0E7RUFDQTtFQUNBO0VBTUE7QUQwbVpBO0FDeG1aQTtFQUNBO0VBQ0E7RUFNQTtBRHFtWkE7QUNubVpBO0VBQ0E7RUFDQTtFQU1BO0FEZ21aQTtBQzlsWkE7RUFDQTtFQUNBO0VBTUE7QUQybFpBO0FDemxaQTtFQUNBO0VBQ0E7RUFNQTtBRHNsWkE7QUNubFpBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7QURnbFpBO0FDaGdaQTtFQUFXO0FEbWdaWDs7QUNsZ1pBO0VBQWM7QURzZ1pkOztBQ3JnWkE7RUFFRTtFQUNBO0FEdWdaRjs7QUNwZ1pBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QURzZ1pGO0FDcmdaRTtFQUNFO0VBQ0E7QUR1Z1pKO0FDcmdaRTtFQUNFO0FEdWdaSjs7QUNsZ1pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEcWdaRjtBQ3BnWkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURxZ1pKOztBQy8vWUE7RUFBMEI7QURtZ1oxQjs7QUNoZ1pBO0VBQWEseUJBdEdIO0FEMG1aVjs7QUNuZ1pBO0VBQWUsY0F2R0w7QUQ4bVpWOztBQ3JnWkE7RUFBZSx5QkF4R0E7QURpblpmOztBQ3hnWkE7RUFBa0IsY0F6R0g7QURxblpmOztBQzNnWkE7RUFBZ0IseUJBdkdFO0FEc25abEI7O0FDOWdaQTtFQUFtQixjQXhHRDtBRDBuWmxCOztBQ2hoWkE7RUFBZSx5QkF6R0M7QUQ2blpoQjs7QUNuaFpBO0VBQWlCLGNBMUdEO0FEaW9aaEI7O0FDdGhaQTtFQUFlLHlCQTFHRztBRG9vWmxCOztBQ3poWkE7RUFBa0IsY0EzR0E7QUR3b1psQjs7QUMzaFpBO0VBQWUseUJBbkdIO0FEa29aWjs7QUM5aFpBO0VBQWlCLGNBcEdMO0FEc29aWjs7QUNqaVpBO0VBQWlCLHlCQXBHQTtBRHlvWmpCOztBQ3BpWkE7RUFBbUIsY0FyR0Y7QUQ2b1pqQjs7QUN2aVpBO0VBQWtCLHlCQXJHQztBRGdwWm5COztBQzFpWkE7RUFBb0IsY0F0R0Q7QURvcFpuQjs7QUM3aVpBO0VBQWlCLHlCQXRHQTtBRHVwWmpCOztBQ2hqWkE7RUFBbUIsY0F2R0Y7QUQycFpqQjs7QUNualpBO0VBQWtCLHlCQXZHQztBRDhwWm5COztBQ3RqWkE7RUFBb0IsY0F4R0Q7QURrcVpuQjs7QUN6alpBO0VBQW1CLHlCQXhHQztBRHFxWnBCOztBQzVqWkE7RUFBcUIsY0F6R0Q7QUR5cVpwQjs7QUM5alpBO0VBQVcseUJBN0lIO0FEK3NaUjs7QUNqa1pBO0VBQWEsY0E5SUw7QURtdFpSOztBQ3BrWkE7RUFBVSx5QkFyRkg7QUQ2cFpQOztBQ3ZrWkE7RUFBWSxjQXRGTDtBRGlxWlA7O0FDemtaQTtFQUFZLG9EQWxHQztBRCtxWmI7O0FDNWtaQTtFQUFjLG9EQWxHQztBRGtyWmY7O0FDOWtaQTtFQUFnQix5QkE1Rkg7QUQ4cVpiOztBQ2psWkE7RUFBa0IsY0E3Rkw7QURrclpiOztBQ2xsWkE7RUFBVztBRHNsWlg7O0FDcmxaQTtFQUFhO0FEeWxaYjs7QUN0bFpBO0VBQVMseUJBM0pIO0FEcXZaTjs7QUN6bFpBO0VBQVc7QUQ2bFpYOztBQzNsWkE7RUFBVyx5QkF4Skg7QUR1dlpSOztBQzlsWkE7RUFBYTtBRGttWmI7O0FDaG1aQTtFQUFNO0VBQ047QURvbVpBOztBQzlsWkU7RUFDRTtFQUNBO0FEaW1aSjs7QUM5bFpBO0VBQ0U7QURpbVpGOztBQzdsWkE7RUFFRTtBRCtsWkY7QUM5bFpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QURnbVpKOztBQzdsWkE7RUFDRTtBRGdtWkY7O0FDNWxaQTtFQUVFO0FEOGxaRjtBQzdsWkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRCtsWko7O0FDemxaQTtFQUNFO0FENGxaRjs7QUN4bFpBO0VBRUUscUJBMUxVO0FEb3haWjs7QUN4bFpBO0VBQ0U7QUQybFpGOztBQ2psWkE7RUFFRTtBRG1sWkY7O0FDaGxaQTtFQUNFLHlCQTdNVTtFQThNVixjQWpPSztBRG96WlA7QUNqbFpFO0VBQ0UseUJBM05jO0VBNE5kO0VBQ0E7QURtbFpKOztBQ2hsWkE7RUFDRTtFQUNBO0VBQ0EsY0E1T0s7RUE2T0w7QURtbFpGO0FDbGxaRTtFQUNFLHlCQXRPYztFQXVPZDtFQUNBO0FEb2xaSjs7QUM5a1pBO0VBQWlCO0FEa2xaakI7O0FDamxaQTtFQUFtQjtBRHFsWm5COztBQ3BsWkE7RUFBbUI7QUR3bFpuQjs7QUN2bFpBO0VBQW1CO0FEMmxabkI7O0FDMWxaQTtFQUFxQjtBRDhsWnJCOztBQzdsWkE7RUFBcUI7QURpbVpyQjs7QUMvbFpBO0VBQXFCO0FEbW1ackI7O0FDbG1aQTtFQUF1QjtBRHNtWnZCOztBQ3JtWkE7RUFBdUI7QUR5bVp2Qjs7QUN4bVpBO0VBQXVCO0FENG1adkI7O0FDM21aQTtFQUF5QjtBRCttWnpCOztBQzltWkE7RUFBeUI7QURrblp6Qjs7QUNoblpBO0VBQVk7QURvblpaOztBQ25uWkE7RUFBWTtBRHVuWlo7O0FDcm5aQTtFQUNHO0FEd25aSDs7QUNyblpFO0VBQ0U7QUR3blpKOztBQ3puWkU7RUFDRTtBRDRuWko7O0FDN25aRTtFQUNFO0FEZ29aSjs7QUNqb1pFO0VBQ0U7QURvb1pKOztBQ3JvWkU7RUFDRTtBRHdvWko7O0FDem9aRTtFQUNFO0FENG9aSjs7QUM3b1pFO0VBQ0U7QURncFpKOztBQ2pwWkU7RUFDRTtBRG9wWko7O0FDcnBaRTtFQUNFO0FEd3BaSjs7QUN6cFpFO0VBQ0U7QUQ0cFpKOztBQ3hwWkU7RUFDRTtBRDJwWko7O0FDNXBaRTtFQUNFO0FEK3BaSjs7QUNocVpFO0VBQ0U7QURtcVpKOztBQ3BxWkU7RUFDRTtBRHVxWko7O0FDeHFaRTtFQUNFO0FEMnFaSjs7QUM1cVpFO0VBQ0U7QUQrcVpKOztBQ2hyWkU7RUFDRTtBRG1yWko7O0FDcHJaRTtFQUNFO0FEdXJaSjs7QUN4clpFO0VBQ0U7QUQyclpKOztBQzVyWkU7RUFDRTtBRCtyWko7O0FDaHNaRTtFQUNFO0FEbXNaSjs7QUNwc1pFO0VBQ0U7QUR1c1pKOztBQ3hzWkU7RUFDRTtBRDJzWko7O0FDNXNaRTtFQUNFO0FEK3NaSjs7QUNodFpFO0VBQ0U7QURtdFpKOztBQ3B0WkU7RUFDRTtBRHV0Wko7O0FDeHRaRTtFQUNFO0FEMnRaSjs7QUM1dFpFO0VBQ0U7QUQrdFpKOztBQ2h1WkU7RUFDRTtBRG11Wko7O0FDcHVaRTtFQUNFO0FEdXVaSjs7QUN4dVpFO0VBQ0U7QUQydVpKOztBQzV1WkU7RUFDRTtBRCt1Wko7O0FDaHZaRTtFQUNFO0FEbXZaSjs7QUNwdlpFO0VBQ0U7QUR1dlpKOztBQ3h2WkU7RUFDRTtBRDJ2Wko7O0FDNXZaRTtFQUNFO0FEK3ZaSjs7QUNod1pFO0VBQ0U7QURtd1pKOztBQ3B3WkU7RUFDRTtBRHV3Wko7O0FDeHdaRTtFQUNFO0FEMndaSjs7QUM1d1pFO0VBQ0U7QUQrd1pKOztBQ2h4WkU7RUFDRTtBRG14Wko7O0FDcHhaRTtFQUNFO0FEdXhaSjs7QUN4eFpFO0VBQ0U7QUQyeFpKOztBQzV4WkU7RUFDRTtBRCt4Wko7O0FDaHlaRTtFQUNFO0FEbXlaSjs7QUNweVpFO0VBQ0U7QUR1eVpKOztBQ3h5WkU7RUFDRTtBRDJ5Wko7O0FDNXlaRTtFQUNFO0FEK3laSjs7QUNoelpFO0VBQ0U7QURtelpKOztBQ3B6WkU7RUFDRTtBRHV6Wko7O0FDeHpaRTtFQUNFO0FEMnpaSjs7QUM1elpFO0VBQ0U7QUQrelpKOztBQ2gwWkU7RUFDRTtBRG0wWko7O0FDcDBaRTtFQUNFO0FEdTBaSjs7QUN4MFpFO0VBQ0U7QUQyMFpKOztBQzUwWkU7RUFDRTtBRCswWko7O0FDaDFaRTtFQUNFO0FEbTFaSjs7QUNwMVpFO0VBQ0U7QUR1MVpKOztBQ3gxWkU7RUFDRTtBRDIxWko7O0FDNTFaRTtFQUNFO0FEKzFaSjs7QUNoMlpFO0VBQ0U7QURtMlpKOztBQ3AyWkU7RUFDRTtBRHUyWko7O0FDeDJaRTtFQUNFO0FEMjJaSjs7QUM1MlpFO0VBQ0U7QUQrMlpKOztBQ2gzWkU7RUFDRTtBRG0zWko7O0FDcDNaRTtFQUNFO0FEdTNaSjs7QUN4M1pFO0VBQ0U7QUQyM1pKOztBQzUzWkU7RUFDRTtBRCszWko7O0FDaDRaRTtFQUNFO0FEbTRaSjs7QUNwNFpFO0VBQ0U7QUR1NFpKOztBQ3g0WkU7RUFDRTtBRDI0Wko7O0FDNTRaRTtFQUNFO0FEKzRaSjs7QUNoNVpFO0VBQ0U7QURtNVpKOztBQ3A1WkU7RUFDRTtBRHU1Wko7O0FDcDVaQTtFQUVJO0lBQ0U7RURzNVpKOztFQ3Y1WkU7SUFDRTtFRDA1Wko7O0VDMzVaRTtJQUNFO0VEODVaSjs7RUMvNVpFO0lBQ0U7RURrNlpKOztFQ242WkU7SUFDRTtFRHM2Wko7O0VDdjZaRTtJQUNFO0VEMDZaSjs7RUMzNlpFO0lBQ0U7RUQ4NlpKOztFQy82WkU7SUFDRTtFRGs3Wko7O0VDbjdaRTtJQUNFO0VEczdaSjs7RUN2N1pFO0lBQ0U7RUQwN1pKOztFQzM3WkU7SUFDRTtFRDg3Wko7O0VDLzdaRTtJQUNFO0VEazhaSjs7RUNuOFpFO0lBQ0U7RURzOFpKOztFQ3Y4WkU7SUFDRTtFRDA4Wko7O0VDMzhaRTtJQUNFO0VEODhaSjs7RUMvOFpFO0lBQ0U7RURrOVpKOztFQ245WkU7SUFDRTtFRHM5Wko7O0VDdjlaRTtJQUNFO0VEMDlaSjs7RUMzOVpFO0lBQ0U7RUQ4OVpKOztFQy85WkU7SUFDRTtFRGsrWko7O0VDbitaRTtJQUNFO0VEcytaSjs7RUN2K1pFO0lBQ0U7RUQwK1pKOztFQzMrWkU7SUFDRTtFRDgrWko7O0VDLytaRTtJQUNFO0VEay9aSjs7RUNuL1pFO0lBQ0U7RURzL1pKOztFQ3YvWkU7SUFDRTtFRDAvWko7O0VDMy9aRTtJQUNFO0VEOC9aSjs7RUMvL1pFO0lBQ0U7RURrZ2FKOztFQ25nYUU7SUFDRTtFRHNnYUo7O0VDdmdhRTtJQUNFO0VEMGdhSjs7RUMzZ2FFO0lBQ0U7RUQ4Z2FKOztFQy9nYUU7SUFDRTtFRGtoYUo7O0VDbmhhRTtJQUNFO0VEc2hhSjs7RUN2aGFFO0lBQ0U7RUQwaGFKOztFQzNoYUU7SUFDRTtFRDhoYUo7O0VDL2hhRTtJQUNFO0VEa2lhSjs7RUNuaWFFO0lBQ0U7RURzaWFKOztFQ3ZpYUU7SUFDRTtFRDBpYUo7O0VDM2lhRTtJQUNFO0VEOGlhSjs7RUMvaWFFO0lBQ0U7RURramFKOztFQ25qYUU7SUFDRTtFRHNqYUo7O0VDdmphRTtJQUNFO0VEMGphSjs7RUMzamFFO0lBQ0U7RUQ4amFKOztFQy9qYUU7SUFDRTtFRGtrYUo7O0VDbmthRTtJQUNFO0VEc2thSjs7RUN2a2FFO0lBQ0U7RUQwa2FKOztFQzNrYUU7SUFDRTtFRDhrYUo7O0VDL2thRTtJQUNFO0VEa2xhSjs7RUNubGFFO0lBQ0U7RURzbGFKOztFQ3ZsYUU7SUFDRTtFRDBsYUo7O0VDM2xhRTtJQUNFO0VEOGxhSjs7RUMvbGFFO0lBQ0U7RURrbWFKOztFQ25tYUU7SUFDRTtFRHNtYUo7O0VDdm1hRTtJQUNFO0VEMG1hSjs7RUMzbWFFO0lBQ0U7RUQ4bWFKOztFQy9tYUU7SUFDRTtFRGtuYUo7O0VDbm5hRTtJQUNFO0VEc25hSjs7RUN2bmFFO0lBQ0U7RUQwbmFKOztFQzNuYUU7SUFDRTtFRDhuYUo7O0VDL25hRTtJQUNFO0VEa29hSjs7RUNub2FFO0lBQ0U7RURzb2FKOztFQ3ZvYUU7SUFDRTtFRDBvYUo7O0VDM29hRTtJQUNFO0VEOG9hSjs7RUMvb2FFO0lBQ0U7RURrcGFKO0FBQ0Y7QUMvb2FBO0VBQVk7QURrcGFaOztBQ2pwYUE7RUFBYTtBRHFwYWI7O0FDcHBhQTtFQUFhO0FEd3BhYjs7QUN2cGFBO0VBQWE7QUQycGFiOztBQzFwYUE7RUFBYTtBRDhwYWI7O0FDN3BhQTtFQUFhO0FEaXFhYjs7QUNocWFBO0VBQWE7QURvcWFiOztBQ25xYUE7RUFBYTtBRHVxYWI7O0FDdHFhQTtFQUFjO0FEMHFhZDs7QUM3aWJBOzs7O0NBQUE7QUFRQTs7Q0FBQTtBQUtBO0VBQ0E7RUFDQTtFQU1BO0FEc2liQTtBQ3BpYkE7RUFDQTtFQUNBO0VBTUE7QURpaWJBO0FDL2hiQTtFQUNBO0VBQ0E7RUFNQTtBRDRoYkE7QUMxaGJBO0VBQ0E7RUFDQTtFQU1BO0FEdWhiQTtBQ3JoYkE7RUFDQTtFQUNBO0VBTUE7QURraGJBO0FDL2diQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0FENGdiQTtBQzU3YUE7RUFBVztBRCs3YVg7O0FDOTdhQTtFQUFjO0FEazhhZDs7QUNqOGFBO0VBRUU7RUFDQTtBRG04YUY7O0FDaDhhQTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0FEazhhRjtBQ2o4YUU7RUFDRTtFQUNBO0FEbThhSjtBQ2o4YUU7RUFDRTtBRG04YUo7O0FDOTdhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRGk4YUY7QUNoOGFFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEaThhSjs7QUMzN2FBO0VBQTBCO0FEKzdhMUI7O0FDNTdhQTtFQUFhLHlCQXRHSDtBRHNpYlY7O0FDLzdhQTtFQUFlLGNBdkdMO0FEMGliVjs7QUNqOGFBO0VBQWUseUJBeEdBO0FENmliZjs7QUNwOGFBO0VBQWtCLGNBekdIO0FEaWpiZjs7QUN2OGFBO0VBQWdCLHlCQXZHRTtBRGtqYmxCOztBQzE4YUE7RUFBbUIsY0F4R0Q7QURzamJsQjs7QUM1OGFBO0VBQWUseUJBekdDO0FEeWpiaEI7O0FDLzhhQTtFQUFpQixjQTFHRDtBRDZqYmhCOztBQ2w5YUE7RUFBZSx5QkExR0c7QURna2JsQjs7QUNyOWFBO0VBQWtCLGNBM0dBO0FEb2tibEI7O0FDdjlhQTtFQUFlLHlCQW5HSDtBRDhqYlo7O0FDMTlhQTtFQUFpQixjQXBHTDtBRGtrYlo7O0FDNzlhQTtFQUFpQix5QkFwR0E7QURxa2JqQjs7QUNoK2FBO0VBQW1CLGNBckdGO0FEeWtiakI7O0FDbithQTtFQUFrQix5QkFyR0M7QUQ0a2JuQjs7QUN0K2FBO0VBQW9CLGNBdEdEO0FEZ2xibkI7O0FDeithQTtFQUFpQix5QkF0R0E7QURtbGJqQjs7QUM1K2FBO0VBQW1CLGNBdkdGO0FEdWxiakI7O0FDLythQTtFQUFrQix5QkF2R0M7QUQwbGJuQjs7QUNsL2FBO0VBQW9CLGNBeEdEO0FEOGxibkI7O0FDci9hQTtFQUFtQix5QkF4R0M7QURpbWJwQjs7QUN4L2FBO0VBQXFCLGNBekdEO0FEcW1icEI7O0FDMS9hQTtFQUFXLHlCQTdJSDtBRDJvYlI7O0FDNy9hQTtFQUFhLGNBOUlMO0FEK29iUjs7QUNoZ2JBO0VBQVUseUJBckZIO0FEeWxiUDs7QUNuZ2JBO0VBQVksY0F0Rkw7QUQ2bGJQOztBQ3JnYkE7RUFBWSxvREFsR0M7QUQybWJiOztBQ3hnYkE7RUFBYyxvREFsR0M7QUQ4bWJmOztBQzFnYkE7RUFBZ0IseUJBNUZIO0FEMG1iYjs7QUM3Z2JBO0VBQWtCLGNBN0ZMO0FEOG1iYjs7QUM5Z2JBO0VBQVc7QURraGJYOztBQ2poYkE7RUFBYTtBRHFoYmI7O0FDbGhiQTtFQUFTLHlCQTNKSDtBRGlyYk47O0FDcmhiQTtFQUFXO0FEeWhiWDs7QUN2aGJBO0VBQVcseUJBeEpIO0FEbXJiUjs7QUMxaGJBO0VBQWE7QUQ4aGJiOztBQzVoYkE7RUFBTTtFQUNOO0FEZ2liQTs7QUMxaGJFO0VBQ0U7RUFDQTtBRDZoYko7O0FDMWhiQTtFQUNFO0FENmhiRjs7QUN6aGJBO0VBRUU7QUQyaGJGO0FDMWhiRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FENGhiSjs7QUN6aGJBO0VBQ0U7QUQ0aGJGOztBQ3hoYkE7RUFFRTtBRDBoYkY7QUN6aGJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUQyaGJKOztBQ3JoYkE7RUFDRTtBRHdoYkY7O0FDcGhiQTtFQUVFLHFCQTFMVTtBRGd0Ylo7O0FDcGhiQTtFQUNFO0FEdWhiRjs7QUM3Z2JBO0VBRUU7QUQrZ2JGOztBQzVnYkE7RUFDRSx5QkE3TVU7RUE4TVYsY0FqT0s7QURndmJQO0FDN2diRTtFQUNFLHlCQTNOYztFQTROZDtFQUNBO0FEK2diSjs7QUM1Z2JBO0VBQ0U7RUFDQTtFQUNBLGNBNU9LO0VBNk9MO0FEK2diRjtBQzlnYkU7RUFDRSx5QkF0T2M7RUF1T2Q7RUFDQTtBRGdoYko7O0FDMWdiQTtFQUFpQjtBRDhnYmpCOztBQzdnYkE7RUFBbUI7QURpaGJuQjs7QUNoaGJBO0VBQW1CO0FEb2hibkI7O0FDbmhiQTtFQUFtQjtBRHVoYm5COztBQ3RoYkE7RUFBcUI7QUQwaGJyQjs7QUN6aGJBO0VBQXFCO0FENmhickI7O0FDM2hiQTtFQUFxQjtBRCtoYnJCOztBQzloYkE7RUFBdUI7QURraWJ2Qjs7QUNqaWJBO0VBQXVCO0FEcWlidkI7O0FDcGliQTtFQUF1QjtBRHdpYnZCOztBQ3ZpYkE7RUFBeUI7QUQyaWJ6Qjs7QUMxaWJBO0VBQXlCO0FEOGliekI7O0FDNWliQTtFQUFZO0FEZ2piWjs7QUMvaWJBO0VBQVk7QURtamJaOztBQ2pqYkE7RUFDRztBRG9qYkg7O0FDampiRTtFQUNFO0FEb2piSjs7QUNyamJFO0VBQ0U7QUR3amJKOztBQ3pqYkU7RUFDRTtBRDRqYko7O0FDN2piRTtFQUNFO0FEZ2tiSjs7QUNqa2JFO0VBQ0U7QURva2JKOztBQ3JrYkU7RUFDRTtBRHdrYko7O0FDemtiRTtFQUNFO0FENGtiSjs7QUM3a2JFO0VBQ0U7QURnbGJKOztBQ2psYkU7RUFDRTtBRG9sYko7O0FDcmxiRTtFQUNFO0FEd2xiSjs7QUNwbGJFO0VBQ0U7QUR1bGJKOztBQ3hsYkU7RUFDRTtBRDJsYko7O0FDNWxiRTtFQUNFO0FEK2xiSjs7QUNobWJFO0VBQ0U7QURtbWJKOztBQ3BtYkU7RUFDRTtBRHVtYko7O0FDeG1iRTtFQUNFO0FEMm1iSjs7QUM1bWJFO0VBQ0U7QUQrbWJKOztBQ2huYkU7RUFDRTtBRG1uYko7O0FDcG5iRTtFQUNFO0FEdW5iSjs7QUN4bmJFO0VBQ0U7QUQybmJKOztBQzVuYkU7RUFDRTtBRCtuYko7O0FDaG9iRTtFQUNFO0FEbW9iSjs7QUNwb2JFO0VBQ0U7QUR1b2JKOztBQ3hvYkU7RUFDRTtBRDJvYko7O0FDNW9iRTtFQUNFO0FEK29iSjs7QUNocGJFO0VBQ0U7QURtcGJKOztBQ3BwYkU7RUFDRTtBRHVwYko7O0FDeHBiRTtFQUNFO0FEMnBiSjs7QUM1cGJFO0VBQ0U7QUQrcGJKOztBQ2hxYkU7RUFDRTtBRG1xYko7O0FDcHFiRTtFQUNFO0FEdXFiSjs7QUN4cWJFO0VBQ0U7QUQycWJKOztBQzVxYkU7RUFDRTtBRCtxYko7O0FDaHJiRTtFQUNFO0FEbXJiSjs7QUNwcmJFO0VBQ0U7QUR1cmJKOztBQ3hyYkU7RUFDRTtBRDJyYko7O0FDNXJiRTtFQUNFO0FEK3JiSjs7QUNoc2JFO0VBQ0U7QURtc2JKOztBQ3BzYkU7RUFDRTtBRHVzYko7O0FDeHNiRTtFQUNFO0FEMnNiSjs7QUM1c2JFO0VBQ0U7QUQrc2JKOztBQ2h0YkU7RUFDRTtBRG10Yko7O0FDcHRiRTtFQUNFO0FEdXRiSjs7QUN4dGJFO0VBQ0U7QUQydGJKOztBQzV0YkU7RUFDRTtBRCt0Yko7O0FDaHViRTtFQUNFO0FEbXViSjs7QUNwdWJFO0VBQ0U7QUR1dWJKOztBQ3h1YkU7RUFDRTtBRDJ1Yko7O0FDNXViRTtFQUNFO0FEK3ViSjs7QUNodmJFO0VBQ0U7QURtdmJKOztBQ3B2YkU7RUFDRTtBRHV2Yko7O0FDeHZiRTtFQUNFO0FEMnZiSjs7QUM1dmJFO0VBQ0U7QUQrdmJKOztBQ2h3YkU7RUFDRTtBRG13Yko7O0FDcHdiRTtFQUNFO0FEdXdiSjs7QUN4d2JFO0VBQ0U7QUQyd2JKOztBQzV3YkU7RUFDRTtBRCt3Yko7O0FDaHhiRTtFQUNFO0FEbXhiSjs7QUNweGJFO0VBQ0U7QUR1eGJKOztBQ3h4YkU7RUFDRTtBRDJ4Yko7O0FDNXhiRTtFQUNFO0FEK3hiSjs7QUNoeWJFO0VBQ0U7QURteWJKOztBQ3B5YkU7RUFDRTtBRHV5Yko7O0FDeHliRTtFQUNFO0FEMnliSjs7QUM1eWJFO0VBQ0U7QUQreWJKOztBQ2h6YkU7RUFDRTtBRG16Yko7O0FDcHpiRTtFQUNFO0FEdXpiSjs7QUN4emJFO0VBQ0U7QUQyemJKOztBQzV6YkU7RUFDRTtBRCt6Yko7O0FDaDBiRTtFQUNFO0FEbTBiSjs7QUNwMGJFO0VBQ0U7QUR1MGJKOztBQ3gwYkU7RUFDRTtBRDIwYko7O0FDNTBiRTtFQUNFO0FEKzBiSjs7QUNoMWJFO0VBQ0U7QURtMWJKOztBQ2gxYkE7RUFFSTtJQUNFO0VEazFiSjs7RUNuMWJFO0lBQ0U7RURzMWJKOztFQ3YxYkU7SUFDRTtFRDAxYko7O0VDMzFiRTtJQUNFO0VEODFiSjs7RUMvMWJFO0lBQ0U7RURrMmJKOztFQ24yYkU7SUFDRTtFRHMyYko7O0VDdjJiRTtJQUNFO0VEMDJiSjs7RUMzMmJFO0lBQ0U7RUQ4MmJKOztFQy8yYkU7SUFDRTtFRGszYko7O0VDbjNiRTtJQUNFO0VEczNiSjs7RUN2M2JFO0lBQ0U7RUQwM2JKOztFQzMzYkU7SUFDRTtFRDgzYko7O0VDLzNiRTtJQUNFO0VEazRiSjs7RUNuNGJFO0lBQ0U7RURzNGJKOztFQ3Y0YkU7SUFDRTtFRDA0Yko7O0VDMzRiRTtJQUNFO0VEODRiSjs7RUMvNGJFO0lBQ0U7RURrNWJKOztFQ241YkU7SUFDRTtFRHM1Yko7O0VDdjViRTtJQUNFO0VEMDViSjs7RUMzNWJFO0lBQ0U7RUQ4NWJKOztFQy81YkU7SUFDRTtFRGs2Yko7O0VDbjZiRTtJQUNFO0VEczZiSjs7RUN2NmJFO0lBQ0U7RUQwNmJKOztFQzM2YkU7SUFDRTtFRDg2Yko7O0VDLzZiRTtJQUNFO0VEazdiSjs7RUNuN2JFO0lBQ0U7RURzN2JKOztFQ3Y3YkU7SUFDRTtFRDA3Yko7O0VDMzdiRTtJQUNFO0VEODdiSjs7RUMvN2JFO0lBQ0U7RURrOGJKOztFQ244YkU7SUFDRTtFRHM4Yko7O0VDdjhiRTtJQUNFO0VEMDhiSjs7RUMzOGJFO0lBQ0U7RUQ4OGJKOztFQy84YkU7SUFDRTtFRGs5Yko7O0VDbjliRTtJQUNFO0VEczliSjs7RUN2OWJFO0lBQ0U7RUQwOWJKOztFQzM5YkU7SUFDRTtFRDg5Yko7O0VDLzliRTtJQUNFO0VEaytiSjs7RUNuK2JFO0lBQ0U7RURzK2JKOztFQ3YrYkU7SUFDRTtFRDArYko7O0VDMytiRTtJQUNFO0VEOCtiSjs7RUMvK2JFO0lBQ0U7RURrL2JKOztFQ24vYkU7SUFDRTtFRHMvYko7O0VDdi9iRTtJQUNFO0VEMC9iSjs7RUMzL2JFO0lBQ0U7RUQ4L2JKOztFQy8vYkU7SUFDRTtFRGtnY0o7O0VDbmdjRTtJQUNFO0VEc2djSjs7RUN2Z2NFO0lBQ0U7RUQwZ2NKOztFQzNnY0U7SUFDRTtFRDhnY0o7O0VDL2djRTtJQUNFO0VEa2hjSjs7RUNuaGNFO0lBQ0U7RURzaGNKOztFQ3ZoY0U7SUFDRTtFRDBoY0o7O0VDM2hjRTtJQUNFO0VEOGhjSjs7RUMvaGNFO0lBQ0U7RURraWNKOztFQ25pY0U7SUFDRTtFRHNpY0o7O0VDdmljRTtJQUNFO0VEMGljSjs7RUMzaWNFO0lBQ0U7RUQ4aWNKOztFQy9pY0U7SUFDRTtFRGtqY0o7O0VDbmpjRTtJQUNFO0VEc2pjSjs7RUN2amNFO0lBQ0U7RUQwamNKOztFQzNqY0U7SUFDRTtFRDhqY0o7O0VDL2pjRTtJQUNFO0VEa2tjSjs7RUNua2NFO0lBQ0U7RURza2NKOztFQ3ZrY0U7SUFDRTtFRDBrY0o7O0VDM2tjRTtJQUNFO0VEOGtjSjtBQUNGO0FDM2tjQTtFQUFZO0FEOGtjWjs7QUM3a2NBO0VBQWE7QURpbGNiOztBQ2hsY0E7RUFBYTtBRG9sY2I7O0FDbmxjQTtFQUFhO0FEdWxjYjs7QUN0bGNBO0VBQWE7QUQwbGNiOztBQ3psY0E7RUFBYTtBRDZsY2I7O0FDNWxjQTtFQUFhO0FEZ21jYjs7QUMvbGNBO0VBQWE7QURtbWNiOztBQ2xtY0E7RUFBYztBRHNtY2Q7O0FrRngrY0E7RUFFRTtJQUNFO0lBQ0E7SUFDQTtFbEYwK2NGO0FBQ0Y7QWtGbitjQTtFQUVFO0lBQ0U7RWxGbytjRjs7RWtGbCtjQTtJQUNFO0VsRnErY0Y7O0VrRmwrY0E7SUFDRTtFbEZxK2NGO0VrRnArY0U7SUFDRTtJQUNBO0VsRnMrY0o7RWtGaitjSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VsRm0rY047RWtGLzljRTtJQUNFO0VsRmkrY0o7O0VrRjU5Y0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbEYrOWNOO0VrRjM5Y0U7SUFDRTtFbEY2OWNKO0FBQ0Y7QW1GdGhkQTtFQUNFO0VBQ0E7RUFDQTtBbkZ3aGRGO0FtRnZoZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7QW5GdWhkSjtBbUZwaGRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Gc2hkSjtBbUZuaGRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnFoZEo7QW1GamhkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJsRjJETTtFa0YxRE47QW5GbWhkSjtBbUYvZ2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0FuRitnZEo7QW1GNWdkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FuRjZnZEo7QW1GMWdkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GNGdkSjtBbUZ4Z2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQmxGa0JNO0VrRmpCTjtBbkYwZ2RKO0FtRnZnZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CbEZhYztFa0ZaZDtBbkZ5Z2RKOztBb0ZubWRBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QXBGc21kRjs7QW9Gam1kQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRm9tZEY7QW9Gam1kRTtFQUNFO0VBQ0E7RUFDQTtBcEZtbWRKO0FvRnRrZEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGdWtkTjtBb0Zwa2RNO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXBGb2tkUjtBb0Zqa2RRO0VBQ0U7RUFDQTtFQUNBO0VBRUEsbUJuRmtCSztBRGdqZGY7QW9GaGtkUTtFQUNFO0VBQ0E7RUFDQTtFQUVBLG1CbkY2Qk87QURvaWRqQjtBb0YvamRRO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJuRklBO0FENmpkVjtBb0Y3amRNO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBcEY2amRSO0FvRjNqZFE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQm5GaEJBO0FENmtkVjtBb0YzamRRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQm5GakJRO0FEOGtkbEI7QW9GcmpkRTtFQUVFLGNuRjdCYztFbUY4QmQ7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGcWpkSjtBb0ZuamRJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGb2pkTjtBb0ZqamRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGbWpkTjs7QXFGbnRkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGc3RkRjtBcUY5c2RJO0VBQ0U7QXJGZ3RkTjtBcUZqdGRJO0VBQ0U7QXJGbXRkTjtBcUZwdGRJO0VBQ0U7QXJGc3RkTjtBcUZ2dGRJO0VBQ0U7QXJGeXRkTjtBcUYxdGRJO0VBQ0U7QXJGNHRkTjtBcUY3dGRJO0VBQ0U7QXJGK3RkTjtBcUZodWRJO0VBQ0U7QXJGa3VkTjtBcUZudWRJO0VBQ0U7QXJGcXVkTjtBcUZ0dWRJO0VBQ0U7QXJGd3VkTjtBcUZ6dWRJO0VBQ0U7QXJGMnVkTjtBcUY1dWRJO0VBQ0U7QXJGOHVkTjtBcUYvdWRJO0VBQ0U7QXJGaXZkTjtBcUZsdmRJO0VBQ0U7QXJGb3ZkTjtBcUZydmRJO0VBQ0U7QXJGdXZkTjtBcUZ4dmRJO0VBQ0U7QXJGMHZkTjtBcUYzdmRJO0VBQ0U7QXJGNnZkTjtBcUY5dmRJO0VBQ0U7QXJGZ3dkTjtBcUZqd2RJO0VBQ0U7QXJGbXdkTjtBcUZwd2RJO0VBQ0U7QXJGc3dkTjtBcUZ2d2RJO0VBQ0U7QXJGeXdkTjtBcUYxd2RJO0VBQ0U7QXJGNHdkTjtBcUY3d2RJO0VBQ0U7QXJGK3dkTjtBcUZoeGRJO0VBQ0U7QXJGa3hkTjtBcUZueGRJO0VBQ0U7QXJGcXhkTjtBcUZ0eGRJO0VBQ0U7QXJGd3hkTjtBcUZ6eGRJO0VBQ0U7QXJGMnhkTjtBcUY1eGRJO0VBQ0U7QXJGOHhkTjtBcUYveGRJO0VBQ0U7QXJGaXlkTjtBcUZseWRJO0VBQ0U7QXJGb3lkTjtBcUZyeWRJO0VBQ0U7QXJGdXlkTjtBcUZ4eWRJO0VBQ0U7QXJGMHlkTjtBcUYzeWRJO0VBQ0U7QXJGNnlkTjtBcUY5eWRJO0VBQ0U7QXJGZ3pkTjtBcUZqemRJO0VBQ0U7QXJGbXpkTjtBcUZwemRJO0VBQ0U7QXJGc3pkTjtBcUZ2emRJO0VBQ0U7QXJGeXpkTjtBcUYxemRJO0VBQ0U7QXJGNHpkTjtBcUY3emRJO0VBQ0U7QXJGK3pkTjtBcUZoMGRJO0VBQ0U7QXJGazBkTjtBcUZuMGRJO0VBQ0U7QXJGcTBkTjtBcUZ0MGRJO0VBQ0U7QXJGdzBkTjtBcUZ6MGRJO0VBQ0U7QXJGMjBkTjs7QXNGbDFkQTtBQU1BO0VBQ0UsbUJyRnNGZ0I7RXFGcEZoQjtBdEYrMGRGO0FzRjkwZEU7RUFDRSxtQnJGK0VXO0FEaXdkZjtBc0YxMGRJO0VBRUU7OztJQUFBO0F0RjgwZE47O0FzRnYwZEE7RUFFRTtBdEZ5MGRGO0FzRnYwZEk7RUFDRSxjckY4RFk7RXFGN0RaO0F0RnkwZE47QXNGdjBkTTtFQUNFLGNyRnNERTtBRG14ZFY7QXNGcjBkRTtFQUNFO0F0RnUwZEo7O0FzRmowZEE7RUFDRTtFQUNBO0VBQ0E7QXRGbzBkRjs7QXNGaDBkRTtFQUNFO0VBQ0E7QXRGbTBkSjtBc0ZqMGRFO0VBQ0U7RUFFQTtBdEZrMGRKO0FzRmowZEk7RUFDRSxjckYrQ2E7RXFGOUNYO0F0Rm0wZFI7O0FBejRkQTtFQUNFO0VBQ0E7RUFDQTtBQTQ0ZEY7O0FBejRkQTtFQUNFO0FBNDRkRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcG9zdC5zY3NzIiwid2VicGFjazovLy8uL3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovLy8uL2FuaW0uc2NzcyIsIndlYnBhY2s6Ly8vLi9taXhpbi5zY3NzIiwid2VicGFjazovLy8uL21vYmlsZS12Mi5zY3NzIiwid2VicGFjazovLy8uL19zaGFwZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9fYW5pbWF0ZWRUaXRsZS5zY3NzIiwid2VicGFjazovLy8uL19lbW9qaS5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdwdWJsaWMnO1xuXG4jYmxvZ3tcbiAgbWluLWhlaWdodDogODB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OjU7XG5cbn1cbi5iZy1zaGFwZXtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuLypcbmdyZXkgbGlnaHQgOiAjNUQ4MzlEXG5ncmVlbi1ibHVlIDogI2FiYWJhYlxuYmx1ZSA6ICMwMDI4RjUgLyAjNjdENkZCXG4qL1xuXG4vLyBodHRwczovL21hdGVyaWFsLmlvL3Jlc291cmNlcy9jb2xvci8jIS8/dmlldy5sZWZ0PTAmdmlldy5yaWdodD0wJnByaW1hcnkuY29sb3I9MDAyOEY1JnNlY29uZGFyeS5jb2xvcj02N0Q2RkJcbi8vIGh0dHBzOi8vaW4teW91ci1zYWFzLmdpdGh1Yi5pby9tYXRlcmlhbC11aS10aGVtZS1lZGl0b3IvXG4vKlxue1wicGFsZXR0ZVwiOntcImNvbW1vblwiOntcImJsYWNrXCI6XCJyZ2JhKDUxLCA1MSwgNTEsIDEpXCIsXCJ3aGl0ZVwiOlwiI2ZmZlwifSxcImJhY2tncm91bmRcIjp7XCJwYXBlclwiOlwiI2ZmZlwiLFwiZGVmYXVsdFwiOlwiI2ZhZmFmYVwifSxcInByaW1hcnlcIjp7XCJsaWdodFwiOlwicmdiYSg1MSwgODMsIDI0NywgMSlcIixcIm1haW5cIjpcInJnYmEoMCwgNDAsIDI0NSwgMSlcIixcImRhcmtcIjpcInJnYmEoMCwgMjgsIDE3MSwgMSlcIixcImNvbnRyYXN0VGV4dFwiOlwiI2ZmZlwifSxcInNlY29uZGFyeVwiOntcImxpZ2h0XCI6XCJyZ2JhKDcyLCAxNDksIDE3NSwgMSlcIixcIm1haW5cIjpcInJnYmEoMTAzLCAyMTQsIDI1MSwgMSlcIixcImRhcmtcIjpcInJnYmEoMTMzLCAyMjIsIDI1MSwgMSlcIixcImNvbnRyYXN0VGV4dFwiOlwiI2ZmZlwifSxcImVycm9yXCI6e1wibGlnaHRcIjpcIiNlNTczNzNcIixcIm1haW5cIjpcIiNmNDQzMzZcIixcImRhcmtcIjpcIiNkMzJmMmZcIixcImNvbnRyYXN0VGV4dFwiOlwiI2ZmZlwifSxcInRleHRcIjp7XCJwcmltYXJ5XCI6XCJyZ2JhKDAsIDAsIDAsIDAuODcpXCIsXCJzZWNvbmRhcnlcIjpcInJnYmEoMCwgMCwgMCwgMC41NClcIixcImRpc2FibGVkXCI6XCJyZ2JhKDAsIDAsIDAsIDAuMzgpXCIsXCJoaW50XCI6XCJyZ2JhKDAsIDAsIDAsIDAuMzgpXCJ9fX1cbiovXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsNDAwLDUwMCw2MDAsNzAwJmRpc3BsYXk9c3dhcCcpO1xuXG5AZm9udC1mYWNlIHtcbmZvbnQtZmFtaWx5OiAnQ2lyY3VsYXJTdGQnO1xuc3JjOiBsb2NhbCgnQ2lyY3VsYXJTdGQtTWVkaXVtJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLU1lZGl1bS5zdmcjQ2lyY3VsYXJTdGQnKSBmb3JtYXQoJ3N2ZycpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1NZWRpdW0udHRmJykgZm9ybWF0KCd0dGYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKVxuO1xuZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG5mb250LWZhbWlseTogJ0NpcmN1bGFyU3RkJztcbnNyYzogbG9jYWwoJ0NpcmN1bGFyU3RkLU1lZGl1bUl0YWxpYycpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1NZWRpdW1JdGFsaWMuc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtSXRhbGljLnR0ZicpIGZvcm1hdCgndHRmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLU1lZGl1bUl0YWxpYy5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBmb250LWZhY2Uge1xuZm9udC1mYW1pbHk6ICdDaXJjdWxhclN0ZCc7XG5zcmM6IGxvY2FsKCdDaXJjdWxhclN0ZC1Cb2xkJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQuc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQudHRmJykgZm9ybWF0KCd0dGYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQGZvbnQtZmFjZSB7XG5mb250LWZhbWlseTogJ0NpcmN1bGFyU3RkJztcbnNyYzogbG9jYWwoJ0NpcmN1bGFyU3RkLUJvbGQnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC5zdmcjQ2lyY3VsYXJTdGQnKSBmb3JtYXQoJ3N2ZycpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC50dGYnKSBmb3JtYXQoJ3R0ZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKVxuO1xuZm9udC13ZWlnaHQ6IDUwMDtcbn1cbkBmb250LWZhY2Uge1xuZm9udC1mYW1pbHk6ICdDaXJjdWxhclN0ZCc7XG5zcmM6IGxvY2FsKCdDaXJjdWxhclN0ZC1Cb2xkJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQuc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQudHRmJykgZm9ybWF0KCd0dGYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBmb250LWZhY2Uge1xuZm9udC1mYW1pbHk6ICdDaXJjdWxhclN0ZCc7XG5zcmM6IGxvY2FsKCdDaXJjdWxhclN0ZC1Cb2xkSXRhbGljJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGRJdGFsaWMuc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGRJdGFsaWMudHRmJykgZm9ybWF0KCd0dGYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZEl0YWxpYy5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtd2VpZ2h0OjUwMDtcbmZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbiRwcmltYXJ5OiAjMDAyOEY1O1xuJHByaW1hcnktZGFyazogIzAwMDBjMTtcbiRwcmltYXJ5LTEyMDogIzAwMDY0NjtcbiRwcmltYXJ5LWxpZ2h0OiAjNmQ1NmZmO1xuJHByaW1hcnktbGlnaHRlcjogIzAwMGVmZjtcblxuJHNlY29uZGFyeTogIzY3RDZGQjtcbiRzZWNvbmRhcnktZGFyazogIzIyYTRjODsvLyM0ODk1YWY7XG4kc2Vjb25kYXJ5LWxpZ2h0ZXI6I2Q3ZGNmZjsvLyAjODVkZWZiO1xuJHNlY29uZGFyeS1saWdodDojOWZmZmZmOy8vICM4NWRlZmI7XG4kdGhpcmQ6ICM3MDcwNzA7XG5cbiRyZWQ6ICNGQjRFNEU7XG4kcmVkLWRhcmtlcjogI0U5M0MzQztcbiRyZWQtbGlnaHRlcjogI0ZGNjI2MjtcblxuJG9yYW5nZTogI2ZmNzE0MDtcbiRvcmFuZ2UtbGlnaHQ6ICNGQkUzRDQ7IC8vcmdiYSgyNTUsIDExMywgNjQsIDAuMik7XG4kZ3JlZW46ICMzOWI1NGE7XG4keWVsbG93OiAjZmZmMTI1O1xuJGRhcms6ICMzRTNFM0U7XG5cblxuJHByaW1hcnk6ICMzMzNFRkY7IC8vIDgwJVxuJHByaW1hcnktZGFyazogIzFBMjZGRjsgLy8gOTAlXG4vLyRwcmltYXJ5LWRhcmtlciAjMDAwRUZGOyAvLyAxMDAlIC8vIG92ZXJyaWRlIGJlc2NhdXNlIG5vdCBlbm91Z2h0IGRhcmtcbiRwcmltYXJ5LWRhcmtlcjogIzAwMEVGRjsgLy8gMTAwJVxuJHByaW1hcnktZGFya2VzdDogIzAwMDY0NjtcbiRwcmltYXJ5LWxpZ2h0OiAjNEQ1NkZGOyAvLyA3MCVcbiRwcmltYXJ5LWxpZ2h0ZXI6ICM2NjZFRkY7IC8vIDYwJVxuXG4kcHJpbWFyeS04MDogJHByaW1hcnk7XG4kcHJpbWFyeS05MDogJHByaW1hcnktZGFyaztcbiRwcmltYXJ5LTEwMDogJHByaW1hcnktZGFya2VyO1xuJHByaW1hcnktMTIwOiAkcHJpbWFyeS1kYXJrZXN0O1xuJHByaW1hcnktNzA6ICRwcmltYXJ5LWxpZ2h0O1xuJHByaW1hcnktNjA6ICRwcmltYXJ5LWxpZ2h0ZXI7XG5cblxuJHNlY29uZGFyeTogI0IzQjdGRjsgLy8zMCVcbiRzZWNvbmRhcnktZGFyazogIzk5OUZGRjsvLyA0MCU7XG4kc2Vjb25kYXJ5LWRhcmtlcjogIzgwODZGRjsvLzUwJTtcbiRzZWNvbmRhcnktbGlnaHQ6I0NDQ0ZGRjsvLyAyMCU7XG4kc2Vjb25kYXJ5LWxpZ2h0ZXI6I0U2RTdGRjsvLyAxMCU7XG4kc2Vjb25kYXJ5LWxpZ2h0ZXN0OiM5ZmZmZmY7IC8vIG5vdCBlbm91Z2h0IGxpZ2h0O1xuXG5cbiRncmV5OiAjOTk5QkI1O1xuJGdyZXktZGFyazogIzY2NkE5MDtcbiRncmV5LWRhcmtlcjogIzMzMzg2QjtcbiRncmV5LWRhcmtlc3Q6ICMwMDA2NDY7XG4kZ3JleS1saWdodDogI0NDQ0REQTtcbiRncmV5LWxpZ2h0ZXI6ICNFNkU2RUQ7XG4kZ3JleS1saWdodGVzdDogI0YyRjNGNjtcblxuXG4kcHJpbWFyeS1ob3ZlcjogJHByaW1hcnktZGFyaztcblxuJGdyYWRpZW4tYmc6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgJHByaW1hcnksICRzZWNvbmRhcnkpO1xuJGdyYWRpZW4tSC1iZzogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkcHJpbWFyeS1kYXJrLCAkc2Vjb25kYXJ5LWRhcmspO1xuXG4kZ3JhZGllbi1yZXZlcnNlLWJnOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICRzZWNvbmRhcnksICRwcmltYXJ5KTtcbiRncmFkaWVuLXJldmVyc2UtaC1iZzogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkc2Vjb25kYXJ5LCAkcHJpbWFyeSk7XG5cblxuXG5cbiRncmF5LWxpZ2h0OiAjRUZFNkVGO1xuJHRlYWw6ICMwMGEwOTk7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIixcbiAgZXM6IFwiRWxlZ2lyXCIsXG4gIGZyOiBcIlBhcmNvdXJpclwiXG4pO1xuXG5cbiRob3Zlci1vcGFjaXR5OiAwLjg7XG5cbi5hdml2YS1iZ3sgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDkwMDsgfVxuLmF2aXZhLWNvbG9yeyBjb2xvcjojMDA0ZmI2OyB9XG4uYnRuLWF2aXZhe1xuICBAZXh0ZW5kIC5wcmltYXJ5LWJnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ZmI2OztcbiAgY29sb3I6I2ZmZDkwMDtcbn1cblxuI21hc2t7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOjA7XG4gIGxlZnQ6MDtcblxuICB6LWluZGV4OjE7XG4gICYub3BlbntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgfVxuICAmLnZpc2libGV7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMjgsMTI4LDEyOCwwLjI1KTtcbiAgfVxuXG59XG5cbiNwb3B1cHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICB6LWluZGV4Ojk5O1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiA5MHZoO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAmLm9wZW57XG4gICAgQGV4dGVuZCAuYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6MjVweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHRvcDo1dmg7XG4gICAgbGVmdDoxNSU7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuXG5cbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlcntjb250ZW50OlwiUGFyY291cmlyXCIhaW1wb3J0YW50O31cblxuXG4ucHJpbWFyeS1iZ3sgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeTsgfVxuLnByaW1hcnktY29sb3J7Y29sb3I6JHByaW1hcnk7fVxuXG4ucHJpbWFyeS1ILWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWRhcms7IH1cbi5wcmltYXJ5LUgtY29sb3J7IGNvbG9yOiRwcmltYXJ5LWRhcms7fVxuLnByaW1hcnktSEgtYmd7IGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktMTIwO31cbi5wcmltYXJ5LUhILWNvbG9yeyBjb2xvcjokcHJpbWFyeS0xMjA7fVxuXG4ucHJpbWFyeS1MLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWxpZ2h0OyB9XG4ucHJpbWFyeS1MLWNvbG9ye2NvbG9yOiRwcmltYXJ5LWxpZ2h0O31cbi5wcmltYXJ5LUxMLWJne2JhY2tncm91bmQtY29sb3I6JHByaW1hcnktbGlnaHRlcjt9XG4ucHJpbWFyeS1MTC1jb2xvcntjb2xvcjokcHJpbWFyeS1saWdodGVyO31cblxuLnNlY29uZGFyeS1iZ3sgYmFja2dyb3VuZC1jb2xvcjokc2Vjb25kYXJ5OyB9XG4uc2Vjb25kYXJ5LWNvbG9ye2NvbG9yOiRzZWNvbmRhcnk7fVxuLnNlY29uZGFyeS1ILWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRzZWNvbmRhcnktZGFyazsgfVxuLnNlY29uZGFyeS1ILWNvbG9ye2NvbG9yOiRzZWNvbmRhcnktZGFyazt9XG4uc2Vjb25kYXJ5LUhILWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRzZWNvbmRhcnktZGFya2VyOyB9XG4uc2Vjb25kYXJ5LUhILWNvbG9ye2NvbG9yOiRzZWNvbmRhcnktZGFya2VyO31cbi5zZWNvbmRhcnktTC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokc2Vjb25kYXJ5LWxpZ2h0OyB9XG4uc2Vjb25kYXJ5LUwtY29sb3J7Y29sb3I6JHNlY29uZGFyeS1saWdodDt9XG4uc2Vjb25kYXJ5LUxMLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRzZWNvbmRhcnktbGlnaHRlcjsgfVxuLnNlY29uZGFyeS1MTC1jb2xvcntjb2xvcjokc2Vjb25kYXJ5LWxpZ2h0ZXI7fVxuLnNlY29uZGFyeS1MTEwtYmd7IGJhY2tncm91bmQtY29sb3I6JHNlY29uZGFyeS1saWdodGVzdDsgfVxuLnNlY29uZGFyeS1MTEwtY29sb3J7Y29sb3I6JHNlY29uZGFyeS1saWdodGVzdDt9XG5cbi50aGlyZC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokdGhpcmQ7IH1cbi50aGlyZC1jb2xvcntjb2xvcjokdGhpcmQ7fVxuLnRlYWwtYmd7IGJhY2tncm91bmQtY29sb3I6JHRlYWw7IH1cbi50ZWFsLWNvbG9ye2NvbG9yOiR0ZWFsO31cblxuLmdyYWRpZW4tYmd7YmFja2dyb3VuZDogJGdyYWRpZW4tYmc7fVxuLmdyYWRpZW4tSC1iZ3tiYWNrZ3JvdW5kOiAkZ3JhZGllbi1ILWJnO31cblxuLmdyYXktbGlnaHQtYmd7IGJhY2tncm91bmQtY29sb3I6JGdyYXktbGlnaHQ7IH1cbi5ncmF5LWxpZ2h0LWNvbG9ye2NvbG9yOiRncmF5LWxpZ2h0O31cblxuXG4ud2hpdGUtYmd7IGJhY2tncm91bmQtY29sb3I6I2ZmZmZmZjsgfVxuLndoaXRlLWNvbG9ye2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50O31cblxuXG4ucmVkLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRyZWQ7IH1cbi5yZWQtY29sb3J7Y29sb3I6JHJlZCFpbXBvcnRhbnQ7fVxuXG4uZ3JlZW4tYmd7IGJhY2tncm91bmQtY29sb3I6JGdyZWVuOyB9XG4uZ3JlZW4tY29sb3J7Y29sb3I6JGdyZWVuIWltcG9ydGFudDt9XG5cbi5ib3h7IGJveC1zaGFkb3c6IDBweCAwcHggNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5cbi5idG4tcHJpbWFyeXtcbiAgQGV4dGVuZCAucHJpbWFyeS1iZztcblxuICAmOmhvdmVye1xuICAgIGNvbG9yOiNmZmY7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG4uYnRuLW91dGxpbmUtcHJpbWFyeXtcbiAgYm9yZGVyOjFweCBzb2xpZCAkcHJpbWFyeTtcbiAgQGV4dGVuZCAucHJpbWFyeS1jb2xvcjtcbn1cblxuLmJ0bi1wcmltYXJ5LUh7XG4gIEBleHRlbmQgLnByaW1hcnktSC1iZztcbiAgY29sb3I6I2ZmZjtcbiAgJjpob3ZlcntcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgY29sb3I6I2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zdHlsZTppdGFsaWM7XG4gIH1cbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5LUh7XG4gIGJvcmRlcjoxcHggc29saWQgJHByaW1hcnktZGFyaztcbiAgQGV4dGVuZCAucHJpbWFyeS1ILWNvbG9yO1xufVxuXG4uYnRuLXByaW1hcnktTHtcbiAgQGV4dGVuZCAucHJpbWFyeS1MLWJnO1xuICBjb2xvcjojZmZmO1xuICAmOmhvdmVye1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICBjb2xvcjojZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXN0eWxlOml0YWxpYztcbiAgfVxuXG5cbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnktTHtcbiAgYm9yZGVyOjFweCBzb2xpZCAkcHJpbWFyeS1saWdodDtcbiAgQGV4dGVuZCAucHJpbWFyeS1MLWNvbG9yO1xufVxuXG4uYnRuLXNlY29uZGFyeXtcbiAgQGV4dGVuZCAuc2Vjb25kYXJ5LWJnO1xuICBib3JkZXItY29sb3I6JHNlY29uZGFyeTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnl7XG4gIGJvcmRlcjoxcHggc29saWQgJHNlY29uZGFyeTtcbiAgQGV4dGVuZCAuc2Vjb25kYXJ5LWNvbG9yO1xufVxuXG5cblxuXG4uYnRuLXNlY29uZGFyeS1Ie1xuICBAZXh0ZW5kIC5zZWNvbmRhcnktSC1iZztcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnktSHtcblxuICBib3JkZXI6MXB4IHNvbGlkICRzZWNvbmRhcnktZGFyaztcbiAgQGV4dGVuZCAuc2Vjb25kYXJ5LUgtY29sb3I7XG59XG4uYnRuLWxpbmt7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnk7XG4gIGNvbG9yOiRkYXJrO1xuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1saWdodGVyO1xuICAgIGNvbG9yOndoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLXdoaXRle1xuICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuICBib3JkZXI6MXB4IHNvbGlkICRkYXJrO1xuICBjb2xvcjokZGFyaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktbGlnaHRlcjtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRwcmltYXJ5LWxpZ2h0ZXI7XG4gICAgY29sb3I6d2hpdGU7XG5cbiAgfVxufVxuXG5cbi5ib3JkZXItcHJpbWFyeXsgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeTsgfVxuLmJvcmRlci1wcmltYXJ5LUh7IGJvcmRlcjoycHggc29saWQgJHByaW1hcnktZGFyazsgfVxuLmJvcmRlci1wcmltYXJ5LUx7IGJvcmRlcjoycHggc29saWQgJHByaW1hcnktbGlnaHQ7IH1cbi5ib3JkZXItc2Vjb25kYXJ5eyBib3JkZXI6MnB4IHNvbGlkICRzZWNvbmRhcnk7IH1cbi5ib3JkZXItc2Vjb25kYXJ5LUh7IGJvcmRlcjoycHggc29saWQgJHNlY29uZGFyeS1kYXJrOyB9XG4uYm9yZGVyLXNlY29uZGFyeS1MeyBib3JkZXI6MnB4IHNvbGlkICRzZWNvbmRhcnktbGlnaHQ7IH1cblxuLmJvcmRlci10b3AtcHJpbWFyeXsgYm9yZGVyLXRvcDoycHggc29saWQgJHByaW1hcnk7IH1cbi5ib3JkZXItdG9wLXByaW1hcnktSHsgYm9yZGVyLXRvcDoycHggc29saWQgJHByaW1hcnktZGFyazsgfVxuLmJvcmRlci10b3AtcHJpbWFyeS1MeyBib3JkZXItdG9wOjJweCBzb2xpZCAkcHJpbWFyeS1saWdodDsgfVxuLmJvcmRlci10b3Atc2Vjb25kYXJ5eyBib3JkZXItdG9wOjJweCBzb2xpZCAkc2Vjb25kYXJ5OyB9XG4uYm9yZGVyLXRvcC1zZWNvbmRhcnktSHsgYm9yZGVyLXRvcDoycHggc29saWQgJHNlY29uZGFyeS1kYXJrOyB9XG4uYm9yZGVyLXRvcC1zZWNvbmRhcnktTHsgYm9yZGVyLXRvcDoycHggc29saWQgJHNlY29uZGFyeS1saWdodDsgfVxuXG4uYm9yZGVyLTIweyBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4uYm9yZGVyLTUweyBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG5cbi5lbW9qaXtcbiAgIGZvbnQtZmFtaWx5OkFwcGxlIENvbG9yIEVtb2ppO1xufVxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG4gIC56LSN7JGl9e1xuICAgIHotaW5kZXg6I3skaX07XG4gIH1cbn1cbkBmb3IgJGkgZnJvbSA3IHRocm91Z2ggNzAge1xuICAuZm9udC0jeyRpfXtcbiAgICBmb250LXNpemU6I3skaX1weDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIEBmb3IgJGkgZnJvbSA3IHRocm91Z2ggNzAge1xuICAgIC5mb250LW1kLSN7JGl9e1xuICAgICAgZm9udC1zaXplOiN7JGl9cHg7XG4gICAgfVxuICB9XG59XG4ub3BhY2l0eS0weyBvcGFjaXR5OiAwOyB9XG4ub3BhY2l0eS0xMHsgb3BhY2l0eTogMC4xOyB9XG4ub3BhY2l0eS0yMHsgb3BhY2l0eTogMC4yOyB9XG4ub3BhY2l0eS0yNXsgb3BhY2l0eTogMC4yNTsgfVxuLm9wYWNpdHktNTB7IG9wYWNpdHk6IDAuNTsgfVxuLm9wYWNpdHktNzV7IG9wYWNpdHk6IDAuNzU7IH1cbi5vcGFjaXR5LTgweyBvcGFjaXR5OiAwLjg7IH1cbi5vcGFjaXR5LTkweyBvcGFjaXR5OiAwLjk7IH1cbi5vcGFjaXR5LTEwMHsgb3BhY2l0eTogMTsgfVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuNi4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29kZVwiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBEaXNhYmxlIGF1dG8taGlkaW5nIHNjcm9sbGJhciBpbiBJRSAmIGxlZ2FjeSBFZGdlIHRvIGF2b2lkIG92ZXJsYXAsXG4gIC8vIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGludGVyYWN0IHdpdGggdGhlIGNvbnRlbnRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbmxhYmVsIHtcbiAgLy8gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkbGFiZWwtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuLy8gUmVzaXplIGZvbnQtc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFZhcmlhYmxlcyBmb3Igc3RvcmluZyBzdGF0aWMgYW5kIGZsdWlkIHJlc2NhbGluZ1xuICAgICRyZnMtc3RhdGljOiBudWxsO1xuICAgICRyZnMtZmx1aWQ6IG51bGw7XG5cbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udC1zaXplXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG4gICAgfVxuXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcbiAgICAvLyBJZiAkcmZzLWZhY3RvciA9PSAxLCBubyByZXNjYWxpbmcgd2lsbCB0YWtlIHBsYWNlXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XG4gICAgICAkdmFyaWFibGUtdW5pdDogbnVsbDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyAoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAvLyBObyBuZWVkIHRvIGNoZWNrIGlmIHRoZSB1bml0IGlzIHZhbGlkLCBiZWNhdXNlIHdlIGRpZCB0aGF0IGJlZm9yZVxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gSWYgdHdvLWRpbWVuc2lvbmFsLCB1c2Ugc21hbGxlc3Qgb2Ygc2NyZWVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemUuXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuICAgIH1cblxuICAgIC8vIFJlbmRlcmluZ1xuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xuICAgICAgLy8gT25seSByZW5kZXIgc3RhdGljIGZvbnQtc2l6ZSBpZiBubyBmbHVpZCBmb250LXNpemUgaXMgYXZhaWxhYmxlXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbXEtdmFsdWU6IG51bGw7XG5cbiAgICAgIC8vIFJGUyBicmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgICAgICYsXG4gICAgICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHNlbGVjdCBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRpbnB1dC1jb2xvcjtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIH1cbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgLy8gU3VwcHJlc3MgdGhlIG5lc3RlZCBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLCBhcyBpdCBsb29rcyBiYWQgYW5kIGNhbm5vdCBiZSBtYWRlIHRvXG4gICAgLy8gbWF0Y2ggdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIG5hdGl2ZSB3aWRnZXQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIH1cbn1cblxuLy8gTWFrZSBmaWxlIGlucHV0cyBiZXR0ZXIgbWF0Y2ggdGV4dCBpbnB1dHMgYnkgZm9yY2luZyB0aGVtIHRvIG5ldyBsaW5lcy5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG59XG5cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcbiAgICAvLyBBbGlnbiB0b29sdGlwIHRvIGZvcm0gZWxlbWVudHNcbiAgICAuZm9ybS1yb3cgPiAuY29sID4gJixcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xuICAgICAgbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIFBvcHBlciBpcyBlbmFibGVkLCByZXNldCB0aGUgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjdXJzb3I6ICRjdXN0b20tY29udHJvbC1jdXJzb3I7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3Igc29saWQgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIGxlZnQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IDUwJSAvICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplfSBuby1yZXBlYXQ7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdyk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhZGlvc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciByYWRpb3MuXG5cbi5jdXN0b20tcmFkaW8ge1xuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzd2l0Y2hlc1xuLy9cbi8vIFR3ZWFrIGEgZmV3IHRoaW5ncyBmb3Igc3dpdGNoZXNcblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcblxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtd2lkdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiBhZGQoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDIsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICBsZWZ0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRjdXN0b20tc3dpdGNoLXdpZHRoIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93LCAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0IC8gMjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyAvLyBhcmJpdHJhcnk/XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgZmxleC1zaHJpbms6IDA7IC8vIEZvciBJRTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTM5NlxuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBDYXJkIGRlY2tcblxuLmNhcmQtZGVjayB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtZGVjay1tYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1kZWNrLW1hcmdpbjtcblxuICAgIC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcblxuICA+IC5jYXJkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qdW1ib3Ryb24ge1xuICBwYWRkaW5nOiAkanVtYm90cm9uLXBhZGRpbmcgKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIGNvbG9yOiAkanVtYm90cm9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBsaW5lLWhlaWdodDogMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwcm9ncmVzcy1mb250LXNpemUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15ICRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYmc7XG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAtOSksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgNikpO1xufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5idXR0b24uY2xvc2Uge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5hLmNsb3NlLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIudG9hc3Qge1xuICAvLyBQcmV2ZW50cyBmcm9tIHNocmlua2luZyBpbiBJRTExLCB3aGVuIGluIGEgZmxleCBjb250YWluZXJcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgzNDFcbiAgZmxleC1iYXNpczogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHRvYXN0LXBhZGRpbmcteDtcbiAgfVxuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xuICBjb2xvcjogJHRvYXN0LWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhzdWJ0cmFjdCgkdG9hc3QtYm9yZGVyLXJhZGl1cywgJHRvYXN0LWJvcmRlci13aWR0aCkpO1xufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXg7IC8vIGFwcGx5IHRvIGJvdGggdmVydGljYWwgYW5kIGhvcml6b250YWxcbn1cbiIsIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi5tb2RhbC1vcGVuIHtcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cblxuQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXkgLyAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgJHNpemUgIT0gMCB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwczovL3dlYi5hcmNoaXZlLm9yZy93ZWIvMjAxODA4MTUxNTA5MzQvaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIkBpbXBvcnQgJ21peGluJztcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cblxuLmFuaW0tYWxsIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtbXMtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtby10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbi5hbmltLWFsbC0xcyB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuXHQtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcblx0LW1zLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcblx0LW8tdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG59XG5cblxuLyogUk9UQVRJT04gKi9cbkAtbW96LWtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIHNwaW4tcmV2ZXJzZSB7IDEwMCUgeyAtbW96LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB9IH1cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLXJldmVyc2UgeyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTsgfSB9XG5Aa2V5ZnJhbWVzIHNwaW4tcmV2ZXJzZSB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB0cmFuc2Zvcm06cm90YXRlKC0zNjBkZWcpOyB9IH1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAyMHtcblx0LnJvdGF0ZS0jeyRpfXMge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uOnNwaW4gI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHQtbW96LWFuaW1hdGlvbjpzcGluICN7JGl9cyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdFx0YW5pbWF0aW9uOnNwaW4gI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblxuXHR9XG5cblx0LnJvdGF0ZS1yZXZlcnNlLSN7JGl9c3tcblx0XHQtd2Via2l0LWFuaW1hdGlvbjpzcGluLXJldmVyc2UgI3skaX1zICBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdFx0LW1vei1hbmltYXRpb246c3Bpbi1yZXZlcnNlICN7JGl9cyAgbGluZWFyIGZvcndhcmRzIGluZmluaXRlO1xuXHRcdGFuaW1hdGlvbjpzcGluLXJldmVyc2UgI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0fVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoZmFkZWluLWFuaW0pIHtcblx0MCUgeyBvcGFjaXR5OjA7IGRpc3BsYXk6IG5vbmU7fVxuXHQxJSB7IG9wYWNpdHk6MDsgZGlzcGxheTogYmxvY2s7fVxuXHQ1MCUgIHtvcGFjaXR5IDogMTsgbWF4LWhlaWdodDogOTk5cHg7fVxuXHQxMDAlICB7b3BhY2l0eSA6IDE7IG1heC1oZWlnaHQ6IDk5OXB4O31cbn1cbkBpbmNsdWRlIGtleWZyYW1lcyhmYWRlb3V0LWFuaW0pIHtcblx0MCUge31cblx0NTAlICB7b3BhY2l0eSA6IDA7fVxuXHQxMDAlICB7b3BhY2l0eSA6IDA7IGRpc3BsYXk6bm9uZTsgei1pbmRleDotMTt9XG59XG5cblxuQGluY2x1ZGUga2V5ZnJhbWVzKHVwZGF0ZS1jb2xvcikge1xuXHQwJSB7ICB9XG5cdDUwJSAgeyBiYWNrZ3JvdW5kOiRwcmltYXJ5OyB9XG5cdDk1JSAgeyAgfVxuXHQxMDAlICB7ICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhtb3ZlLXNoYXBlKSB7XG5cdDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAlLCAwcHgpIHJvdGF0ZSgwKSB9XG5cdDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDM1MCUsIDUwJSwgMHB4KSByb3RhdGUoMzYwZGVnKTsgfVxuXHQ5NSUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAlLCAwcHgpOyB9XG5cdDEwMCUgIHsgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoYmctY2hhbmdlKSB7XG5cdDAlIHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93IH1cblx0MjUlICB7IGJhY2tncm91bmQtY29sb3I6IHJlZH1cblx0NTAlICB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvd31cblx0NzUlICB7IGJhY2tncm91bmQtY29sb3I6IGJsYWNrfVxuXHQxMDAlICB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvdyB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhzY2FsbC1uLXJvdGF0ZSkge1xuXHQwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgwKTsgbWFyZ2luOjA7fVxuXHQxMCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMTgwKTttYXJnaW46LTIwcHggMCAwIDEwcHg7fVxuXHQyMCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMC4yKSByb3RhdGUoMzYwKTttYXJnaW46MjBweCAwIDAgLTVweDt9XG5cdDQwJSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgwLjQpIHJvdGF0ZSgtMzYwKTttYXJnaW46MCAwIDAgMjBweDt9XG5cdDYwJSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpIHJvdGF0ZSgzNjApO21hcmdpbjotMjBweCAwIDAgLTVweDt9XG5cdDgwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMzYwZGVnKTsgbWFyZ2luOjA7IG9wYWNpdHk6IDE7fVxuXHQxMDAlICB7IHRyYW5zZm9ybTogc2NhbGUoMC41KSByb3RhdGUoLTM2MGRlZyk7IG9wYWNpdHk6IDA7IH1cbn1cblxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoc2NhbGwtbi1sYXVuY2gpIHtcblx0MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuXHQ1MCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyAgfVxuXHQ1MiUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDNkZWcpO31cblx0NTMlICB7ICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtM2RlZyk7fVxuXHQ1NCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDJkZWcpOyB9XG5cdDU1JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpOyB9XG5cdDU2JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpOyB9XG5cdDU2JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMWRlZyk7ICB0b3A6MzMwcHg7cmlnaHQ6NTBweDsgIH1cblx0MTAwJSAgeyB0b3A6LTIwMHB4OyByaWdodDotMjAwcHg7fVxuXG59XG4uZW1vaml7XG5cdCR0aW1lOiA1cztcblxuXG5cdCYuLWVtLWVhcnRoLm9ue1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC1hbmltYXRpb246c2NhbGwtbi1yb3RhdGUgMTBzIGxpbmVhciBmb3J3YXJkcyAgIDE7XG5cdFx0LW1vei1hbmltYXRpb246c2NhbGwtbi1yb3RhdGUgMTBzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHRcdGFuaW1hdGlvbjpzY2FsbC1uLXJvdGF0ZSAxMHMgbGluZWFyIGZvcndhcmRzICAxO1xuXHR9XG5cdCYuLWVtLXJvY2tldC5vbntcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uOnNjYWxsLW4tbGF1bmNoICR0aW1lIGxpbmVhciBmb3J3YXJkcyAgMTtcblx0XHQtbW96LWFuaW1hdGlvbjpzY2FsbC1uLWxhdW5jaCAkdGltZSBsaW5lYXIgZm9yd2FyZHMgMTtcblx0XHRhbmltYXRpb246c2NhbGwtbi1sYXVuY2ggJHRpbWUgbGluZWFyIGZvcndhcmRzICAxO1xuXHR9XG59XG5cdC8qXG4ubWV0YS10aXRsZS1zaGFwZXN7XG5cdCR0aW1lOiAxMHM7XG4td2Via2l0LWFuaW1hdGlvbjp1cGRhdGUtY29sb3IgJHRpbWUqMiBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdC1tb3otYW5pbWF0aW9uOnVwZGF0ZS1jb2xvciAkdGltZSoyIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0YW5pbWF0aW9uOnVwZGF0ZS1jb2xvciAkdGltZSoyIGxpbmVhciBmb3J3YXJkcyAgaW5maW5pdGU7XG5cblx0Lm1ldGEtdGl0bGUtc2hhcGV7XG5cblx0XHQtd2Via2l0LWFuaW1hdGlvbjptb3ZlLXNoYXBlICR0aW1lIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHQtbW96LWFuaW1hdGlvbjptb3ZlLXNoYXBlICR0aW1lIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHRhbmltYXRpb246bW92ZS1zaGFwZSAkdGltZSBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cblx0fVxufSovXG5cbkBpbmNsdWRlIGtleWZyYW1lcyhtb3ZlLWltZy1jYXJkKSB7XG5cdDAlIHsgIH1cblx0MjUlICB7IHRyYW5zZm9ybTogcm90YXRlKDNkZWcpOyB9XG5cdDUwJSAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuXHQ3NSUgIHsgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpOyB9XG5cdDEwMCUgIHsgfVxufVxuLmZhZGVvdXR7XG5cblx0LXdlYmtpdC1hbmltYXRpb246ZmFkZW91dC1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHQtbW96LWFuaW1hdGlvbjpmYWRlb3V0LWFuaW0gMXMgbGluZWFyIGZvcndhcmRzIDE7XG5cdGFuaW1hdGlvbjpmYWRlb3V0LWFuaW0gMXMgbGluZWFyIGZvcndhcmRzIDE7XG59XG5cbi5mYWRlaW57XG5cdC13ZWJraXQtYW5pbWF0aW9uOmZhZGVpbi1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHQtbW96LWFuaW1hdGlvbjpmYWRlaW4tYW5pbSAxcyBsaW5lYXIgZm9yd2FyZHMgMTtcblx0YW5pbWF0aW9uOmZhZGVpbi1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMgKGVtb2ppLXdhdmluZykge1xuXHQwJSB7IHRvcDoxMCU7IGxlZnQ6MTIwJTsgfVxuXHQ3JSB7IG9wYWNpdHk6IDE7IH1cblx0MTUlICB7IHRvcDoyMCU7ICB9XG5cdDI1JSAgeyB0b3A6MzAlOyAgfVxuXHQzMCUgIHsgdG9wOjI1JTsgfVxuXHQzNSUgIHsgdG9wOjM1JTsgfVxuXHQ0NSUgIHsgdG9wOjQ1JTsgfVxuXHQ1NSUgIHsgdG9wOjUxJTsgfVxuXHQ2NSUgIHsgdG9wOjQ1JTsgfVxuXHQ3NSUgIHsgdG9wOjM1JTsgfVxuXHQ4NSUgIHsgdG9wOjQ1JTsgfVxuXHQ5NSUgIHsgdG9wOjUyJTsgfVxuXHQ5OSUgeyBvcGFjaXR5OiAxO31cblx0MTAwJSAgeyB0b3A6NDUlOyBsZWZ0Oi0yMCU7IG9wYWNpdHk6IDA7fVxufVxuXG4jc2tpbGxze1xuXG5cdC5lbW9qaS5vbntcblx0XHRvcGFjaXR5OiAxO1xuXHRcdCR0aW1lOiAxNXM7XG5cdFx0LXdlYmtpdC1hbmltYXRpb246ZW1vamktd2F2aW5nICR0aW1lIGVhc2UtaW4tb3V0IGZvcndhcmRzIDE7XG5cdFx0LW1vei1hbmltYXRpb246ZW1vamktd2F2aW5nICR0aW1lIGVhc2UtaW4tb3V0IGZvcndhcmRzIDE7XG5cdFx0YW5pbWF0aW9uOmVtb2ppLXdhdmluZyAkdGltZSBlYXNlLWluLW91dCBmb3J3YXJkcyAxO1xuXHR9XG59XG4iLCJAbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW1zLWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBrZXlmcmFtZXMtYW5pbWF0aW9uKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW8ta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQGltcG9ydCAndmFyaWFibGVzJztcblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KXtcblxuICAubmF2YmFyLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXgoLTUwJSk7XG4gIH1cblxuXG5cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpe1xuXG4gICNtYWluLWNvbnRlbnR7XG4gICAgei1pbmRleDo2O1xuICB9XG4gICNjYXJkc3tcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwIWltcG9ydGFudDtcbiAgfVxuXG4gIG5hdntcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYnV0dG9uLm5hdmJhci10b2dnbGVye1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOjVweDtcblxuICAgIH1cbiAgICAjdG9wX21lbnVfY29udGVudHtcblxuICAgICAgLm5hdmJhci1jb2xsYXBzZS5zaG93e1xuICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDNweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAyMHB4IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI21lbnV7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIH1cbiAgfVxuICAjc2tpbGxze1xuICAgICNza2lsbC1kZXNje1xuICAgICAgLnNraWxsLWRlc2N7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDowIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cbiAgICAjZW1vamktYmFye1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuXG5cbn1cbiIsIi5iZy1zaGFwZXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICBib3JkZXItcmFkaXVzOiAxNSU7XG4gICYuLXNxMXtcbiAgICB0b3A6MTI1cHg7XG4gICAgbGVmdDotMzc1cHg7XG4gICAgd2lkdGg6IDQ1MHB4O1xuICAgIGhlaWdodDogNDUwcHg7XG5cbiAgICBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LTEyMDtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtcmV2ZXJzZS0yMHM7XG4gICAgei1pbmRleDogMjtcblxuICB9XG4gICYuLXNxMntcbiAgICB0b3A6NTEwcHg7XG4gICAgbGVmdDo1JTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwgNiwgNzAsIDAuMDgpO1xuICAgIHotaW5kZXg6IDM7XG4gICAgQGV4dGVuZCAucm90YXRlLTEwcztcbiAgfVxuICAmLi1zcTN7XG4gICAgdG9wOjY4MHB4O1xuICAgIGxlZnQ6OCU7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlcjoycHggc29saWQgJHByaW1hcnktMTIwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwJTtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtcmV2ZXJzZS05cztcblxuICB9XG4gICYuLXNxNHtcbiAgICB0b3A6NjQwcHg7XG4gICAgbGVmdDozJTtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeTtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtMTFzO1xuICB9XG5cbiAgJi4tc3E2e1xuICAgIHRvcDoyNzVweDtcbiAgICByaWdodDotMzI1cHg7XG4gICAgd2lkdGg6IDQ1MHB4O1xuICAgIGhlaWdodDogNDUwcHg7XG5cbiAgICBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LTEyMDtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtcmV2ZXJzZS0yMHM7XG4gICAgei1pbmRleDogNDtcblxuICB9XG4gICYuLXNxN3tcbiAgICB0b3A6NzBweDtcbiAgICByaWdodDotMTAwcHg7XG4gICAgd2lkdGg6IDcxN3B4O1xuICAgIGhlaWdodDogNzE3cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCA2LCA3MCwgMC4wOCk7XG4gICAgLypib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LTEyMDsqL1xuICAgIEBleHRlbmQgLnJvdGF0ZS0yMHM7XG4gICAgei1pbmRleDogMjtcblxuICB9XG4gICYuLXNxOHtcbiAgICB0b3A6NjgwcHg7XG4gICAgcmlnaHQ6OCU7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlcjoycHggc29saWQgJHByaW1hcnktMTIwO1xuICAgIEBleHRlbmQgLnJvdGF0ZS1yZXZlcnNlLTlzO1xuXG4gIH1cbiAgJi4tc3E5e1xuICAgIHRvcDo2NDBweDtcbiAgICByaWdodDozJTtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeTtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtMTFzO1xuICB9XG4gICYuLXNxMTB7XG4gICAgdG9wOjU2MHB4O1xuICAgIHJpZ2h0OjYlO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS0xMjA7XG4gICAgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeS0xMjA7XG4gICAgQGV4dGVuZCAucm90YXRlLXJldmVyc2UtOHM7XG4gIH1cblxufVxuIiwiXG4vKiBtYWluIHRpdGxlcyAqL1xuLm1ldGEtdGl0bGV7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuXG59XG5cbi5tZXRhLXRpdGxlLWNvbnRhaW5lciB7XG4gIGJvcmRlcjowcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2Zvcm06IG1hdHJpeCgxLCAwLCAwLCAxLCAwLCAwKTtcblxuXG4gIC5tZXRhLXRpdGxlLWhlYWRlcntcbiAgICBib3JkZXI6MDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29udGFpbjogbGF5b3V0IHN0eWxlO1xuXG4gICAgaDF7XG4gICAgICBAZXh0ZW5kIC5mb250LTM2O1xuICAgICAgQGV4dGVuZCAuZm9udC1tZC02NTtcbiAgICB9XG5cbiAgICBoMntcbiAgICAgIEBleHRlbmQgLmZvbnQtMzA7XG4gICAgICBAZXh0ZW5kIC5mb250LW1kLTYwO1xuICAgIH1cbiAgICBoM3tcbiAgICAgIEBleHRlbmQgLmZvbnQtMjY7XG4gICAgICBAZXh0ZW5kIC5mb250LW1kLTUwO1xuICAgIH1cblxuICAgIGg0e1xuICAgICAgQGV4dGVuZCAuZm9udC0yMDtcbiAgICAgIEBleHRlbmQgLmZvbnQtbWQtNDA7XG4gICAgfVxuICAgIGg1e1xuICAgICAgQGV4dGVuZCAuZm9udC0xNjtcbiAgICAgIEBleHRlbmQgLmZvbnQtbWQtMzA7XG4gICAgfVxuICAgIGg2e1xuICAgICAgQGV4dGVuZCAuZm9udC0xNDtcbiAgICAgIEBleHRlbmQgLmZvbnQtbWQtMjA7XG4gICAgfVxuXG4gICAgLm1ldGEtdGl0bGUtc2hhcGVzIHtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIGxlZnQ6IC01cHg7XG4gICAgICByaWdodDogLTVweDtcbiAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLypiYWNrZ3JvdW5kOiAkcHJpbWFyeS0xMjA7Ki9cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGFpbjogc3RyaWN0O1xuXG5cbiAgICAgIC5tZXRhLXRpdGxlLXNoYXBlIHtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICMzMzM7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAlO1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDIwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjAlO1xuXG5cbiAgICAgICAgJi4tdjEge1xuICAgICAgICAgIHdpZHRoOiA2NTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDY1MHB4O1xuICAgICAgICAgIG1hcmdpbjogLTMyNXB4IDAgMCAtMzI1cHg7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICB9XG4gICAgICAgICYuLXYyIHtcbiAgICAgICAgICB3aWR0aDogNDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0NDBweDtcbiAgICAgICAgICBtYXJnaW46IC0yMjBweCAwIDAgLTIyMHB4O1xuXG4gICAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1saWdodDtcbiAgICAgICAgfVxuICAgICAgICAmLi12MyB7XG4gICAgICAgICAgd2lkdGg6IDI3MHB4O1xuICAgICAgICAgIGhlaWdodDogMjcwcHg7XG4gICAgICAgICAgbWFyZ2luOiAtMTM1cHggMCAwIC0xMzVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3F1YXJlLXNoYXBle1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDc1ZGVnKTtcblxuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICMzMzM7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAlO1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDIwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjAlO1xuXG4gICAgICAgICYuLXNoMXtcbiAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgbGVmdDo1JTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuICAgICAgICAmLi1zaDJ7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgIHRvcDotNSU7XG4gICAgICAgICAgcmlnaHQ6MTAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWxpZ2h0ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cblxuICB9XG5cbiAgLm1ldGEtdGl0bGUtaGVhZGVyLWJsZW5kIHtcblxuICAgIGNvbG9yOiAkcHJpbWFyeS0xMjA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgJjo6YmVmb3JlIHtcblxuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTEycHg7XG4gICAgICBsZWZ0OiAtNnB4O1xuICAgICAgcmlnaHQ6IC02cHg7XG4gICAgICBib3R0b206IC01MnB4O1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuICAgIH1cblxuXG4gIH1cbn1cbiIsIi5lbW9qaXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA1O1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMTIwcHg7XG4gIGJhY2tncm91bmQ6IGNlbnRlciBjZW50ZXIgI2ZmZiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTo4MHB4IDgwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwJTtcbiAgYm94LXNoYWRvdzogMCA2MHB4IDYwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTMpO1xuXG4gICRlbW9qaXM6ICdlYXJ0aCcsJ3JvY2snLCdoYW5kc2hha2UnLCdzcGVha2VyJywncm9ja2V0Jywnc2NyaXB0JywnbmV3c3BhcGVyJywnaGVsbG8nLCAnZ2VhcicsJ2NvbXB1dGVyJyxcbiAgJ3Nob3BwaW5nJywnYXJ0JywnY29tcHV0ZXIzJywgJ25lcmQnLCdpbnZhZGVyJywnbW9iaWxlJywgJ2NvZmZlZScsJ2ZpcnN0Jywncm9ib3QnLFxuICAnY29tcHV0ZXIyJywnYm9vaycsJ2hhc2h0YWcnLCdwcmludCcsJ3BpY3R1cmUnLCd2aWRlbycsJ2ZpbG0nLCAnYmFyLWNoYXJ0JywgJ3dyaXRpbmcnLCdsb3Vkc3BlYWtlcicsXG4gICdjaGFydCcsICdpZGVhJywgJ2dsYXNzZXMnLCdzdHJvbmcnLCdjb2ZmZWUnLCdmaXJzdCcsJ3JvYm90JywnbW9iaWxlJywnZWR1Y2F0aW9uJywnZm9vZCcsJ2hlYWx0aCcsJ3lvdScsJ2FuaW1hbHMnO1xuXG4gIEBlYWNoICRlbW9qaSBpbiAkZW1vamlze1xuICAgICYuLWVtLSN7JGVtb2ppfSwgJi5lbW9qaS0jeyRlbW9qaX17XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9ob21lL2Vtb2ppLyN7JGVtb2ppfS5wbmcnKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAnO1xuLy8jQGltcG9ydCAnbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC12dWUvc3JjL2luZGV4LnNjc3MnO1xuXG5AaW1wb3J0ICdhbmltJztcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdtb2JpbGUtdjInO1xuQGltcG9ydCAnX3NoYXBlcyc7XG5AaW1wb3J0ICdfYW5pbWF0ZWRUaXRsZSc7XG5AaW1wb3J0ICdfZW1vamknO1xuXG4vKiBsYXlvdXQgYW5pbWF0aW9uICovXG5cblxuXG5cblxuI2xicC1sYXVuY2h7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LTEyMDtcbiAgQGV4dGVuZCAuYW5pbS1hbGw7XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWRhcms7XG4gIH1cblxuICBhXG4gIHtcblxuICAgICY6aG92ZXJ7XG5cbiAgICAgIC8qZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgYntcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH0qL1xuICB9XG59XG59XG5uYXYubmF2YmFyLWxpZ2h0e1xuXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC45NSk7XG4gIC5uYXZiYXItbmF2e1xuICAgIGEubmF2LWxpbmt7XG4gICAgICBjb2xvcjokcHJpbWFyeS0xMjA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbWd7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG59XG5cblxuYmxvY2txdW90ZXtcbiAgbWFyZ2luLWxlZnQ6MTVweDtcbiAgcGFkZGluZy1sZWZ0OjE1cHg7XG4gIGJvcmRlci1sZWZ0OjVweCBzb2xpZCAkc2Vjb25kYXJ5LWxpZ2h0ZXI7XG59XG5cbmZvb3RlcntcbiAgI2Zvb3Rlci1sb2dve1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gIH1cbiAgYXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBjb2xvcjp3aGl0ZTtcbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktbGlnaHRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG5cblxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/