@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;
}

.anim-all, .question .answer, .question .toggleAnswer .arrow svg, #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;
}

/*!
 * 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, .question .answer, .question .toggleAnswer .arrow svg, #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;
}

#faq .bg-shape {
  position: fixed;
}
#faq #faq-content {
  position: relative;
  z-index: 5;
  min-height: 80vh;
}

.question .toggleAnswer {
  cursor: pointer;
  display: inline-block;
}
.question .toggleAnswer:hover {
  text-decoration: underline;
}
.question .answer {
  max-height: 0;
  overflow: hidden;
}
.question.show .toggleAnswer {
  font-style: italic;
}
.question.show .toggleAnswer .arrow svg {
  transform: rotate(90deg);
}
.question.show .answer {
  max-height: 999px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFxLXN0eWxlLjIxMmM2NWFhLmNzcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsZ0JBQWdCO0FDQ2hCOzs7O0NBQUE7QUFRQTs7Q0FBQTtBQUtBO0VBQ0E7RUFDQTtFQU1BO0FETEE7QUNPQTtFQUNBO0VBQ0E7RUFNQTtBRFZBO0FDWUE7RUFDQTtFQUNBO0VBTUE7QURmQTtBQ2lCQTtFQUNBO0VBQ0E7RUFNQTtBRHBCQTtBQ3NCQTtFQUNBO0VBQ0E7RUFNQTtBRHpCQTtBQzRCQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0FEL0JBO0FDK0dBO0VBQVc7QUQ1R1g7O0FDNkdBO0VBQWM7QUR6R2Q7O0FDMEdBO0VBRUU7RUFDQTtBRHhHRjs7QUMyR0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBRHpHRjtBQzBHRTtFQUNFO0VBQ0E7QUR4R0o7QUMwR0U7RUFDRTtBRHhHSjs7QUM2R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUQxR0Y7QUMyR0U7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUQxR0o7O0FDZ0hBO0VBQTBCO0FENUcxQjs7QUMrR0E7RUFBYSx5QkF0R0g7QURMVjs7QUM0R0E7RUFBZSxjQXZHTDtBRERWOztBQzBHQTtFQUFlLHlCQXhHQTtBREVmOztBQ3VHQTtFQUFrQixjQXpHSDtBRE1mOztBQ29HQTtFQUFnQix5QkF2R0U7QURPbEI7O0FDaUdBO0VBQW1CLGNBeEdEO0FEV2xCOztBQytGQTtFQUFlLHlCQXpHQztBRGNoQjs7QUM0RkE7RUFBaUIsY0ExR0Q7QURrQmhCOztBQ3lGQTtFQUFlLHlCQTFHRztBRHFCbEI7O0FDc0ZBO0VBQWtCLGNBM0dBO0FEeUJsQjs7QUNvRkE7RUFBZSx5QkFuR0g7QURtQlo7O0FDaUZBO0VBQWlCLGNBcEdMO0FEdUJaOztBQzhFQTtFQUFpQix5QkFwR0E7QUQwQmpCOztBQzJFQTtFQUFtQixjQXJHRjtBRDhCakI7O0FDd0VBO0VBQWtCLHlCQXJHQztBRGlDbkI7O0FDcUVBO0VBQW9CLGNBdEdEO0FEcUNuQjs7QUNrRUE7RUFBaUIseUJBdEdBO0FEd0NqQjs7QUMrREE7RUFBbUIsY0F2R0Y7QUQ0Q2pCOztBQzREQTtFQUFrQix5QkF2R0M7QUQrQ25COztBQ3lEQTtFQUFvQixjQXhHRDtBRG1EbkI7O0FDc0RBO0VBQW1CLHlCQXhHQztBRHNEcEI7O0FDbURBO0VBQXFCLGNBekdEO0FEMERwQjs7QUNpREE7RUFBVyx5QkE3SUg7QURnR1I7O0FDOENBO0VBQWEsY0E5SUw7QURvR1I7O0FDMkNBO0VBQVUseUJBckZIO0FEOENQOztBQ3dDQTtFQUFZLGNBdEZMO0FEa0RQOztBQ3NDQTtFQUFZLG9EQWxHQztBRGdFYjs7QUNtQ0E7RUFBYyxvREFsR0M7QURtRWY7O0FDaUNBO0VBQWdCLHlCQTVGSDtBRCtEYjs7QUM4QkE7RUFBa0IsY0E3Rkw7QURtRWI7O0FDNkJBO0VBQVc7QUR6Qlg7O0FDMEJBO0VBQWE7QUR0QmI7O0FDeUJBO0VBQVMseUJBM0pIO0FEc0lOOztBQ3NCQTtFQUFXO0FEbEJYOztBQ29CQTtFQUFXLHlCQXhKSDtBRHdJUjs7QUNpQkE7RUFBYTtBRGJiOztBQ2VBO0VBQU07RUFDTjtBRFhBOztBQ2lCRTtFQUNFO0VBQ0E7QURkSjs7QUNpQkE7RUFDRTtBRGRGOztBQ2tCQTtFQUVFO0FEaEJGO0FDaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QURmSjs7QUNrQkE7RUFDRTtBRGZGOztBQ21CQTtFQUVFO0FEakJGO0FDa0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QURoQko7O0FDc0JBO0VBQ0U7QURuQkY7O0FDdUJBO0VBRUUscUJBMUxVO0FEcUtaOztBQ3VCQTtFQUNFO0FEcEJGOztBQzhCQTtFQUVFO0FENUJGOztBQytCQTtFQUNFLHlCQTdNVTtFQThNVixjQWpPSztBRHFNUDtBQzhCRTtFQUNFLHlCQTNOYztFQTROZDtFQUNBO0FENUJKOztBQytCQTtFQUNFO0VBQ0E7RUFDQSxjQTVPSztFQTZPTDtBRDVCRjtBQzZCRTtFQUNFLHlCQXRPYztFQXVPZDtFQUNBO0FEM0JKOztBQ2lDQTtFQUFpQjtBRDdCakI7O0FDOEJBO0VBQW1CO0FEMUJuQjs7QUMyQkE7RUFBbUI7QUR2Qm5COztBQ3dCQTtFQUFtQjtBRHBCbkI7O0FDcUJBO0VBQXFCO0FEakJyQjs7QUNrQkE7RUFBcUI7QURkckI7O0FDZ0JBO0VBQXFCO0FEWnJCOztBQ2FBO0VBQXVCO0FEVHZCOztBQ1VBO0VBQXVCO0FETnZCOztBQ09BO0VBQXVCO0FESHZCOztBQ0lBO0VBQXlCO0FEQXpCOztBQ0NBO0VBQXlCO0FER3pCOztBQ0RBO0VBQVk7QURLWjs7QUNKQTtFQUFZO0FEUVo7O0FDTkE7RUFDRztBRFNIOztBQ05FO0VBQ0U7QURTSjs7QUNWRTtFQUNFO0FEYUo7O0FDZEU7RUFDRTtBRGlCSjs7QUNsQkU7RUFDRTtBRHFCSjs7QUN0QkU7RUFDRTtBRHlCSjs7QUMxQkU7RUFDRTtBRDZCSjs7QUM5QkU7RUFDRTtBRGlDSjs7QUNsQ0U7RUFDRTtBRHFDSjs7QUN0Q0U7RUFDRTtBRHlDSjs7QUMxQ0U7RUFDRTtBRDZDSjs7QUN6Q0U7RUFDRTtBRDRDSjs7QUM3Q0U7RUFDRTtBRGdESjs7QUNqREU7RUFDRTtBRG9ESjs7QUNyREU7RUFDRTtBRHdESjs7QUN6REU7RUFDRTtBRDRESjs7QUM3REU7RUFDRTtBRGdFSjs7QUNqRUU7RUFDRTtBRG9FSjs7QUNyRUU7RUFDRTtBRHdFSjs7QUN6RUU7RUFDRTtBRDRFSjs7QUM3RUU7RUFDRTtBRGdGSjs7QUNqRkU7RUFDRTtBRG9GSjs7QUNyRkU7RUFDRTtBRHdGSjs7QUN6RkU7RUFDRTtBRDRGSjs7QUM3RkU7RUFDRTtBRGdHSjs7QUNqR0U7RUFDRTtBRG9HSjs7QUNyR0U7RUFDRTtBRHdHSjs7QUN6R0U7RUFDRTtBRDRHSjs7QUM3R0U7RUFDRTtBRGdISjs7QUNqSEU7RUFDRTtBRG9ISjs7QUNySEU7RUFDRTtBRHdISjs7QUN6SEU7RUFDRTtBRDRISjs7QUM3SEU7RUFDRTtBRGdJSjs7QUNqSUU7RUFDRTtBRG9JSjs7QUNySUU7RUFDRTtBRHdJSjs7QUN6SUU7RUFDRTtBRDRJSjs7QUM3SUU7RUFDRTtBRGdKSjs7QUNqSkU7RUFDRTtBRG9KSjs7QUNySkU7RUFDRTtBRHdKSjs7QUN6SkU7RUFDRTtBRDRKSjs7QUM3SkU7RUFDRTtBRGdLSjs7QUNqS0U7RUFDRTtBRG9LSjs7QUNyS0U7RUFDRTtBRHdLSjs7QUN6S0U7RUFDRTtBRDRLSjs7QUM3S0U7RUFDRTtBRGdMSjs7QUNqTEU7RUFDRTtBRG9MSjs7QUNyTEU7RUFDRTtBRHdMSjs7QUN6TEU7RUFDRTtBRDRMSjs7QUM3TEU7RUFDRTtBRGdNSjs7QUNqTUU7RUFDRTtBRG9NSjs7QUNyTUU7RUFDRTtBRHdNSjs7QUN6TUU7RUFDRTtBRDRNSjs7QUM3TUU7RUFDRTtBRGdOSjs7QUNqTkU7RUFDRTtBRG9OSjs7QUNyTkU7RUFDRTtBRHdOSjs7QUN6TkU7RUFDRTtBRDROSjs7QUM3TkU7RUFDRTtBRGdPSjs7QUNqT0U7RUFDRTtBRG9PSjs7QUNyT0U7RUFDRTtBRHdPSjs7QUN6T0U7RUFDRTtBRDRPSjs7QUM3T0U7RUFDRTtBRGdQSjs7QUNqUEU7RUFDRTtBRG9QSjs7QUNyUEU7RUFDRTtBRHdQSjs7QUN6UEU7RUFDRTtBRDRQSjs7QUM3UEU7RUFDRTtBRGdRSjs7QUNqUUU7RUFDRTtBRG9RSjs7QUNyUUU7RUFDRTtBRHdRSjs7QUN6UUU7RUFDRTtBRDRRSjs7QUM3UUU7RUFDRTtBRGdSSjs7QUNqUkU7RUFDRTtBRG9SSjs7QUNyUkU7RUFDRTtBRHdSSjs7QUN6UkU7RUFDRTtBRDRSSjs7QUM3UkU7RUFDRTtBRGdTSjs7QUNqU0U7RUFDRTtBRG9TSjs7QUNyU0U7RUFDRTtBRHdTSjs7QUNyU0E7RUFFSTtJQUNFO0VEdVNKOztFQ3hTRTtJQUNFO0VEMlNKOztFQzVTRTtJQUNFO0VEK1NKOztFQ2hURTtJQUNFO0VEbVRKOztFQ3BURTtJQUNFO0VEdVRKOztFQ3hURTtJQUNFO0VEMlRKOztFQzVURTtJQUNFO0VEK1RKOztFQ2hVRTtJQUNFO0VEbVVKOztFQ3BVRTtJQUNFO0VEdVVKOztFQ3hVRTtJQUNFO0VEMlVKOztFQzVVRTtJQUNFO0VEK1VKOztFQ2hWRTtJQUNFO0VEbVZKOztFQ3BWRTtJQUNFO0VEdVZKOztFQ3hWRTtJQUNFO0VEMlZKOztFQzVWRTtJQUNFO0VEK1ZKOztFQ2hXRTtJQUNFO0VEbVdKOztFQ3BXRTtJQUNFO0VEdVdKOztFQ3hXRTtJQUNFO0VEMldKOztFQzVXRTtJQUNFO0VEK1dKOztFQ2hYRTtJQUNFO0VEbVhKOztFQ3BYRTtJQUNFO0VEdVhKOztFQ3hYRTtJQUNFO0VEMlhKOztFQzVYRTtJQUNFO0VEK1hKOztFQ2hZRTtJQUNFO0VEbVlKOztFQ3BZRTtJQUNFO0VEdVlKOztFQ3hZRTtJQUNFO0VEMllKOztFQzVZRTtJQUNFO0VEK1lKOztFQ2haRTtJQUNFO0VEbVpKOztFQ3BaRTtJQUNFO0VEdVpKOztFQ3haRTtJQUNFO0VEMlpKOztFQzVaRTtJQUNFO0VEK1pKOztFQ2hhRTtJQUNFO0VEbWFKOztFQ3BhRTtJQUNFO0VEdWFKOztFQ3hhRTtJQUNFO0VEMmFKOztFQzVhRTtJQUNFO0VEK2FKOztFQ2hiRTtJQUNFO0VEbWJKOztFQ3BiRTtJQUNFO0VEdWJKOztFQ3hiRTtJQUNFO0VEMmJKOztFQzViRTtJQUNFO0VEK2JKOztFQ2hjRTtJQUNFO0VEbWNKOztFQ3BjRTtJQUNFO0VEdWNKOztFQ3hjRTtJQUNFO0VEMmNKOztFQzVjRTtJQUNFO0VEK2NKOztFQ2hkRTtJQUNFO0VEbWRKOztFQ3BkRTtJQUNFO0VEdWRKOztFQ3hkRTtJQUNFO0VEMmRKOztFQzVkRTtJQUNFO0VEK2RKOztFQ2hlRTtJQUNFO0VEbWVKOztFQ3BlRTtJQUNFO0VEdWVKOztFQ3hlRTtJQUNFO0VEMmVKOztFQzVlRTtJQUNFO0VEK2VKOztFQ2hmRTtJQUNFO0VEbWZKOztFQ3BmRTtJQUNFO0VEdWZKOztFQ3hmRTtJQUNFO0VEMmZKOztFQzVmRTtJQUNFO0VEK2ZKOztFQ2hnQkU7SUFDRTtFRG1nQko7O0VDcGdCRTtJQUNFO0VEdWdCSjs7RUN4Z0JFO0lBQ0U7RUQyZ0JKOztFQzVnQkU7SUFDRTtFRCtnQko7O0VDaGhCRTtJQUNFO0VEbWhCSjs7RUNwaEJFO0lBQ0U7RUR1aEJKOztFQ3hoQkU7SUFDRTtFRDJoQko7O0VDNWhCRTtJQUNFO0VEK2hCSjs7RUNoaUJFO0lBQ0U7RURtaUJKO0FBQ0Y7QUNoaUJBO0VBQVk7QURtaUJaOztBQ2xpQkE7RUFBYTtBRHNpQmI7O0FDcmlCQTtFQUFhO0FEeWlCYjs7QUN4aUJBO0VBQWE7QUQ0aUJiOztBQzNpQkE7RUFBYTtBRCtpQmI7O0FDOWlCQTtFQUFhO0FEa2pCYjs7QUNqakJBO0VBQWE7QURxakJiOztBQ3BqQkE7RUFBYTtBRHdqQmI7O0FDdmpCQTtFQUFjO0FEMmpCZDs7QUUzN0JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjg3QkQ7O0FFNTdCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUYrN0JEOztBRTM3QkE7QUFDQTtFQUF1QjtJQUFPO0VGZzhCNUI7QUFDRjtBRWg4QkE7RUFBMEI7SUFBTztFRm84Qi9CO0FBQ0Y7QUVwOEJBO0VBQWtCO0lBQU87SUFBbUM7RUZ5OEIxRDtBQUNGO0FFeDhCQTtFQUErQjtJQUFPO0VGNDhCcEM7QUFDRjtBRTU4QkE7RUFBa0M7SUFBTztFRmc5QnZDO0FBQ0Y7QUVoOUJBO0VBQTBCO0lBQU87SUFBb0M7RUZxOUJuRTtBQUNGO0FFbjlCQztFQUNDO0VBQ0E7RUFDQTtBRnE5QkY7O0FFajlCQztFQUNDO0VBQ0E7RUFDQTtBRm85QkY7O0FFOTlCQztFQUNDO0VBQ0E7RUFDQTtBRmkrQkY7O0FFNzlCQztFQUNDO0VBQ0E7RUFDQTtBRmcrQkY7O0FFMStCQztFQUNDO0VBQ0E7RUFDQTtBRjYrQkY7O0FFeitCQztFQUNDO0VBQ0E7RUFDQTtBRjQrQkY7O0FFdC9CQztFQUNDO0VBQ0E7RUFDQTtBRnkvQkY7O0FFci9CQztFQUNDO0VBQ0E7RUFDQTtBRncvQkY7O0FFbGdDQztFQUNDO0VBQ0E7RUFDQTtBRnFnQ0Y7O0FFamdDQztFQUNDO0VBQ0E7RUFDQTtBRm9nQ0Y7O0FFOWdDQztFQUNDO0VBQ0E7RUFDQTtBRmloQ0Y7O0FFN2dDQztFQUNDO0VBQ0E7RUFDQTtBRmdoQ0Y7O0FFMWhDQztFQUNDO0VBQ0E7RUFDQTtBRjZoQ0Y7O0FFemhDQztFQUNDO0VBQ0E7RUFDQTtBRjRoQ0Y7O0FFdGlDQztFQUNDO0VBQ0E7RUFDQTtBRnlpQ0Y7O0FFcmlDQztFQUNDO0VBQ0E7RUFDQTtBRndpQ0Y7O0FFbGpDQztFQUNDO0VBQ0E7RUFDQTtBRnFqQ0Y7O0FFampDQztFQUNDO0VBQ0E7RUFDQTtBRm9qQ0Y7O0FFOWpDQztFQUNDO0VBQ0E7RUFDQTtBRmlrQ0Y7O0FFN2pDQztFQUNDO0VBQ0E7RUFDQTtBRmdrQ0Y7O0FFMWtDQztFQUNDO0VBQ0E7RUFDQTtBRjZrQ0Y7O0FFemtDQztFQUNDO0VBQ0E7RUFDQTtBRjRrQ0Y7O0FFdGxDQztFQUNDO0VBQ0E7RUFDQTtBRnlsQ0Y7O0FFcmxDQztFQUNDO0VBQ0E7RUFDQTtBRndsQ0Y7O0FFbG1DQztFQUNDO0VBQ0E7RUFDQTtBRnFtQ0Y7O0FFam1DQztFQUNDO0VBQ0E7RUFDQTtBRm9tQ0Y7O0FFOW1DQztFQUNDO0VBQ0E7RUFDQTtBRmluQ0Y7O0FFN21DQztFQUNDO0VBQ0E7RUFDQTtBRmduQ0Y7O0FFMW5DQztFQUNDO0VBQ0E7RUFDQTtBRjZuQ0Y7O0FFem5DQztFQUNDO0VBQ0E7RUFDQTtBRjRuQ0Y7O0FFdG9DQztFQUNDO0VBQ0E7RUFDQTtBRnlvQ0Y7O0FFcm9DQztFQUNDO0VBQ0E7RUFDQTtBRndvQ0Y7O0FFbHBDQztFQUNDO0VBQ0E7RUFDQTtBRnFwQ0Y7O0FFanBDQztFQUNDO0VBQ0E7RUFDQTtBRm9wQ0Y7O0FFOXBDQztFQUNDO0VBQ0E7RUFDQTtBRmlxQ0Y7O0FFN3BDQztFQUNDO0VBQ0E7RUFDQTtBRmdxQ0Y7O0FFMXFDQztFQUNDO0VBQ0E7RUFDQTtBRjZxQ0Y7O0FFenFDQztFQUNDO0VBQ0E7RUFDQTtBRjRxQ0Y7O0FFdHJDQztFQUNDO0VBQ0E7RUFDQTtBRnlyQ0Y7O0FFcnJDQztFQUNDO0VBQ0E7RUFDQTtBRndyQ0Y7O0FHL3RDRTtFRDRDRDtJQUFLO0lBQVc7RUZ5ckNmO0VFeHJDRDtJQUFLO0lBQVc7RUY0ckNmO0VFM3JDRDtJQUFNO0lBQWE7RUYrckNsQjtFRTlyQ0Q7SUFBTztJQUFhO0VGa3NDbkI7QUFDRjtBRy91Q0U7RUR5Q0Q7SUFBSztJQUFXO0VGMnNDZjtFRTFzQ0Q7SUFBSztJQUFXO0VGOHNDZjtFRTdzQ0Q7SUFBTTtJQUFhO0VGaXRDbEI7RUVodENEO0lBQU87SUFBYTtFRm90Q25CO0FBQ0Y7QUc5dkNFO0VEc0NEO0lBQUs7SUFBVztFRjZ0Q2Y7RUU1dENEO0lBQUs7SUFBVztFRmd1Q2Y7RUUvdENEO0lBQU07SUFBYTtFRm11Q2xCO0VFbHVDRDtJQUFPO0lBQWE7RUZzdUNuQjtBQUNGO0FHN3dDRTtFRG1DRDtJQUFLO0lBQVc7RUYrdUNmO0VFOXVDRDtJQUFLO0lBQVc7RUZrdkNmO0VFanZDRDtJQUFNO0lBQWE7RUZxdkNsQjtFRXB2Q0Q7SUFBTztJQUFhO0VGd3ZDbkI7QUFDRjtBR3h5Q0U7RURtREQ7SUFBTTtFRnl2Q0w7RUV4dkNEO0lBQU87SUFBYTtJQUFjO0VGNnZDakM7QUFDRjtBRy95Q0U7RURnREQ7SUFBTTtFRm13Q0w7RUVsd0NEO0lBQU87SUFBYTtJQUFjO0VGdXdDakM7QUFDRjtBR3R6Q0U7RUQ2Q0Q7SUFBTTtFRjZ3Q0w7RUU1d0NEO0lBQU87SUFBYTtJQUFjO0VGaXhDakM7QUFDRjtBRzd6Q0U7RUQwQ0Q7SUFBTTtFRnV4Q0w7RUV0eENEO0lBQU87SUFBYTtJQUFjO0VGMnhDakM7QUFDRjtBR2gxQ0U7RUQwREQ7SUFBTyxtQkR3Q0U7RURrdkNSO0FBQ0Y7QUdsMUNFO0VEdUREO0lBQU8sbUJEd0NFO0VEdXZDUjtBQUNGO0FHcDFDRTtFRG9ERDtJQUFPLG1CRHdDRTtFRDR2Q1I7QUFDRjtBR3QxQ0U7RURpREQ7SUFBTyxtQkR3Q0U7RURpd0NSO0FBQ0Y7QUdwMkNFO0VEZ0VEO0lBQUs7RUZ3eUNKO0VFdnlDRDtJQUFPO0VGMHlDTjtFRXp5Q0Q7SUFBTztFRjR5Q047QUFDRjtBRzUyQ0U7RUQ2REQ7SUFBSztFRm16Q0o7RUVsekNEO0lBQU87RUZxekNOO0VFcHpDRDtJQUFPO0VGdXpDTjtBQUNGO0FHcDNDRTtFRDBERDtJQUFLO0VGOHpDSjtFRTd6Q0Q7SUFBTztFRmcwQ047RUUvekNEO0lBQU87RUZrMENOO0FBQ0Y7QUc1M0NFO0VEdUREO0lBQUs7RUZ5MENKO0VFeDBDRDtJQUFPO0VGMjBDTjtFRTEwQ0Q7SUFBTztFRjYwQ047QUFDRjtBR2g1Q0U7RUR1RUQ7SUFBSztFRjYwQ0o7RUU1MENEO0lBQU87RUYrMENOO0VFOTBDRDtJQUFPO0VGaTFDTjtFRWgxQ0Q7SUFBTztFRm0xQ047RUVsMUNEO0lBQVE7RUZxMUNQO0FBQ0Y7QUc5NUNFO0VEb0VEO0lBQUs7RUY4MUNKO0VFNzFDRDtJQUFPO0VGZzJDTjtFRS8xQ0Q7SUFBTztFRmsyQ047RUVqMkNEO0lBQU87RUZvMkNOO0VFbjJDRDtJQUFRO0VGczJDUDtBQUNGO0FHNTZDRTtFRGlFRDtJQUFLO0VGKzJDSjtFRTkyQ0Q7SUFBTztFRmkzQ047RUVoM0NEO0lBQU87RUZtM0NOO0VFbDNDRDtJQUFPO0VGcTNDTjtFRXAzQ0Q7SUFBUTtFRnUzQ1A7QUFDRjtBRzE3Q0U7RUQ4REQ7SUFBSztFRmc0Q0o7RUUvM0NEO0lBQU87RUZrNENOO0VFajRDRDtJQUFPO0VGbzRDTjtFRW40Q0Q7SUFBTztFRnM0Q047RUVyNENEO0lBQVE7RUZ3NENQO0FBQ0Y7QUdwOUNFO0VEK0VEO0lBQU07SUFBK0I7RUYwNENwQztFRXo0Q0Q7SUFBUTtJQUFrQztFRjY0Q3pDO0VFNTRDRDtJQUFRO0lBQWtDO0VGZzVDekM7RUUvNENEO0lBQVE7SUFBbUM7RUZtNUMxQztFRWw1Q0Q7SUFBUTtJQUFrQztFRnM1Q3pDO0VFcjVDRDtJQUFPO0lBQXFDO0lBQVU7RUYwNUNyRDtFRXo1Q0Q7SUFBUTtJQUF1QztFRjY1QzlDO0FBQ0Y7QUdoL0NFO0VENEVEO0lBQU07SUFBK0I7RUZ5NkNwQztFRXg2Q0Q7SUFBUTtJQUFrQztFRjQ2Q3pDO0VFMzZDRDtJQUFRO0lBQWtDO0VGKzZDekM7RUU5NkNEO0lBQVE7SUFBbUM7RUZrN0MxQztFRWo3Q0Q7SUFBUTtJQUFrQztFRnE3Q3pDO0VFcDdDRDtJQUFPO0lBQXFDO0lBQVU7RUZ5N0NyRDtFRXg3Q0Q7SUFBUTtJQUF1QztFRjQ3QzlDO0FBQ0Y7QUc1Z0RFO0VEeUVEO0lBQU07SUFBK0I7RUZ3OENwQztFRXY4Q0Q7SUFBUTtJQUFrQztFRjI4Q3pDO0VFMThDRDtJQUFRO0lBQWtDO0VGODhDekM7RUU3OENEO0lBQVE7SUFBbUM7RUZpOUMxQztFRWg5Q0Q7SUFBUTtJQUFrQztFRm85Q3pDO0VFbjlDRDtJQUFPO0lBQXFDO0lBQVU7RUZ3OUNyRDtFRXY5Q0Q7SUFBUTtJQUF1QztFRjI5QzlDO0FBQ0Y7QUd4aURFO0VEc0VEO0lBQU07SUFBK0I7RUZ1K0NwQztFRXQrQ0Q7SUFBUTtJQUFrQztFRjArQ3pDO0VFeitDRDtJQUFRO0lBQWtDO0VGNitDekM7RUU1K0NEO0lBQVE7SUFBbUM7RUZnL0MxQztFRS8rQ0Q7SUFBUTtJQUFrQztFRm0vQ3pDO0VFbC9DRDtJQUFPO0lBQXFDO0lBQVU7RUZ1L0NyRDtFRXQvQ0Q7SUFBUTtJQUF1QztFRjAvQzlDO0FBQ0Y7QUdobERFO0VEMEZEO0lBQU07RUYwL0NMO0VFei9DRDtJQUFRO0VGNC9DUDtFRTMvQ0Q7SUFBUTtFRjgvQ1A7RUU3L0NEO0lBQVE7RUZnZ0RQO0VFLy9DRDtJQUFRO0VGa2dEUDtFRWpnREQ7SUFBUTtFRm9nRFA7RUVuZ0REO0lBQVE7RUZzZ0RQO0VFcmdERDtJQUFRO0lBQW1DO0lBQVU7RUYwZ0RwRDtFRXpnREQ7SUFBUTtJQUFZO0VGNmdEbkI7QUFDRjtBRzdtREU7RUR1RkQ7SUFBTTtFRjBoREw7RUV6aEREO0lBQVE7RUY0aERQO0VFM2hERDtJQUFRO0VGOGhEUDtFRTdoREQ7SUFBUTtFRmdpRFA7RUUvaEREO0lBQVE7RUZraURQO0VFamlERDtJQUFRO0VGb2lEUDtFRW5pREQ7SUFBUTtFRnNpRFA7RUVyaUREO0lBQVE7SUFBbUM7SUFBVTtFRjBpRHBEO0VFemlERDtJQUFRO0lBQVk7RUY2aURuQjtBQUNGO0FHMW9ERTtFRG9GRDtJQUFNO0VGMGpETDtFRXpqREQ7SUFBUTtFRjRqRFA7RUUzakREO0lBQVE7RUY4akRQO0VFN2pERDtJQUFRO0VGZ2tEUDtFRS9qREQ7SUFBUTtFRmtrRFA7RUVqa0REO0lBQVE7RUZva0RQO0VFbmtERDtJQUFRO0VGc2tEUDtFRXJrREQ7SUFBUTtJQUFtQztJQUFVO0VGMGtEcEQ7RUV6a0REO0lBQVE7SUFBWTtFRjZrRG5CO0FBQ0Y7QUd2cURFO0VEaUZEO0lBQU07RUYwbERMO0VFemxERDtJQUFRO0VGNGxEUDtFRTNsREQ7SUFBUTtFRjhsRFA7RUU3bEREO0lBQVE7RUZnbURQO0VFL2xERDtJQUFRO0VGa21EUDtFRWptREQ7SUFBUTtFRm9tRFA7RUVubUREO0lBQVE7RUZzbURQO0VFcm1ERDtJQUFRO0lBQW1DO0lBQVU7RUYwbURwRDtFRXptREQ7SUFBUTtJQUFZO0VGNm1EbkI7QUFDRjtBRXZtREM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBRnltREY7QUV2bURDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QUZ5bURGOztBRXRtREM7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUN0SEM7RUR3SUQ7SUFBTztFRndtRE47RUV2bUREO0lBQU87RUYwbUROO0VFem1ERDtJQUFPO0VGNG1ETjtBQUNGO0FHcHZERTtFRHFJRDtJQUFPO0VGbW5ETjtFRWxuREQ7SUFBTztFRnFuRE47RUVwbkREO0lBQU87RUZ1bkROO0FBQ0Y7QUc1dkRFO0VEa0lEO0lBQU87RUY4bkROO0VFN25ERDtJQUFPO0VGZ29ETjtFRS9uREQ7SUFBTztFRmtvRE47QUFDRjtBR3B3REU7RUQrSEQ7SUFBTztFRnlvRE47RUV4b0REO0lBQU87RUYyb0ROO0VFMW9ERDtJQUFPO0VGNm9ETjtBQUNGO0FFM29EQTtFQUVDO0VBQ0E7RUFDQTtBRjRvREQ7O0FFem9EQTtFQUNDO0VBQ0E7RUFDQTtBRjRvREQ7O0FHbnlERTtFRDJKRDtJQUFLO0lBQVM7RUY4b0RiO0VFN29ERDtJQUFLO0VGZ3BESjtFRS9vREQ7SUFBTztFRmtwRE47RUVqcEREO0lBQU87RUZvcEROO0VFbnBERDtJQUFPO0VGc3BETjtFRXJwREQ7SUFBTztFRndwRE47RUV2cEREO0lBQU87RUYwcEROO0VFenBERDtJQUFPO0VGNHBETjtFRTNwREQ7SUFBTztFRjhwRE47RUU3cEREO0lBQU87RUZncUROO0VFL3BERDtJQUFPO0VGa3FETjtFRWpxREQ7SUFBTztFRm9xRE47RUVucUREO0lBQU07RUZzcURMO0VFcnFERDtJQUFRO0lBQVM7SUFBVztFRjBxRDNCO0FBQ0Y7QUdoMURFO0VEd0pEO0lBQUs7SUFBUztFRjZyRGI7RUU1ckREO0lBQUs7RUYrckRKO0VFOXJERDtJQUFPO0VGaXNETjtFRWhzREQ7SUFBTztFRm1zRE47RUVsc0REO0lBQU87RUZxc0ROO0VFcHNERDtJQUFPO0VGdXNETjtFRXRzREQ7SUFBTztFRnlzRE47RUV4c0REO0lBQU87RUYyc0ROO0VFMXNERDtJQUFPO0VGNnNETjtFRTVzREQ7SUFBTztFRitzRE47RUU5c0REO0lBQU87RUZpdEROO0VFaHRERDtJQUFPO0VGbXRETjtFRWx0REQ7SUFBTTtFRnF0REw7RUVwdEREO0lBQVE7SUFBUztJQUFXO0VGeXREM0I7QUFDRjtBRzUzREU7RURxSkQ7SUFBSztJQUFTO0VGNHVEYjtFRTN1REQ7SUFBSztFRjh1REo7RUU3dUREO0lBQU87RUZndkROO0VFL3VERDtJQUFPO0VGa3ZETjtFRWp2REQ7SUFBTztFRm92RE47RUVudkREO0lBQU87RUZzdkROO0VFcnZERDtJQUFPO0VGd3ZETjtFRXZ2REQ7SUFBTztFRjB2RE47RUV6dkREO0lBQU87RUY0dkROO0VFM3ZERDtJQUFPO0VGOHZETjtFRTd2REQ7SUFBTztFRmd3RE47RUUvdkREO0lBQU87RUZrd0ROO0VFandERDtJQUFNO0VGb3dETDtFRW53REQ7SUFBUTtJQUFTO0lBQVc7RUZ3d0QzQjtBQUNGO0FHeDZERTtFRGtKRDtJQUFLO0lBQVM7RUYyeERiO0VFMXhERDtJQUFLO0VGNnhESjtFRTV4REQ7SUFBTztFRit4RE47RUU5eEREO0lBQU87RUZpeUROO0VFaHlERDtJQUFPO0VGbXlETjtFRWx5REQ7SUFBTztFRnF5RE47RUVweUREO0lBQU87RUZ1eUROO0VFdHlERDtJQUFPO0VGeXlETjtFRXh5REQ7SUFBTztFRjJ5RE47RUUxeUREO0lBQU87RUY2eUROO0VFNXlERDtJQUFPO0VGK3lETjtFRTl5REQ7SUFBTztFRml6RE47RUVoekREO0lBQU07RUZtekRMO0VFbHpERDtJQUFRO0lBQVM7SUFBVztFRnV6RDNCO0FBQ0Y7QUVuekRDO0VBQ0M7RUFFQTtFQUNBO0VBQ0E7QUZvekRGOztBSXYrREE7Ozs7O0VBQUE7QUNBQTtFQUdJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLRjtFQUNBO0FMMi9ERjs7QU0xL0RBOzs7RUFHRTtBTjYvREY7O0FNMS9EQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FONi9ERjs7QU12L0RBO0VBQ0U7QU4wL0RGOztBTWgvREE7RUFDRTtFQUNBLHFOQ3FPNEI7RUNySnhCLGVBdENhO0VGeENqQixnQkM4TzRCO0VEN081QixnQkNrUDRCO0VEalA1QixjQ25DUztFRG9DVDtFQUNBLHNCQzlDUztBUGlpRVg7O0FNditEQTtFQUNFO0FOMCtERjs7QU1qK0RBO0VBQ0U7RUFDQTtFQUNBO0FObytERjs7QU12OURBO0VBQ0U7RUFDQSxxQkNnTjRCO0FQMHdEOUI7O0FNbjlEQTtFQUNFO0VBQ0EsbUJDb0YwQjtBUGs0RDVCOztBTTM4REE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjg4REY7O0FNMzhEQTtFQUNFO0VBQ0E7RUFDQTtBTjg4REY7O0FNMzhEQTs7O0VBR0U7RUFDQTtBTjg4REY7O0FNMzhEQTs7OztFQUlFO0FOODhERjs7QU0zOERBO0VBQ0UsZ0JDaUo0QjtBUDZ6RDlCOztBTTM4REE7RUFDRTtFQUNBO0FOODhERjs7QU0zOERBO0VBQ0U7QU44OERGOztBTTM4REE7O0VBRUUsbUJDb0k0QjtBUDAwRDlCOztBTTM4REE7RUV4Rkk7QVJ1aUVKOztBTXQ4REE7O0VBRUU7RUVuR0U7RUZxR0Y7RUFDQTtBTnk4REY7O0FNdDhEQTtFQUFNO0FOMDhETjs7QU16OERBO0VBQU07QU42OEROOztBTXQ4REE7RUFDRSxjQ1h3QztFRFl4QyxxQkNYd0M7RURZeEM7QU55OERGO0FTem5FRTtFSG1MRSxjQ2RzQztFRGV0QywwQkNkc0M7QVB1OUQxQzs7QU1oOERBO0VBQ0U7RUFDQTtBTm04REY7QVNsb0VFO0VIa01FO0VBQ0E7QU5tOERKOztBTTE3REE7Ozs7RUFJRSxpR0N5RDRCO0VDN00xQjtBUmtsRUo7O0FNMTdEQTtFQUVFO0VBRUE7RUFFQTtFQUdBO0FOdzdERjs7QU1oN0RBO0VBRUU7QU5rN0RGOztBTTE2REE7RUFDRTtFQUNBO0FONjZERjs7QU0xNkRBO0VBR0U7RUFDQTtBTjI2REY7O0FNbjZEQTtFQUNFO0FOczZERjs7QU1uNkRBO0VBQ0Usb0JDNkU0QjtFRDVFNUIsdUJDNEU0QjtFRDNFNUIsY0N0UVM7RUR1UVQ7RUFDQTtBTnM2REY7O0FNLzVEQTtFQUVFO0VBQ0E7QU5pNkRGOztBTXo1REE7RUFFRTtFQUNBLHFCQzJKc0M7QVBnd0R4Qzs7QU1yNURBO0VBRUU7QU51NURGOztBTS80REE7RUFDRTtBTms1REY7O0FNLzREQTs7Ozs7RUFLRTtFQUNBO0VFNVBFO0VGOFBGO0FOazVERjs7QU0vNERBOztFQUVFO0FOazVERjs7QU0vNERBOztFQUVFO0FOazVERjs7QU01NERBO0VBQ0U7QU4rNERGOztBTXo0REE7RUFDRTtBTjQ0REY7O0FNcjREQTs7OztFQUlFO0FOdzRERjs7QU0vM0RJOzs7O0VBQ0U7QU5xNEROOztBTS8zREE7Ozs7RUFJRTtFQUNBO0FOazRERjs7QU0vM0RBOztFQUVFO0VBQ0E7QU5rNERGOztBTTkzREE7RUFDRTtFQUVBO0FOZzRERjs7QU03M0RBO0VBTUU7RUFFQTtFQUNBO0VBQ0E7QU4wM0RGOztBTXIzREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFblNJLGlCQXRDYTtFRjJVakI7RUFDQTtFQUNBO0FOdzNERjs7QU1yM0RBO0VBQ0U7QU53M0RGOztBTXAzREE7O0VBRUU7QU51M0RGOztBTXAzREE7RUFLRTtFQUNBO0FObTNERjs7QU01MkRBO0VBQ0U7QU4rMkRGOztBTXYyREE7RUFDRTtFQUNBO0FOMDJERjs7QU1uMkRBO0VBQ0U7QU5zMkRGOztBTW4yREE7RUFDRTtFQUNBO0FOczJERjs7QU1uMkRBO0VBQ0U7QU5zMkRGOztBTWoyREE7RUFDRTtBTm8yREY7O0FVaDBFQTs7RUFFRSxxQkhxUzRCO0VHblM1QixnQkhxUzRCO0VHcFM1QixnQkhxUzRCO0FQNmhFOUI7O0FVOXpFQTtFRmdITSxpQkF0Q2E7QVJ3dkVuQjs7QVVqMEVBO0VGK0dNLGVBdENhO0FSNHZFbkI7O0FVcDBFQTtFRjhHTSxrQkF0Q2E7QVJnd0VuQjs7QVV2MEVBO0VGNkdNLGlCQXRDYTtBUm93RW5COztBVTEwRUE7RUY0R00sa0JBdENhO0FSd3dFbkI7O0FVNzBFQTtFRjJHTSxlQXRDYTtBUjR3RW5COztBVS8wRUE7RUZ5R00sa0JBdENhO0VFakVqQixnQkh1UzRCO0FQMmlFOUI7O0FVOTBFQTtFRm1HTSxlQXRDYTtFRTNEakIsZ0JIMFI0QjtFR3pSNUIsZ0JIaVI0QjtBUGdrRTlCOztBVS8wRUE7RUY4Rk0saUJBdENhO0VFdERqQixnQkhzUjRCO0VHclI1QixnQkg0UTRCO0FQc2tFOUI7O0FVaDFFQTtFRnlGTSxpQkF0Q2E7RUVqRGpCLGdCSGtSNEI7RUdqUjVCLGdCSHVRNEI7QVA0a0U5Qjs7QVVqMUVBO0VGb0ZNLGlCQXRDYTtFRTVDakIsZ0JIOFE0QjtFRzdRNUIsZ0JIa1E0QjtBUGtsRTlCOztBVTUwRUE7RUFDRSxnQkhnRk87RUcvRVAsbUJIK0VPO0VHOUVQO0VBQ0E7QVYrMEVGOztBVXYwRUE7O0VGTUk7RUVIRixnQkgwTjRCO0FQZ25FOUI7O0FVdjBFQTs7RUFFRSxjSGtRNEI7RUdqUTVCLHlCSDBRNEI7QVBna0U5Qjs7QVVsMEVBO0VDL0VFO0VBQ0E7QVhxNUVGOztBVWwwRUE7RUNwRkU7RUFDQTtBWDA1RUY7O0FVcDBFQTtFQUNFO0FWdTBFRjtBVXIwRUU7RUFDRSxvQkhvUDBCO0FQbWxFOUI7O0FVN3pFQTtFRmpDSTtFRW1DRjtBVmcwRUY7O0FVNXpFQTtFQUNFLG1CSHVCTztFQ1JILGtCQXRDYTtBUnUxRW5COztBVTV6RUE7RUFDRTtFRjdDRTtFRStDRixjSDFHUztBUHk2RVg7QVU3ekVFO0VBQ0U7QVYrekVKOztBWWw3RUE7RUNJRTtFQUdBO0FiZzdFRjs7QVlqN0VBO0VBQ0UsZ0JMbWdDa0M7RUtsZ0NsQyxzQkxSUztFS1NUO0VFRUU7RURQRjtFQUdBO0FieTdFRjs7QVkzNkVBO0VBRUU7QVo2NkVGOztBWTE2RUE7RUFDRTtFQUNBO0FaNjZFRjs7QVkxNkVBO0VKa0NJO0VJaENGLGNMM0JTO0FQdzhFWDs7QWVwOUVBO0VQdUVJO0VPckVGLGNSbUNRO0VRbENSO0FmdTlFRjtBZXA5RUU7RUFDRTtBZnM5RUo7O0FlajlFQTtFQUNFO0VQMERFO0VPeERGLFdSVFM7RVFVVCx5QlJEUztFT0VQO0FkbzlFSjtBZWo5RUU7RUFDRTtFUGtEQTtFT2hEQSxnQlJ3UTBCO0FQMnNFOUI7O0FlNzhFQTtFQUNFO0VQeUNFO0VPdkNGLGNSakJTO0FQaStFWDtBZTc4RUU7RVBvQ0U7RU9sQ0E7RUFDQTtBZis4RUo7O0FlMThFQTtFQUNFLGlCUjhqQ2tDO0VRN2pDbEM7QWY2OEVGOztBZ0JyL0VFOzs7Ozs7RUNEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQisvRUY7O0FrQjU4RUk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RVAyekVyQjtBQUNGO0FrQmw5RUk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RVBnMEVyQjtBQUNGO0FrQnY5RUk7RUZ6Q0U7SUFDRSxnQlQ4TGU7RVBxMEVyQjtBQUNGO0FrQjU5RUk7RUZ6Q0U7SUFDRSxpQlQ4TGU7RVAwMEVyQjtBQUNGO0FnQjcrRUU7RUNuQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCbWhGRjs7QWdCNytFRTtFQUNFO0VBQ0E7QWhCZy9FSjtBZ0I5K0VJOztFQUVFO0VBQ0E7QWhCZy9FTjs7QW1CdGlGRTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5COGlGSjs7QW1CeGhGTTtFQUNFO0VBQ0E7RUFDQTtBbkIyaEZSOztBaUIvL0VFO0VBQ0U7RUFDQTtBakJrZ0ZKOztBaUJwZ0ZFO0VBQ0U7RUFDQTtBakJ1Z0ZKOztBaUJ6Z0ZFO0VBQ0U7RUFDQTtBakI0Z0ZKOztBaUI5Z0ZFO0VBQ0U7RUFDQTtBakJpaEZKOztBaUJuaEZFO0VBQ0U7RUFDQTtBakJzaEZKOztBaUJ4aEZFO0VBQ0U7RUFDQTtBakIyaEZKOztBbUI5aUZNO0VGQ0o7RUFDQTtFQUNBO0FqQmlqRkY7O0FtQjlpRlU7RUZiUjtFQUlBO0FqQjRqRkY7O0FtQm5qRlU7RUZiUjtFQUlBO0FqQmlrRkY7O0FtQnhqRlU7RUZiUjtFQUlBO0FqQnNrRkY7O0FtQjdqRlU7RUZiUjtFQUlBO0FqQjJrRkY7O0FtQmxrRlU7RUZiUjtFQUlBO0FqQmdsRkY7O0FtQnZrRlU7RUZiUjtFQUlBO0FqQnFsRkY7O0FtQjVrRlU7RUZiUjtFQUlBO0FqQjBsRkY7O0FtQmpsRlU7RUZiUjtFQUlBO0FqQitsRkY7O0FtQnRsRlU7RUZiUjtFQUlBO0FqQm9tRkY7O0FtQjNsRlU7RUZiUjtFQUlBO0FqQnltRkY7O0FtQmhtRlU7RUZiUjtFQUlBO0FqQjhtRkY7O0FtQnJtRlU7RUZiUjtFQUlBO0FqQm1uRkY7O0FtQnBtRk07RUFBd0I7QW5Cd21GOUI7O0FtQnRtRk07RUFBdUI7QW5CMG1GN0I7O0FtQnZtRlE7RUFBd0IsUUFEYjtBbkI0bUZuQjs7QW1CM21GUTtFQUF3QixRQURiO0FuQmduRm5COztBbUIvbUZRO0VBQXdCLFFBRGI7QW5Cb25GbkI7O0FtQm5uRlE7RUFBd0IsUUFEYjtBbkJ3bkZuQjs7QW1Cdm5GUTtFQUF3QixRQURiO0FuQjRuRm5COztBbUIzbkZRO0VBQXdCLFFBRGI7QW5CZ29GbkI7O0FtQi9uRlE7RUFBd0IsUUFEYjtBbkJvb0ZuQjs7QW1Cbm9GUTtFQUF3QixRQURiO0FuQndvRm5COztBbUJ2b0ZRO0VBQXdCLFFBRGI7QW5CNG9GbkI7O0FtQjNvRlE7RUFBd0IsUUFEYjtBbkJncEZuQjs7QW1CL29GUTtFQUF3QixTQURiO0FuQm9wRm5COztBbUJucEZRO0VBQXdCLFNBRGI7QW5Cd3BGbkI7O0FtQnZwRlE7RUFBd0IsU0FEYjtBbkI0cEZuQjs7QW1CcHBGWTtFRmhCVjtBakJ3cUZGOztBbUJ4cEZZO0VGaEJWO0FqQjRxRkY7O0FtQjVwRlk7RUZoQlY7QWpCZ3JGRjs7QW1CaHFGWTtFRmhCVjtBakJvckZGOztBbUJwcUZZO0VGaEJWO0FqQndyRkY7O0FtQnhxRlk7RUZoQlY7QWpCNHJGRjs7QW1CNXFGWTtFRmhCVjtBakJnc0ZGOztBbUJockZZO0VGaEJWO0FqQm9zRkY7O0FtQnByRlk7RUZoQlY7QWpCd3NGRjs7QW1CeHJGWTtFRmhCVjtBakI0c0ZGOztBbUI1ckZZO0VGaEJWO0FqQmd0RkY7O0FrQjNzRkk7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RW5CMHVGTjs7RWlCOXNGQTtJQUNFO0lBQ0E7RWpCaXRGRjs7RWlCbnRGQTtJQUNFO0lBQ0E7RWpCc3RGRjs7RWlCeHRGQTtJQUNFO0lBQ0E7RWpCMnRGRjs7RWlCN3RGQTtJQUNFO0lBQ0E7RWpCZ3VGRjs7RWlCbHVGQTtJQUNFO0lBQ0E7RWpCcXVGRjs7RWlCdnVGQTtJQUNFO0lBQ0E7RWpCMHVGRjs7RW1CN3ZGSTtJRkNKO0lBQ0E7SUFDQTtFakJnd0ZBOztFbUI3dkZRO0lGYlI7SUFJQTtFakIyd0ZBOztFbUJsd0ZRO0lGYlI7SUFJQTtFakJneEZBOztFbUJ2d0ZRO0lGYlI7SUFJQTtFakJxeEZBOztFbUI1d0ZRO0lGYlI7SUFJQTtFakIweEZBOztFbUJqeEZRO0lGYlI7SUFJQTtFakIreEZBOztFbUJ0eEZRO0lGYlI7SUFJQTtFakJveUZBOztFbUIzeEZRO0lGYlI7SUFJQTtFakJ5eUZBOztFbUJoeUZRO0lGYlI7SUFJQTtFakI4eUZBOztFbUJyeUZRO0lGYlI7SUFJQTtFakJtekZBOztFbUIxeUZRO0lGYlI7SUFJQTtFakJ3ekZBOztFbUIveUZRO0lGYlI7SUFJQTtFakI2ekZBOztFbUJwekZRO0lGYlI7SUFJQTtFakJrMEZBOztFbUJuekZJO0lBQXdCO0VuQnV6RjVCOztFbUJyekZJO0lBQXVCO0VuQnl6RjNCOztFbUJ0ekZNO0lBQXdCLFFBRGI7RW5CMnpGakI7O0VtQjF6Rk07SUFBd0IsUUFEYjtFbkIrekZqQjs7RW1COXpGTTtJQUF3QixRQURiO0VuQm0wRmpCOztFbUJsMEZNO0lBQXdCLFFBRGI7RW5CdTBGakI7O0VtQnQwRk07SUFBd0IsUUFEYjtFbkIyMEZqQjs7RW1CMTBGTTtJQUF3QixRQURiO0VuQiswRmpCOztFbUI5MEZNO0lBQXdCLFFBRGI7RW5CbTFGakI7O0VtQmwxRk07SUFBd0IsUUFEYjtFbkJ1MUZqQjs7RW1CdDFGTTtJQUF3QixRQURiO0VuQjIxRmpCOztFbUIxMUZNO0lBQXdCLFFBRGI7RW5CKzFGakI7O0VtQjkxRk07SUFBd0IsU0FEYjtFbkJtMkZqQjs7RW1CbDJGTTtJQUF3QixTQURiO0VuQnUyRmpCOztFbUJ0MkZNO0lBQXdCLFNBRGI7RW5CMjJGakI7O0VtQm4yRlU7SUZoQlY7RWpCdTNGQTs7RW1CdjJGVTtJRmhCVjtFakIyM0ZBOztFbUIzMkZVO0lGaEJWO0VqQiszRkE7O0VtQi8yRlU7SUZoQlY7RWpCbTRGQTs7RW1CbjNGVTtJRmhCVjtFakJ1NEZBOztFbUJ2M0ZVO0lGaEJWO0VqQjI0RkE7O0VtQjMzRlU7SUZoQlY7RWpCKzRGQTs7RW1CLzNGVTtJRmhCVjtFakJtNUZBOztFbUJuNEZVO0lGaEJWO0VqQnU1RkE7O0VtQnY0RlU7SUZoQlY7RWpCMjVGQTs7RW1CMzRGVTtJRmhCVjtFakIrNUZBOztFbUIvNEZVO0lGaEJWO0VqQm02RkE7QUFDRjtBa0IvNUZJO0VDM0JFO0lBQ0U7SUFDQTtJQUNBO0VuQjY3Rk47O0VpQmo2RkE7SUFDRTtJQUNBO0VqQm82RkY7O0VpQnQ2RkE7SUFDRTtJQUNBO0VqQnk2RkY7O0VpQjM2RkE7SUFDRTtJQUNBO0VqQjg2RkY7O0VpQmg3RkE7SUFDRTtJQUNBO0VqQm03RkY7O0VpQnI3RkE7SUFDRTtJQUNBO0VqQnc3RkY7O0VpQjE3RkE7SUFDRTtJQUNBO0VqQjY3RkY7O0VtQmg5Rkk7SUZDSjtJQUNBO0lBQ0E7RWpCbTlGQTs7RW1CaDlGUTtJRmJSO0lBSUE7RWpCODlGQTs7RW1CcjlGUTtJRmJSO0lBSUE7RWpCbStGQTs7RW1CMTlGUTtJRmJSO0lBSUE7RWpCdytGQTs7RW1CLzlGUTtJRmJSO0lBSUE7RWpCNitGQTs7RW1CcCtGUTtJRmJSO0lBSUE7RWpCay9GQTs7RW1CeitGUTtJRmJSO0lBSUE7RWpCdS9GQTs7RW1COStGUTtJRmJSO0lBSUE7RWpCNC9GQTs7RW1Cbi9GUTtJRmJSO0lBSUE7RWpCaWdHQTs7RW1CeC9GUTtJRmJSO0lBSUE7RWpCc2dHQTs7RW1CNy9GUTtJRmJSO0lBSUE7RWpCMmdHQTs7RW1CbGdHUTtJRmJSO0lBSUE7RWpCZ2hHQTs7RW1CdmdHUTtJRmJSO0lBSUE7RWpCcWhHQTs7RW1CdGdHSTtJQUF3QjtFbkIwZ0c1Qjs7RW1CeGdHSTtJQUF1QjtFbkI0Z0czQjs7RW1CemdHTTtJQUF3QixRQURiO0VuQjhnR2pCOztFbUI3Z0dNO0lBQXdCLFFBRGI7RW5Ca2hHakI7O0VtQmpoR007SUFBd0IsUUFEYjtFbkJzaEdqQjs7RW1CcmhHTTtJQUF3QixRQURiO0VuQjBoR2pCOztFbUJ6aEdNO0lBQXdCLFFBRGI7RW5COGhHakI7O0VtQjdoR007SUFBd0IsUUFEYjtFbkJraUdqQjs7RW1CamlHTTtJQUF3QixRQURiO0VuQnNpR2pCOztFbUJyaUdNO0lBQXdCLFFBRGI7RW5CMGlHakI7O0VtQnppR007SUFBd0IsUUFEYjtFbkI4aUdqQjs7RW1CN2lHTTtJQUF3QixRQURiO0VuQmtqR2pCOztFbUJqakdNO0lBQXdCLFNBRGI7RW5Cc2pHakI7O0VtQnJqR007SUFBd0IsU0FEYjtFbkIwakdqQjs7RW1CempHTTtJQUF3QixTQURiO0VuQjhqR2pCOztFbUJ0akdVO0lGaEJWO0VqQjBrR0E7O0VtQjFqR1U7SUZoQlY7RWpCOGtHQTs7RW1COWpHVTtJRmhCVjtFakJrbEdBOztFbUJsa0dVO0lGaEJWO0VqQnNsR0E7O0VtQnRrR1U7SUZoQlY7RWpCMGxHQTs7RW1CMWtHVTtJRmhCVjtFakI4bEdBOztFbUI5a0dVO0lGaEJWO0VqQmttR0E7O0VtQmxsR1U7SUZoQlY7RWpCc21HQTs7RW1CdGxHVTtJRmhCVjtFakIwbUdBOztFbUIxbEdVO0lGaEJWO0VqQjhtR0E7O0VtQjlsR1U7SUZoQlY7RWpCa25HQTs7RW1CbG1HVTtJRmhCVjtFakJzbkdBO0FBQ0Y7QWtCbG5HSTtFQzNCRTtJQUNFO0lBQ0E7SUFDQTtFbkJncEdOOztFaUJwbkdBO0lBQ0U7SUFDQTtFakJ1bkdGOztFaUJ6bkdBO0lBQ0U7SUFDQTtFakI0bkdGOztFaUI5bkdBO0lBQ0U7SUFDQTtFakJpb0dGOztFaUJub0dBO0lBQ0U7SUFDQTtFakJzb0dGOztFaUJ4b0dBO0lBQ0U7SUFDQTtFakIyb0dGOztFaUI3b0dBO0lBQ0U7SUFDQTtFakJncEdGOztFbUJucUdJO0lGQ0o7SUFDQTtJQUNBO0VqQnNxR0E7O0VtQm5xR1E7SUZiUjtJQUlBO0VqQmlyR0E7O0VtQnhxR1E7SUZiUjtJQUlBO0VqQnNyR0E7O0VtQjdxR1E7SUZiUjtJQUlBO0VqQjJyR0E7O0VtQmxyR1E7SUZiUjtJQUlBO0VqQmdzR0E7O0VtQnZyR1E7SUZiUjtJQUlBO0VqQnFzR0E7O0VtQjVyR1E7SUZiUjtJQUlBO0VqQjBzR0E7O0VtQmpzR1E7SUZiUjtJQUlBO0VqQitzR0E7O0VtQnRzR1E7SUZiUjtJQUlBO0VqQm90R0E7O0VtQjNzR1E7SUZiUjtJQUlBO0VqQnl0R0E7O0VtQmh0R1E7SUZiUjtJQUlBO0VqQjh0R0E7O0VtQnJ0R1E7SUZiUjtJQUlBO0VqQm11R0E7O0VtQjF0R1E7SUZiUjtJQUlBO0VqQnd1R0E7O0VtQnp0R0k7SUFBd0I7RW5CNnRHNUI7O0VtQjN0R0k7SUFBdUI7RW5CK3RHM0I7O0VtQjV0R007SUFBd0IsUUFEYjtFbkJpdUdqQjs7RW1CaHVHTTtJQUF3QixRQURiO0VuQnF1R2pCOztFbUJwdUdNO0lBQXdCLFFBRGI7RW5CeXVHakI7O0VtQnh1R007SUFBd0IsUUFEYjtFbkI2dUdqQjs7RW1CNXVHTTtJQUF3QixRQURiO0VuQml2R2pCOztFbUJodkdNO0lBQXdCLFFBRGI7RW5CcXZHakI7O0VtQnB2R007SUFBd0IsUUFEYjtFbkJ5dkdqQjs7RW1CeHZHTTtJQUF3QixRQURiO0VuQjZ2R2pCOztFbUI1dkdNO0lBQXdCLFFBRGI7RW5CaXdHakI7O0VtQmh3R007SUFBd0IsUUFEYjtFbkJxd0dqQjs7RW1CcHdHTTtJQUF3QixTQURiO0VuQnl3R2pCOztFbUJ4d0dNO0lBQXdCLFNBRGI7RW5CNndHakI7O0VtQjV3R007SUFBd0IsU0FEYjtFbkJpeEdqQjs7RW1CendHVTtJRmhCVjtFakI2eEdBOztFbUI3d0dVO0lGaEJWO0VqQml5R0E7O0VtQmp4R1U7SUZoQlY7RWpCcXlHQTs7RW1CcnhHVTtJRmhCVjtFakJ5eUdBOztFbUJ6eEdVO0lGaEJWO0VqQjZ5R0E7O0VtQjd4R1U7SUZoQlY7RWpCaXpHQTs7RW1CanlHVTtJRmhCVjtFakJxekdBOztFbUJyeUdVO0lGaEJWO0VqQnl6R0E7O0VtQnp5R1U7SUZoQlY7RWpCNnpHQTs7RW1CN3lHVTtJRmhCVjtFakJpMEdBOztFbUJqekdVO0lGaEJWO0VqQnEwR0E7O0VtQnJ6R1U7SUZoQlY7RWpCeTBHQTtBQUNGO0FrQnIwR0k7RUMzQkU7SUFDRTtJQUNBO0lBQ0E7RW5CbTJHTjs7RWlCdjBHQTtJQUNFO0lBQ0E7RWpCMDBHRjs7RWlCNTBHQTtJQUNFO0lBQ0E7RWpCKzBHRjs7RWlCajFHQTtJQUNFO0lBQ0E7RWpCbzFHRjs7RWlCdDFHQTtJQUNFO0lBQ0E7RWpCeTFHRjs7RWlCMzFHQTtJQUNFO0lBQ0E7RWpCODFHRjs7RWlCaDJHQTtJQUNFO0lBQ0E7RWpCbTJHRjs7RW1CdDNHSTtJRkNKO0lBQ0E7SUFDQTtFakJ5M0dBOztFbUJ0M0dRO0lGYlI7SUFJQTtFakJvNEdBOztFbUIzM0dRO0lGYlI7SUFJQTtFakJ5NEdBOztFbUJoNEdRO0lGYlI7SUFJQTtFakI4NEdBOztFbUJyNEdRO0lGYlI7SUFJQTtFakJtNUdBOztFbUIxNEdRO0lGYlI7SUFJQTtFakJ3NUdBOztFbUIvNEdRO0lGYlI7SUFJQTtFakI2NUdBOztFbUJwNUdRO0lGYlI7SUFJQTtFakJrNkdBOztFbUJ6NUdRO0lGYlI7SUFJQTtFakJ1NkdBOztFbUI5NUdRO0lGYlI7SUFJQTtFakI0NkdBOztFbUJuNkdRO0lGYlI7SUFJQTtFakJpN0dBOztFbUJ4NkdRO0lGYlI7SUFJQTtFakJzN0dBOztFbUI3NkdRO0lGYlI7SUFJQTtFakIyN0dBOztFbUI1NkdJO0lBQXdCO0VuQmc3RzVCOztFbUI5NkdJO0lBQXVCO0VuQms3RzNCOztFbUIvNkdNO0lBQXdCLFFBRGI7RW5CbzdHakI7O0VtQm43R007SUFBd0IsUUFEYjtFbkJ3N0dqQjs7RW1CdjdHTTtJQUF3QixRQURiO0VuQjQ3R2pCOztFbUIzN0dNO0lBQXdCLFFBRGI7RW5CZzhHakI7O0VtQi83R007SUFBd0IsUUFEYjtFbkJvOEdqQjs7RW1CbjhHTTtJQUF3QixRQURiO0VuQnc4R2pCOztFbUJ2OEdNO0lBQXdCLFFBRGI7RW5CNDhHakI7O0VtQjM4R007SUFBd0IsUUFEYjtFbkJnOUdqQjs7RW1CLzhHTTtJQUF3QixRQURiO0VuQm85R2pCOztFbUJuOUdNO0lBQXdCLFFBRGI7RW5CdzlHakI7O0VtQnY5R007SUFBd0IsU0FEYjtFbkI0OUdqQjs7RW1CMzlHTTtJQUF3QixTQURiO0VuQmcrR2pCOztFbUIvOUdNO0lBQXdCLFNBRGI7RW5CbytHakI7O0VtQjU5R1U7SUZoQlY7RWpCZy9HQTs7RW1CaCtHVTtJRmhCVjtFakJvL0dBOztFbUJwK0dVO0lGaEJWO0VqQncvR0E7O0VtQngrR1U7SUZoQlY7RWpCNC9HQTs7RW1CNStHVTtJRmhCVjtFakJnZ0hBOztFbUJoL0dVO0lGaEJWO0VqQm9nSEE7O0VtQnAvR1U7SUZoQlY7RWpCd2dIQTs7RW1CeC9HVTtJRmhCVjtFakI0Z0hBOztFbUI1L0dVO0lGaEJWO0VqQmdoSEE7O0VtQmhnSFU7SUZoQlY7RWpCb2hIQTs7RW1CcGdIVTtJRmhCVjtFakJ3aEhBOztFbUJ4Z0hVO0lGaEJWO0VqQjRoSEE7QUFDRjtBb0JobEhBO0VBQ0U7RUFDQSxtQmJpSU87RWFoSVAsY2JTUztBUHlrSFg7QW9CL2tIRTs7RUFFRSxnQmJrVjBCO0VhalYxQjtFQUNBO0FwQmlsSEo7QW9COWtIRTtFQUNFO0VBQ0E7QXBCZ2xISjtBb0I3a0hFO0VBQ0U7QXBCK2tISjs7QW9CcmtIRTs7RUFFRSxlYjRUMEI7QVA0d0c5Qjs7QW9CL2pIQTtFQUNFO0FwQmtrSEY7QW9CaGtIRTs7RUFFRTtBcEJra0hKO0FvQjlqSEk7O0VBRUU7QXBCZ2tITjs7QW9CMWpIRTs7OztFQUlFO0FwQjZqSEo7O0FvQnBqSEU7RUFDRSxxQ2J3UjBCO0FQK3hHOUI7O0FTdG5IRTtFVzJFSSxjYnZFSztFYXdFTCxzQ2I2UXdCO0FQa3lHOUI7O0FxQmpvSEk7OztFQUdFLHlCRDJGK0I7QXBCeWlIckM7QXFCaG9ITTs7OztFQUlFLHFCRG1GeUU7QXBCK2lIakY7O0FTdm9IRTtFWWlCTSx5QkFKZTtBckI4bkh2QjtBcUJ4bkhROztFQUVFLHlCQVJhO0FyQmtvSHZCOztBcUJycEhJOzs7RUFHRSx5QkQyRitCO0FwQjZqSHJDO0FxQnBwSE07Ozs7RUFJRSxxQkRtRnlFO0FwQm1rSGpGOztBUzNwSEU7RVlpQk0seUJBSmU7QXJCa3BIdkI7QXFCNW9IUTs7RUFFRSx5QkFSYTtBckJzcEh2Qjs7QXFCenFISTs7O0VBR0UseUJEMkYrQjtBcEJpbEhyQztBcUJ4cUhNOzs7O0VBSUUscUJEbUZ5RTtBcEJ1bEhqRjs7QVMvcUhFO0VZaUJNLHlCQUplO0FyQnNxSHZCO0FxQmhxSFE7O0VBRUUseUJBUmE7QXJCMHFIdkI7O0FxQjdySEk7OztFQUdFLHlCRDJGK0I7QXBCcW1IckM7QXFCNXJITTs7OztFQUlFLHFCRG1GeUU7QXBCMm1IakY7O0FTbnNIRTtFWWlCTSx5QkFKZTtBckIwckh2QjtBcUJwckhROztFQUVFLHlCQVJhO0FyQjhySHZCOztBcUJqdEhJOzs7RUFHRSx5QkQyRitCO0FwQnluSHJDO0FxQmh0SE07Ozs7RUFJRSxxQkRtRnlFO0FwQituSGpGOztBU3Z0SEU7RVlpQk0seUJBSmU7QXJCOHNIdkI7QXFCeHNIUTs7RUFFRSx5QkFSYTtBckJrdEh2Qjs7QXFCcnVISTs7O0VBR0UseUJEMkYrQjtBcEI2b0hyQztBcUJwdUhNOzs7O0VBSUUscUJEbUZ5RTtBcEJtcEhqRjs7QVMzdUhFO0VZaUJNLHlCQUplO0FyQmt1SHZCO0FxQjV0SFE7O0VBRUUseUJBUmE7QXJCc3VIdkI7O0FxQnp2SEk7OztFQUdFLHlCRDJGK0I7QXBCaXFIckM7QXFCeHZITTs7OztFQUlFLHFCRG1GeUU7QXBCdXFIakY7O0FTL3ZIRTtFWWlCTSx5QkFKZTtBckJzdkh2QjtBcUJodkhROztFQUVFLHlCQVJhO0FyQjB2SHZCOztBcUI3d0hJOzs7RUFHRSx5QkQyRitCO0FwQnFySHJDO0FxQjV3SE07Ozs7RUFJRSxxQkRtRnlFO0FwQjJySGpGOztBU254SEU7RVlpQk0seUJBSmU7QXJCMHdIdkI7QXFCcHdIUTs7RUFFRSx5QkFSYTtBckI4d0h2Qjs7QXFCanlISTs7O0VBR0Usc0NkNFZ3QjtBUHc4RzlCOztBU2p5SEU7RVlpQk0sc0NBSmU7QXJCd3hIdkI7QXFCbHhIUTs7RUFFRSxzQ0FSYTtBckI0eEh2Qjs7QW9CcHNISTtFQUNFLFdiM0dLO0VhNEdMLHlCYnBHSztFYXFHTCxxQmJnUXdCO0FQdThHOUI7QW9CbHNISTtFQUNFLGNiNUdLO0VhNkdMLHlCYmxISztFYW1ITCxxQmJsSEs7QVBzekhYOztBb0IvckhBO0VBQ0UsV2IzSFM7RWE0SFQseUJicEhTO0FQc3pIWDtBb0Joc0hFOzs7RUFHRSxxQmI0TzBCO0FQczlHOUI7QW9CL3JIRTtFQUNFO0FwQmlzSEo7QW9CN3JISTtFQUNFLDJDYmdPd0I7QVArOUc5QjtBU3AwSEU7RVc0SU0sV2JqSkc7RWFrSkgsNENiME5zQjtBUGkrRzlCOztBa0Izd0hJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RXBCNnFITjtFb0IxcUhNO0lBQ0U7RXBCNHFIUjtBQUNGO0FrQnZ4SEk7RUVpR0E7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFcEJ3ckhOO0VvQnJySE07SUFDRTtFcEJ1ckhSO0FBQ0Y7QWtCbHlISTtFRWlHQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VwQm1zSE47RW9CaHNITTtJQUNFO0VwQmtzSFI7QUFDRjtBa0I3eUhJO0VFaUdBO0lBRUk7SUFDQTtJQUNBO0lBQ0E7RXBCOHNITjtFb0Izc0hNO0lBQ0U7RXBCNnNIUjtBQUNGO0FvQnZ0SEk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBcEJ3dEhSO0FvQnJ0SFE7RUFDRTtBcEJ1dEhWOztBc0JwNEhBO0VBQ0U7RUFDQTtFQUNBLG1DZjBlc0M7RWV6ZXRDO0VkcUhJLGVBdENhO0VjNUVqQixnQmZrUjRCO0VlalI1QixnQmZzUjRCO0VlclI1QixjZkRTO0VlRVQsc0JmVFM7RWVVVDtFQUNBO0VSQUU7RVNGRSx3RURRSjtBdEJrNEhGO0F1QnQ0SE07RURkTjtJQ2VRO0V2Qnk0SE47QUFDRjtBc0JwNEhFO0VBQ0U7RUFDQTtBdEJzNEhKO0FzQmw0SEU7RUFDRTtFQUNBO0F0Qm80SEo7QXdCMTVIRTtFQUNFO0VBQ0Esc0JqQlJPO0VpQlNQLHFCakJxZG9DO0VpQnBkcEM7RUFLRSxnRGpCb1h3QjtBUG9pSDlCO0FzQnA0SEU7RUFDRSxjZjlCTztFZWdDUDtBdEJxNEhKO0FzQjczSEU7RUFFRSx5QmY5Q087RWVnRFA7QXRCNjNISjs7QXNCcjNIRTs7OztFQUNFO0F0QjIzSEo7O0FzQnQzSEU7RUFNRSxjZi9ETztFZWdFUCxzQmZ2RU87QVAyN0hYOztBc0IvMkhBOztFQUVFO0VBQ0E7QXRCazNIRjs7QXNCeDJIQTtFQUNFO0VBQ0E7RUFDQTtFZDNCRTtFYzZCRixnQmYrTDRCO0FQNHFIOUI7O0FzQngySEE7RUFDRTtFQUNBO0VkcUJJLGtCQXRDYTtFY21CakIsZ0JmNkg0QjtBUDh1SDlCOztBc0J4MkhBO0VBQ0U7RUFDQTtFZGNJLG1CQXRDYTtFYzBCakIsZ0JmdUg0QjtBUG92SDlCOztBc0JsMkhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWRESSxlQXRDYTtFY3lDakIsZ0Jma0s0QjtFZWpLNUIsY2ZuSFM7RWVvSFQ7RUFDQTtFQUNBO0F0QnEySEY7QXNCbjJIRTtFQUVFO0VBQ0E7QXRCbzJISjs7QXNCeDFIQTtFQUNFLGtDZjRWc0M7RWUzVnRDO0VkMUJJLG1CQXRDYTtFY2tFakIsZ0JmK0U0QjtFT3hOMUI7QWRxK0hKOztBc0J4MUhBO0VBQ0UsZ0NmcVZzQztFZXBWdEM7RWRsQ0ksa0JBdENhO0VjMEVqQixnQmZzRTRCO0VPdk4xQjtBZDYrSEo7O0FzQnQxSEU7RUFFRTtBdEJ3MUhKOztBc0JwMUhBO0VBQ0U7QXRCdTFIRjs7QXNCLzBIQTtFQUNFLG1CZjBVc0M7QVB3Z0h4Qzs7QXNCLzBIQTtFQUNFO0VBQ0EsbUJmMlRzQztBUHVoSHhDOztBc0IxMEhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCNjBIRjtBc0IzMEhFOztFQUVFO0VBQ0E7QXRCNjBISjs7QXNCcDBIQTtFQUNFO0VBQ0E7RUFDQSxxQmZnU3NDO0FQdWlIeEM7O0FzQnAwSEE7RUFDRTtFQUNBLGtCZjRSc0M7RWUzUnRDO0F0QnUwSEY7QXNCcDBIRTtFQUVFLGNmek5PO0FQOGhJWDs7QXNCajBIQTtFQUNFO0F0Qm8wSEY7O0FzQmowSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxxQmY2UXNDO0FQdWpIeEM7QXNCajBIRTtFQUNFO0VBQ0E7RUFDQSx1QmZ3UW9DO0VldlFwQztBdEJtMEhKOztBd0JoaElFO0VBQ0U7RUFDQTtFQUNBLG1CakIwY29DO0VDamJwQztFZ0J2QkEsY0ZxTnFDO0F0Qjh6SHpDOztBd0JoaElFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaEJtRUUsbUJBdENhO0VnQjNCZixnQmpCc08wQjtFaUJyTzFCO0VBQ0E7RVY5Q0E7QWRra0lKO0F3Qi9nSUk7RUFFRTtBeEJnaElOOztBd0IzZ0lJOzs7O0VBRUU7QXhCZ2hJTjs7QXdCOWpJSTtFQW9ERSxxQkZrTG1DO0VFL0tqQyxvQ2pCd1pnQztFaUJ2WmhDO0VBQ0E7RUFDQTtFQUNBO0F4QjRnSVI7QXdCemdJTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F4QjJnSVI7O0F3QjNrSUk7RUF5RUksb0NqQnNZZ0M7RWlCclloQztBeEJzZ0lSOztBd0JobElJO0VBaUZFLHFCRnFKbUM7RUVsSmpDLHVDakJ1ZG9DO0VpQnRkcEM7QXhCaWdJUjtBd0I5L0hNO0VBQ0UscUJGNklpQztFRTVJakM7QXhCZ2dJUjs7QXdCei9ITTtFQUNFLGNGb0lpQztBdEJ3M0h6QztBd0J6L0hNOzs7RUFFRTtBeEI0L0hSOztBd0JyL0hNO0VBQ0UsY0Z1SGlDO0F0Qmk0SHpDO0F3QnQvSFE7RUFDRSxxQkZvSCtCO0F0Qm80SHpDO0F3Qm4vSFE7RUFDRTtFQ2xKTix5QkRtSjJCO0F4QnEvSC9CO0F3QmgvSFE7RUFDRTtBeEJrL0hWO0F3Qi8rSFE7RUFDRSxxQkFWcUI7QXhCMi9IL0I7O0F3QngrSE07RUFDRSxxQkFwQnVCO0F4QisvSC9CO0F3QnYrSFE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBeEJ5K0hWOztBd0JobklFO0VBQ0U7RUFDQTtFQUNBLG1CakIwY29DO0VDamJwQztFZ0J2QkEsY0ZxTnFDO0F0Qjg1SHpDOztBd0JobklFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaEJtRUUsbUJBdENhO0VnQjNCZixnQmpCc08wQjtFaUJyTzFCO0VBQ0E7RVY5Q0E7QWRrcUlKO0F3Qi9tSUk7RUFFRTtBeEJnbklOOztBd0IzbUlJOzs7O0VBRUU7QXhCZ25JTjs7QXdCOXBJSTtFQW9ERSxxQkZrTG1DO0VFL0tqQyxvQ2pCd1pnQztFaUJ2WmhDO0VBQ0E7RUFDQTtFQUNBO0F4QjRtSVI7QXdCem1JTTtFQUNFLHFCRnVLaUM7RUV0S2pDO0F4QjJtSVI7O0F3QjNxSUk7RUF5RUksb0NqQnNZZ0M7RWlCclloQztBeEJzbUlSOztBd0JocklJO0VBaUZFLHFCRnFKbUM7RUVsSmpDLHVDakJ1ZG9DO0VpQnRkcEM7QXhCaW1JUjtBd0I5bElNO0VBQ0UscUJGNklpQztFRTVJakM7QXhCZ21JUjs7QXdCemxJTTtFQUNFLGNGb0lpQztBdEJ3OUh6QztBd0J6bElNOzs7RUFFRTtBeEI0bElSOztBd0JybElNO0VBQ0UsY0Z1SGlDO0F0QmkrSHpDO0F3QnRsSVE7RUFDRSxxQkZvSCtCO0F0Qm8rSHpDO0F3Qm5sSVE7RUFDRTtFQ2xKTix5QkRtSjJCO0F4QnFsSS9CO0F3QmhsSVE7RUFDRTtBeEJrbElWO0F3Qi9rSVE7RUFDRSxxQkFWcUI7QXhCMmxJL0I7O0F3QnhrSU07RUFDRSxxQkFwQnVCO0F4QitsSS9CO0F3QnZrSVE7RUFDRSxxQkF6QnFCO0VBMEJyQjtBeEJ5a0lWOztBc0IxK0hBO0VBQ0U7RUFDQTtFQUNBO0F0QjYrSEY7QXNCeCtIRTtFQUNFO0F0QjArSEo7QWtCenNJSTtFSW9PQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V0QncrSEo7RXNCcCtIRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCcytISjtFc0JsK0hFO0lBQ0U7SUFDQTtJQUNBO0V0Qm8rSEo7RXNCaCtIRTtJQUNFO0V0QmsrSEo7RXNCLzlIRTs7SUFFRTtFdEJpK0hKO0VzQjU5SEU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V0Qjg5SEo7RXNCNTlIRTtJQUNFO0lBQ0E7SUFDQTtJQUNBLHFCZitLa0M7SWU5S2xDO0V0Qjg5SEo7RXNCMzlIRTtJQUNFO0lBQ0E7RXRCNjlISjtFc0IzOUhFO0lBQ0U7RXRCNjlISjtBQUNGOztBMEIveUlBO0VBQ0U7RUFFQSxnQm5Cc1I0QjtFbUJyUjVCLGNuQk1TO0VtQkxUO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUN1RkE7RW5CdUJJLGVBdENhO0VtQmlCakIsZ0JwQjBMNEI7RU9sUjFCO0VTRkUscUlHR0o7QTFCa3pJRjtBdUJqeklNO0VHZE47SUhlUTtFdkJveklOO0FBQ0Y7QVM5eklFO0VpQlVFLGNuQk5PO0VtQk9QO0ExQnV6SUo7QTBCcHpJRTtFQUVFO0VBQ0EsZ0RuQjZXMEI7QVB3OEg5QjtBMEJqeklFO0VBRUUsYW5CaVowQjtBUGk2SDlCO0EwQjl5SUU7RUFDRTtBMUJneklKO0EwQmx5SUE7O0VBRUU7QTFCb3lJRjs7QTBCM3hJRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QVBzeElmO0FTdDFJRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTNCazJJekc7QTJCdDFJRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBM0JtMUlOO0EyQjkwSUU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QVBzeUlmO0EyQngwSUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTNCazNJN0w7QTJCbjBJSTtFQUtJO0EzQmkwSVI7O0EwQnp6SUU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FQb3pJZjtBU3AzSUU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0EzQmc0SXpHO0EyQnAzSUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTNCaTNJTjtBMkI1MklFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FQbzBJZjtBMkJ0MklFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0EzQmc1STdMO0EyQmoySUk7RUFLSTtBM0IrMUlSOztBMEJ2MUlFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBUGsxSWY7QVNsNUlFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBM0I4NUl6RztBMkJsNUlFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0EzQis0SU47QTJCMTRJRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBUGsySWY7QTJCcDRJRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBM0I4Nkk3TDtBMkIvM0lJO0VBS0k7QTNCNjNJUjs7QTBCcjNJRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QVBnM0lmO0FTaDdJRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTNCNDdJekc7QTJCaDdJRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBM0I2NklOO0EyQng2SUU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QVBnNElmO0EyQmw2SUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTNCNDhJN0w7QTJCNzVJSTtFQUtJO0EzQjI1SVI7O0EwQm41SUU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FQODRJZjtBUzk4SUU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0EzQjA5SXpHO0EyQjk4SUU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTNCMjhJTjtBMkJ0OElFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FQODVJZjtBMkJoOElFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0EzQjArSTdMO0EyQjM3SUk7RUFLSTtBM0J5N0lSOztBMEJqN0lFO0VDM0RBO0VGQUUseUJsQnNFVztFb0JwRWIscUJwQm9FYTtBUDQ2SWY7QVM1K0lFO0VrQkFFO0VGTkEseUJFRDJEO0VBUzNELHFCQVRxRztBM0J3L0l6RztBMkI1K0lFO0VBRUU7RUZiQSx5QkVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HO0EzQnkrSU47QTJCcCtJRTtFQUVFO0VBQ0EseUJwQjBDVztFb0J6Q1gscUJwQnlDVztBUDQ3SWY7QTJCOTlJRTtFQUdFO0VBQ0EseUJBekMrSTtFQTZDL0kscUJBN0N5TDtBM0J3Z0o3TDtBMkJ6OUlJO0VBS0k7QTNCdTlJUjs7QTBCLzhJRTtFQzNEQTtFRkFFLHlCbEJzRVc7RW9CcEViLHFCcEJvRWE7QVAwOElmO0FTMWdKRTtFa0JBRTtFRk5BLHlCRUQyRDtFQVMzRCxxQkFUcUc7QTNCc2hKekc7QTJCMWdKRTtFQUVFO0VGYkEseUJFRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRztBM0J1Z0pOO0EyQmxnSkU7RUFFRTtFQUNBLHlCcEIwQ1c7RW9CekNYLHFCcEJ5Q1c7QVAwOUlmO0EyQjUvSUU7RUFHRTtFQUNBLHlCQXpDK0k7RUE2Qy9JLHFCQTdDeUw7QTNCc2lKN0w7QTJCdi9JSTtFQUtJO0EzQnEvSVI7O0EwQjcrSUU7RUMzREE7RUZBRSx5QmxCc0VXO0VvQnBFYixxQnBCb0VhO0FQdytJZjtBU3hpSkU7RWtCQUU7RUZOQSx5QkVEMkQ7RUFTM0QscUJBVHFHO0EzQm9qSnpHO0EyQnhpSkU7RUFFRTtFRmJBLHlCRUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkc7QTNCcWlKTjtBMkJoaUpFO0VBRUU7RUFDQSx5QnBCMENXO0VvQnpDWCxxQnBCeUNXO0FQdy9JZjtBMkIxaEpFO0VBR0U7RUFDQSx5QkF6QytJO0VBNkMvSSxxQkE3Q3lMO0EzQm9rSjdMO0EyQnJoSkk7RUFLSTtBM0JtaEpSOztBMEJyZ0pFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQcWdKZjtBU3JrSkU7RWtCd0RFLFdBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVAwZ0pmO0EyQjdnSkU7RUFFRTtBM0I4Z0pKO0EyQjNnSkU7RUFFRSxjcEJKVztFb0JLWDtBM0I0Z0pKO0EyQnpnSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVBzaEpmO0EyQnZnSkk7RUFLSTtBM0JxZ0pSOztBMEI5aEpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQOGhKZjtBUzlsSkU7RWtCd0RFLGNBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVBtaUpmO0EyQnRpSkU7RUFFRTtBM0J1aUpKO0EyQnBpSkU7RUFFRSxjcEJKVztFb0JLWDtBM0JxaUpKO0EyQmxpSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVAraUpmO0EyQmhpSkk7RUFLSTtBM0I4aEpSOztBMEJ2akpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQdWpKZjtBU3ZuSkU7RWtCd0RFLFdBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVA0akpmO0EyQi9qSkU7RUFFRTtBM0Jna0pKO0EyQjdqSkU7RUFFRSxjcEJKVztFb0JLWDtBM0I4akpKO0EyQjNqSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVB3a0pmO0EyQnpqSkk7RUFLSTtBM0J1akpSOztBMEJobEpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQZ2xKZjtBU2hwSkU7RWtCd0RFLFdBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVBxbEpmO0EyQnhsSkU7RUFFRTtBM0J5bEpKO0EyQnRsSkU7RUFFRSxjcEJKVztFb0JLWDtBM0J1bEpKO0EyQnBsSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVBpbUpmO0EyQmxsSkk7RUFLSTtBM0JnbEpSOztBMEJ6bUpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQeW1KZjtBU3pxSkU7RWtCd0RFLGNBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVA4bUpmO0EyQmpuSkU7RUFFRTtBM0JrbkpKO0EyQi9tSkU7RUFFRSxjcEJKVztFb0JLWDtBM0JnbkpKO0EyQjdtSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVAwbkpmO0EyQjNtSkk7RUFLSTtBM0J5bUpSOztBMEJsb0pFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQa29KZjtBU2xzSkU7RWtCd0RFLFdBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVB1b0pmO0EyQjFvSkU7RUFFRTtBM0Iyb0pKO0EyQnhvSkU7RUFFRSxjcEJKVztFb0JLWDtBM0J5b0pKO0EyQnRvSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVBtcEpmO0EyQnBvSkk7RUFLSTtBM0Jrb0pSOztBMEIzcEpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQMnBKZjtBUzN0SkU7RWtCd0RFLGNBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVBncUpmO0EyQm5xSkU7RUFFRTtBM0JvcUpKO0EyQmpxSkU7RUFFRSxjcEJKVztFb0JLWDtBM0JrcUpKO0EyQi9wSkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVA0cUpmO0EyQjdwSkk7RUFLSTtBM0IycEpSOztBMEJwckpFO0VDUEEsY3BCWWE7RW9CWGIscUJwQldhO0FQb3JKZjtBU3B2SkU7RWtCd0RFLFdBTGdEO0VBTWhELHlCcEJPVztFb0JOWCxxQnBCTVc7QVB5ckpmO0EyQjVySkU7RUFFRTtBM0I2ckpKO0EyQjFySkU7RUFFRSxjcEJKVztFb0JLWDtBM0IyckpKO0EyQnhySkU7RUFHRTtFQUNBLHlCcEJaVztFb0JhWCxxQnBCYlc7QVBxc0pmO0EyQnRySkk7RUFLSTtBM0JvckpSOztBMEJsc0pBO0VBQ0UsZ0JuQjRNNEI7RW1CM001QixjbkIyRndDO0VtQjFGeEMscUJuQjJGd0M7QVAwbUoxQztBUzl3SkU7RWlCNEVFLGNuQnlGc0M7RW1CeEZ0QywwQm5CeUZzQztBUDRtSjFDO0EwQmxzSkU7RUFFRSwwQm5Cb0ZzQztBUCttSjFDO0EwQmhzSkU7RUFFRSxjbkJ0Rk87RW1CdUZQO0ExQmlzSko7O0EwQnRySkE7RUNQRTtFbkJ1Qkksa0JBdENhO0VtQmlCakIsZ0JwQitINEI7RU92TjFCO0FkMHhKSjs7QTBCenJKQTtFQ1hFO0VuQnVCSSxtQkF0Q2E7RW1CaUJqQixnQnBCZ0k0QjtFT3hOMUI7QWRpeUpKOztBMEJ2ckpBO0VBQ0U7RUFDQTtBMUIwckpGO0EwQnZySkU7RUFDRSxrQm5CdVQwQjtBUGs0STlCOztBMEJqckpFOzs7RUFDRTtBMUJzckpKOztBNEJqMEpBO0VMZ0JNLGdDS2ZKO0E1Qm8wSkY7QXVCanpKTTtFS3BCTjtJTHFCUTtFdkJvekpOO0FBQ0Y7QTRCdjBKRTtFQUNFO0E1QnkwSko7O0E0QnAwSkU7RUFDRTtBNUJ1MEpKOztBNEJuMEpBO0VBQ0U7RUFDQTtFQUNBO0VMREksNkJLRUo7QTVCczBKRjtBdUJwMEpNO0VLTk47SUxPUTtFdkJ1MEpOO0FBQ0Y7O0E2QjUxSkE7Ozs7RUFJRTtBN0IrMUpGOztBNkI1MUpBO0VBQ0U7QTdCKzFKRjtBOEIzMEpJO0VBQ0U7RUFDQSxvQnZCK053QjtFdUI5TnhCLHVCdkI2TndCO0V1QjVOeEI7RUFoQ0o7RUFDQTtFQUNBO0VBQ0E7QTlCODJKRjtBOEJ6ekpJO0VBQ0U7QTlCMnpKTjs7QTZCcjJKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGF0QndwQmtDO0VzQnZwQmxDO0VBQ0E7RUFDQSxnQnRCZ3VCa0M7RXNCL3RCbEM7RUFDQTtFckJzR0ksZUF0Q2E7RXFCOURqQixjdEJYUztFc0JZVDtFQUNBO0VBQ0Esc0J0QnZCUztFc0J3QlQ7RUFDQTtFZmRFO0FkdTNKSjs7QTZCaDJKSTtFQUNFO0VBQ0E7QTdCbTJKTjs7QTZCaDJKSTtFQUNFO0VBQ0E7QTdCbTJKTjs7QWtCdjFKSTtFV25CQTtJQUNFO0lBQ0E7RTdCODJKSjs7RTZCMzJKRTtJQUNFO0lBQ0E7RTdCODJKSjtBQUNGO0FrQm4ySkk7RVduQkE7SUFDRTtJQUNBO0U3QnkzSko7O0U2QnQzSkU7SUFDRTtJQUNBO0U3QnkzSko7QUFDRjtBa0I5MkpJO0VXbkJBO0lBQ0U7SUFDQTtFN0JvNEpKOztFNkJqNEpFO0lBQ0U7SUFDQTtFN0JvNEpKO0FBQ0Y7QWtCejNKSTtFV25CQTtJQUNFO0lBQ0E7RTdCKzRKSjs7RTZCNTRKRTtJQUNFO0lBQ0E7RTdCKzRKSjtBQUNGO0E2Qng0SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx1QnRCOHJCZ0M7QVA0c0lwQztBOEJ6NkpJO0VBQ0U7RUFDQSxvQnZCK053QjtFdUI5TnhCLHVCdkI2TndCO0V1QjVOeEI7RUF6Qko7RUFDQTtFQUNBO0VBQ0E7QTlCcThKRjtBOEJ2NUpJO0VBQ0U7QTlCeTVKTjs7QTZCOTRKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUJ0QmdyQmdDO0FQaXVJcEM7QThCOTdKSTtFQUNFO0VBQ0Esb0J2QitOd0I7RXVCOU54Qix1QnZCNk53QjtFdUI1TnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0E5Qm05SkY7QThCNTZKSTtFQUNFO0E5Qjg2Sk47QTZCejVKSTtFQUNFO0E3QjI1Sk47O0E2QnI1SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCdEIrcEJnQztBUHl2SXBDO0E4QnQ5Skk7RUFDRTtFQUNBLG9CdkIrTndCO0V1QjlOeEIsdUJ2QjZOd0I7RXVCNU54QjtBOUJ3OUpOO0E4Qjc4Sk07RUFDRTtBOUIrOEpSO0E4QjU4Sk07RUFDRTtFQUNBLHFCdkI0TXNCO0V1QjNNdEIsdUJ2QjBNc0I7RXVCek10QjtFQTlCTjtFQUNBO0VBQ0E7QTlCNitKRjtBOEI1OEpJO0VBQ0U7QTlCODhKTjtBNkJ4NkpJO0VBQ0U7QTdCMDZKTjs7QTZCbDZKRTtFQUlFO0VBQ0E7QTdCazZKSjs7QTZCNzVKQTtFRTlHRTtFQUNBO0VBQ0E7RUFDQTtBL0IrZ0tGOztBNkI3NUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnRCZ0s0QjtFc0IvSjVCLGN0QmhIUztFc0JpSFQ7RUFFQTtFQUNBO0VBQ0E7QTdCKzVKRjtBU3BoS0U7RW9Cb0lFLGN0Qm1uQmdDO0VzQmxuQmhDO0VKL0lBLHlCbEJHTztBUGdpS1g7QTZCaDVKRTtFQUVFLFd0QnBKTztFc0JxSlA7RUp0SkEseUJsQm9QMEI7QVBveko5QjtBNkI5NEpFO0VBRUUsY3RCdEpPO0VzQnVKUDtFQUNBO0E3Qis0Sko7O0E2QnY0SkE7RUFDRTtBN0IwNEpGOztBNkJ0NEpBO0VBQ0U7RUFDQSxzQnRCZ21Ca0M7RXNCL2xCbEM7RXJCckRJLG1CQXRDYTtFcUI2RmpCLGN0QnpLUztFc0IwS1Q7QTdCeTRKRjs7QTZCcjRKQTtFQUNFO0VBQ0E7RUFDQSxjdEI5S1M7QVBzaktYOztBZ0Nua0tBOztFQUVFO0VBQ0E7RUFDQTtBaENza0tGO0FnQ3BrS0U7O0VBQ0U7RUFDQTtBaEN1a0tKO0FTdGtLRTs7RXVCSUk7QWhDc2tLTjtBZ0Nwa0tJOzs7O0VBR0U7QWhDdWtLTjs7QWdDamtLQTtFQUNFO0VBQ0E7RUFDQTtBaENva0tGO0FnQ2xrS0U7RUFDRTtBaENva0tKOztBZ0M5aktFOztFQUVFO0FoQ2lrS0o7QWdDN2pLRTs7RWxCWEU7RUFDQTtBZDRrS0o7QWdDN2pLRTs7RWxCRkU7RUFDQTtBZG1rS0o7O0FnQ2hqS0E7RUFDRTtFQUNBO0FoQ21qS0Y7QWdDampLRTtFQUdFO0FoQ2lqS0o7QWdDOWlLRTtFQUNFO0FoQ2dqS0o7O0FnQzVpS0E7RUFDRTtFQUNBO0FoQytpS0Y7O0FnQzVpS0E7RUFDRTtFQUNBO0FoQytpS0Y7O0FnQzNoS0E7RUFDRTtFQUNBO0VBQ0E7QWhDOGhLRjtBZ0M1aEtFOztFQUVFO0FoQzhoS0o7QWdDM2hLRTs7RUFFRTtBaEM2aEtKO0FnQ3poS0U7O0VsQnJGRTtFQUNBO0Fka25LSjtBZ0N6aEtFOztFbEJ4R0U7RUFDQTtBZHFvS0o7O0FnQzFnS0U7O0VBRUU7QWhDNmdLSjtBZ0MzZ0tJOzs7O0VBRUU7RUFDQTtFQUNBO0FoQytnS047O0FpQ3hxS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzJxS0Y7QWlDenFLRTs7OztFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDMnFLSjtBaUN6cUtJOzs7Ozs7Ozs7Ozs7RUFHRTtBakNvcktOO0FpQy9xS0U7OztFQUdFO0FqQ2lyS0o7QWlDN3FLRTtFQUNFO0FqQytxS0o7QWlDMXFLSTs7RW5CSUE7RUFDQTtBZDBxS0o7QWlDMXFLRTtFQUNFO0VBQ0E7QWpDNHFLSjtBaUMxcUtJO0VuQkxBO0VBQ0E7QWRrcktKO0FpQ3pxS0k7OztFbkJ4QkE7RUFDQTtBZHNzS0o7QWlDdnFLSTs7O0VuQmhDQTtFQUNBO0FkNHNLSjs7QWlDOXBLQTs7RUFFRTtBakNpcUtGO0FpQzVwS0U7O0VBQ0U7RUFDQTtBakMrcEtKO0FpQzdwS0k7O0VBQ0U7QWpDZ3FLTjtBaUM1cEtFOzs7Ozs7OztFQUlFO0FqQ2txS0o7O0FpQzlwS0E7RUFBdUI7QWpDa3FLdkI7O0FpQ2pxS0E7RUFBc0I7QWpDcXFLdEI7O0FpQzdwS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFekJTSSxlQXRDYTtFeUIrQmpCLGdCMUJ1SzRCO0UwQnRLNUIsZ0IxQjJLNEI7RTBCMUs1QixjMUI1R1M7RTBCNkdUO0VBQ0E7RUFDQSx5QjFCcEhTO0UwQnFIVDtFbkI1R0U7QWQ2d0tKO0FpQzdwS0U7O0VBRUU7QWpDK3BLSjs7QWlDcnBLQTs7RUFFRSxnQzFCcVdzQztBUG16SnhDOztBaUNycEtBOzs7Ozs7RUFNRTtFekIxQkksa0JBdENhO0V5QmtFakIsZ0IxQjhFNEI7RU92TjFCO0Fka3lLSjs7QWlDcnBLQTs7RUFFRSxrQzFCbVZzQztBUHEwSnhDOztBaUNycEtBOzs7Ozs7RUFNRTtFekIzQ0ksbUJBdENhO0V5Qm1GakIsZ0IxQjhENEI7RU94TjFCO0FkbXpLSjs7QWlDcnBLQTs7RUFFRTtBakN3cEtGOztBaUM3b0tBOzs7Ozs7OztFbkIzSkk7RUFDQTtBZG16S0o7O0FpQzlvS0E7Ozs7OztFbkJ4Skk7RUFDQTtBZCt5S0o7O0FrQ3YxS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMDFLRjs7QWtDdjFLQTtFQUNFO0VBQ0Esa0IzQndmc0M7QVBrMkp4Qzs7QWtDdjFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFczQm9mc0M7RTJCbmZ0QztFQUNBO0FsQzAxS0Y7QWtDeDFLRTtFQUNFLFczQnpCTztFMkIwQlAscUIzQnlOMEI7RWtCcFAxQix5QmxCb1AwQjtBUGtvSzlCO0FrQ3QxS0U7RUFLSSxnRDNCK1Z3QjtBUHEvSjlCO0FrQ2gxS0U7RUFDRSxxQjNCcWJvQztBUDY1SnhDO0FrQy8wS0U7RUFDRSxXM0I3Q087RTJCOENQLHlCM0JpZjRDO0UyQmhmNUMscUIzQmdmNEM7QVBpMkpoRDtBa0MxMEtJO0VBQ0UsYzNCakRLO0FQNjNLWDtBa0MxMEtNO0VBQ0UseUIzQnhERztBUG80S1g7O0FrQ2wwS0E7RUFDRTtFQUNBO0VBRUE7QWxDbzBLRjtBa0NoMEtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXM0J1Ym9DO0UyQnRicEMsWTNCc2JvQztFMkJyYnBDO0VBQ0E7RUFDQSxzQjNCckZPO0UyQnNGUDtBbENrMEtKO0FrQzd6S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFczQndhb0M7RTJCdmFwQyxZM0J1YW9DO0UyQnRhcEM7RUFDQTtBbEMrektKOztBa0NyektFO0VwQmxHRTtBZDI1S0o7QWtDcHpLSTtFQUNFO0FsQ3N6S047QWtDanpLSTtFQUNFLHFCM0IwSHdCO0VrQnBQMUIseUJsQm9QMEI7QVAwcks5QjtBa0NoektJO0VBQ0U7QWxDa3pLTjtBa0M3eUtJO0VUcElBLHdDbEJ3aEI0QztBUDQ1SmhEO0FrQzd5S0k7RVR2SUEsd0NsQndoQjRDO0FQKzVKaEQ7O0FrQ3J5S0U7RUFFRSxrQjNCeVo0QztBUDg0SmhEO0FrQ255S0k7RUFDRTtBbENxeUtOO0FrQ2h5S0k7RVQ5SkEsd0NsQndoQjRDO0FQeTZKaEQ7O0FrQ3h4S0E7RUFDRTtBbEMyeEtGO0FrQ3h4S0k7RUFDRTtFQUNBLGMzQmlZMEM7RTJCaFkxQztFQUVBLHFCM0IrWDBDO0FQMDVKaEQ7QWtDdHhLSTtFQUNFO0VBQ0E7RUFDQSx1QjNCMFgwQztFMkJ6WDFDLHdCM0J5WDBDO0UyQnhYMUMseUIzQnBMSztFMkJzTEwscUIzQnFYMEM7RWdCdmlCMUMseUlXbUxBO0FsQ3V4S047QXVCdDhLTTtFV3VLRjtJWHRLSTtFdkJ5OEtOO0FBQ0Y7QWtDdnhLSTtFQUNFLHNCM0JsTUs7RTJCbU1MO0FsQ3l4S047QWtDcHhLSTtFVHpNQSx3Q2xCd2hCNEM7QVB3OEpoRDs7QWtDMXdLQTtFQUNFO0VBQ0E7RUFDQSxtQzNCb1JzQztFMkJuUnRDO0UxQmpHSSxlQXRDYTtFMEIwSWpCLGdCM0I0RDRCO0UyQjNENUIsZ0IzQmdFNEI7RTJCL0Q1QixjM0J2TlM7RTJCd05UO0VBQ0E7RUFDQTtFcEJ0TkU7RW9CeU5GO0FsQzJ3S0Y7QWtDendLRTtFQUNFLHFCM0J1UG9DO0UyQnRQcEM7RUFLRSxnRDNCa1c4QjtBUHE2SnBDO0FrQ3B3S0k7RUFNRSxjM0IvT0s7RTJCZ1BMLHNCM0J2UEs7QVB3L0tYO0FrQzd2S0U7RUFFRTtFQUNBLHNCM0I4SDBCO0UyQjdIMUI7QWxDOHZLSjtBa0MzdktFO0VBQ0UsYzNCN1BPO0UyQjhQUCx5QjNCbFFPO0FQKy9LWDtBa0N6dktFO0VBQ0U7QWxDMnZLSjtBa0N2dktFO0VBQ0U7RUFDQTtBbEN5dktKOztBa0NydktBO0VBQ0Usa0MzQnlOc0M7RTJCeE50QyxvQjNCZ0g0QjtFMkIvRzVCLHVCM0IrRzRCO0UyQjlHNUIsb0IzQitHNEI7RUM5UXhCLG1CQXRDYTtBUjg3S25COztBa0NydktBO0VBQ0UsZ0MzQmtOc0M7RTJCak50QyxtQjNCNkc0QjtFMkI1RzVCLHNCM0I0RzRCO0UyQjNHNUIsa0IzQjRHNEI7RUNuUnhCLGtCQXRDYTtBUnM4S25COztBa0NodktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQmdNc0M7RTJCL0x0QztBbENtdktGOztBa0NodktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUMzQndMc0M7RTJCdkx0QztFQUNBO0VBQ0E7QWxDbXZLRjtBa0NqdktFO0VBQ0UscUIzQm9Lb0M7RTJCbktwQyxnRDNCd0UwQjtBUDJxSzlCO0FrQy91S0U7RUFFRSx5QjNCL1RPO0FQK2lMWDtBa0M1dUtJO0VBQ0UsaUJqQzVMYTtBRDA2S25CO0FrQy91S0k7RUFDRSxpQmpDNUxhO0FENjZLbkI7QWtDbHZLSTtFQUNFLG9CakM1TGE7QURnN0tuQjtBa0NodktFO0VBQ0U7QWxDa3ZLSjs7QWtDOXVLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQzNCdUpzQztFMkJ0SnRDO0VBQ0E7RUFFQSxnQjNCakU0QjtFMkJrRTVCLGdCM0I3RDRCO0UyQjhENUIsYzNCcFZTO0UyQnFWVCxzQjNCNVZTO0UyQjZWVDtFcEJsVkU7QWRta0xKO0FrQzd1S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw2QjNCZ0lvQztFMkIvSHBDO0VBQ0EsZ0IzQjdFMEI7RTJCOEUxQixjM0JwV087RTJCcVdQO0VUN1dBLHlCbEJHTztFMkI0V1A7RXBCbldBO0FkbWxMSjs7QWtDcnVLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDd3VLRjtBa0N0dUtFO0VBQ0U7QWxDd3VLSjtBa0NwdUtJO0VBQTBCLGdFM0JtT2U7QVBvZ0s3QztBa0N0dUtJO0VBQTBCLGdFM0JrT2U7QVB1Z0s3QztBa0N4dUtJO0VBQTBCLGdFM0JpT2U7QVAwZ0s3QztBa0N4dUtFO0VBQ0U7QWxDMHVLSjtBa0N2dUtFO0VBQ0UsVzNCbU55QztFMkJsTnpDLFkzQmtOeUM7RTJCak56QztFVGxaQSx5QmxCb1AwQjtFMkJnSzFCLFMzQmtOeUM7RU8xbEJ6QztFU0ZFLDRHVzZZRjtFQUNBO0FsQ3d1S0o7QXVCbG5MTTtFV2lZSjtJWGhZTTtFdkJxbkxOO0FBQ0Y7QWtDM3VLSTtFVDFaQSx5QmxCMm1CeUM7QVA2aEs3QztBa0N6dUtFO0VBQ0UsVzNCNExnQztFMkIzTGhDLGMzQjRMZ0M7RTJCM0xoQztFQUNBLGUzQjJMZ0M7RTJCMUxoQyx5QjNCaGFPO0UyQmlhUDtFcEJ6WkE7QWRxb0xKO0FrQ3Z1S0U7RUFDRSxXM0J3THlDO0UyQnZMekMsWTNCdUx5QztFa0JubUJ6Qyx5QmxCb1AwQjtFMkIwTDFCLFMzQndMeUM7RU8xbEJ6QztFU0ZFLDRHV3VhRjtFQUNBO0FsQ3d1S0o7QXVCNW9MTTtFVzRaSjtJWDNaTTtFdkIrb0xOO0FBQ0Y7QWtDM3VLSTtFVHBiQSx5QmxCMm1CeUM7QVB1aks3QztBa0N6dUtFO0VBQ0UsVzNCa0tnQztFMkJqS2hDLGMzQmtLZ0M7RTJCaktoQztFQUNBLGUzQmlLZ0M7RTJCaEtoQyx5QjNCMWJPO0UyQjJiUDtFcEJuYkE7QWQrcExKO0FrQ3Z1S0U7RUFDRSxXM0I4SnlDO0UyQjdKekMsWTNCNkp5QztFMkI1SnpDO0VBQ0Esb0IzQnRFMEI7RTJCdUUxQixtQjNCdkUwQjtFa0JsWTFCLHlCbEJvUDBCO0UyQnVOMUIsUzNCMkp5QztFTzFsQnpDO0VTRkUsNEdXb2NGO0VBQ0E7QWxDd3VLSjtBdUJ6cUxNO0VXc2JKO0lYcmJNO0V2QjRxTE47QUFDRjtBa0MzdUtJO0VUamRBLHlCbEIybUJ5QztBUG9sSzdDO0FrQ3p1S0U7RUFDRSxXM0JxSWdDO0UyQnBJaEMsYzNCcUlnQztFMkJwSWhDO0VBQ0EsZTNCb0lnQztFMkJuSWhDO0VBQ0E7RUFDQTtBbEMydUtKO0FrQ3Z1S0U7RUFDRSx5QjNCOWRPO0VPUVA7QWRnc0xKO0FrQ3R1S0U7RUFDRTtFQUNBLHlCM0JwZU87RU9RUDtBZHFzTEo7QWtDcHVLSTtFQUNFLHlCM0J4ZUs7QVA4c0xYO0FrQ251S0k7RUFDRTtBbENxdUtOO0FrQ2x1S0k7RUFDRSx5QjNCaGZLO0FQb3RMWDtBa0NqdUtJO0VBQ0U7QWxDbXVLTjtBa0NodUtJO0VBQ0UseUIzQnhmSztBUDB0TFg7O0FrQzd0S0E7OztFWHpmTSw0R1c0Zko7QWxDZ3VLRjtBdUJ4dExNO0VXcWZOOzs7SVhwZlE7RXZCNnRMTjtBQUNGOztBbUM5dUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkNpdkxGOztBbUM5dUxBO0VBQ0U7RUFDQTtBbkNpdkxGO0FTaHZMRTtFMEJHRTtBbkNndkxKO0FtQzV1TEU7RUFDRSxjNUJYTztFNEJZUDtFQUNBO0FuQzh1TEo7O0FtQ3R1TEE7RUFDRTtBbkN5dUxGO0FtQ3Z1TEU7RUFDRTtFQUNBO0VyQlpBO0VBQ0E7QWRzdkxKO0FTbHdMRTtFMEIyQkkscUM1Qm1wQjhCO0FQdWxLcEM7QW1DdnVMSTtFQUNFLGM1QmxDSztFNEJtQ0w7RUFDQTtBbkN5dUxOO0FtQ3J1TEU7O0VBRUUsYzVCekNPO0U0QjBDUCxzQjVCakRPO0U0QmtEUCxrQzVCd29CZ0M7QVArbEtwQztBbUNwdUxFO0VBRUU7RXJCbkNBO0VBQ0E7QWR5d0xKOztBbUMzdExFO0VyQnhERTtBZHV4TEo7QW1DM3RMRTs7RUFFRSxXNUJ6RU87RTRCMEVQLHlCNUJ5SzBCO0FQb2pMOUI7O0FtQ250TEU7O0VBRUU7RUFDQTtBbkNzdExKOztBbUNqdExFOztFQUVFO0VBQ0E7RUFDQTtBbkNvdExKOztBbUMxc0xFO0VBQ0U7QW5DNnNMSjtBbUMzc0xFO0VBQ0U7QW5DNnNMSjs7QW9DanpMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENvekxGO0FvQ2h6TEU7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQ3V6TEo7QW9DbnlMQTtFQUNFO0VBQ0Esc0I3QmlxQmtDO0U2QmhxQmxDLHlCN0JncUJrQztFNkIvcEJsQyxrQjdCZ0ZPO0VDUkgsa0JBdENhO0U0QmhDakI7RUFDQTtBcENxeUxGO0FTLzBMRTtFMkI2Q0U7QXBDcXlMSjs7QW9DNXhMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDK3hMRjtBb0M3eExFO0VBQ0U7RUFDQTtBcEMreExKO0FvQzV4TEU7RUFDRTtFQUNBO0FwQzh4TEo7O0FvQ3J4TEE7RUFDRTtFQUNBLG1CN0J3bEJrQztFNkJ2bEJsQyxzQjdCdWxCa0M7QVBpc0twQzs7QW9DNXdMQTtFQUNFO0VBQ0E7RUFHQTtBcEM2d0xGOztBb0N6d0xBO0VBQ0U7RTVCU0ksa0JBdENhO0U0QitCakI7RUFDQTtFQUNBO0V0QnhHRTtBZHEzTEo7QVN2M0xFO0UyQjhHRTtBcEM0d0xKOztBb0N0d0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQ3l3TEY7O0FvQ3R3TEE7RUFDRSxnQjdCK2tCa0M7RTZCOWtCbEM7QXBDeXdMRjs7QWtCLzBMSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RXBDc3dMUjtBQUNGO0FrQngyTEk7RWtCNkZBO0lBb0JJO0lBQ0E7RXBDMnZMTjtFb0N6dkxNO0lBQ0U7RXBDMnZMUjtFb0N6dkxRO0lBQ0U7RXBDMnZMVjtFb0N4dkxRO0lBQ0UscUI3QndoQndCO0k2QnZoQnhCLG9CN0J1aEJ3QjtFUG11S2xDO0VvQ3J2TE07Ozs7OztJQUNFO0VwQzR2TFI7RW9DOXVMTTtJQUNFO0VwQ2d2TFI7RW9DN3VMTTtJQUNFO0lBR0E7RXBDNnVMUjtFb0MxdUxNO0lBQ0U7RXBDNHVMUjtBQUNGO0FrQjczTEk7RWtCa0ZJOzs7Ozs7SUFDRTtJQUNBO0VwQ216TFI7QUFDRjtBa0JyNUxJO0VrQjZGQTtJQW9CSTtJQUNBO0VwQ3d5TE47RW9DdHlMTTtJQUNFO0VwQ3d5TFI7RW9DdHlMUTtJQUNFO0VwQ3d5TFY7RW9DcnlMUTtJQUNFLHFCN0J3aEJ3QjtJNkJ2aEJ4QixvQjdCdWhCd0I7RVBneEtsQztFb0NseUxNOzs7Ozs7SUFDRTtFcEN5eUxSO0VvQzN4TE07SUFDRTtFcEM2eExSO0VvQzF4TE07SUFDRTtJQUdBO0VwQzB4TFI7RW9DdnhMTTtJQUNFO0VwQ3l4TFI7QUFDRjtBa0IxNkxJO0VrQmtGSTs7Ozs7O0lBQ0U7SUFDQTtFcENnMkxSO0FBQ0Y7QWtCbDhMSTtFa0I2RkE7SUFvQkk7SUFDQTtFcENxMUxOO0VvQ24xTE07SUFDRTtFcENxMUxSO0VvQ24xTFE7SUFDRTtFcENxMUxWO0VvQ2wxTFE7SUFDRSxxQjdCd2hCd0I7STZCdmhCeEIsb0I3QnVoQndCO0VQNnpLbEM7RW9DLzBMTTs7Ozs7O0lBQ0U7RXBDczFMUjtFb0N4MExNO0lBQ0U7RXBDMDBMUjtFb0N2MExNO0lBQ0U7SUFHQTtFcEN1MExSO0VvQ3AwTE07SUFDRTtFcENzMExSO0FBQ0Y7QWtCdjlMSTtFa0JrRkk7Ozs7OztJQUNFO0lBQ0E7RXBDNjRMUjtBQUNGO0FrQi8rTEk7RWtCNkZBO0lBb0JJO0lBQ0E7RXBDazRMTjtFb0NoNExNO0lBQ0U7RXBDazRMUjtFb0NoNExRO0lBQ0U7RXBDazRMVjtFb0MvM0xRO0lBQ0UscUI3QndoQndCO0k2QnZoQnhCLG9CN0J1aEJ3QjtFUDAyS2xDO0VvQzUzTE07Ozs7OztJQUNFO0VwQ200TFI7RW9DcjNMTTtJQUNFO0VwQ3UzTFI7RW9DcDNMTTtJQUNFO0lBR0E7RXBDbzNMUjtFb0NqM0xNO0lBQ0U7RXBDbTNMUjtBQUNGO0FvQ3A3TEk7RUFvQkk7RUFDQTtBcENtNkxSO0FvQ3Q3TFE7Ozs7OztFQUNFO0VBQ0E7QXBDNjdMVjtBb0MxNkxRO0VBQ0U7QXBDNDZMVjtBb0MxNkxVO0VBQ0U7QXBDNDZMWjtBb0N6NkxVO0VBQ0UscUI3QndoQndCO0U2QnZoQnhCLG9CN0J1aEJ3QjtBUG81S3BDO0FvQ3Q2TFE7Ozs7OztFQUNFO0FwQzY2TFY7QW9DLzVMUTtFQUNFO0FwQ2k2TFY7QW9DOTVMUTtFQUNFO0VBR0E7QXBDODVMVjtBb0MzNUxRO0VBQ0U7QXBDNjVMVjs7QW9DLzRMRTtFQUNFLHlCN0JnZ0JnQztBUGs1S3BDO0FTMW1NRTtFMkIyTkkseUI3QjZmOEI7QVBxNUtwQztBb0M3NExJO0VBQ0UseUI3QnFmOEI7QVAwNUtwQztBU2huTUU7RTJCb09NLHlCN0JtZjRCO0FQNDVLcEM7QW9DNTRMTTtFQUNFLHlCN0JpZjRCO0FQNjVLcEM7QW9DMTRMSTs7OztFQUlFLHlCN0J3ZThCO0FQbzZLcEM7QW9DeDRMRTtFQUNFLHlCN0JpZWdDO0U2QmhlaEMsZ0M3QnFlZ0M7QVBxNktwQztBb0N2NExFO0VBQ0U7QXBDeTRMSjtBb0N0NExFO0VBQ0UseUI3QndkZ0M7QVBnN0twQztBb0N2NExJO0VBQ0UseUI3QndkOEI7QVBpN0twQztBU3pvTUU7RTJCbVFNLHlCN0JxZDRCO0FQbzdLcEM7O0FvQ2o0TEU7RUFDRSxXN0JyUk87QVB5cE1YO0FTaHBNRTtFMkIrUUksVzdCeFJLO0FQNHBNWDtBb0MvM0xJO0VBQ0UsK0I3QjBiOEI7QVB1OEtwQztBU3RwTUU7RTJCd1JNLGdDN0J3YjRCO0FQeThLcEM7QW9DOTNMTTtFQUNFLGdDN0JzYjRCO0FQMDhLcEM7QW9DNTNMSTs7OztFQUlFLFc3QjdTSztBUDJxTVg7QW9DMTNMRTtFQUNFLCtCN0JzYWdDO0U2QnJhaEMsc0M3QjBhZ0M7QVBrOUtwQztBb0N6M0xFO0VBQ0U7QXBDMjNMSjtBb0N4M0xFO0VBQ0UsK0I3QjZaZ0M7QVA2OUtwQztBb0N6M0xJO0VBQ0UsVzdCN1RLO0FQd3JNWDtBUy9xTUU7RTJCdVRNLFc3QmhVRztBUDJyTVg7O0FxQzlyTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0Esc0I5QkpTO0U4QktUO0VBQ0E7RXZCS0U7QWQ0ck1KO0FxQzlyTUU7RUFDRTtFQUNBO0FyQ2dzTUo7QXFDN3JNRTtFQUNFO0VBQ0E7QXJDK3JNSjtBcUM3ck1JO0VBQ0U7RXZCQ0Y7RUFDQTtBZCtyTUo7QXFDN3JNSTtFQUNFO0V2QlVGO0VBQ0E7QWRzck1KO0FxQzFyTUU7O0VBRUU7QXJDNHJNSjs7QXFDeHJNQTtFQUdFO0VBR0E7RUFDQSxnQjlCOHdCa0M7QVB5NktwQzs7QXFDbnJNQTtFQUNFLHNCOUJ3d0JrQztBUDg2S3BDOztBcUNuck1BO0VBQ0U7RUFDQTtBckNzck1GOztBcUNuck1BO0VBQ0U7QXJDc3JNRjs7QVMzdU1FO0U0QjBERTtBckNxck1KO0FxQ2xyTUU7RUFDRSxvQjlCdXZCZ0M7QVA2N0twQzs7QXFDNXFNQTtFQUNFO0VBQ0E7RUFFQSxxQzlCZ3ZCa0M7RThCL3VCbEM7QXJDOHFNRjtBcUM1cU1FO0V2QnZFRTtBZHN2TUo7O0FxQzFxTUE7RUFDRTtFQUVBLHFDOUJxdUJrQztFOEJwdUJsQztBckM0cU1GO0FxQzFxTUU7RXZCbEZFO0FkK3ZNSjs7QXFDbnFNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyQ3NxTUY7O0FxQ25xTUE7RUFDRTtFQUNBO0FyQ3NxTUY7O0FxQ2xxTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0I5QjJzQmtDO0VPMXpCaEM7QWRxeE1KOztBcUNscU1BOzs7RUFHRTtFQUNBO0FyQ3FxTUY7O0FxQ2xxTUE7O0V2QmpISTtFQUNBO0Fkd3hNSjs7QXFDbnFNQTs7RXZCeEdJO0VBQ0E7QWRneE1KOztBcUNocU1FO0VBQ0UsbUI5Qm1yQmdDO0FQZy9LcEM7QWtCbHdNSTtFbUI2Rko7SUFNSTtJQUNBO0lBQ0E7SUFDQTtFckNtcU1GO0VxQ2pxTUU7SUFFRTtJQUNBLGtCOUJ1cUI4QjtJOEJ0cUI5QjtJQUNBLGlCOUJxcUI4QjtFUDYvS2xDO0FBQ0Y7O0FxQ3RwTUU7RUFDRSxtQjlCdXBCZ0M7QVBrZ0xwQztBa0JweE1JO0VtQnVISjtJQVFJO0lBQ0E7RXJDeXBNRjtFcUN0cE1FO0lBRUU7SUFDQTtFckN1cE1KO0VxQ3JwTUk7SUFDRTtJQUNBO0VyQ3VwTU47RXFDbHBNTTtJdkJ6S0o7SUFDQTtFZDh6TUY7RXFDbnBNUTs7SUFHRTtFckNvcE1WO0VxQ2xwTVE7O0lBR0U7RXJDbXBNVjtFcUMvb01NO0l2QjFLSjtJQUNBO0VkNHpNRjtFcUNocE1ROztJQUdFO0VyQ2lwTVY7RXFDL29NUTs7SUFHRTtFckNncE1WO0FBQ0Y7O0FxQ25vTUU7RUFDRSxzQjlCNGtCZ0M7QVAwakxwQztBa0I5ek1JO0VtQnNMSjtJQU1JLGU5QnlsQmdDO0k4QnhsQmhDLG1COUJ5bEJnQztJOEJ4bEJoQztJQUNBO0VyQ3NvTUY7RXFDcG9NRTtJQUNFO0lBQ0E7RXJDc29NSjtBQUNGOztBcUM3bk1BO0VBQ0U7QXJDZ29NRjtBcUM5bk1FO0VBQ0U7QXJDZ29NSjtBcUM5bk1JO0VBQ0U7RXZCdk9GO0VBQ0E7QWR3Mk1KO0FxQzluTUk7RXZCelBBO0VBQ0E7QWQwM01KO0FxQzluTUk7RXZCdFFBO0V1QndRRTtBckNnb01OOztBc0MxNU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUIvQm1pQ2tDO0UrQmppQ2xDO0VBQ0EseUIvQkVTO0VPU1A7QWRrNU1KOztBc0N2NU1FO0VBQ0Usb0IvQnVoQ2dDO0FQbTRLcEM7QXNDeDVNSTtFQUNFO0VBQ0EscUIvQm1oQzhCO0UrQmxoQzlCLGMvQk5LO0UrQk9MO0F0QzA1TU47QXNDaDVNRTtFQUNFO0F0Q2s1TUo7QXNDLzRNRTtFQUNFO0F0Q2k1TUo7QXNDOTRNRTtFQUNFLGMvQjFCTztBUDA2TVg7O0F1Q3Y3TUE7RUFDRTtFNUJHQTtFQUNBO0VHYUU7QWQ0Nk1KOztBdUN4N01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQmhDbXhCa0M7RWdDbHhCbEMsY2hDbUt3QztFZ0NqS3hDLHNCaENQUztFZ0NRVDtBdkMwN01GO0F1Q3g3TUU7RUFDRTtFQUNBLGNoQzhKc0M7RWdDN0p0QztFQUNBLHlCaENaTztFZ0NhUCxxQmhDWk87QVBzOE1YO0F1Q3Y3TUU7RUFDRTtFQUNBLFVoQzJ3QmdDO0VnQzF3QmhDLGdEaEM4VzBCO0FQMmtNOUI7O0F1Q243TUk7RUFDRTtFekJhRjtFQUNBO0FkMDZNSjtBdUNuN01JO0V6Qk5BO0VBQ0E7QWQ0N01KO0F1Q2w3TUU7RUFDRTtFQUNBLFdoQ3hDTztFZ0N5Q1AseUJoQzBNMEI7RWdDek0xQixxQmhDeU0wQjtBUDJ1TTlCO0F1Q2o3TUU7RUFDRSxjaEN4Q087RWdDeUNQO0VBRUE7RUFDQSxzQmhDbERPO0VnQ21EUCxxQmhDaERPO0FQaytNWDs7QXdDeitNRTtFQUNFO0VoQzJIRSxrQkF0Q2E7RWdDbkZmLGdCakNtTzBCO0FQeXdNOUI7QXdDditNTTtFMUJxQ0Y7RUFDQTtBZHE4TUo7QXdDdCtNTTtFMUJrQkY7RUFDQTtBZHU5TUo7O0F3Q3YvTUU7RUFDRTtFaEMySEUsbUJBdENhO0VnQ25GZixnQmpDb08wQjtBUHN4TTlCO0F3Q3IvTU07RTFCcUNGO0VBQ0E7QWRtOU1KO0F3Q3AvTU07RTFCa0JGO0VBQ0E7QWRxK01KOztBeUNuZ05BO0VBQ0U7RUFDQTtFakNpRUU7RWlDL0RGLGdCbEN1UjRCO0VrQ3RSNUI7RUFDQTtFQUNBO0VBQ0E7RTNCS0U7RVNGRSxxSWtCREo7QXpDc2dORjtBdUJqZ05NO0VrQmZOO0lsQmdCUTtFdkJvZ05OO0FBQ0Y7QVMxZ05FO0VnQ0dJO0F6QzBnTk47O0F5Q3JnTkU7RUFDRTtBekN3Z05KOztBeUNuZ05BO0VBQ0U7RUFDQTtBekNzZ05GOztBeUMvL01BO0VBQ0Usb0JsQyszQmtDO0VrQzkzQmxDLG1CbEM4M0JrQztFT3I1QmhDO0FkMGhOSjs7QXlDMS9NRTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVBxK01mO0FTamlORTtFaUNWSTtFQUNBO0ExQzhpTk47QTBDM2lOSTtFQUVFO0VBQ0E7QTFDNGlOTjs7QXlDdmdORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVBrL01mO0FTOWlORTtFaUNWSTtFQUNBO0ExQzJqTk47QTBDeGpOSTtFQUVFO0VBQ0E7QTFDeWpOTjs7QXlDcGhORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVArL01mO0FTM2pORTtFaUNWSTtFQUNBO0ExQ3drTk47QTBDcmtOSTtFQUVFO0VBQ0E7QTFDc2tOTjs7QXlDamlORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVA0Z05mO0FTeGtORTtFaUNWSTtFQUNBO0ExQ3FsTk47QTBDbGxOSTtFQUVFO0VBQ0E7QTFDbWxOTjs7QXlDOWlORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVB5aE5mO0FTcmxORTtFaUNWSTtFQUNBO0ExQ2ttTk47QTBDL2xOSTtFQUVFO0VBQ0E7QTFDZ21OTjs7QXlDM2pORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVBzaU5mO0FTbG1ORTtFaUNWSTtFQUNBO0ExQyttTk47QTBDNW1OSTtFQUVFO0VBQ0E7QTFDNm1OTjs7QXlDeGtORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVBtak5mO0FTL21ORTtFaUNWSTtFQUNBO0ExQzRuTk47QTBDem5OSTtFQUVFO0VBQ0E7QTFDMG5OTjs7QXlDcmxORTtFQ2pEQTtFQUNBLHlCbkMwRWE7QVBna05mO0FTNW5ORTtFaUNWSTtFQUNBO0ExQ3lvTk47QTBDdG9OSTtFQUVFO0VBQ0E7QTFDdW9OTjs7QTJDcHBOQTtFQUNFO0VBQ0EsbUJwQ3V6QmtDO0VvQ3J6QmxDLHlCcENLUztFT1NQO0FkeW9OSjtBa0IvbE5JO0V5QjVESjtJQVFJO0UzQ3VwTkY7QUFDRjs7QTJDcHBOQTtFQUNFO0VBQ0E7RTdCSUU7QWRvcE5KOztBNENscU5BO0VBQ0U7RUFDQTtFQUNBLG1CckN1OUJrQztFcUN0OUJsQztFOUJVRTtBZDRwTko7O0E0Q2pxTkE7RUFFRTtBNUNtcU5GOztBNEMvcE5BO0VBQ0UsZ0JyQzRRNEI7QVBzNU05Qjs7QTRDMXBOQTtFQUNFO0E1QzZwTkY7QTRDMXBORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUM0cE5KOztBNENscE5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1Q3VwTnZFO0E2Q25zTkU7RUFDRTtBN0Nxc05KO0E2Q2xzTkU7RUFDRTtBN0Nvc05KOztBNEM5cE5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1Q21xTnZFO0E2Qy9zTkU7RUFDRTtBN0NpdE5KO0E2QzlzTkU7RUFDRTtBN0NndE5KOztBNEMxcU5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1QytxTnZFO0E2QzN0TkU7RUFDRTtBN0M2dE5KO0E2QzF0TkU7RUFDRTtBN0M0dE5KOztBNEN0ck5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1QzJyTnZFO0E2Q3Z1TkU7RUFDRTtBN0N5dU5KO0E2Q3R1TkU7RUFDRTtBN0N3dU5KOztBNENsc05FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1Q3VzTnZFO0E2Q252TkU7RUFDRTtBN0Nxdk5KO0E2Q2x2TkU7RUFDRTtBN0Nvdk5KOztBNEM5c05FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1Q210TnZFO0E2Qy92TkU7RUFDRTtBN0Npd05KO0E2Qzl2TkU7RUFDRTtBN0Nnd05KOztBNEMxdE5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1Qyt0TnZFO0E2QzN3TkU7RUFDRTtBN0M2d05KO0E2QzF3TkU7RUFDRTtBN0M0d05KOztBNEN0dU5FO0VDL0NBLGNEZ0RxSDtFbkIzQ25ILHlCbUIyQ3VCO0VDOUN6QixxQkQ4Q3FFO0E1QzJ1TnZFO0E2Q3Z4TkU7RUFDRTtBN0N5eE5KO0E2Q3R4TkU7RUFDRTtBN0N3eE5KOztBOENoeU5FO0VBQ0U7SUFBTztFOUNveU5UO0U4Q255TkU7SUFBSztFOUNzeU5QO0FBQ0Y7QThDbnlOQTtFQUNFO0VBQ0EsWXZDZytCa0M7RXVDLzlCbEM7RUFDQTtFdENtSEksa0JBdENhO0VzQzNFakIseUJ2Q0xTO0VPU1A7QWRreU5KOztBOENqeU5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXdkNqQlM7RXVDa0JUO0VBQ0E7RUFDQSx5QnZDcTlCa0M7RWdCaCtCOUIsMkJ1QllKO0E5Q295TkY7QXVCNXlOTTtFdUJETjtJdkJFUTtFdkIreU5OO0FBQ0Y7O0E4Q3R5TkE7RXJCWUU7RXFCVkE7QTlDeXlORjs7QThDcnlORTtFQUNFO0E5Q3d5Tko7QThDcnlOTTtFQUpKO0lBS007RTlDd3lOTjtBQUNGOztBK0NuMU5BO0VBQ0U7RUFDQTtBL0NzMU5GOztBK0NuMU5BO0VBQ0U7QS9DczFORjs7QWdEeDFOQTtFQUNFO0VBQ0E7RUFHQTtFQUNBO0VsQ1FFO0FkazFOSjs7QWdEaDFOQTtFQUNFO0VBQ0EsY3pDUlM7RXlDU1Q7QWhEbTFORjtBUzExTkU7RXVDV0U7RUFDQSxjekNkTztFeUNlUDtFQUNBLHlCekN0Qk87QVB3Mk5YO0FnRC8wTkU7RUFDRSxjekNsQk87RXlDbUJQLHlCekMxQk87QVAyMk5YOztBZ0R4ME5BO0VBQ0U7RUFDQTtFQUNBO0VBR0Esc0J6QzNDUztFeUM0Q1Q7QWhEeTBORjtBZ0R2ME5FO0VsQzFCRTtFQUNBO0FkbzJOSjtBZ0R2ME5FO0VsQ2hCRTtFQUNBO0FkMDFOSjtBZ0R2ME5FO0VBRUUsY3pDbERPO0V5Q21EUDtFQUNBLHNCekMxRE87QVBrNE5YO0FnRHAwTkU7RUFDRTtFQUNBLFd6Q2hFTztFeUNpRVAseUJ6Q2tMMEI7RXlDakwxQixxQnpDaUwwQjtBUHFwTjlCO0FnRG4wTkU7RUFDRTtBaERxME5KO0FnRG4wTkk7RUFDRTtFQUNBLHFCekMySndCO0FQMHFOOUI7O0FnRHZ6Tkk7RUFDRTtBaEQwek5OO0FnRHZ6TlE7RWxDMUJKO0VBWkE7QWRpMk5KO0FnRHR6TlE7RWxDM0NKO0VBWUE7QWR5MU5KO0FnRHJ6TlE7RUFDRTtBaER1ek5WO0FnRHB6TlE7RUFDRSxxQnpDMEhvQjtFeUN6SHBCO0FoRHN6TlY7QWdEcHpOVTtFQUNFO0VBQ0Esc0J6Q3FIa0I7QVBpc045Qjs7QWtCajNOSTtFOEJtQ0E7SUFDRTtFaERrMU5KO0VnRC8wTk07SWxDMUJKO0lBWkE7RWR5M05GO0VnRDkwTk07SWxDM0NKO0lBWUE7RWRpM05GO0VnRDcwTk07SUFDRTtFaEQrME5SO0VnRDUwTk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0VoRDgwTlI7RWdENTBOUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RVB5dE41QjtBQUNGO0FrQjE0Tkk7RThCbUNBO0lBQ0U7RWhEMDJOSjtFZ0R2Mk5NO0lsQzFCSjtJQVpBO0VkaTVORjtFZ0R0Mk5NO0lsQzNDSjtJQVlBO0VkeTRORjtFZ0RyMk5NO0lBQ0U7RWhEdTJOUjtFZ0RwMk5NO0lBQ0UscUJ6QzBIb0I7SXlDekhwQjtFaERzMk5SO0VnRHAyTlE7SUFDRTtJQUNBLHNCekNxSGtCO0VQaXZONUI7QUFDRjtBa0JsNk5JO0U4Qm1DQTtJQUNFO0VoRGs0Tko7RWdELzNOTTtJbEMxQko7SUFaQTtFZHk2TkY7RWdEOTNOTTtJbEMzQ0o7SUFZQTtFZGk2TkY7RWdENzNOTTtJQUNFO0VoRCszTlI7RWdENTNOTTtJQUNFLHFCekMwSG9CO0l5Q3pIcEI7RWhEODNOUjtFZ0Q1M05RO0lBQ0U7SUFDQSxzQnpDcUhrQjtFUHl3TjVCO0FBQ0Y7QWtCMTdOSTtFOEJtQ0E7SUFDRTtFaEQwNU5KO0VnRHY1Tk07SWxDMUJKO0lBWkE7RWRpOE5GO0VnRHQ1Tk07SWxDM0NKO0lBWUE7RWR5N05GO0VnRHI1Tk07SUFDRTtFaER1NU5SO0VnRHA1Tk07SUFDRSxxQnpDMEhvQjtJeUN6SHBCO0VoRHM1TlI7RWdEcDVOUTtJQUNFO0lBQ0Esc0J6Q3FIa0I7RVBpeU41QjtBQUNGO0FnRHo0TkE7RWxDbkhJO0FkKy9OSjtBZ0R6NE5FO0VBQ0U7QWhEMjROSjtBZ0R6NE5JO0VBQ0U7QWhEMjROTjs7QWlEcGhPRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaERvNE4zQztBUzVnT0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBakRzaE9SO0FpRG5oT007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FoRDY0TjFFOztBaURsaU9FO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FoRGs1TjNDO0FTMWhPRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0FqRG9pT1I7QWlEamlPTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWhEMjVOMUU7O0FpRGhqT0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWhEZzZOM0M7QVN4aU9FO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWpEa2pPUjtBaUQvaU9NO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaER5Nk4xRTs7QWlEOWpPRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaEQ4Nk4zQztBU3RqT0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBakRna09SO0FpRDdqT007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FoRHU3TjFFOztBaUQ1a09FO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FoRDQ3TjNDO0FTcGtPRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0FqRDhrT1I7QWlEM2tPTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWhEcThOMUU7O0FpRDFsT0U7RUFDRSxjRG9Kc0U7RUNuSnRFLHlCRG1KdUM7QWhEMDhOM0M7QVNsbE9FO0V3Q1BNLGNEK0lrRTtFQzlJbEU7QWpENGxPUjtBaUR6bE9NO0VBQ0UsVzFDUEc7RTBDUUgseUJEeUlrRTtFQ3hJbEUscUJEd0lrRTtBaERtOU4xRTs7QWlEeG1PRTtFQUNFLGNEb0pzRTtFQ25KdEUseUJEbUp1QztBaER3OU4zQztBU2htT0U7RXdDUE0sY0QrSWtFO0VDOUlsRTtBakQwbU9SO0FpRHZtT007RUFDRSxXMUNQRztFMENRSCx5QkR5SWtFO0VDeElsRSxxQkR3SWtFO0FoRGkrTjFFOztBaUR0bk9FO0VBQ0UsY0RvSnNFO0VDbkp0RSx5QkRtSnVDO0FoRHMrTjNDO0FTOW1PRTtFd0NQTSxjRCtJa0U7RUM5SWxFO0FqRHduT1I7QWlEcm5PTTtFQUNFLFcxQ1BHO0UwQ1FILHlCRHlJa0U7RUN4SWxFLHFCRHdJa0U7QWhEKytOMUU7O0FrRHZvT0E7RUFDRTtFMUM4SEksaUJBdENhO0UwQ3RGakIsZ0IzQzZSNEI7RTJDNVI1QjtFQUNBLFczQ1lTO0UyQ1hULHlCM0NzbENrQztFMkNybENsQztBbEQwb09GO0FTcm9PRTtFeUNERSxXM0NNTztFMkNMUDtBbER5b09KO0FTcm9PRTtFeUNDSTtBbER1b09OOztBa0Q1bk9BO0VBQ0U7RUFDQTtFQUNBO0FsRCtuT0Y7O0FrRHpuT0E7RUFDRTtBbEQ0bk9GOztBbURscU9BO0VBR0UsaUI1Q3k0QmtDO0U0Q3g0QmxDLGdCNUN3NEJrQztFQzd3QjlCLG1CQXRDYTtFMkNsRmpCLDJDNUMwNEJrQztFNEN6NEJsQztFQUNBO0VBQ0EsZ0Q1QzI0QmtDO0U0QzE0QmxDO0VyQ09FO0FkNHBPSjtBbURocU9FO0VBQ0Usc0I1QzgzQmdDO0FQb3lNcEM7QW1EL3BPRTtFQUNFO0FuRGlxT0o7QW1EOXBPRTtFQUNFO0VBQ0E7QW5EZ3FPSjtBbUQ3cE9FO0VBQ0U7QW5EK3BPSjs7QW1EM3BPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGM1Q3ZCUztFNEN3QlQsMkM1Q20zQmtDO0U0Q2wzQmxDO0VBQ0E7RXJDWkU7RUFDQTtBZDJxT0o7O0FtRDVwT0E7RUFDRSxnQjVDaTJCa0M7QVA4ek1wQzs7QW9EcnNPQTtFQUVFO0FwRHVzT0Y7QW9EcnNPRTtFQUNFO0VBQ0E7QXBEdXNPSjs7QW9EbHNPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE3QzJwQmtDO0U2QzFwQmxDO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QXBEbXNPRjs7QW9ENXJPQTtFQUNFO0VBQ0E7RUFDQSxjN0MrNEJrQztFNkM3NEJsQztBcEQ4ck9GO0FvRDNyT0U7RTdCM0JJLG1DNkI0QkY7RUFDQSw4QjdDcTZCZ0M7QVB3eE1wQztBdUJ0dE9NO0U2QnVCSjtJN0J0Qk07RXZCeXRPTjtBQUNGO0FvRGhzT0U7RUFDRSxlN0NtNkJnQztBUCt4TXBDO0FvRDlyT0U7RUFDRSxzQjdDZzZCZ0M7QVBneU1wQzs7QW9ENXJPQTtFQUNFO0VBQ0E7QXBEK3JPRjtBb0Q3ck9FO0VBQ0U7RUFDQTtBcEQrck9KO0FvRDVyT0U7O0VBRUU7QXBEOHJPSjtBb0Qzck9FO0VBQ0U7QXBENnJPSjs7QW9EenJPQTtFQUNFO0VBQ0E7RUFDQTtBcEQ0ck9GO0FvRHpyT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQyck9KO0FvRHZyT0U7RUFDRTtFQUNBO0VBQ0E7QXBEeXJPSjtBb0R2ck9JO0VBQ0U7QXBEeXJPTjtBb0R0ck9JO0VBQ0U7QXBEd3JPTjs7QW9EbHJPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjdDM0dTO0U2QzRHVDtFQUNBO0V0Q2xHRTtFc0NzR0Y7QXBEaXJPRjs7QW9EN3FPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE3QytpQmtDO0U2QzlpQmxDO0VBQ0E7RUFDQSxzQjdDbEhTO0FQa3lPWDtBb0Q3cU9FO0VBQVM7QXBEZ3JPWDtBb0QvcU9FO0VBQVMsWTdDNnpCeUI7QVBxM01wQzs7QW9EN3FPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGtCN0MyekJrQztFNkMxekJsQztFdEN0SEU7RUFDQTtBZHV5T0o7QW9EL3FPRTtFQUNFLGtCN0NzekJnQztFNkNwekJoQztBcERnck9KOztBb0QzcU9BO0VBQ0U7RUFDQSxnQjdDc0k0QjtBUHdpTzlCOztBb0R6cU9BO0VBQ0U7RUFHQTtFQUNBLGE3Q3d3QmtDO0FQazZNcEM7O0FvRHRxT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXRDeklFO0VBQ0E7QWRtek9KO0FvRHJxT0U7RUFDRTtBcER1cU9KOztBb0RscU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcERxcU9GOztBa0I1eU9JO0VrQzZJRjtJQUNFLGdCN0Nxd0JnQztJNkNwd0JoQztFcERtcU9GOztFb0RocU9BO0lBQ0U7RXBEbXFPRjtFb0RqcU9FO0lBQ0U7RXBEbXFPSjs7RW9EL3BPQTtJQUNFO0VwRGtxT0Y7RW9EaHFPRTtJQUNFO0lBQ0E7RXBEa3FPSjs7RW9EMXBPQTtJQUFZLGdCN0M2dUJzQjtFUGk3TWxDO0FBQ0Y7QWtCdDBPSTtFa0MyS0Y7O0lBRUUsZ0I3Q3F1QmdDO0VQeTdNbEM7QUFDRjtBa0I1ME9JO0VrQ2tMRjtJQUFZLGlCN0MrdEJzQjtFUCs3TWxDO0FBQ0Y7QXFENTRPQTtFQUNFO0VBQ0EsYTlDK3FCa0M7RThDOXFCbEM7RUFDQSxTOUMyMUJrQztFK0MvMUJsQyxxTi9DbVI0QjtFK0NqUjVCO0VBQ0EsZ0IvQzJSNEI7RStDMVI1QixnQi9DK1I0QjtFK0M5UjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5Q2dISSxtQkF0Q2E7RTZDOUVqQjtFQUNBO0FyRHc1T0Y7QXFEdDVPRTtFQUFTLFk5QyswQnlCO0FQMGtOcEM7QXFEdjVPRTtFQUNFO0VBQ0E7RUFDQSxhOUMrMEJnQztFOEM5MEJoQyxjOUMrMEJnQztBUDBrTnBDO0FxRHY1T0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckR5NU9OOztBcURwNU9BO0VBQ0U7QXJEdTVPRjtBcURyNU9FO0VBQ0U7QXJEdTVPSjtBcURyNU9JO0VBQ0U7RUFDQTtFQUNBLHNCOUN2Qks7QVA4Nk9YOztBcURsNU9BO0VBQ0U7QXJEcTVPRjtBcURuNU9FO0VBQ0U7RUFDQSxhOUNpekJnQztFOENoekJoQyxjOUMreUJnQztBUHNtTnBDO0FxRG41T0k7RUFDRTtFQUNBO0VBQ0Esd0I5Q3ZDSztBUDQ3T1g7O0FxRGg1T0E7RUFDRTtBckRtNU9GO0FxRGo1T0U7RUFDRTtBckRtNU9KO0FxRGo1T0k7RUFDRTtFQUNBO0VBQ0EseUI5Q3JESztBUHc4T1g7O0FxRDk0T0E7RUFDRTtBckRpNU9GO0FxRC80T0U7RUFDRTtFQUNBLGE5Q214QmdDO0U4Q2x4QmhDLGM5Q2l4QmdDO0FQZ29OcEM7QXFELzRPSTtFQUNFO0VBQ0E7RUFDQSx1QjlDckVLO0FQczlPWDs7QXFENTNPQTtFQUNFLGdCOUM2dUJrQztFOEM1dUJsQztFQUNBLFc5Q3ZHUztFOEN3R1Q7RUFDQSxzQjlDL0ZTO0VPQ1A7QWQ4OU9KOztBdURoL09BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYWhENnFCa0M7RWdENXFCbEM7RUFDQSxnQmhENjJCa0M7RStDbDNCbEMscU4vQ21SNEI7RStDalI1QjtFQUNBLGdCL0MyUjRCO0UrQzFSNUIsZ0IvQytSNEI7RStDOVI1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOUNnSEksbUJBdENhO0UrQzdFakI7RUFDQSxzQmhETlM7RWdET1Q7RUFDQTtFekNHRTtBZDIvT0o7QXVEMS9PRTtFQUNFO0VBQ0E7RUFDQSxXaEQ2MkJnQztFZ0Q1MkJoQyxjaEQ2MkJnQztFZ0Q1MkJoQztBdkQ0L09KO0F1RDEvT0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RDIvT047O0F1RHQvT0E7RUFDRSxxQmhEODFCa0M7QVAycE5wQztBdUR2L09FO0VBQ0U7QXZEeS9PSjtBdUR2L09JO0VBQ0U7RUFDQTtFQUNBLHFDaER5MUI4QjtBUGdxTnBDO0F1RHQvT0k7RUFDRSxXaEQwTHdCO0VnRHpMeEI7RUFDQSxzQmhEN0NLO0FQcWlQWDs7QXVEbi9PQTtFQUNFLG1CaEQwMEJrQztBUDRxTnBDO0F1RHAvT0U7RUFDRTtFQUNBLGFoRHMwQmdDO0VnRHIwQmhDLFloRG8wQmdDO0VnRG4wQmhDO0F2RHMvT0o7QXVEcC9PSTtFQUNFO0VBQ0E7RUFDQSx1Q2hEazBCOEI7QVBvck5wQztBdURuL09JO0VBQ0UsU2hEbUt3QjtFZ0RsS3hCO0VBQ0Esd0JoRHBFSztBUHlqUFg7O0F1RGgvT0E7RUFDRSxrQmhEbXpCa0M7QVBnc05wQztBdURqL09FO0VBQ0U7QXZEbS9PSjtBdURqL09JO0VBQ0U7RUFDQTtFQUNBLHdDaEQ4eUI4QjtBUHFzTnBDO0F1RGgvT0k7RUFDRSxRaEQrSXdCO0VnRDlJeEI7RUFDQSx5QmhEeEZLO0FQMGtQWDtBdUQ3K09FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXaEQweEJnQztFZ0R6eEJoQztFQUNBO0VBQ0E7QXZEKytPSjs7QXVEMytPQTtFQUNFLG9CaERteEJrQztBUDJ0TnBDO0F1RDUrT0U7RUFDRTtFQUNBLGFoRCt3QmdDO0VnRDl3QmhDLFloRDZ3QmdDO0VnRDV3QmhDO0F2RDgrT0o7QXVENStPSTtFQUNFO0VBQ0E7RUFDQSxzQ2hEMndCOEI7QVBtdU5wQztBdUQzK09JO0VBQ0UsVWhENEd3QjtFZ0QzR3hCO0VBQ0EsdUJoRDNISztBUHdtUFg7O0F1RHY5T0E7RUFDRTtFQUNBO0UvQzNCSSxlQXRDYTtFK0NvRWpCLHlCaEQ2dEJrQztFZ0Q1dEJsQztFekNuSUU7RUFDQTtBZDZsUEo7QXVEeDlPRTtFQUNFO0F2RDA5T0o7O0F1RHQ5T0E7RUFDRTtFQUNBLGNoRHhKUztBUGluUFg7O0F3RHBuUEE7RUFDRTtBeER1blBGOztBd0RwblBBO0VBQ0U7QXhEdW5QRjs7QXdEcG5QQTtFQUNFO0VBQ0E7RUFDQTtBeER1blBGO0F5RDlvUEU7RUFDRTtFQUNBO0VBQ0E7QXpEZ3BQSjs7QXdEeG5QQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakNsQkksc0NpQ21CSjtBeEQyblBGO0F1QjFvUE07RWlDUU47SWpDUFE7RXZCNm9QTjtBQUNGOztBd0Q3blBBOzs7RUFHRTtBeERnb1BGOztBd0Q3blBBOztFQUVFO0F4RGdvUEY7O0F3RDduUEE7O0VBRUU7QXhEZ29QRjs7QXdEdm5QRTtFQUNFO0VBQ0E7RUFDQTtBeEQwblBKO0F3RHZuUEU7OztFQUdFO0VBQ0E7QXhEeW5QSjtBd0R0blBFOztFQUVFO0VBQ0E7RWpDNURFLDJCaUM2REY7QXhEd25QSjtBdUJqclBNO0VpQ3FESjs7SWpDcERNO0V2QnFyUE47QUFDRjs7QXdEcm5QQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVqRG85Qm1DO0VpRG45Qm5DLFdqRDFGUztFaUQyRlQ7RUFDQSxZakRrOUJtQztFZ0JyaUMvQiw4QmlDb0ZKO0F4RHVuUEY7QXVCdnNQTTtFaUNrRU47O0lqQ2pFUTtFdkIyc1BOO0FBQ0Y7QVNqdFBFOzs7RStDd0ZFLFdqRGpHTztFaURrR1A7RUFDQTtFQUNBLFlqRDI4QmlDO0FQbXJOckM7O0F3RDNuUEE7RUFDRTtBeEQ4blBGOztBd0R6blBBO0VBQ0U7QXhENG5QRjs7QXdEcm5QQTs7RUFFRTtFQUNBLFdqRG84Qm1DO0VpRG44Qm5DLFlqRG04Qm1DO0VpRGw4Qm5DO0F4RHduUEY7O0F3RHRuUEE7RUFDRTtBeER5blBGOztBd0R2blBBO0VBQ0U7QXhEMG5QRjs7QXdEam5QQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmpEMDVCbUM7RWlEejVCbkMsZ0JqRHk1Qm1DO0VpRHg1Qm5DO0F4RG1uUEY7QXdEam5QRTtFQUNFO0VBQ0E7RUFDQSxXakR3NUJpQztFaUR2NUJqQyxXakR3NUJpQztFaUR2NUJqQyxpQmpEeTVCaUM7RWlEeDVCakMsZ0JqRHc1QmlDO0VpRHY1QmpDO0VBQ0E7RUFDQSxzQmpEaEtPO0VpRGlLUDtFQUVBO0VBQ0E7RUFDQTtFakM1SkUsNkJpQzZKRjtBeERrblBKO0F1QjN3UE07RWlDMElKO0lqQ3pJTTtFdkI4d1BOO0FBQ0Y7QXdEcG5QRTtFQUNFO0F4RHNuUEo7O0F3RDdtUEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdqRDNMUztFaUQ0TFQ7QXhEZ25QRjs7QTBEL3lQQTtFQUNFO0lBQUs7RTFEbXpQTDtBQUNGO0EwRGp6UEE7RUFDRTtFQUNBLFduRG9rQ3NCO0VtRG5rQ3RCLFluRG1rQ3NCO0VtRGxrQ3RCO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTFEa3pQRjs7QTBEL3lQQTtFQUNFLFduRDZqQ3dCO0VtRDVqQ3hCLFluRDRqQ3dCO0VtRDNqQ3hCLG1CbkQ2akN3QjtBUHF2TjFCOztBMEQzeVBBO0VBQ0U7SUFDRTtFMUQ4eVBGO0UwRDV5UEE7SUFDRTtJQUNBO0UxRDh5UEY7QUFDRjtBMEQzeVBBO0VBQ0U7RUFDQSxXbkRvaUNzQjtFbURuaUN0QixZbkRtaUNzQjtFbURsaUN0QjtFQUNBO0VBRUE7RUFDQTtFQUNBO0ExRDR5UEY7O0EwRHp5UEE7RUFDRSxXbkQ2aEN3QjtFbUQ1aEN4QixZbkQ0aEN3QjtBUGd4TjFCOztBMER4eVBFO0VBQ0U7O0lBRUU7RTFEMnlQSjtBQUNGO0EyRHYyUEE7RUFBcUI7QTNEMDJQckI7O0EyRHoyUEE7RUFBcUI7QTNENjJQckI7O0EyRDUyUEE7RUFBcUI7QTNEZzNQckI7O0EyRC8yUEE7RUFBcUI7QTNEbTNQckI7O0EyRGwzUEE7RUFBcUI7QTNEczNQckI7O0EyRHIzUEE7RUFBcUI7QTNEeTNQckI7O0E0RDMzUEU7RUFDRTtBNUQ4M1BKOztBU3AzUEU7OztFbURMSTtBNUQrM1BOOztBNERyNFBFO0VBQ0U7QTVEdzRQSjs7QVM5M1BFOzs7RW1ETEk7QTVEeTRQTjs7QTRELzRQRTtFQUNFO0E1RGs1UEo7O0FTeDRQRTs7O0VtRExJO0E1RG01UE47O0E0RHo1UEU7RUFDRTtBNUQ0NVBKOztBU2w1UEU7OztFbURMSTtBNUQ2NVBOOztBNERuNlBFO0VBQ0U7QTVEczZQSjs7QVM1NVBFOzs7RW1ETEk7QTVEdTZQTjs7QTRENzZQRTtFQUNFO0E1RGc3UEo7O0FTdDZQRTs7O0VtRExJO0E1RGk3UE47O0E0RHY3UEU7RUFDRTtBNUQwN1BKOztBU2g3UEU7OztFbURMSTtBNUQyN1BOOztBNERqOFBFO0VBQ0U7QTVEbzhQSjs7QVMxN1BFOzs7RW1ETEk7QTVEcThQTjs7QTZEcDhQQTtFQUNFO0E3RHU4UEY7O0E2RHA4UEE7RUFDRTtBN0R1OFBGOztBOERsOVBBO0VBQWtCO0E5RHM5UGxCOztBOERyOVBBO0VBQWtCO0E5RHk5UGxCOztBOER4OVBBO0VBQWtCO0E5RDQ5UGxCOztBOEQzOVBBO0VBQWtCO0E5RCs5UGxCOztBOEQ5OVBBO0VBQWtCO0E5RGsrUGxCOztBOERoK1BBO0VBQW1CO0E5RG8rUG5COztBOERuK1BBO0VBQW1CO0E5RHUrUG5COztBOER0K1BBO0VBQW1CO0E5RDArUG5COztBOER6K1BBO0VBQW1CO0E5RDYrUG5COztBOEQ1K1BBO0VBQW1CO0E5RGcvUG5COztBOEQ3K1BFO0VBQ0U7QTlEZy9QSjs7QThEai9QRTtFQUNFO0E5RG8vUEo7O0E4RHIvUEU7RUFDRTtBOUR3L1BKOztBOER6L1BFO0VBQ0U7QTlENC9QSjs7QThENy9QRTtFQUNFO0E5RGdnUUo7O0E4RGpnUUU7RUFDRTtBOURvZ1FKOztBOERyZ1FFO0VBQ0U7QTlEd2dRSjs7QThEemdRRTtFQUNFO0E5RDRnUUo7O0E4RHhnUUE7RUFDRTtBOUQyZ1FGOztBOERwZ1FBO0VBQ0U7QTlEdWdRRjs7QThEcGdRQTtFQUNFO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtFQUNBO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtFQUNBO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtFQUNBO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtFQUNBO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtBOUR1Z1FGOztBOERwZ1FBO0VBQ0U7QTlEdWdRRjs7QThEcGdRQTtFQUNFO0E5RHVnUUY7O0E4RHBnUUE7RUFDRTtBOUR1Z1FGOztBeUQva1FFO0VBQ0U7RUFDQTtFQUNBO0F6RGtsUUo7O0ErRDNrUU07RUFBd0I7QS9EK2tROUI7O0ErRC9rUU07RUFBd0I7QS9EbWxROUI7O0ErRG5sUU07RUFBd0I7QS9EdWxROUI7O0ErRHZsUU07RUFBd0I7QS9EMmxROUI7O0ErRDNsUU07RUFBd0I7QS9EK2xROUI7O0ErRC9sUU07RUFBd0I7QS9EbW1ROUI7O0ErRG5tUU07RUFBd0I7QS9EdW1ROUI7O0ErRHZtUU07RUFBd0I7QS9EMm1ROUI7O0ErRDNtUU07RUFBd0I7QS9EK21ROUI7O0FrQjlqUUk7RTZDakRFO0lBQXdCO0UvRG9uUTVCOztFK0RwblFJO0lBQXdCO0UvRHduUTVCOztFK0R4blFJO0lBQXdCO0UvRDRuUTVCOztFK0Q1blFJO0lBQXdCO0UvRGdvUTVCOztFK0Rob1FJO0lBQXdCO0UvRG9vUTVCOztFK0Rwb1FJO0lBQXdCO0UvRHdvUTVCOztFK0R4b1FJO0lBQXdCO0UvRDRvUTVCOztFK0Q1b1FJO0lBQXdCO0UvRGdwUTVCOztFK0RocFFJO0lBQXdCO0UvRG9wUTVCO0FBQ0Y7QWtCcG1RSTtFNkNqREU7SUFBd0I7RS9EeXBRNUI7O0UrRHpwUUk7SUFBd0I7RS9ENnBRNUI7O0UrRDdwUUk7SUFBd0I7RS9EaXFRNUI7O0UrRGpxUUk7SUFBd0I7RS9EcXFRNUI7O0UrRHJxUUk7SUFBd0I7RS9EeXFRNUI7O0UrRHpxUUk7SUFBd0I7RS9ENnFRNUI7O0UrRDdxUUk7SUFBd0I7RS9EaXJRNUI7O0UrRGpyUUk7SUFBd0I7RS9EcXJRNUI7O0UrRHJyUUk7SUFBd0I7RS9EeXJRNUI7QUFDRjtBa0J6b1FJO0U2Q2pERTtJQUF3QjtFL0Q4clE1Qjs7RStEOXJRSTtJQUF3QjtFL0Rrc1E1Qjs7RStEbHNRSTtJQUF3QjtFL0Rzc1E1Qjs7RStEdHNRSTtJQUF3QjtFL0Qwc1E1Qjs7RStEMXNRSTtJQUF3QjtFL0Q4c1E1Qjs7RStEOXNRSTtJQUF3QjtFL0RrdFE1Qjs7RStEbHRRSTtJQUF3QjtFL0RzdFE1Qjs7RStEdHRRSTtJQUF3QjtFL0QwdFE1Qjs7RStEMXRRSTtJQUF3QjtFL0Q4dFE1QjtBQUNGO0FrQjlxUUk7RTZDakRFO0lBQXdCO0UvRG11UTVCOztFK0RudVFJO0lBQXdCO0UvRHV1UTVCOztFK0R2dVFJO0lBQXdCO0UvRDJ1UTVCOztFK0QzdVFJO0lBQXdCO0UvRCt1UTVCOztFK0QvdVFJO0lBQXdCO0UvRG12UTVCOztFK0RudlFJO0lBQXdCO0UvRHV2UTVCOztFK0R2dlFJO0lBQXdCO0UvRDJ2UTVCOztFK0QzdlFJO0lBQXdCO0UvRCt2UTVCOztFK0QvdlFJO0lBQXdCO0UvRG13UTVCO0FBQ0Y7QStEMXZRQTtFQUVJO0lBQXFCO0UvRDR2UXZCOztFK0Q1dlFFO0lBQXFCO0UvRGd3UXZCOztFK0Rod1FFO0lBQXFCO0UvRG93UXZCOztFK0Rwd1FFO0lBQXFCO0UvRHd3UXZCOztFK0R4d1FFO0lBQXFCO0UvRDR3UXZCOztFK0Q1d1FFO0lBQXFCO0UvRGd4UXZCOztFK0RoeFFFO0lBQXFCO0UvRG94UXZCOztFK0RweFFFO0lBQXFCO0UvRHd4UXZCOztFK0R4eFFFO0lBQXFCO0UvRDR4UXZCO0FBQ0Y7QWdFbHpRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhFb3pRRjtBZ0VselFFO0VBQ0U7RUFDQTtBaEVvelFKO0FnRWp6UUU7Ozs7O0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhFbXpRSjs7QWdFMXlRSTtFQUNFO0FoRTZ5UU47O0FnRTl5UUk7RUFDRTtBaEVpelFOOztBZ0VselFJO0VBQ0U7QWhFcXpRTjs7QWdFdHpRSTtFQUNFO0FoRXl6UU47O0FpRWwxUUk7RUFBZ0M7QWpFczFRcEM7O0FpRXIxUUk7RUFBZ0M7QWpFeTFRcEM7O0FpRXgxUUk7RUFBZ0M7QWpFNDFRcEM7O0FpRTMxUUk7RUFBZ0M7QWpFKzFRcEM7O0FpRTcxUUk7RUFBOEI7QWpFaTJRbEM7O0FpRWgyUUk7RUFBOEI7QWpFbzJRbEM7O0FpRW4yUUk7RUFBOEI7QWpFdTJRbEM7O0FpRXQyUUk7RUFBOEI7QWpFMDJRbEM7O0FpRXoyUUk7RUFBOEI7QWpFNjJRbEM7O0FpRTUyUUk7RUFBOEI7QWpFZzNRbEM7O0FpRS8yUUk7RUFBOEI7QWpFbTNRbEM7O0FpRWwzUUk7RUFBOEI7QWpFczNRbEM7O0FpRXAzUUk7RUFBb0M7QWpFdzNReEM7O0FpRXYzUUk7RUFBb0M7QWpFMjNReEM7O0FpRTEzUUk7RUFBb0M7QWpFODNReEM7O0FpRTczUUk7RUFBb0M7QWpFaTRReEM7O0FpRWg0UUk7RUFBb0M7QWpFbzRReEM7O0FpRWw0UUk7RUFBaUM7QWpFczRRckM7O0FpRXI0UUk7RUFBaUM7QWpFeTRRckM7O0FpRXg0UUk7RUFBaUM7QWpFNDRRckM7O0FpRTM0UUk7RUFBaUM7QWpFKzRRckM7O0FpRTk0UUk7RUFBaUM7QWpFazVRckM7O0FpRWg1UUk7RUFBa0M7QWpFbzVRdEM7O0FpRW41UUk7RUFBa0M7QWpFdTVRdEM7O0FpRXQ1UUk7RUFBa0M7QWpFMDVRdEM7O0FpRXo1UUk7RUFBa0M7QWpFNjVRdEM7O0FpRTU1UUk7RUFBa0M7QWpFZzZRdEM7O0FpRS81UUk7RUFBa0M7QWpFbTZRdEM7O0FpRWo2UUk7RUFBZ0M7QWpFcTZRcEM7O0FpRXA2UUk7RUFBZ0M7QWpFdzZRcEM7O0FpRXY2UUk7RUFBZ0M7QWpFMjZRcEM7O0FpRTE2UUk7RUFBZ0M7QWpFODZRcEM7O0FpRTc2UUk7RUFBZ0M7QWpFaTdRcEM7O0FpRWg3UUk7RUFBZ0M7QWpFbzdRcEM7O0FrQng2UUk7RStDbERBO0lBQWdDO0VqRSs5UWxDOztFaUU5OVFFO0lBQWdDO0VqRWsrUWxDOztFaUVqK1FFO0lBQWdDO0VqRXErUWxDOztFaUVwK1FFO0lBQWdDO0VqRXcrUWxDOztFaUV0K1FFO0lBQThCO0VqRTArUWhDOztFaUV6K1FFO0lBQThCO0VqRTYrUWhDOztFaUU1K1FFO0lBQThCO0VqRWcvUWhDOztFaUUvK1FFO0lBQThCO0VqRW0vUWhDOztFaUVsL1FFO0lBQThCO0VqRXMvUWhDOztFaUVyL1FFO0lBQThCO0VqRXkvUWhDOztFaUV4L1FFO0lBQThCO0VqRTQvUWhDOztFaUUzL1FFO0lBQThCO0VqRSsvUWhDOztFaUU3L1FFO0lBQW9DO0VqRWlnUnRDOztFaUVoZ1JFO0lBQW9DO0VqRW9nUnRDOztFaUVuZ1JFO0lBQW9DO0VqRXVnUnRDOztFaUV0Z1JFO0lBQW9DO0VqRTBnUnRDOztFaUV6Z1JFO0lBQW9DO0VqRTZnUnRDOztFaUUzZ1JFO0lBQWlDO0VqRStnUm5DOztFaUU5Z1JFO0lBQWlDO0VqRWtoUm5DOztFaUVqaFJFO0lBQWlDO0VqRXFoUm5DOztFaUVwaFJFO0lBQWlDO0VqRXdoUm5DOztFaUV2aFJFO0lBQWlDO0VqRTJoUm5DOztFaUV6aFJFO0lBQWtDO0VqRTZoUnBDOztFaUU1aFJFO0lBQWtDO0VqRWdpUnBDOztFaUUvaFJFO0lBQWtDO0VqRW1pUnBDOztFaUVsaVJFO0lBQWtDO0VqRXNpUnBDOztFaUVyaVJFO0lBQWtDO0VqRXlpUnBDOztFaUV4aVJFO0lBQWtDO0VqRTRpUnBDOztFaUUxaVJFO0lBQWdDO0VqRThpUmxDOztFaUU3aVJFO0lBQWdDO0VqRWlqUmxDOztFaUVoalJFO0lBQWdDO0VqRW9qUmxDOztFaUVualJFO0lBQWdDO0VqRXVqUmxDOztFaUV0alJFO0lBQWdDO0VqRTBqUmxDOztFaUV6alJFO0lBQWdDO0VqRTZqUmxDO0FBQ0Y7QWtCbGpSSTtFK0NsREE7SUFBZ0M7RWpFd21SbEM7O0VpRXZtUkU7SUFBZ0M7RWpFMm1SbEM7O0VpRTFtUkU7SUFBZ0M7RWpFOG1SbEM7O0VpRTdtUkU7SUFBZ0M7RWpFaW5SbEM7O0VpRS9tUkU7SUFBOEI7RWpFbW5SaEM7O0VpRWxuUkU7SUFBOEI7RWpFc25SaEM7O0VpRXJuUkU7SUFBOEI7RWpFeW5SaEM7O0VpRXhuUkU7SUFBOEI7RWpFNG5SaEM7O0VpRTNuUkU7SUFBOEI7RWpFK25SaEM7O0VpRTluUkU7SUFBOEI7RWpFa29SaEM7O0VpRWpvUkU7SUFBOEI7RWpFcW9SaEM7O0VpRXBvUkU7SUFBOEI7RWpFd29SaEM7O0VpRXRvUkU7SUFBb0M7RWpFMG9SdEM7O0VpRXpvUkU7SUFBb0M7RWpFNm9SdEM7O0VpRTVvUkU7SUFBb0M7RWpFZ3BSdEM7O0VpRS9vUkU7SUFBb0M7RWpFbXBSdEM7O0VpRWxwUkU7SUFBb0M7RWpFc3BSdEM7O0VpRXBwUkU7SUFBaUM7RWpFd3BSbkM7O0VpRXZwUkU7SUFBaUM7RWpFMnBSbkM7O0VpRTFwUkU7SUFBaUM7RWpFOHBSbkM7O0VpRTdwUkU7SUFBaUM7RWpFaXFSbkM7O0VpRWhxUkU7SUFBaUM7RWpFb3FSbkM7O0VpRWxxUkU7SUFBa0M7RWpFc3FScEM7O0VpRXJxUkU7SUFBa0M7RWpFeXFScEM7O0VpRXhxUkU7SUFBa0M7RWpFNHFScEM7O0VpRTNxUkU7SUFBa0M7RWpFK3FScEM7O0VpRTlxUkU7SUFBa0M7RWpFa3JScEM7O0VpRWpyUkU7SUFBa0M7RWpFcXJScEM7O0VpRW5yUkU7SUFBZ0M7RWpFdXJSbEM7O0VpRXRyUkU7SUFBZ0M7RWpFMHJSbEM7O0VpRXpyUkU7SUFBZ0M7RWpFNnJSbEM7O0VpRTVyUkU7SUFBZ0M7RWpFZ3NSbEM7O0VpRS9yUkU7SUFBZ0M7RWpFbXNSbEM7O0VpRWxzUkU7SUFBZ0M7RWpFc3NSbEM7QUFDRjtBa0IzclJJO0UrQ2xEQTtJQUFnQztFakVpdlJsQzs7RWlFaHZSRTtJQUFnQztFakVvdlJsQzs7RWlFbnZSRTtJQUFnQztFakV1dlJsQzs7RWlFdHZSRTtJQUFnQztFakUwdlJsQzs7RWlFeHZSRTtJQUE4QjtFakU0dlJoQzs7RWlFM3ZSRTtJQUE4QjtFakUrdlJoQzs7RWlFOXZSRTtJQUE4QjtFakVrd1JoQzs7RWlFandSRTtJQUE4QjtFakVxd1JoQzs7RWlFcHdSRTtJQUE4QjtFakV3d1JoQzs7RWlFdndSRTtJQUE4QjtFakUyd1JoQzs7RWlFMXdSRTtJQUE4QjtFakU4d1JoQzs7RWlFN3dSRTtJQUE4QjtFakVpeFJoQzs7RWlFL3dSRTtJQUFvQztFakVteFJ0Qzs7RWlFbHhSRTtJQUFvQztFakVzeFJ0Qzs7RWlFcnhSRTtJQUFvQztFakV5eFJ0Qzs7RWlFeHhSRTtJQUFvQztFakU0eFJ0Qzs7RWlFM3hSRTtJQUFvQztFakUreFJ0Qzs7RWlFN3hSRTtJQUFpQztFakVpeVJuQzs7RWlFaHlSRTtJQUFpQztFakVveVJuQzs7RWlFbnlSRTtJQUFpQztFakV1eVJuQzs7RWlFdHlSRTtJQUFpQztFakUweVJuQzs7RWlFenlSRTtJQUFpQztFakU2eVJuQzs7RWlFM3lSRTtJQUFrQztFakUreVJwQzs7RWlFOXlSRTtJQUFrQztFakVrelJwQzs7RWlFanpSRTtJQUFrQztFakVxelJwQzs7RWlFcHpSRTtJQUFrQztFakV3elJwQzs7RWlFdnpSRTtJQUFrQztFakUyelJwQzs7RWlFMXpSRTtJQUFrQztFakU4elJwQzs7RWlFNXpSRTtJQUFnQztFakVnMFJsQzs7RWlFL3pSRTtJQUFnQztFakVtMFJsQzs7RWlFbDBSRTtJQUFnQztFakVzMFJsQzs7RWlFcjBSRTtJQUFnQztFakV5MFJsQzs7RWlFeDBSRTtJQUFnQztFakU0MFJsQzs7RWlFMzBSRTtJQUFnQztFakUrMFJsQztBQUNGO0FrQnAwUkk7RStDbERBO0lBQWdDO0VqRTAzUmxDOztFaUV6M1JFO0lBQWdDO0VqRTYzUmxDOztFaUU1M1JFO0lBQWdDO0VqRWc0UmxDOztFaUUvM1JFO0lBQWdDO0VqRW00UmxDOztFaUVqNFJFO0lBQThCO0VqRXE0UmhDOztFaUVwNFJFO0lBQThCO0VqRXc0UmhDOztFaUV2NFJFO0lBQThCO0VqRTI0UmhDOztFaUUxNFJFO0lBQThCO0VqRTg0UmhDOztFaUU3NFJFO0lBQThCO0VqRWk1UmhDOztFaUVoNVJFO0lBQThCO0VqRW81UmhDOztFaUVuNVJFO0lBQThCO0VqRXU1UmhDOztFaUV0NVJFO0lBQThCO0VqRTA1UmhDOztFaUV4NVJFO0lBQW9DO0VqRTQ1UnRDOztFaUUzNVJFO0lBQW9DO0VqRSs1UnRDOztFaUU5NVJFO0lBQW9DO0VqRWs2UnRDOztFaUVqNlJFO0lBQW9DO0VqRXE2UnRDOztFaUVwNlJFO0lBQW9DO0VqRXc2UnRDOztFaUV0NlJFO0lBQWlDO0VqRTA2Um5DOztFaUV6NlJFO0lBQWlDO0VqRTY2Um5DOztFaUU1NlJFO0lBQWlDO0VqRWc3Um5DOztFaUUvNlJFO0lBQWlDO0VqRW03Um5DOztFaUVsN1JFO0lBQWlDO0VqRXM3Um5DOztFaUVwN1JFO0lBQWtDO0VqRXc3UnBDOztFaUV2N1JFO0lBQWtDO0VqRTI3UnBDOztFaUUxN1JFO0lBQWtDO0VqRTg3UnBDOztFaUU3N1JFO0lBQWtDO0VqRWk4UnBDOztFaUVoOFJFO0lBQWtDO0VqRW84UnBDOztFaUVuOFJFO0lBQWtDO0VqRXU4UnBDOztFaUVyOFJFO0lBQWdDO0VqRXk4UmxDOztFaUV4OFJFO0lBQWdDO0VqRTQ4UmxDOztFaUUzOFJFO0lBQWdDO0VqRSs4UmxDOztFaUU5OFJFO0lBQWdDO0VqRWs5UmxDOztFaUVqOVJFO0lBQWdDO0VqRXE5UmxDOztFaUVwOVJFO0lBQWdDO0VqRXc5UmxDO0FBQ0Y7QWtFbmdTSTtFQUF3QjtBbEVzZ1M1Qjs7QWtFcmdTSTtFQUF3QjtBbEV5Z1M1Qjs7QWtFeGdTSTtFQUF3QjtBbEU0Z1M1Qjs7QWtCeDlSSTtFZ0R0REE7SUFBd0I7RWxFbWhTMUI7O0VrRWxoU0U7SUFBd0I7RWxFc2hTMUI7O0VrRXJoU0U7SUFBd0I7RWxFeWhTMUI7QUFDRjtBa0J0K1JJO0VnRHREQTtJQUF3QjtFbEVnaVMxQjs7RWtFL2hTRTtJQUF3QjtFbEVtaVMxQjs7RWtFbGlTRTtJQUF3QjtFbEVzaVMxQjtBQUNGO0FrQm4vUkk7RWdEdERBO0lBQXdCO0VsRTZpUzFCOztFa0U1aVNFO0lBQXdCO0VsRWdqUzFCOztFa0UvaVNFO0lBQXdCO0VsRW1qUzFCO0FBQ0Y7QWtCaGdTSTtFZ0R0REE7SUFBd0I7RWxFMGpTMUI7O0VrRXpqU0U7SUFBd0I7RWxFNmpTMUI7O0VrRTVqU0U7SUFBd0I7RWxFZ2tTMUI7QUFDRjtBbUV0a1NFO0VBQXlCO0FuRXlrUzNCOztBbUV6a1NFO0VBQXlCO0FuRTZrUzNCOztBbUU3a1NFO0VBQXlCO0FuRWlsUzNCOztBb0VqbFNFO0VBQXNCO0FwRXFsU3hCOztBb0VybFNFO0VBQXNCO0FwRXlsU3hCOztBcUV4bFNFO0VBQXlCO0FyRTRsUzNCOztBcUU1bFNFO0VBQXlCO0FyRWdtUzNCOztBcUVobVNFO0VBQXlCO0FyRW9tUzNCOztBcUVwbVNFO0VBQXlCO0FyRXdtUzNCOztBcUV4bVNFO0VBQXlCO0FyRTRtUzNCOztBcUV2bVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhOURncUJrQztBUDA4UXBDOztBcUV2bVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhOUR3cEJrQztBUGs5UXBDOztBcUV0bVNFO0VBREY7SUFFSTtJQUNBO0lBQ0EsYTlEZ3BCZ0M7RVAwOVFsQztBQUNGOztBc0Vwb1NBO0VDRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RXNvU0Y7O0F1RTVuU0U7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZFOG5TSjs7QXdFM3BTQTtFQUFhO0F4RStwU2I7O0F3RTlwU0E7RUFBVTtBeEVrcVNWOztBd0VqcVNBO0VBQWE7QXhFcXFTYjs7QXdFcHFTQTtFQUFlO0F4RXdxU2Y7O0F5RXZxU0k7RUFBdUI7QXpFMnFTM0I7O0F5RTNxU0k7RUFBdUI7QXpFK3FTM0I7O0F5RS9xU0k7RUFBdUI7QXpFbXJTM0I7O0F5RW5yU0k7RUFBdUI7QXpFdXJTM0I7O0F5RXZyU0k7RUFBdUI7QXpFMnJTM0I7O0F5RTNyU0k7RUFBdUI7QXpFK3JTM0I7O0F5RS9yU0k7RUFBdUI7QXpFbXNTM0I7O0F5RW5zU0k7RUFBdUI7QXpFdXNTM0I7O0F5RXZzU0k7RUFBdUI7QXpFMnNTM0I7O0F5RTNzU0k7RUFBdUI7QXpFK3NTM0I7O0F5RTNzU0E7RUFBVTtBekUrc1NWOztBeUU5c1NBO0VBQVU7QXpFa3RTVjs7QXlFOXNTQTtFQUFjO0F6RWt0U2Q7O0F5RWp0U0E7RUFBYztBekVxdFNkOztBeUVudFNBO0VBQVU7QXpFdXRTVjs7QXlFdHRTQTtFQUFVO0F6RTB0U1Y7O0EwRW51U1E7RUFBZ0M7QTFFdXVTeEM7O0EwRXR1U1E7O0VBRUU7QTFFeXVTVjs7QTBFdnVTUTs7RUFFRTtBMUUwdVNWOztBMEV4dVNROztFQUVFO0ExRTJ1U1Y7O0EwRXp1U1E7O0VBRUU7QTFFNHVTVjs7QTBFM3ZTUTtFQUFnQztBMUUrdlN4Qzs7QTBFOXZTUTs7RUFFRTtBMUVpd1NWOztBMEUvdlNROztFQUVFO0ExRWt3U1Y7O0EwRWh3U1E7O0VBRUU7QTFFbXdTVjs7QTBFandTUTs7RUFFRTtBMUVvd1NWOztBMEVueFNRO0VBQWdDO0ExRXV4U3hDOztBMEV0eFNROztFQUVFO0ExRXl4U1Y7O0EwRXZ4U1E7O0VBRUU7QTFFMHhTVjs7QTBFeHhTUTs7RUFFRTtBMUUyeFNWOztBMEV6eFNROztFQUVFO0ExRTR4U1Y7O0EwRTN5U1E7RUFBZ0M7QTFFK3lTeEM7O0EwRTl5U1E7O0VBRUU7QTFFaXpTVjs7QTBFL3lTUTs7RUFFRTtBMUVrelNWOztBMEVoelNROztFQUVFO0ExRW16U1Y7O0EwRWp6U1E7O0VBRUU7QTFFb3pTVjs7QTBFbjBTUTtFQUFnQztBMUV1MFN4Qzs7QTBFdDBTUTs7RUFFRTtBMUV5MFNWOztBMEV2MFNROztFQUVFO0ExRTAwU1Y7O0EwRXgwU1E7O0VBRUU7QTFFMjBTVjs7QTBFejBTUTs7RUFFRTtBMUU0MFNWOztBMEUzMVNRO0VBQWdDO0ExRSsxU3hDOztBMEU5MVNROztFQUVFO0ExRWkyU1Y7O0EwRS8xU1E7O0VBRUU7QTFFazJTVjs7QTBFaDJTUTs7RUFFRTtBMUVtMlNWOztBMEVqMlNROztFQUVFO0ExRW8yU1Y7O0EwRW4zU1E7RUFBZ0M7QTFFdTNTeEM7O0EwRXQzU1E7O0VBRUU7QTFFeTNTVjs7QTBFdjNTUTs7RUFFRTtBMUUwM1NWOztBMEV4M1NROztFQUVFO0ExRTIzU1Y7O0EwRXozU1E7O0VBRUU7QTFFNDNTVjs7QTBFMzRTUTtFQUFnQztBMUUrNFN4Qzs7QTBFOTRTUTs7RUFFRTtBMUVpNVNWOztBMEUvNFNROztFQUVFO0ExRWs1U1Y7O0EwRWg1U1E7O0VBRUU7QTFFbTVTVjs7QTBFajVTUTs7RUFFRTtBMUVvNVNWOztBMEVuNlNRO0VBQWdDO0ExRXU2U3hDOztBMEV0NlNROztFQUVFO0ExRXk2U1Y7O0EwRXY2U1E7O0VBRUU7QTFFMDZTVjs7QTBFeDZTUTs7RUFFRTtBMUUyNlNWOztBMEV6NlNROztFQUVFO0ExRTQ2U1Y7O0EwRTM3U1E7RUFBZ0M7QTFFKzdTeEM7O0EwRTk3U1E7O0VBRUU7QTFFaThTVjs7QTBFLzdTUTs7RUFFRTtBMUVrOFNWOztBMEVoOFNROztFQUVFO0ExRW04U1Y7O0EwRWo4U1E7O0VBRUU7QTFFbzhTVjs7QTBFbjlTUTtFQUFnQztBMUV1OVN4Qzs7QTBFdDlTUTs7RUFFRTtBMUV5OVNWOztBMEV2OVNROztFQUVFO0ExRTA5U1Y7O0EwRXg5U1E7O0VBRUU7QTFFMjlTVjs7QTBFejlTUTs7RUFFRTtBMUU0OVNWOztBMEUzK1NRO0VBQWdDO0ExRSsrU3hDOztBMEU5K1NROztFQUVFO0ExRWkvU1Y7O0EwRS8rU1E7O0VBRUU7QTFFay9TVjs7QTBFaC9TUTs7RUFFRTtBMUVtL1NWOztBMEVqL1NROztFQUVFO0ExRW8vU1Y7O0EwRTUrU1E7RUFBd0I7QTFFZy9TaEM7O0EwRS8rU1E7O0VBRUU7QTFFay9TVjs7QTBFaC9TUTs7RUFFRTtBMUVtL1NWOztBMEVqL1NROztFQUVFO0ExRW8vU1Y7O0EwRWwvU1E7O0VBRUU7QTFFcS9TVjs7QTBFcGdUUTtFQUF3QjtBMUV3Z1RoQzs7QTBFdmdUUTs7RUFFRTtBMUUwZ1RWOztBMEV4Z1RROztFQUVFO0ExRTJnVFY7O0EwRXpnVFE7O0VBRUU7QTFFNGdUVjs7QTBFMWdUUTs7RUFFRTtBMUU2Z1RWOztBMEU1aFRRO0VBQXdCO0ExRWdpVGhDOztBMEUvaFRROztFQUVFO0ExRWtpVFY7O0EwRWhpVFE7O0VBRUU7QTFFbWlUVjs7QTBFamlUUTs7RUFFRTtBMUVvaVRWOztBMEVsaVRROztFQUVFO0ExRXFpVFY7O0EwRXBqVFE7RUFBd0I7QTFFd2pUaEM7O0EwRXZqVFE7O0VBRUU7QTFFMGpUVjs7QTBFeGpUUTs7RUFFRTtBMUUyalRWOztBMEV6alRROztFQUVFO0ExRTRqVFY7O0EwRTFqVFE7O0VBRUU7QTFFNmpUVjs7QTBFNWtUUTtFQUF3QjtBMUVnbFRoQzs7QTBFL2tUUTs7RUFFRTtBMUVrbFRWOztBMEVobFRROztFQUVFO0ExRW1sVFY7O0EwRWpsVFE7O0VBRUU7QTFFb2xUVjs7QTBFbGxUUTs7RUFFRTtBMUVxbFRWOztBMEUva1RJO0VBQW1CO0ExRW1sVHZCOztBMEVsbFRJOztFQUVFO0ExRXFsVE47O0EwRW5sVEk7O0VBRUU7QTFFc2xUTjs7QTBFcGxUSTs7RUFFRTtBMUV1bFROOztBMEVybFRJOztFQUVFO0ExRXdsVE47O0FrQmptVEk7RXdEbERJO0lBQWdDO0UxRXdwVHRDOztFMEV2cFRNOztJQUVFO0UxRTBwVFI7O0UwRXhwVE07O0lBRUU7RTFFMnBUUjs7RTBFenBUTTs7SUFFRTtFMUU0cFRSOztFMEUxcFRNOztJQUVFO0UxRTZwVFI7O0UwRTVxVE07SUFBZ0M7RTFFZ3JUdEM7O0UwRS9xVE07O0lBRUU7RTFFa3JUUjs7RTBFaHJUTTs7SUFFRTtFMUVtclRSOztFMEVqclRNOztJQUVFO0UxRW9yVFI7O0UwRWxyVE07O0lBRUU7RTFFcXJUUjs7RTBFcHNUTTtJQUFnQztFMUV3c1R0Qzs7RTBFdnNUTTs7SUFFRTtFMUUwc1RSOztFMEV4c1RNOztJQUVFO0UxRTJzVFI7O0UwRXpzVE07O0lBRUU7RTFFNHNUUjs7RTBFMXNUTTs7SUFFRTtFMUU2c1RSOztFMEU1dFRNO0lBQWdDO0UxRWd1VHRDOztFMEUvdFRNOztJQUVFO0UxRWt1VFI7O0UwRWh1VE07O0lBRUU7RTFFbXVUUjs7RTBFanVUTTs7SUFFRTtFMUVvdVRSOztFMEVsdVRNOztJQUVFO0UxRXF1VFI7O0UwRXB2VE07SUFBZ0M7RTFFd3ZUdEM7O0UwRXZ2VE07O0lBRUU7RTFFMHZUUjs7RTBFeHZUTTs7SUFFRTtFMUUydlRSOztFMEV6dlRNOztJQUVFO0UxRTR2VFI7O0UwRTF2VE07O0lBRUU7RTFFNnZUUjs7RTBFNXdUTTtJQUFnQztFMUVneFR0Qzs7RTBFL3dUTTs7SUFFRTtFMUVreFRSOztFMEVoeFRNOztJQUVFO0UxRW14VFI7O0UwRWp4VE07O0lBRUU7RTFFb3hUUjs7RTBFbHhUTTs7SUFFRTtFMUVxeFRSOztFMEVweVRNO0lBQWdDO0UxRXd5VHRDOztFMEV2eVRNOztJQUVFO0UxRTB5VFI7O0UwRXh5VE07O0lBRUU7RTFFMnlUUjs7RTBFenlUTTs7SUFFRTtFMUU0eVRSOztFMEUxeVRNOztJQUVFO0UxRTZ5VFI7O0UwRTV6VE07SUFBZ0M7RTFFZzBUdEM7O0UwRS96VE07O0lBRUU7RTFFazBUUjs7RTBFaDBUTTs7SUFFRTtFMUVtMFRSOztFMEVqMFRNOztJQUVFO0UxRW8wVFI7O0UwRWwwVE07O0lBRUU7RTFFcTBUUjs7RTBFcDFUTTtJQUFnQztFMUV3MVR0Qzs7RTBFdjFUTTs7SUFFRTtFMUUwMVRSOztFMEV4MVRNOztJQUVFO0UxRTIxVFI7O0UwRXoxVE07O0lBRUU7RTFFNDFUUjs7RTBFMTFUTTs7SUFFRTtFMUU2MVRSOztFMEU1MlRNO0lBQWdDO0UxRWczVHRDOztFMEUvMlRNOztJQUVFO0UxRWszVFI7O0UwRWgzVE07O0lBRUU7RTFFbTNUUjs7RTBFajNUTTs7SUFFRTtFMUVvM1RSOztFMEVsM1RNOztJQUVFO0UxRXEzVFI7O0UwRXA0VE07SUFBZ0M7RTFFdzRUdEM7O0UwRXY0VE07O0lBRUU7RTFFMDRUUjs7RTBFeDRUTTs7SUFFRTtFMUUyNFRSOztFMEV6NFRNOztJQUVFO0UxRTQ0VFI7O0UwRTE0VE07O0lBRUU7RTFFNjRUUjs7RTBFNTVUTTtJQUFnQztFMUVnNlR0Qzs7RTBFLzVUTTs7SUFFRTtFMUVrNlRSOztFMEVoNlRNOztJQUVFO0UxRW02VFI7O0UwRWo2VE07O0lBRUU7RTFFbzZUUjs7RTBFbDZUTTs7SUFFRTtFMUVxNlRSOztFMEU3NVRNO0lBQXdCO0UxRWk2VDlCOztFMEVoNlRNOztJQUVFO0UxRW02VFI7O0UwRWo2VE07O0lBRUU7RTFFbzZUUjs7RTBFbDZUTTs7SUFFRTtFMUVxNlRSOztFMEVuNlRNOztJQUVFO0UxRXM2VFI7O0UwRXI3VE07SUFBd0I7RTFFeTdUOUI7O0UwRXg3VE07O0lBRUU7RTFFMjdUUjs7RTBFejdUTTs7SUFFRTtFMUU0N1RSOztFMEUxN1RNOztJQUVFO0UxRTY3VFI7O0UwRTM3VE07O0lBRUU7RTFFODdUUjs7RTBFNzhUTTtJQUF3QjtFMUVpOVQ5Qjs7RTBFaDlUTTs7SUFFRTtFMUVtOVRSOztFMEVqOVRNOztJQUVFO0UxRW85VFI7O0UwRWw5VE07O0lBRUU7RTFFcTlUUjs7RTBFbjlUTTs7SUFFRTtFMUVzOVRSOztFMEVyK1RNO0lBQXdCO0UxRXkrVDlCOztFMEV4K1RNOztJQUVFO0UxRTIrVFI7O0UwRXorVE07O0lBRUU7RTFFNCtUUjs7RTBFMStUTTs7SUFFRTtFMUU2K1RSOztFMEUzK1RNOztJQUVFO0UxRTgrVFI7O0UwRTcvVE07SUFBd0I7RTFFaWdVOUI7O0UwRWhnVU07O0lBRUU7RTFFbWdVUjs7RTBFamdVTTs7SUFFRTtFMUVvZ1VSOztFMEVsZ1VNOztJQUVFO0UxRXFnVVI7O0UwRW5nVU07O0lBRUU7RTFFc2dVUjs7RTBFaGdVRTtJQUFtQjtFMUVvZ1VyQjs7RTBFbmdVRTs7SUFFRTtFMUVzZ1VKOztFMEVwZ1VFOztJQUVFO0UxRXVnVUo7O0UwRXJnVUU7O0lBRUU7RTFFd2dVSjs7RTBFdGdVRTs7SUFFRTtFMUV5Z1VKO0FBQ0Y7QWtCbmhVSTtFd0RsREk7SUFBZ0M7RTFFeWtVdEM7O0UwRXhrVU07O0lBRUU7RTFFMmtVUjs7RTBFemtVTTs7SUFFRTtFMUU0a1VSOztFMEUxa1VNOztJQUVFO0UxRTZrVVI7O0UwRTNrVU07O0lBRUU7RTFFOGtVUjs7RTBFN2xVTTtJQUFnQztFMUVpbVV0Qzs7RTBFaG1VTTs7SUFFRTtFMUVtbVVSOztFMEVqbVVNOztJQUVFO0UxRW9tVVI7O0UwRWxtVU07O0lBRUU7RTFFcW1VUjs7RTBFbm1VTTs7SUFFRTtFMUVzbVVSOztFMEVyblVNO0lBQWdDO0UxRXluVXRDOztFMEV4blVNOztJQUVFO0UxRTJuVVI7O0UwRXpuVU07O0lBRUU7RTFFNG5VUjs7RTBFMW5VTTs7SUFFRTtFMUU2blVSOztFMEUzblVNOztJQUVFO0UxRThuVVI7O0UwRTdvVU07SUFBZ0M7RTFFaXBVdEM7O0UwRWhwVU07O0lBRUU7RTFFbXBVUjs7RTBFanBVTTs7SUFFRTtFMUVvcFVSOztFMEVscFVNOztJQUVFO0UxRXFwVVI7O0UwRW5wVU07O0lBRUU7RTFFc3BVUjs7RTBFcnFVTTtJQUFnQztFMUV5cVV0Qzs7RTBFeHFVTTs7SUFFRTtFMUUycVVSOztFMEV6cVVNOztJQUVFO0UxRTRxVVI7O0UwRTFxVU07O0lBRUU7RTFFNnFVUjs7RTBFM3FVTTs7SUFFRTtFMUU4cVVSOztFMEU3clVNO0lBQWdDO0UxRWlzVXRDOztFMEVoc1VNOztJQUVFO0UxRW1zVVI7O0UwRWpzVU07O0lBRUU7RTFFb3NVUjs7RTBFbHNVTTs7SUFFRTtFMUVxc1VSOztFMEVuc1VNOztJQUVFO0UxRXNzVVI7O0UwRXJ0VU07SUFBZ0M7RTFFeXRVdEM7O0UwRXh0VU07O0lBRUU7RTFFMnRVUjs7RTBFenRVTTs7SUFFRTtFMUU0dFVSOztFMEUxdFVNOztJQUVFO0UxRTZ0VVI7O0UwRTN0VU07O0lBRUU7RTFFOHRVUjs7RTBFN3VVTTtJQUFnQztFMUVpdlV0Qzs7RTBFaHZVTTs7SUFFRTtFMUVtdlVSOztFMEVqdlVNOztJQUVFO0UxRW92VVI7O0UwRWx2VU07O0lBRUU7RTFFcXZVUjs7RTBFbnZVTTs7SUFFRTtFMUVzdlVSOztFMEVyd1VNO0lBQWdDO0UxRXl3VXRDOztFMEV4d1VNOztJQUVFO0UxRTJ3VVI7O0UwRXp3VU07O0lBRUU7RTFFNHdVUjs7RTBFMXdVTTs7SUFFRTtFMUU2d1VSOztFMEUzd1VNOztJQUVFO0UxRTh3VVI7O0UwRTd4VU07SUFBZ0M7RTFFaXlVdEM7O0UwRWh5VU07O0lBRUU7RTFFbXlVUjs7RTBFanlVTTs7SUFFRTtFMUVveVVSOztFMEVseVVNOztJQUVFO0UxRXF5VVI7O0UwRW55VU07O0lBRUU7RTFFc3lVUjs7RTBFcnpVTTtJQUFnQztFMUV5elV0Qzs7RTBFeHpVTTs7SUFFRTtFMUUyelVSOztFMEV6elVNOztJQUVFO0UxRTR6VVI7O0UwRTF6VU07O0lBRUU7RTFFNnpVUjs7RTBFM3pVTTs7SUFFRTtFMUU4elVSOztFMEU3MFVNO0lBQWdDO0UxRWkxVXRDOztFMEVoMVVNOztJQUVFO0UxRW0xVVI7O0UwRWoxVU07O0lBRUU7RTFFbzFVUjs7RTBFbDFVTTs7SUFFRTtFMUVxMVVSOztFMEVuMVVNOztJQUVFO0UxRXMxVVI7O0UwRTkwVU07SUFBd0I7RTFFazFVOUI7O0UwRWoxVU07O0lBRUU7RTFFbzFVUjs7RTBFbDFVTTs7SUFFRTtFMUVxMVVSOztFMEVuMVVNOztJQUVFO0UxRXMxVVI7O0UwRXAxVU07O0lBRUU7RTFFdTFVUjs7RTBFdDJVTTtJQUF3QjtFMUUwMlU5Qjs7RTBFejJVTTs7SUFFRTtFMUU0MlVSOztFMEUxMlVNOztJQUVFO0UxRTYyVVI7O0UwRTMyVU07O0lBRUU7RTFFODJVUjs7RTBFNTJVTTs7SUFFRTtFMUUrMlVSOztFMEU5M1VNO0lBQXdCO0UxRWs0VTlCOztFMEVqNFVNOztJQUVFO0UxRW80VVI7O0UwRWw0VU07O0lBRUU7RTFFcTRVUjs7RTBFbjRVTTs7SUFFRTtFMUVzNFVSOztFMEVwNFVNOztJQUVFO0UxRXU0VVI7O0UwRXQ1VU07SUFBd0I7RTFFMDVVOUI7O0UwRXo1VU07O0lBRUU7RTFFNDVVUjs7RTBFMTVVTTs7SUFFRTtFMUU2NVVSOztFMEUzNVVNOztJQUVFO0UxRTg1VVI7O0UwRTU1VU07O0lBRUU7RTFFKzVVUjs7RTBFOTZVTTtJQUF3QjtFMUVrN1U5Qjs7RTBFajdVTTs7SUFFRTtFMUVvN1VSOztFMEVsN1VNOztJQUVFO0UxRXE3VVI7O0UwRW43VU07O0lBRUU7RTFFczdVUjs7RTBFcDdVTTs7SUFFRTtFMUV1N1VSOztFMEVqN1VFO0lBQW1CO0UxRXE3VXJCOztFMEVwN1VFOztJQUVFO0UxRXU3VUo7O0UwRXI3VUU7O0lBRUU7RTFFdzdVSjs7RTBFdDdVRTs7SUFFRTtFMUV5N1VKOztFMEV2N1VFOztJQUVFO0UxRTA3VUo7QUFDRjtBa0JwOFVJO0V3RGxESTtJQUFnQztFMUUwL1V0Qzs7RTBFei9VTTs7SUFFRTtFMUU0L1VSOztFMEUxL1VNOztJQUVFO0UxRTYvVVI7O0UwRTMvVU07O0lBRUU7RTFFOC9VUjs7RTBFNS9VTTs7SUFFRTtFMUUrL1VSOztFMEU5Z1ZNO0lBQWdDO0UxRWtoVnRDOztFMEVqaFZNOztJQUVFO0UxRW9oVlI7O0UwRWxoVk07O0lBRUU7RTFFcWhWUjs7RTBFbmhWTTs7SUFFRTtFMUVzaFZSOztFMEVwaFZNOztJQUVFO0UxRXVoVlI7O0UwRXRpVk07SUFBZ0M7RTFFMGlWdEM7O0UwRXppVk07O0lBRUU7RTFFNGlWUjs7RTBFMWlWTTs7SUFFRTtFMUU2aVZSOztFMEUzaVZNOztJQUVFO0UxRThpVlI7O0UwRTVpVk07O0lBRUU7RTFFK2lWUjs7RTBFOWpWTTtJQUFnQztFMUVra1Z0Qzs7RTBFamtWTTs7SUFFRTtFMUVva1ZSOztFMEVsa1ZNOztJQUVFO0UxRXFrVlI7O0UwRW5rVk07O0lBRUU7RTFFc2tWUjs7RTBFcGtWTTs7SUFFRTtFMUV1a1ZSOztFMEV0bFZNO0lBQWdDO0UxRTBsVnRDOztFMEV6bFZNOztJQUVFO0UxRTRsVlI7O0UwRTFsVk07O0lBRUU7RTFFNmxWUjs7RTBFM2xWTTs7SUFFRTtFMUU4bFZSOztFMEU1bFZNOztJQUVFO0UxRStsVlI7O0UwRTltVk07SUFBZ0M7RTFFa25WdEM7O0UwRWpuVk07O0lBRUU7RTFFb25WUjs7RTBFbG5WTTs7SUFFRTtFMUVxblZSOztFMEVublZNOztJQUVFO0UxRXNuVlI7O0UwRXBuVk07O0lBRUU7RTFFdW5WUjs7RTBFdG9WTTtJQUFnQztFMUUwb1Z0Qzs7RTBFem9WTTs7SUFFRTtFMUU0b1ZSOztFMEUxb1ZNOztJQUVFO0UxRTZvVlI7O0UwRTNvVk07O0lBRUU7RTFFOG9WUjs7RTBFNW9WTTs7SUFFRTtFMUUrb1ZSOztFMEU5cFZNO0lBQWdDO0UxRWtxVnRDOztFMEVqcVZNOztJQUVFO0UxRW9xVlI7O0UwRWxxVk07O0lBRUU7RTFFcXFWUjs7RTBFbnFWTTs7SUFFRTtFMUVzcVZSOztFMEVwcVZNOztJQUVFO0UxRXVxVlI7O0UwRXRyVk07SUFBZ0M7RTFFMHJWdEM7O0UwRXpyVk07O0lBRUU7RTFFNHJWUjs7RTBFMXJWTTs7SUFFRTtFMUU2clZSOztFMEUzclZNOztJQUVFO0UxRThyVlI7O0UwRTVyVk07O0lBRUU7RTFFK3JWUjs7RTBFOXNWTTtJQUFnQztFMUVrdFZ0Qzs7RTBFanRWTTs7SUFFRTtFMUVvdFZSOztFMEVsdFZNOztJQUVFO0UxRXF0VlI7O0UwRW50Vk07O0lBRUU7RTFFc3RWUjs7RTBFcHRWTTs7SUFFRTtFMUV1dFZSOztFMEV0dVZNO0lBQWdDO0UxRTB1VnRDOztFMEV6dVZNOztJQUVFO0UxRTR1VlI7O0UwRTF1Vk07O0lBRUU7RTFFNnVWUjs7RTBFM3VWTTs7SUFFRTtFMUU4dVZSOztFMEU1dVZNOztJQUVFO0UxRSt1VlI7O0UwRTl2Vk07SUFBZ0M7RTFFa3dWdEM7O0UwRWp3Vk07O0lBRUU7RTFFb3dWUjs7RTBFbHdWTTs7SUFFRTtFMUVxd1ZSOztFMEVud1ZNOztJQUVFO0UxRXN3VlI7O0UwRXB3Vk07O0lBRUU7RTFFdXdWUjs7RTBFL3ZWTTtJQUF3QjtFMUVtd1Y5Qjs7RTBFbHdWTTs7SUFFRTtFMUVxd1ZSOztFMEVud1ZNOztJQUVFO0UxRXN3VlI7O0UwRXB3Vk07O0lBRUU7RTFFdXdWUjs7RTBFcndWTTs7SUFFRTtFMUV3d1ZSOztFMEV2eFZNO0lBQXdCO0UxRTJ4VjlCOztFMEUxeFZNOztJQUVFO0UxRTZ4VlI7O0UwRTN4Vk07O0lBRUU7RTFFOHhWUjs7RTBFNXhWTTs7SUFFRTtFMUUreFZSOztFMEU3eFZNOztJQUVFO0UxRWd5VlI7O0UwRS95Vk07SUFBd0I7RTFFbXpWOUI7O0UwRWx6Vk07O0lBRUU7RTFFcXpWUjs7RTBFbnpWTTs7SUFFRTtFMUVzelZSOztFMEVwelZNOztJQUVFO0UxRXV6VlI7O0UwRXJ6Vk07O0lBRUU7RTFFd3pWUjs7RTBFdjBWTTtJQUF3QjtFMUUyMFY5Qjs7RTBFMTBWTTs7SUFFRTtFMUU2MFZSOztFMEUzMFZNOztJQUVFO0UxRTgwVlI7O0UwRTUwVk07O0lBRUU7RTFFKzBWUjs7RTBFNzBWTTs7SUFFRTtFMUVnMVZSOztFMEUvMVZNO0lBQXdCO0UxRW0yVjlCOztFMEVsMlZNOztJQUVFO0UxRXEyVlI7O0UwRW4yVk07O0lBRUU7RTFFczJWUjs7RTBFcDJWTTs7SUFFRTtFMUV1MlZSOztFMEVyMlZNOztJQUVFO0UxRXcyVlI7O0UwRWwyVkU7SUFBbUI7RTFFczJWckI7O0UwRXIyVkU7O0lBRUU7RTFFdzJWSjs7RTBFdDJWRTs7SUFFRTtFMUV5MlZKOztFMEV2MlZFOztJQUVFO0UxRTAyVko7O0UwRXgyVkU7O0lBRUU7RTFFMjJWSjtBQUNGO0FrQnIzVkk7RXdEbERJO0lBQWdDO0UxRTI2VnRDOztFMEUxNlZNOztJQUVFO0UxRTY2VlI7O0UwRTM2Vk07O0lBRUU7RTFFODZWUjs7RTBFNTZWTTs7SUFFRTtFMUUrNlZSOztFMEU3NlZNOztJQUVFO0UxRWc3VlI7O0UwRS83Vk07SUFBZ0M7RTFFbThWdEM7O0UwRWw4Vk07O0lBRUU7RTFFcThWUjs7RTBFbjhWTTs7SUFFRTtFMUVzOFZSOztFMEVwOFZNOztJQUVFO0UxRXU4VlI7O0UwRXI4Vk07O0lBRUU7RTFFdzhWUjs7RTBFdjlWTTtJQUFnQztFMUUyOVZ0Qzs7RTBFMTlWTTs7SUFFRTtFMUU2OVZSOztFMEUzOVZNOztJQUVFO0UxRTg5VlI7O0UwRTU5Vk07O0lBRUU7RTFFKzlWUjs7RTBFNzlWTTs7SUFFRTtFMUVnK1ZSOztFMEUvK1ZNO0lBQWdDO0UxRW0vVnRDOztFMEVsL1ZNOztJQUVFO0UxRXEvVlI7O0UwRW4vVk07O0lBRUU7RTFFcy9WUjs7RTBFcC9WTTs7SUFFRTtFMUV1L1ZSOztFMEVyL1ZNOztJQUVFO0UxRXcvVlI7O0UwRXZnV007SUFBZ0M7RTFFMmdXdEM7O0UwRTFnV007O0lBRUU7RTFFNmdXUjs7RTBFM2dXTTs7SUFFRTtFMUU4Z1dSOztFMEU1Z1dNOztJQUVFO0UxRStnV1I7O0UwRTdnV007O0lBRUU7RTFFZ2hXUjs7RTBFL2hXTTtJQUFnQztFMUVtaVd0Qzs7RTBFbGlXTTs7SUFFRTtFMUVxaVdSOztFMEVuaVdNOztJQUVFO0UxRXNpV1I7O0UwRXBpV007O0lBRUU7RTFFdWlXUjs7RTBFcmlXTTs7SUFFRTtFMUV3aVdSOztFMEV2aldNO0lBQWdDO0UxRTJqV3RDOztFMEUxaldNOztJQUVFO0UxRTZqV1I7O0UwRTNqV007O0lBRUU7RTFFOGpXUjs7RTBFNWpXTTs7SUFFRTtFMUUraldSOztFMEU3aldNOztJQUVFO0UxRWdrV1I7O0UwRS9rV007SUFBZ0M7RTFFbWxXdEM7O0UwRWxsV007O0lBRUU7RTFFcWxXUjs7RTBFbmxXTTs7SUFFRTtFMUVzbFdSOztFMEVwbFdNOztJQUVFO0UxRXVsV1I7O0UwRXJsV007O0lBRUU7RTFFd2xXUjs7RTBFdm1XTTtJQUFnQztFMUUybVd0Qzs7RTBFMW1XTTs7SUFFRTtFMUU2bVdSOztFMEUzbVdNOztJQUVFO0UxRThtV1I7O0UwRTVtV007O0lBRUU7RTFFK21XUjs7RTBFN21XTTs7SUFFRTtFMUVnbldSOztFMEUvbldNO0lBQWdDO0UxRW1vV3RDOztFMEVsb1dNOztJQUVFO0UxRXFvV1I7O0UwRW5vV007O0lBRUU7RTFFc29XUjs7RTBFcG9XTTs7SUFFRTtFMUV1b1dSOztFMEVyb1dNOztJQUVFO0UxRXdvV1I7O0UwRXZwV007SUFBZ0M7RTFFMnBXdEM7O0UwRTFwV007O0lBRUU7RTFFNnBXUjs7RTBFM3BXTTs7SUFFRTtFMUU4cFdSOztFMEU1cFdNOztJQUVFO0UxRStwV1I7O0UwRTdwV007O0lBRUU7RTFFZ3FXUjs7RTBFL3FXTTtJQUFnQztFMUVtcld0Qzs7RTBFbHJXTTs7SUFFRTtFMUVxcldSOztFMEVucldNOztJQUVFO0UxRXNyV1I7O0UwRXByV007O0lBRUU7RTFFdXJXUjs7RTBFcnJXTTs7SUFFRTtFMUV3cldSOztFMEVocldNO0lBQXdCO0UxRW9yVzlCOztFMEVucldNOztJQUVFO0UxRXNyV1I7O0UwRXByV007O0lBRUU7RTFFdXJXUjs7RTBFcnJXTTs7SUFFRTtFMUV3cldSOztFMEV0cldNOztJQUVFO0UxRXlyV1I7O0UwRXhzV007SUFBd0I7RTFFNHNXOUI7O0UwRTNzV007O0lBRUU7RTFFOHNXUjs7RTBFNXNXTTs7SUFFRTtFMUUrc1dSOztFMEU3c1dNOztJQUVFO0UxRWd0V1I7O0UwRTlzV007O0lBRUU7RTFFaXRXUjs7RTBFaHVXTTtJQUF3QjtFMUVvdVc5Qjs7RTBFbnVXTTs7SUFFRTtFMUVzdVdSOztFMEVwdVdNOztJQUVFO0UxRXV1V1I7O0UwRXJ1V007O0lBRUU7RTFFd3VXUjs7RTBFdHVXTTs7SUFFRTtFMUV5dVdSOztFMEV4dldNO0lBQXdCO0UxRTR2VzlCOztFMEUzdldNOztJQUVFO0UxRTh2V1I7O0UwRTV2V007O0lBRUU7RTFFK3ZXUjs7RTBFN3ZXTTs7SUFFRTtFMUVnd1dSOztFMEU5dldNOztJQUVFO0UxRWl3V1I7O0UwRWh4V007SUFBd0I7RTFFb3hXOUI7O0UwRW54V007O0lBRUU7RTFFc3hXUjs7RTBFcHhXTTs7SUFFRTtFMUV1eFdSOztFMEVyeFdNOztJQUVFO0UxRXd4V1I7O0UwRXR4V007O0lBRUU7RTFFeXhXUjs7RTBFbnhXRTtJQUFtQjtFMUV1eFdyQjs7RTBFdHhXRTs7SUFFRTtFMUV5eFdKOztFMEV2eFdFOztJQUVFO0UxRTB4V0o7O0UwRXh4V0U7O0lBRUU7RTFFMnhXSjs7RTBFenhXRTs7SUFFRTtFMUU0eFdKO0FBQ0Y7QTJFNzFXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBM0U2MVdKOztBNEV2MldBO0VBQWtCO0E1RTIyV2xCOztBNEV2MldBO0VBQWlCO0E1RTIyV2pCOztBNEUxMldBO0VBQWlCO0E1RTgyV2pCOztBNEU3MldBO0VBQWlCO0E1RWkzV2pCOztBNEVoM1dBO0VDVEU7RUFDQTtFQUNBO0E3RTYzV0Y7O0E0RTkyV0k7RUFBd0I7QTVFazNXNUI7O0E0RWozV0k7RUFBd0I7QTVFcTNXNUI7O0E0RXAzV0k7RUFBd0I7QTVFdzNXNUI7O0FrQm4xV0k7RTBEdkNBO0lBQXdCO0U1RSszVzFCOztFNEU5M1dFO0lBQXdCO0U1RWs0VzFCOztFNEVqNFdFO0lBQXdCO0U1RXE0VzFCO0FBQ0Y7QWtCajJXSTtFMER2Q0E7SUFBd0I7RTVFNDRXMUI7O0U0RTM0V0U7SUFBd0I7RTVFKzRXMUI7O0U0RTk0V0U7SUFBd0I7RTVFazVXMUI7QUFDRjtBa0I5MldJO0UwRHZDQTtJQUF3QjtFNUV5NVcxQjs7RTRFeDVXRTtJQUF3QjtFNUU0NVcxQjs7RTRFMzVXRTtJQUF3QjtFNUUrNVcxQjtBQUNGO0FrQjMzV0k7RTBEdkNBO0lBQXdCO0U1RXM2VzFCOztFNEVyNldFO0lBQXdCO0U1RXk2VzFCOztFNEV4NldFO0lBQXdCO0U1RTQ2VzFCO0FBQ0Y7QTRFdjZXQTtFQUFtQjtBNUUwNlduQjs7QTRFejZXQTtFQUFtQjtBNUU2NlduQjs7QTRFNTZXQTtFQUFtQjtBNUVnN1duQjs7QTRFNTZXQTtFQUF1QjtBNUVnN1d2Qjs7QTRFLzZXQTtFQUF1QjtBNUVtN1d2Qjs7QTRFbDdXQTtFQUF1QjtBNUVzN1d2Qjs7QTRFcjdXQTtFQUF1QjtBNUV5N1d2Qjs7QTRFeDdXQTtFQUF1QjtBNUU0N1d2Qjs7QTRFMzdXQTtFQUF1QjtBNUUrN1d2Qjs7QTRFMzdXQTtFQUFjO0E1RSs3V2Q7O0E4RXQrV0U7RUFDRTtBOUV5K1dKOztBUy85V0U7RXFFTE07QTlFdytXUjs7QThFOStXRTtFQUNFO0E5RWkvV0o7O0FTditXRTtFcUVMTTtBOUVnL1dSOztBOEV0L1dFO0VBQ0U7QTlFeS9XSjs7QVMvK1dFO0VxRUxNO0E5RXcvV1I7O0E4RTkvV0U7RUFDRTtBOUVpZ1hKOztBU3YvV0U7RXFFTE07QTlFZ2dYUjs7QThFdGdYRTtFQUNFO0E5RXlnWEo7O0FTLy9XRTtFcUVMTTtBOUV3Z1hSOztBOEU5Z1hFO0VBQ0U7QTlFaWhYSjs7QVN2Z1hFO0VxRUxNO0E5RWdoWFI7O0E4RXRoWEU7RUFDRTtBOUV5aFhKOztBUy9nWEU7RXFFTE07QTlFd2hYUjs7QThFOWhYRTtFQUNFO0E5RWlpWEo7O0FTdmhYRTtFcUVMTTtBOUVnaVhSOztBNEV6L1dBO0VBQWE7QTVFNi9XYjs7QTRFNS9XQTtFQUFjO0E1RWdnWGQ7O0E0RTkvV0E7RUFBaUI7QTVFa2dYakI7O0E0RWpnWEE7RUFBaUI7QTVFcWdYakI7O0E0RWpnWEE7RUd2REU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0U0alhGOztBNEVyZ1hBO0VBQXdCO0E1RXlnWHhCOztBNEV2Z1hBO0VBQ0U7RUFDQTtBNUUwZ1hGOztBNEVyZ1hBO0VBQWM7QTVFeWdYZDs7QWdGMWtYQTtFQUNFO0FoRjZrWEY7O0FnRjFrWEE7RUFDRTtBaEY2a1hGOztBaUY3a1hFO0VBQ0U7OztJQUtFO0lBRUE7RWpGNmtYSjs7RWlGemtYSTtJQUNFO0VqRjRrWE47O0VpRm5rWEU7SUFDRTtFakZza1hKOztFaUZ4alhFO0lBQ0U7RWpGMmpYSjs7RWlGempYRTs7SUFFRTtJQUNBO0VqRjRqWEo7O0VpRnBqWEU7SUFDRTtFakZ1alhKOztFaUZwalhFOztJQUVFO0VqRnVqWEo7O0VpRnBqWEU7OztJQUdFO0lBQ0E7RWpGdWpYSjs7RWlGcGpYRTs7SUFFRTtFakZ1alhKOztFaUYvaVhFO0lBQ0UsUTFFK2hDOEI7RVBtaFZsQztFaUZoalhFO0lBQ0U7RWpGa2pYSjs7RWlGaGpYRTtJQUNFO0VqRm1qWEo7O0VpRi9pWEU7SUFDRTtFakZralhKOztFaUZoalhFO0lBQ0U7RWpGbWpYSjs7RWlGaGpYRTtJQUNFO0VqRm1qWEo7RWlGampYSTs7SUFFRTtFakZtalhOOztFaUY5aVhJOztJQUVFO0VqRmlqWE47O0VpRjdpWEU7SUFDRTtFakZnalhKO0VpRjlpWEk7Ozs7SUFJRSxxQjFFdkhHO0VQdXFYVDs7RWlGNWlYRTtJQUNFO0lBQ0EscUIxRTdISztFUDRxWFQ7QUFDRjtBQ3RyWEE7Ozs7Q0FBQTtBQVFBOztDQUFBO0FBS0E7RUFDQTtFQUNBO0VBTUE7QUQ4cVhBO0FDNXFYQTtFQUNBO0VBQ0E7RUFNQTtBRHlxWEE7QUN2cVhBO0VBQ0E7RUFDQTtFQU1BO0FEb3FYQTtBQ2xxWEE7RUFDQTtFQUNBO0VBTUE7QUQrcFhBO0FDN3BYQTtFQUNBO0VBQ0E7RUFNQTtBRDBwWEE7QUN2cFhBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7QURvcFhBO0FDcGtYQTtFQUFXO0FEdWtYWDs7QUN0a1hBO0VBQWM7QUQwa1hkOztBQ3prWEE7RUFFRTtFQUNBO0FEMmtYRjs7QUN4a1hBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QUQwa1hGO0FDemtYRTtFQUNFO0VBQ0E7QUQya1hKO0FDemtYRTtFQUNFO0FEMmtYSjs7QUN0a1hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEeWtYRjtBQ3hrWEU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUR5a1hKOztBQ25rWEE7RUFBMEI7QUR1a1gxQjs7QUNwa1hBO0VBQWEseUJBdEdIO0FEOHFYVjs7QUN2a1hBO0VBQWUsY0F2R0w7QURrclhWOztBQ3prWEE7RUFBZSx5QkF4R0E7QURxclhmOztBQzVrWEE7RUFBa0IsY0F6R0g7QUR5clhmOztBQy9rWEE7RUFBZ0IseUJBdkdFO0FEMHJYbEI7O0FDbGxYQTtFQUFtQixjQXhHRDtBRDhyWGxCOztBQ3BsWEE7RUFBZSx5QkF6R0M7QURpc1hoQjs7QUN2bFhBO0VBQWlCLGNBMUdEO0FEcXNYaEI7O0FDMWxYQTtFQUFlLHlCQTFHRztBRHdzWGxCOztBQzdsWEE7RUFBa0IsY0EzR0E7QUQ0c1hsQjs7QUMvbFhBO0VBQWUseUJBbkdIO0FEc3NYWjs7QUNsbVhBO0VBQWlCLGNBcEdMO0FEMHNYWjs7QUNybVhBO0VBQWlCLHlCQXBHQTtBRDZzWGpCOztBQ3htWEE7RUFBbUIsY0FyR0Y7QURpdFhqQjs7QUMzbVhBO0VBQWtCLHlCQXJHQztBRG90WG5COztBQzltWEE7RUFBb0IsY0F0R0Q7QUR3dFhuQjs7QUNqblhBO0VBQWlCLHlCQXRHQTtBRDJ0WGpCOztBQ3BuWEE7RUFBbUIsY0F2R0Y7QUQrdFhqQjs7QUN2blhBO0VBQWtCLHlCQXZHQztBRGt1WG5COztBQzFuWEE7RUFBb0IsY0F4R0Q7QURzdVhuQjs7QUM3blhBO0VBQW1CLHlCQXhHQztBRHl1WHBCOztBQ2hvWEE7RUFBcUIsY0F6R0Q7QUQ2dVhwQjs7QUNsb1hBO0VBQVcseUJBN0lIO0FEbXhYUjs7QUNyb1hBO0VBQWEsY0E5SUw7QUR1eFhSOztBQ3hvWEE7RUFBVSx5QkFyRkg7QURpdVhQOztBQzNvWEE7RUFBWSxjQXRGTDtBRHF1WFA7O0FDN29YQTtFQUFZLG9EQWxHQztBRG12WGI7O0FDaHBYQTtFQUFjLG9EQWxHQztBRHN2WGY7O0FDbHBYQTtFQUFnQix5QkE1Rkg7QURrdlhiOztBQ3JwWEE7RUFBa0IsY0E3Rkw7QURzdlhiOztBQ3RwWEE7RUFBVztBRDBwWFg7O0FDenBYQTtFQUFhO0FENnBYYjs7QUMxcFhBO0VBQVMseUJBM0pIO0FEeXpYTjs7QUM3cFhBO0VBQVc7QURpcVhYOztBQy9wWEE7RUFBVyx5QkF4Skg7QUQyelhSOztBQ2xxWEE7RUFBYTtBRHNxWGI7O0FDcHFYQTtFQUFNO0VBQ047QUR3cVhBOztBQ2xxWEU7RUFDRTtFQUNBO0FEcXFYSjs7QUNscVhBO0VBQ0U7QURxcVhGOztBQ2pxWEE7RUFFRTtBRG1xWEY7QUNscVhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QURvcVhKOztBQ2pxWEE7RUFDRTtBRG9xWEY7O0FDaHFYQTtFQUVFO0FEa3FYRjtBQ2pxWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRG1xWEo7O0FDN3BYQTtFQUNFO0FEZ3FYRjs7QUM1cFhBO0VBRUUscUJBMUxVO0FEdzFYWjs7QUM1cFhBO0VBQ0U7QUQrcFhGOztBQ3JwWEE7RUFFRTtBRHVwWEY7O0FDcHBYQTtFQUNFLHlCQTdNVTtFQThNVixjQWpPSztBRHczWFA7QUNycFhFO0VBQ0UseUJBM05jO0VBNE5kO0VBQ0E7QUR1cFhKOztBQ3BwWEE7RUFDRTtFQUNBO0VBQ0EsY0E1T0s7RUE2T0w7QUR1cFhGO0FDdHBYRTtFQUNFLHlCQXRPYztFQXVPZDtFQUNBO0FEd3BYSjs7QUNscFhBO0VBQWlCO0FEc3BYakI7O0FDcnBYQTtFQUFtQjtBRHlwWG5COztBQ3hwWEE7RUFBbUI7QUQ0cFhuQjs7QUMzcFhBO0VBQW1CO0FEK3BYbkI7O0FDOXBYQTtFQUFxQjtBRGtxWHJCOztBQ2pxWEE7RUFBcUI7QURxcVhyQjs7QUNucVhBO0VBQXFCO0FEdXFYckI7O0FDdHFYQTtFQUF1QjtBRDBxWHZCOztBQ3pxWEE7RUFBdUI7QUQ2cVh2Qjs7QUM1cVhBO0VBQXVCO0FEZ3JYdkI7O0FDL3FYQTtFQUF5QjtBRG1yWHpCOztBQ2xyWEE7RUFBeUI7QURzclh6Qjs7QUNwclhBO0VBQVk7QUR3clhaOztBQ3ZyWEE7RUFBWTtBRDJyWFo7O0FDenJYQTtFQUNHO0FENHJYSDs7QUN6clhFO0VBQ0U7QUQ0clhKOztBQzdyWEU7RUFDRTtBRGdzWEo7O0FDanNYRTtFQUNFO0FEb3NYSjs7QUNyc1hFO0VBQ0U7QUR3c1hKOztBQ3pzWEU7RUFDRTtBRDRzWEo7O0FDN3NYRTtFQUNFO0FEZ3RYSjs7QUNqdFhFO0VBQ0U7QURvdFhKOztBQ3J0WEU7RUFDRTtBRHd0WEo7O0FDenRYRTtFQUNFO0FENHRYSjs7QUM3dFhFO0VBQ0U7QURndVhKOztBQzV0WEU7RUFDRTtBRCt0WEo7O0FDaHVYRTtFQUNFO0FEbXVYSjs7QUNwdVhFO0VBQ0U7QUR1dVhKOztBQ3h1WEU7RUFDRTtBRDJ1WEo7O0FDNXVYRTtFQUNFO0FEK3VYSjs7QUNodlhFO0VBQ0U7QURtdlhKOztBQ3B2WEU7RUFDRTtBRHV2WEo7O0FDeHZYRTtFQUNFO0FEMnZYSjs7QUM1dlhFO0VBQ0U7QUQrdlhKOztBQ2h3WEU7RUFDRTtBRG13WEo7O0FDcHdYRTtFQUNFO0FEdXdYSjs7QUN4d1hFO0VBQ0U7QUQyd1hKOztBQzV3WEU7RUFDRTtBRCt3WEo7O0FDaHhYRTtFQUNFO0FEbXhYSjs7QUNweFhFO0VBQ0U7QUR1eFhKOztBQ3h4WEU7RUFDRTtBRDJ4WEo7O0FDNXhYRTtFQUNFO0FEK3hYSjs7QUNoeVhFO0VBQ0U7QURteVhKOztBQ3B5WEU7RUFDRTtBRHV5WEo7O0FDeHlYRTtFQUNFO0FEMnlYSjs7QUM1eVhFO0VBQ0U7QUQreVhKOztBQ2h6WEU7RUFDRTtBRG16WEo7O0FDcHpYRTtFQUNFO0FEdXpYSjs7QUN4elhFO0VBQ0U7QUQyelhKOztBQzV6WEU7RUFDRTtBRCt6WEo7O0FDaDBYRTtFQUNFO0FEbTBYSjs7QUNwMFhFO0VBQ0U7QUR1MFhKOztBQ3gwWEU7RUFDRTtBRDIwWEo7O0FDNTBYRTtFQUNFO0FEKzBYSjs7QUNoMVhFO0VBQ0U7QURtMVhKOztBQ3AxWEU7RUFDRTtBRHUxWEo7O0FDeDFYRTtFQUNFO0FEMjFYSjs7QUM1MVhFO0VBQ0U7QUQrMVhKOztBQ2gyWEU7RUFDRTtBRG0yWEo7O0FDcDJYRTtFQUNFO0FEdTJYSjs7QUN4MlhFO0VBQ0U7QUQyMlhKOztBQzUyWEU7RUFDRTtBRCsyWEo7O0FDaDNYRTtFQUNFO0FEbTNYSjs7QUNwM1hFO0VBQ0U7QUR1M1hKOztBQ3gzWEU7RUFDRTtBRDIzWEo7O0FDNTNYRTtFQUNFO0FEKzNYSjs7QUNoNFhFO0VBQ0U7QURtNFhKOztBQ3A0WEU7RUFDRTtBRHU0WEo7O0FDeDRYRTtFQUNFO0FEMjRYSjs7QUM1NFhFO0VBQ0U7QUQrNFhKOztBQ2g1WEU7RUFDRTtBRG01WEo7O0FDcDVYRTtFQUNFO0FEdTVYSjs7QUN4NVhFO0VBQ0U7QUQyNVhKOztBQzU1WEU7RUFDRTtBRCs1WEo7O0FDaDZYRTtFQUNFO0FEbTZYSjs7QUNwNlhFO0VBQ0U7QUR1NlhKOztBQ3g2WEU7RUFDRTtBRDI2WEo7O0FDNTZYRTtFQUNFO0FEKzZYSjs7QUNoN1hFO0VBQ0U7QURtN1hKOztBQ3A3WEU7RUFDRTtBRHU3WEo7O0FDeDdYRTtFQUNFO0FEMjdYSjs7QUM1N1hFO0VBQ0U7QUQrN1hKOztBQ2g4WEU7RUFDRTtBRG04WEo7O0FDcDhYRTtFQUNFO0FEdThYSjs7QUN4OFhFO0VBQ0U7QUQyOFhKOztBQzU4WEU7RUFDRTtBRCs4WEo7O0FDaDlYRTtFQUNFO0FEbTlYSjs7QUNwOVhFO0VBQ0U7QUR1OVhKOztBQ3g5WEU7RUFDRTtBRDI5WEo7O0FDeDlYQTtFQUVJO0lBQ0U7RUQwOVhKOztFQzM5WEU7SUFDRTtFRDg5WEo7O0VDLzlYRTtJQUNFO0VEaytYSjs7RUNuK1hFO0lBQ0U7RURzK1hKOztFQ3YrWEU7SUFDRTtFRDArWEo7O0VDMytYRTtJQUNFO0VEOCtYSjs7RUMvK1hFO0lBQ0U7RURrL1hKOztFQ24vWEU7SUFDRTtFRHMvWEo7O0VDdi9YRTtJQUNFO0VEMC9YSjs7RUMzL1hFO0lBQ0U7RUQ4L1hKOztFQy8vWEU7SUFDRTtFRGtnWUo7O0VDbmdZRTtJQUNFO0VEc2dZSjs7RUN2Z1lFO0lBQ0U7RUQwZ1lKOztFQzNnWUU7SUFDRTtFRDhnWUo7O0VDL2dZRTtJQUNFO0VEa2hZSjs7RUNuaFlFO0lBQ0U7RURzaFlKOztFQ3ZoWUU7SUFDRTtFRDBoWUo7O0VDM2hZRTtJQUNFO0VEOGhZSjs7RUMvaFlFO0lBQ0U7RURraVlKOztFQ25pWUU7SUFDRTtFRHNpWUo7O0VDdmlZRTtJQUNFO0VEMGlZSjs7RUMzaVlFO0lBQ0U7RUQ4aVlKOztFQy9pWUU7SUFDRTtFRGtqWUo7O0VDbmpZRTtJQUNFO0VEc2pZSjs7RUN2allFO0lBQ0U7RUQwallKOztFQzNqWUU7SUFDRTtFRDhqWUo7O0VDL2pZRTtJQUNFO0VEa2tZSjs7RUNua1lFO0lBQ0U7RURza1lKOztFQ3ZrWUU7SUFDRTtFRDBrWUo7O0VDM2tZRTtJQUNFO0VEOGtZSjs7RUMva1lFO0lBQ0U7RURrbFlKOztFQ25sWUU7SUFDRTtFRHNsWUo7O0VDdmxZRTtJQUNFO0VEMGxZSjs7RUMzbFlFO0lBQ0U7RUQ4bFlKOztFQy9sWUU7SUFDRTtFRGttWUo7O0VDbm1ZRTtJQUNFO0VEc21ZSjs7RUN2bVlFO0lBQ0U7RUQwbVlKOztFQzNtWUU7SUFDRTtFRDhtWUo7O0VDL21ZRTtJQUNFO0VEa25ZSjs7RUNubllFO0lBQ0U7RURzbllKOztFQ3ZuWUU7SUFDRTtFRDBuWUo7O0VDM25ZRTtJQUNFO0VEOG5ZSjs7RUMvbllFO0lBQ0U7RURrb1lKOztFQ25vWUU7SUFDRTtFRHNvWUo7O0VDdm9ZRTtJQUNFO0VEMG9ZSjs7RUMzb1lFO0lBQ0U7RUQ4b1lKOztFQy9vWUU7SUFDRTtFRGtwWUo7O0VDbnBZRTtJQUNFO0VEc3BZSjs7RUN2cFlFO0lBQ0U7RUQwcFlKOztFQzNwWUU7SUFDRTtFRDhwWUo7O0VDL3BZRTtJQUNFO0VEa3FZSjs7RUNucVlFO0lBQ0U7RURzcVlKOztFQ3ZxWUU7SUFDRTtFRDBxWUo7O0VDM3FZRTtJQUNFO0VEOHFZSjs7RUMvcVlFO0lBQ0U7RURrcllKOztFQ25yWUU7SUFDRTtFRHNyWUo7O0VDdnJZRTtJQUNFO0VEMHJZSjs7RUMzcllFO0lBQ0U7RUQ4cllKOztFQy9yWUU7SUFDRTtFRGtzWUo7O0VDbnNZRTtJQUNFO0VEc3NZSjs7RUN2c1lFO0lBQ0U7RUQwc1lKOztFQzNzWUU7SUFDRTtFRDhzWUo7O0VDL3NZRTtJQUNFO0VEa3RZSjs7RUNudFlFO0lBQ0U7RURzdFlKO0FBQ0Y7QUNudFlBO0VBQVk7QURzdFlaOztBQ3J0WUE7RUFBYTtBRHl0WWI7O0FDeHRZQTtFQUFhO0FENHRZYjs7QUMzdFlBO0VBQWE7QUQrdFliOztBQzl0WUE7RUFBYTtBRGt1WWI7O0FDanVZQTtFQUFhO0FEcXVZYjs7QUNwdVlBO0VBQWE7QUR3dVliOztBQ3Z1WUE7RUFBYTtBRDJ1WWI7O0FDMXVZQTtFQUFjO0FEOHVZZDs7QUU5bVpBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRmluWkQ7O0FFL21aQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZrblpEOztBRTltWkE7QUFDQTtFQUF1QjtJQUFPO0VGbW5aNUI7QUFDRjtBRW5uWkE7RUFBMEI7SUFBTztFRnVuWi9CO0FBQ0Y7QUV2blpBO0VBQWtCO0lBQU87SUFBbUM7RUY0bloxRDtBQUNGO0FFM25aQTtFQUErQjtJQUFPO0VGK25acEM7QUFDRjtBRS9uWkE7RUFBa0M7SUFBTztFRm1vWnZDO0FBQ0Y7QUVub1pBO0VBQTBCO0lBQU87SUFBb0M7RUZ3b1puRTtBQUNGO0FFdG9aQztFQUNDO0VBQ0E7RUFDQTtBRndvWkY7O0FFcG9aQztFQUNDO0VBQ0E7RUFDQTtBRnVvWkY7O0FFanBaQztFQUNDO0VBQ0E7RUFDQTtBRm9wWkY7O0FFaHBaQztFQUNDO0VBQ0E7RUFDQTtBRm1wWkY7O0FFN3BaQztFQUNDO0VBQ0E7RUFDQTtBRmdxWkY7O0FFNXBaQztFQUNDO0VBQ0E7RUFDQTtBRitwWkY7O0FFenFaQztFQUNDO0VBQ0E7RUFDQTtBRjRxWkY7O0FFeHFaQztFQUNDO0VBQ0E7RUFDQTtBRjJxWkY7O0FFcnJaQztFQUNDO0VBQ0E7RUFDQTtBRndyWkY7O0FFcHJaQztFQUNDO0VBQ0E7RUFDQTtBRnVyWkY7O0FFanNaQztFQUNDO0VBQ0E7RUFDQTtBRm9zWkY7O0FFaHNaQztFQUNDO0VBQ0E7RUFDQTtBRm1zWkY7O0FFN3NaQztFQUNDO0VBQ0E7RUFDQTtBRmd0WkY7O0FFNXNaQztFQUNDO0VBQ0E7RUFDQTtBRitzWkY7O0FFenRaQztFQUNDO0VBQ0E7RUFDQTtBRjR0WkY7O0FFeHRaQztFQUNDO0VBQ0E7RUFDQTtBRjJ0WkY7O0FFcnVaQztFQUNDO0VBQ0E7RUFDQTtBRnd1WkY7O0FFcHVaQztFQUNDO0VBQ0E7RUFDQTtBRnV1WkY7O0FFanZaQztFQUNDO0VBQ0E7RUFDQTtBRm92WkY7O0FFaHZaQztFQUNDO0VBQ0E7RUFDQTtBRm12WkY7O0FFN3ZaQztFQUNDO0VBQ0E7RUFDQTtBRmd3WkY7O0FFNXZaQztFQUNDO0VBQ0E7RUFDQTtBRit2WkY7O0FFendaQztFQUNDO0VBQ0E7RUFDQTtBRjR3WkY7O0FFeHdaQztFQUNDO0VBQ0E7RUFDQTtBRjJ3WkY7O0FFcnhaQztFQUNDO0VBQ0E7RUFDQTtBRnd4WkY7O0FFcHhaQztFQUNDO0VBQ0E7RUFDQTtBRnV4WkY7O0FFanlaQztFQUNDO0VBQ0E7RUFDQTtBRm95WkY7O0FFaHlaQztFQUNDO0VBQ0E7RUFDQTtBRm15WkY7O0FFN3laQztFQUNDO0VBQ0E7RUFDQTtBRmd6WkY7O0FFNXlaQztFQUNDO0VBQ0E7RUFDQTtBRit5WkY7O0FFenpaQztFQUNDO0VBQ0E7RUFDQTtBRjR6WkY7O0FFeHpaQztFQUNDO0VBQ0E7RUFDQTtBRjJ6WkY7O0FFcjBaQztFQUNDO0VBQ0E7RUFDQTtBRncwWkY7O0FFcDBaQztFQUNDO0VBQ0E7RUFDQTtBRnUwWkY7O0FFajFaQztFQUNDO0VBQ0E7RUFDQTtBRm8xWkY7O0FFaDFaQztFQUNDO0VBQ0E7RUFDQTtBRm0xWkY7O0FFNzFaQztFQUNDO0VBQ0E7RUFDQTtBRmcyWkY7O0FFNTFaQztFQUNDO0VBQ0E7RUFDQTtBRisxWkY7O0FFejJaQztFQUNDO0VBQ0E7RUFDQTtBRjQyWkY7O0FFeDJaQztFQUNDO0VBQ0E7RUFDQTtBRjIyWkY7O0FHbDVaRTtFRDRDRDtJQUFLO0lBQVc7RUY0MlpmO0VFMzJaRDtJQUFLO0lBQVc7RUYrMlpmO0VFOTJaRDtJQUFNO0lBQWE7RUZrM1psQjtFRWozWkQ7SUFBTztJQUFhO0VGcTNabkI7QUFDRjtBR2w2WkU7RUR5Q0Q7SUFBSztJQUFXO0VGODNaZjtFRTczWkQ7SUFBSztJQUFXO0VGaTRaZjtFRWg0WkQ7SUFBTTtJQUFhO0VGbzRabEI7RUVuNFpEO0lBQU87SUFBYTtFRnU0Wm5CO0FBQ0Y7QUdqN1pFO0VEc0NEO0lBQUs7SUFBVztFRmc1WmY7RUUvNFpEO0lBQUs7SUFBVztFRm01WmY7RUVsNVpEO0lBQU07SUFBYTtFRnM1WmxCO0VFcjVaRDtJQUFPO0lBQWE7RUZ5NVpuQjtBQUNGO0FHaDhaRTtFRG1DRDtJQUFLO0lBQVc7RUZrNlpmO0VFajZaRDtJQUFLO0lBQVc7RUZxNlpmO0VFcDZaRDtJQUFNO0lBQWE7RUZ3NlpsQjtFRXY2WkQ7SUFBTztJQUFhO0VGMjZabkI7QUFDRjtBRzM5WkU7RURtREQ7SUFBTTtFRjQ2Wkw7RUUzNlpEO0lBQU87SUFBYTtJQUFjO0VGZzdaakM7QUFDRjtBR2wrWkU7RURnREQ7SUFBTTtFRnM3Wkw7RUVyN1pEO0lBQU87SUFBYTtJQUFjO0VGMDdaakM7QUFDRjtBR3orWkU7RUQ2Q0Q7SUFBTTtFRmc4Wkw7RUUvN1pEO0lBQU87SUFBYTtJQUFjO0VGbzhaakM7QUFDRjtBR2gvWkU7RUQwQ0Q7SUFBTTtFRjA4Wkw7RUV6OFpEO0lBQU87SUFBYTtJQUFjO0VGODhaakM7QUFDRjtBR25nYUU7RUQwREQ7SUFBTyxtQkR3Q0U7RURxNlpSO0FBQ0Y7QUdyZ2FFO0VEdUREO0lBQU8sbUJEd0NFO0VEMDZaUjtBQUNGO0FHdmdhRTtFRG9ERDtJQUFPLG1CRHdDRTtFRCs2WlI7QUFDRjtBR3pnYUU7RURpREQ7SUFBTyxtQkR3Q0U7RURvN1pSO0FBQ0Y7QUd2aGFFO0VEZ0VEO0lBQUs7RUYyOVpKO0VFMTlaRDtJQUFPO0VGNjlaTjtFRTU5WkQ7SUFBTztFRis5Wk47QUFDRjtBRy9oYUU7RUQ2REQ7SUFBSztFRnMrWko7RUVyK1pEO0lBQU87RUZ3K1pOO0VFditaRDtJQUFPO0VGMCtaTjtBQUNGO0FHdmlhRTtFRDBERDtJQUFLO0VGaS9aSjtFRWgvWkQ7SUFBTztFRm0vWk47RUVsL1pEO0lBQU87RUZxL1pOO0FBQ0Y7QUcvaWFFO0VEdUREO0lBQUs7RUY0L1pKO0VFMy9aRDtJQUFPO0VGOC9aTjtFRTcvWkQ7SUFBTztFRmdnYU47QUFDRjtBR25rYUU7RUR1RUQ7SUFBSztFRmdnYUo7RUUvL1pEO0lBQU87RUZrZ2FOO0VFamdhRDtJQUFPO0VGb2dhTjtFRW5nYUQ7SUFBTztFRnNnYU47RUVyZ2FEO0lBQVE7RUZ3Z2FQO0FBQ0Y7QUdqbGFFO0VEb0VEO0lBQUs7RUZpaGFKO0VFaGhhRDtJQUFPO0VGbWhhTjtFRWxoYUQ7SUFBTztFRnFoYU47RUVwaGFEO0lBQU87RUZ1aGFOO0VFdGhhRDtJQUFRO0VGeWhhUDtBQUNGO0FHL2xhRTtFRGlFRDtJQUFLO0VGa2lhSjtFRWppYUQ7SUFBTztFRm9pYU47RUVuaWFEO0lBQU87RUZzaWFOO0VFcmlhRDtJQUFPO0VGd2lhTjtFRXZpYUQ7SUFBUTtFRjBpYVA7QUFDRjtBRzdtYUU7RUQ4REQ7SUFBSztFRm1qYUo7RUVsamFEO0lBQU87RUZxamFOO0VFcGphRDtJQUFPO0VGdWphTjtFRXRqYUQ7SUFBTztFRnlqYU47RUV4amFEO0lBQVE7RUYyamFQO0FBQ0Y7QUd2b2FFO0VEK0VEO0lBQU07SUFBK0I7RUY2amFwQztFRTVqYUQ7SUFBUTtJQUFrQztFRmdrYXpDO0VFL2phRDtJQUFRO0lBQWtDO0VGbWthekM7RUVsa2FEO0lBQVE7SUFBbUM7RUZza2ExQztFRXJrYUQ7SUFBUTtJQUFrQztFRnlrYXpDO0VFeGthRDtJQUFPO0lBQXFDO0lBQVU7RUY2a2FyRDtFRTVrYUQ7SUFBUTtJQUF1QztFRmdsYTlDO0FBQ0Y7QUducWFFO0VENEVEO0lBQU07SUFBK0I7RUY0bGFwQztFRTNsYUQ7SUFBUTtJQUFrQztFRitsYXpDO0VFOWxhRDtJQUFRO0lBQWtDO0VGa21hekM7RUVqbWFEO0lBQVE7SUFBbUM7RUZxbWExQztFRXBtYUQ7SUFBUTtJQUFrQztFRndtYXpDO0VFdm1hRDtJQUFPO0lBQXFDO0lBQVU7RUY0bWFyRDtFRTNtYUQ7SUFBUTtJQUF1QztFRittYTlDO0FBQ0Y7QUcvcmFFO0VEeUVEO0lBQU07SUFBK0I7RUYybmFwQztFRTFuYUQ7SUFBUTtJQUFrQztFRjhuYXpDO0VFN25hRDtJQUFRO0lBQWtDO0VGaW9hekM7RUVob2FEO0lBQVE7SUFBbUM7RUZvb2ExQztFRW5vYUQ7SUFBUTtJQUFrQztFRnVvYXpDO0VFdG9hRDtJQUFPO0lBQXFDO0lBQVU7RUYyb2FyRDtFRTFvYUQ7SUFBUTtJQUF1QztFRjhvYTlDO0FBQ0Y7QUczdGFFO0VEc0VEO0lBQU07SUFBK0I7RUYwcGFwQztFRXpwYUQ7SUFBUTtJQUFrQztFRjZwYXpDO0VFNXBhRDtJQUFRO0lBQWtDO0VGZ3FhekM7RUUvcGFEO0lBQVE7SUFBbUM7RUZtcWExQztFRWxxYUQ7SUFBUTtJQUFrQztFRnNxYXpDO0VFcnFhRDtJQUFPO0lBQXFDO0lBQVU7RUYwcWFyRDtFRXpxYUQ7SUFBUTtJQUF1QztFRjZxYTlDO0FBQ0Y7QUdud2FFO0VEMEZEO0lBQU07RUY2cWFMO0VFNXFhRDtJQUFRO0VGK3FhUDtFRTlxYUQ7SUFBUTtFRmlyYVA7RUVocmFEO0lBQVE7RUZtcmFQO0VFbHJhRDtJQUFRO0VGcXJhUDtFRXByYUQ7SUFBUTtFRnVyYVA7RUV0cmFEO0lBQVE7RUZ5cmFQO0VFeHJhRDtJQUFRO0lBQW1DO0lBQVU7RUY2cmFwRDtFRTVyYUQ7SUFBUTtJQUFZO0VGZ3NhbkI7QUFDRjtBR2h5YUU7RUR1RkQ7SUFBTTtFRjZzYUw7RUU1c2FEO0lBQVE7RUYrc2FQO0VFOXNhRDtJQUFRO0VGaXRhUDtFRWh0YUQ7SUFBUTtFRm10YVA7RUVsdGFEO0lBQVE7RUZxdGFQO0VFcHRhRDtJQUFRO0VGdXRhUDtFRXR0YUQ7SUFBUTtFRnl0YVA7RUV4dGFEO0lBQVE7SUFBbUM7SUFBVTtFRjZ0YXBEO0VFNXRhRDtJQUFRO0lBQVk7RUZndWFuQjtBQUNGO0FHN3phRTtFRG9GRDtJQUFNO0VGNnVhTDtFRTV1YUQ7SUFBUTtFRit1YVA7RUU5dWFEO0lBQVE7RUZpdmFQO0VFaHZhRDtJQUFRO0VGbXZhUDtFRWx2YUQ7SUFBUTtFRnF2YVA7RUVwdmFEO0lBQVE7RUZ1dmFQO0VFdHZhRDtJQUFRO0VGeXZhUDtFRXh2YUQ7SUFBUTtJQUFtQztJQUFVO0VGNnZhcEQ7RUU1dmFEO0lBQVE7SUFBWTtFRmd3YW5CO0FBQ0Y7QUcxMWFFO0VEaUZEO0lBQU07RUY2d2FMO0VFNXdhRDtJQUFRO0VGK3dhUDtFRTl3YUQ7SUFBUTtFRml4YVA7RUVoeGFEO0lBQVE7RUZteGFQO0VFbHhhRDtJQUFRO0VGcXhhUDtFRXB4YUQ7SUFBUTtFRnV4YVA7RUV0eGFEO0lBQVE7RUZ5eGFQO0VFeHhhRDtJQUFRO0lBQW1DO0lBQVU7RUY2eGFwRDtFRTV4YUQ7SUFBUTtJQUFZO0VGZ3lhbkI7QUFDRjtBRTF4YUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBRjR4YUY7QUUxeGFDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QUY0eGFGOztBRXp4YUM7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUN0SEM7RUR3SUQ7SUFBTztFRjJ4YU47RUUxeGFEO0lBQU87RUY2eGFOO0VFNXhhRDtJQUFPO0VGK3hhTjtBQUNGO0FHdjZhRTtFRHFJRDtJQUFPO0VGc3lhTjtFRXJ5YUQ7SUFBTztFRnd5YU47RUV2eWFEO0lBQU87RUYweWFOO0FBQ0Y7QUcvNmFFO0VEa0lEO0lBQU87RUZpemFOO0VFaHphRDtJQUFPO0VGbXphTjtFRWx6YUQ7SUFBTztFRnF6YU47QUFDRjtBR3Y3YUU7RUQrSEQ7SUFBTztFRjR6YU47RUUzemFEO0lBQU87RUY4emFOO0VFN3phRDtJQUFPO0VGZzBhTjtBQUNGO0FFOXphQTtFQUVDO0VBQ0E7RUFDQTtBRit6YUQ7O0FFNXphQTtFQUNDO0VBQ0E7RUFDQTtBRit6YUQ7O0FHdDlhRTtFRDJKRDtJQUFLO0lBQVM7RUZpMGFiO0VFaDBhRDtJQUFLO0VGbTBhSjtFRWwwYUQ7SUFBTztFRnEwYU47RUVwMGFEO0lBQU87RUZ1MGFOO0VFdDBhRDtJQUFPO0VGeTBhTjtFRXgwYUQ7SUFBTztFRjIwYU47RUUxMGFEO0lBQU87RUY2MGFOO0VFNTBhRDtJQUFPO0VGKzBhTjtFRTkwYUQ7SUFBTztFRmkxYU47RUVoMWFEO0lBQU87RUZtMWFOO0VFbDFhRDtJQUFPO0VGcTFhTjtFRXAxYUQ7SUFBTztFRnUxYU47RUV0MWFEO0lBQU07RUZ5MWFMO0VFeDFhRDtJQUFRO0lBQVM7SUFBVztFRjYxYTNCO0FBQ0Y7QUduZ2JFO0VEd0pEO0lBQUs7SUFBUztFRmczYWI7RUUvMmFEO0lBQUs7RUZrM2FKO0VFajNhRDtJQUFPO0VGbzNhTjtFRW4zYUQ7SUFBTztFRnMzYU47RUVyM2FEO0lBQU87RUZ3M2FOO0VFdjNhRDtJQUFPO0VGMDNhTjtFRXozYUQ7SUFBTztFRjQzYU47RUUzM2FEO0lBQU87RUY4M2FOO0VFNzNhRDtJQUFPO0VGZzRhTjtFRS8zYUQ7SUFBTztFRms0YU47RUVqNGFEO0lBQU87RUZvNGFOO0VFbjRhRDtJQUFPO0VGczRhTjtFRXI0YUQ7SUFBTTtFRnc0YUw7RUV2NGFEO0lBQVE7SUFBUztJQUFXO0VGNDRhM0I7QUFDRjtBRy9pYkU7RURxSkQ7SUFBSztJQUFTO0VGKzVhYjtFRTk1YUQ7SUFBSztFRmk2YUo7RUVoNmFEO0lBQU87RUZtNmFOO0VFbDZhRDtJQUFPO0VGcTZhTjtFRXA2YUQ7SUFBTztFRnU2YU47RUV0NmFEO0lBQU87RUZ5NmFOO0VFeDZhRDtJQUFPO0VGMjZhTjtFRTE2YUQ7SUFBTztFRjY2YU47RUU1NmFEO0lBQU87RUYrNmFOO0VFOTZhRDtJQUFPO0VGaTdhTjtFRWg3YUQ7SUFBTztFRm03YU47RUVsN2FEO0lBQU87RUZxN2FOO0VFcDdhRDtJQUFNO0VGdTdhTDtFRXQ3YUQ7SUFBUTtJQUFTO0lBQVc7RUYyN2EzQjtBQUNGO0FHM2xiRTtFRGtKRDtJQUFLO0lBQVM7RUY4OGFiO0VFNzhhRDtJQUFLO0VGZzlhSjtFRS84YUQ7SUFBTztFRms5YU47RUVqOWFEO0lBQU87RUZvOWFOO0VFbjlhRDtJQUFPO0VGczlhTjtFRXI5YUQ7SUFBTztFRnc5YU47RUV2OWFEO0lBQU87RUYwOWFOO0VFejlhRDtJQUFPO0VGNDlhTjtFRTM5YUQ7SUFBTztFRjg5YU47RUU3OWFEO0lBQU87RUZnK2FOO0VFLzlhRDtJQUFPO0VGaythTjtFRWorYUQ7SUFBTztFRm8rYU47RUVuK2FEO0lBQU07RUZzK2FMO0VFcithRDtJQUFRO0lBQVM7SUFBVztFRjArYTNCO0FBQ0Y7QUV0K2FDO0VBQ0M7RUFFQTtFQUNBO0VBQ0E7QUZ1K2FGOztBQ3pwYkE7Ozs7Q0FBQTtBQVFBOztDQUFBO0FBS0E7RUFDQTtFQUNBO0VBTUE7QURrcGJBO0FDaHBiQTtFQUNBO0VBQ0E7RUFNQTtBRDZvYkE7QUMzb2JBO0VBQ0E7RUFDQTtFQU1BO0FEd29iQTtBQ3RvYkE7RUFDQTtFQUNBO0VBTUE7QURtb2JBO0FDam9iQTtFQUNBO0VBQ0E7RUFNQTtBRDhuYkE7QUMzbmJBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7QUR3bmJBO0FDeGliQTtFQUFXO0FEMmliWDs7QUMxaWJBO0VBQWM7QUQ4aWJkOztBQzdpYkE7RUFFRTtFQUNBO0FEK2liRjs7QUM1aWJBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QUQ4aWJGO0FDN2liRTtFQUNFO0VBQ0E7QUQraWJKO0FDN2liRTtFQUNFO0FEK2liSjs7QUMxaWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FENmliRjtBQzVpYkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUQ2aWJKOztBQ3ZpYkE7RUFBMEI7QUQyaWIxQjs7QUN4aWJBO0VBQWEseUJBdEdIO0FEa3BiVjs7QUMzaWJBO0VBQWUsY0F2R0w7QURzcGJWOztBQzdpYkE7RUFBZSx5QkF4R0E7QUR5cGJmOztBQ2hqYkE7RUFBa0IsY0F6R0g7QUQ2cGJmOztBQ25qYkE7RUFBZ0IseUJBdkdFO0FEOHBibEI7O0FDdGpiQTtFQUFtQixjQXhHRDtBRGtxYmxCOztBQ3hqYkE7RUFBZSx5QkF6R0M7QURxcWJoQjs7QUMzamJBO0VBQWlCLGNBMUdEO0FEeXFiaEI7O0FDOWpiQTtFQUFlLHlCQTFHRztBRDRxYmxCOztBQ2prYkE7RUFBa0IsY0EzR0E7QURncmJsQjs7QUNua2JBO0VBQWUseUJBbkdIO0FEMHFiWjs7QUN0a2JBO0VBQWlCLGNBcEdMO0FEOHFiWjs7QUN6a2JBO0VBQWlCLHlCQXBHQTtBRGlyYmpCOztBQzVrYkE7RUFBbUIsY0FyR0Y7QURxcmJqQjs7QUMva2JBO0VBQWtCLHlCQXJHQztBRHdyYm5COztBQ2xsYkE7RUFBb0IsY0F0R0Q7QUQ0cmJuQjs7QUNybGJBO0VBQWlCLHlCQXRHQTtBRCtyYmpCOztBQ3hsYkE7RUFBbUIsY0F2R0Y7QURtc2JqQjs7QUMzbGJBO0VBQWtCLHlCQXZHQztBRHNzYm5COztBQzlsYkE7RUFBb0IsY0F4R0Q7QUQwc2JuQjs7QUNqbWJBO0VBQW1CLHlCQXhHQztBRDZzYnBCOztBQ3BtYkE7RUFBcUIsY0F6R0Q7QURpdGJwQjs7QUN0bWJBO0VBQVcseUJBN0lIO0FEdXZiUjs7QUN6bWJBO0VBQWEsY0E5SUw7QUQydmJSOztBQzVtYkE7RUFBVSx5QkFyRkg7QURxc2JQOztBQy9tYkE7RUFBWSxjQXRGTDtBRHlzYlA7O0FDam5iQTtFQUFZLG9EQWxHQztBRHV0YmI7O0FDcG5iQTtFQUFjLG9EQWxHQztBRDB0YmY7O0FDdG5iQTtFQUFnQix5QkE1Rkg7QURzdGJiOztBQ3puYkE7RUFBa0IsY0E3Rkw7QUQwdGJiOztBQzFuYkE7RUFBVztBRDhuYlg7O0FDN25iQTtFQUFhO0FEaW9iYjs7QUM5bmJBO0VBQVMseUJBM0pIO0FENnhiTjs7QUNqb2JBO0VBQVc7QURxb2JYOztBQ25vYkE7RUFBVyx5QkF4Skg7QUQreGJSOztBQ3RvYkE7RUFBYTtBRDBvYmI7O0FDeG9iQTtFQUFNO0VBQ047QUQ0b2JBOztBQ3RvYkU7RUFDRTtFQUNBO0FEeW9iSjs7QUN0b2JBO0VBQ0U7QUR5b2JGOztBQ3JvYkE7RUFFRTtBRHVvYkY7QUN0b2JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUR3b2JKOztBQ3JvYkE7RUFDRTtBRHdvYkY7O0FDcG9iQTtFQUVFO0FEc29iRjtBQ3JvYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRHVvYko7O0FDam9iQTtFQUNFO0FEb29iRjs7QUNob2JBO0VBRUUscUJBMUxVO0FENHpiWjs7QUNob2JBO0VBQ0U7QURtb2JGOztBQ3puYkE7RUFFRTtBRDJuYkY7O0FDeG5iQTtFQUNFLHlCQTdNVTtFQThNVixjQWpPSztBRDQxYlA7QUN6bmJFO0VBQ0UseUJBM05jO0VBNE5kO0VBQ0E7QUQybmJKOztBQ3huYkE7RUFDRTtFQUNBO0VBQ0EsY0E1T0s7RUE2T0w7QUQybmJGO0FDMW5iRTtFQUNFLHlCQXRPYztFQXVPZDtFQUNBO0FENG5iSjs7QUN0bmJBO0VBQWlCO0FEMG5iakI7O0FDem5iQTtFQUFtQjtBRDZuYm5COztBQzVuYkE7RUFBbUI7QURnb2JuQjs7QUMvbmJBO0VBQW1CO0FEbW9ibkI7O0FDbG9iQTtFQUFxQjtBRHNvYnJCOztBQ3JvYkE7RUFBcUI7QUR5b2JyQjs7QUN2b2JBO0VBQXFCO0FEMm9ickI7O0FDMW9iQTtFQUF1QjtBRDhvYnZCOztBQzdvYkE7RUFBdUI7QURpcGJ2Qjs7QUNocGJBO0VBQXVCO0FEb3BidkI7O0FDbnBiQTtFQUF5QjtBRHVwYnpCOztBQ3RwYkE7RUFBeUI7QUQwcGJ6Qjs7QUN4cGJBO0VBQVk7QUQ0cGJaOztBQzNwYkE7RUFBWTtBRCtwYlo7O0FDN3BiQTtFQUNHO0FEZ3FiSDs7QUM3cGJFO0VBQ0U7QURncWJKOztBQ2pxYkU7RUFDRTtBRG9xYko7O0FDcnFiRTtFQUNFO0FEd3FiSjs7QUN6cWJFO0VBQ0U7QUQ0cWJKOztBQzdxYkU7RUFDRTtBRGdyYko7O0FDanJiRTtFQUNFO0FEb3JiSjs7QUNycmJFO0VBQ0U7QUR3cmJKOztBQ3pyYkU7RUFDRTtBRDRyYko7O0FDN3JiRTtFQUNFO0FEZ3NiSjs7QUNqc2JFO0VBQ0U7QURvc2JKOztBQ2hzYkU7RUFDRTtBRG1zYko7O0FDcHNiRTtFQUNFO0FEdXNiSjs7QUN4c2JFO0VBQ0U7QUQyc2JKOztBQzVzYkU7RUFDRTtBRCtzYko7O0FDaHRiRTtFQUNFO0FEbXRiSjs7QUNwdGJFO0VBQ0U7QUR1dGJKOztBQ3h0YkU7RUFDRTtBRDJ0Yko7O0FDNXRiRTtFQUNFO0FEK3RiSjs7QUNodWJFO0VBQ0U7QURtdWJKOztBQ3B1YkU7RUFDRTtBRHV1Yko7O0FDeHViRTtFQUNFO0FEMnViSjs7QUM1dWJFO0VBQ0U7QUQrdWJKOztBQ2h2YkU7RUFDRTtBRG12Yko7O0FDcHZiRTtFQUNFO0FEdXZiSjs7QUN4dmJFO0VBQ0U7QUQydmJKOztBQzV2YkU7RUFDRTtBRCt2Yko7O0FDaHdiRTtFQUNFO0FEbXdiSjs7QUNwd2JFO0VBQ0U7QUR1d2JKOztBQ3h3YkU7RUFDRTtBRDJ3Yko7O0FDNXdiRTtFQUNFO0FEK3diSjs7QUNoeGJFO0VBQ0U7QURteGJKOztBQ3B4YkU7RUFDRTtBRHV4Yko7O0FDeHhiRTtFQUNFO0FEMnhiSjs7QUM1eGJFO0VBQ0U7QUQreGJKOztBQ2h5YkU7RUFDRTtBRG15Yko7O0FDcHliRTtFQUNFO0FEdXliSjs7QUN4eWJFO0VBQ0U7QUQyeWJKOztBQzV5YkU7RUFDRTtBRCt5Yko7O0FDaHpiRTtFQUNFO0FEbXpiSjs7QUNwemJFO0VBQ0U7QUR1emJKOztBQ3h6YkU7RUFDRTtBRDJ6Yko7O0FDNXpiRTtFQUNFO0FEK3piSjs7QUNoMGJFO0VBQ0U7QURtMGJKOztBQ3AwYkU7RUFDRTtBRHUwYko7O0FDeDBiRTtFQUNFO0FEMjBiSjs7QUM1MGJFO0VBQ0U7QUQrMGJKOztBQ2gxYkU7RUFDRTtBRG0xYko7O0FDcDFiRTtFQUNFO0FEdTFiSjs7QUN4MWJFO0VBQ0U7QUQyMWJKOztBQzUxYkU7RUFDRTtBRCsxYko7O0FDaDJiRTtFQUNFO0FEbTJiSjs7QUNwMmJFO0VBQ0U7QUR1MmJKOztBQ3gyYkU7RUFDRTtBRDIyYko7O0FDNTJiRTtFQUNFO0FEKzJiSjs7QUNoM2JFO0VBQ0U7QURtM2JKOztBQ3AzYkU7RUFDRTtBRHUzYko7O0FDeDNiRTtFQUNFO0FEMjNiSjs7QUM1M2JFO0VBQ0U7QUQrM2JKOztBQ2g0YkU7RUFDRTtBRG00Yko7O0FDcDRiRTtFQUNFO0FEdTRiSjs7QUN4NGJFO0VBQ0U7QUQyNGJKOztBQzU0YkU7RUFDRTtBRCs0Yko7O0FDaDViRTtFQUNFO0FEbTViSjs7QUNwNWJFO0VBQ0U7QUR1NWJKOztBQ3g1YkU7RUFDRTtBRDI1Yko7O0FDNTViRTtFQUNFO0FEKzViSjs7QUNoNmJFO0VBQ0U7QURtNmJKOztBQ3A2YkU7RUFDRTtBRHU2Yko7O0FDeDZiRTtFQUNFO0FEMjZiSjs7QUM1NmJFO0VBQ0U7QUQrNmJKOztBQ2g3YkU7RUFDRTtBRG03Yko7O0FDcDdiRTtFQUNFO0FEdTdiSjs7QUN4N2JFO0VBQ0U7QUQyN2JKOztBQzU3YkU7RUFDRTtBRCs3Yko7O0FDNTdiQTtFQUVJO0lBQ0U7RUQ4N2JKOztFQy83YkU7SUFDRTtFRGs4Yko7O0VDbjhiRTtJQUNFO0VEczhiSjs7RUN2OGJFO0lBQ0U7RUQwOGJKOztFQzM4YkU7SUFDRTtFRDg4Yko7O0VDLzhiRTtJQUNFO0VEazliSjs7RUNuOWJFO0lBQ0U7RURzOWJKOztFQ3Y5YkU7SUFDRTtFRDA5Yko7O0VDMzliRTtJQUNFO0VEODliSjs7RUMvOWJFO0lBQ0U7RURrK2JKOztFQ24rYkU7SUFDRTtFRHMrYko7O0VDditiRTtJQUNFO0VEMCtiSjs7RUMzK2JFO0lBQ0U7RUQ4K2JKOztFQy8rYkU7SUFDRTtFRGsvYko7O0VDbi9iRTtJQUNFO0VEcy9iSjs7RUN2L2JFO0lBQ0U7RUQwL2JKOztFQzMvYkU7SUFDRTtFRDgvYko7O0VDLy9iRTtJQUNFO0VEa2djSjs7RUNuZ2NFO0lBQ0U7RURzZ2NKOztFQ3ZnY0U7SUFDRTtFRDBnY0o7O0VDM2djRTtJQUNFO0VEOGdjSjs7RUMvZ2NFO0lBQ0U7RURraGNKOztFQ25oY0U7SUFDRTtFRHNoY0o7O0VDdmhjRTtJQUNFO0VEMGhjSjs7RUMzaGNFO0lBQ0U7RUQ4aGNKOztFQy9oY0U7SUFDRTtFRGtpY0o7O0VDbmljRTtJQUNFO0VEc2ljSjs7RUN2aWNFO0lBQ0U7RUQwaWNKOztFQzNpY0U7SUFDRTtFRDhpY0o7O0VDL2ljRTtJQUNFO0VEa2pjSjs7RUNuamNFO0lBQ0U7RURzamNKOztFQ3ZqY0U7SUFDRTtFRDBqY0o7O0VDM2pjRTtJQUNFO0VEOGpjSjs7RUMvamNFO0lBQ0U7RURra2NKOztFQ25rY0U7SUFDRTtFRHNrY0o7O0VDdmtjRTtJQUNFO0VEMGtjSjs7RUMza2NFO0lBQ0U7RUQ4a2NKOztFQy9rY0U7SUFDRTtFRGtsY0o7O0VDbmxjRTtJQUNFO0VEc2xjSjs7RUN2bGNFO0lBQ0U7RUQwbGNKOztFQzNsY0U7SUFDRTtFRDhsY0o7O0VDL2xjRTtJQUNFO0VEa21jSjs7RUNubWNFO0lBQ0U7RURzbWNKOztFQ3ZtY0U7SUFDRTtFRDBtY0o7O0VDM21jRTtJQUNFO0VEOG1jSjs7RUMvbWNFO0lBQ0U7RURrbmNKOztFQ25uY0U7SUFDRTtFRHNuY0o7O0VDdm5jRTtJQUNFO0VEMG5jSjs7RUMzbmNFO0lBQ0U7RUQ4bmNKOztFQy9uY0U7SUFDRTtFRGtvY0o7O0VDbm9jRTtJQUNFO0VEc29jSjs7RUN2b2NFO0lBQ0U7RUQwb2NKOztFQzNvY0U7SUFDRTtFRDhvY0o7O0VDL29jRTtJQUNFO0VEa3BjSjs7RUNucGNFO0lBQ0U7RURzcGNKOztFQ3ZwY0U7SUFDRTtFRDBwY0o7O0VDM3BjRTtJQUNFO0VEOHBjSjs7RUMvcGNFO0lBQ0U7RURrcWNKOztFQ25xY0U7SUFDRTtFRHNxY0o7O0VDdnFjRTtJQUNFO0VEMHFjSjs7RUMzcWNFO0lBQ0U7RUQ4cWNKOztFQy9xY0U7SUFDRTtFRGtyY0o7O0VDbnJjRTtJQUNFO0VEc3JjSjs7RUN2cmNFO0lBQ0U7RUQwcmNKO0FBQ0Y7QUN2cmNBO0VBQVk7QUQwcmNaOztBQ3pyY0E7RUFBYTtBRDZyY2I7O0FDNXJjQTtFQUFhO0FEZ3NjYjs7QUMvcmNBO0VBQWE7QURtc2NiOztBQ2xzY0E7RUFBYTtBRHNzY2I7O0FDcnNjQTtFQUFhO0FEeXNjYjs7QUN4c2NBO0VBQWE7QUQ0c2NiOztBQzNzY0E7RUFBYTtBRCtzY2I7O0FDOXNjQTtFQUFjO0FEa3RjZDs7QUNybGRBOzs7O0NBQUE7QUFRQTs7Q0FBQTtBQUtBO0VBQ0E7RUFDQTtFQU1BO0FEOGtkQTtBQzVrZEE7RUFDQTtFQUNBO0VBTUE7QUR5a2RBO0FDdmtkQTtFQUNBO0VBQ0E7RUFNQTtBRG9rZEE7QUNsa2RBO0VBQ0E7RUFDQTtFQU1BO0FEK2pkQTtBQzdqZEE7RUFDQTtFQUNBO0VBTUE7QUQwamRBO0FDdmpkQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0FEb2pkQTtBQ3ArY0E7RUFBVztBRHUrY1g7O0FDdCtjQTtFQUFjO0FEMCtjZDs7QUN6K2NBO0VBRUU7RUFDQTtBRDIrY0Y7O0FDeCtjQTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0FEMCtjRjtBQ3orY0U7RUFDRTtFQUNBO0FEMitjSjtBQ3orY0U7RUFDRTtBRDIrY0o7O0FDdCtjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHkrY0Y7QUN4K2NFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEeStjSjs7QUNuK2NBO0VBQTBCO0FEdStjMUI7O0FDcCtjQTtFQUFhLHlCQXRHSDtBRDhrZFY7O0FDditjQTtFQUFlLGNBdkdMO0FEa2xkVjs7QUN6K2NBO0VBQWUseUJBeEdBO0FEcWxkZjs7QUM1K2NBO0VBQWtCLGNBekdIO0FEeWxkZjs7QUMvK2NBO0VBQWdCLHlCQXZHRTtBRDBsZGxCOztBQ2wvY0E7RUFBbUIsY0F4R0Q7QUQ4bGRsQjs7QUNwL2NBO0VBQWUseUJBekdDO0FEaW1kaEI7O0FDdi9jQTtFQUFpQixjQTFHRDtBRHFtZGhCOztBQzEvY0E7RUFBZSx5QkExR0c7QUR3bWRsQjs7QUM3L2NBO0VBQWtCLGNBM0dBO0FENG1kbEI7O0FDLy9jQTtFQUFlLHlCQW5HSDtBRHNtZFo7O0FDbGdkQTtFQUFpQixjQXBHTDtBRDBtZFo7O0FDcmdkQTtFQUFpQix5QkFwR0E7QUQ2bWRqQjs7QUN4Z2RBO0VBQW1CLGNBckdGO0FEaW5kakI7O0FDM2dkQTtFQUFrQix5QkFyR0M7QURvbmRuQjs7QUM5Z2RBO0VBQW9CLGNBdEdEO0FEd25kbkI7O0FDamhkQTtFQUFpQix5QkF0R0E7QUQybmRqQjs7QUNwaGRBO0VBQW1CLGNBdkdGO0FEK25kakI7O0FDdmhkQTtFQUFrQix5QkF2R0M7QURrb2RuQjs7QUMxaGRBO0VBQW9CLGNBeEdEO0FEc29kbkI7O0FDN2hkQTtFQUFtQix5QkF4R0M7QUR5b2RwQjs7QUNoaWRBO0VBQXFCLGNBekdEO0FENm9kcEI7O0FDbGlkQTtFQUFXLHlCQTdJSDtBRG1yZFI7O0FDcmlkQTtFQUFhLGNBOUlMO0FEdXJkUjs7QUN4aWRBO0VBQVUseUJBckZIO0FEaW9kUDs7QUMzaWRBO0VBQVksY0F0Rkw7QURxb2RQOztBQzdpZEE7RUFBWSxvREFsR0M7QURtcGRiOztBQ2hqZEE7RUFBYyxvREFsR0M7QURzcGRmOztBQ2xqZEE7RUFBZ0IseUJBNUZIO0FEa3BkYjs7QUNyamRBO0VBQWtCLGNBN0ZMO0FEc3BkYjs7QUN0amRBO0VBQVc7QUQwamRYOztBQ3pqZEE7RUFBYTtBRDZqZGI7O0FDMWpkQTtFQUFTLHlCQTNKSDtBRHl0ZE47O0FDN2pkQTtFQUFXO0FEaWtkWDs7QUMvamRBO0VBQVcseUJBeEpIO0FEMnRkUjs7QUNsa2RBO0VBQWE7QURza2RiOztBQ3BrZEE7RUFBTTtFQUNOO0FEd2tkQTs7QUNsa2RFO0VBQ0U7RUFDQTtBRHFrZEo7O0FDbGtkQTtFQUNFO0FEcWtkRjs7QUNqa2RBO0VBRUU7QURta2RGO0FDbGtkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEb2tkSjs7QUNqa2RBO0VBQ0U7QURva2RGOztBQ2hrZEE7RUFFRTtBRGtrZEY7QUNqa2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QURta2RKOztBQzdqZEE7RUFDRTtBRGdrZEY7O0FDNWpkQTtFQUVFLHFCQTFMVTtBRHd2ZFo7O0FDNWpkQTtFQUNFO0FEK2pkRjs7QUNyamRBO0VBRUU7QUR1amRGOztBQ3BqZEE7RUFDRSx5QkE3TVU7RUE4TVYsY0FqT0s7QUR3eGRQO0FDcmpkRTtFQUNFLHlCQTNOYztFQTROZDtFQUNBO0FEdWpkSjs7QUNwamRBO0VBQ0U7RUFDQTtFQUNBLGNBNU9LO0VBNk9MO0FEdWpkRjtBQ3RqZEU7RUFDRSx5QkF0T2M7RUF1T2Q7RUFDQTtBRHdqZEo7O0FDbGpkQTtFQUFpQjtBRHNqZGpCOztBQ3JqZEE7RUFBbUI7QUR5amRuQjs7QUN4amRBO0VBQW1CO0FENGpkbkI7O0FDM2pkQTtFQUFtQjtBRCtqZG5COztBQzlqZEE7RUFBcUI7QURra2RyQjs7QUNqa2RBO0VBQXFCO0FEcWtkckI7O0FDbmtkQTtFQUFxQjtBRHVrZHJCOztBQ3RrZEE7RUFBdUI7QUQwa2R2Qjs7QUN6a2RBO0VBQXVCO0FENmtkdkI7O0FDNWtkQTtFQUF1QjtBRGdsZHZCOztBQy9rZEE7RUFBeUI7QURtbGR6Qjs7QUNsbGRBO0VBQXlCO0FEc2xkekI7O0FDcGxkQTtFQUFZO0FEd2xkWjs7QUN2bGRBO0VBQVk7QUQybGRaOztBQ3psZEE7RUFDRztBRDRsZEg7O0FDemxkRTtFQUNFO0FENGxkSjs7QUM3bGRFO0VBQ0U7QURnbWRKOztBQ2ptZEU7RUFDRTtBRG9tZEo7O0FDcm1kRTtFQUNFO0FEd21kSjs7QUN6bWRFO0VBQ0U7QUQ0bWRKOztBQzdtZEU7RUFDRTtBRGduZEo7O0FDam5kRTtFQUNFO0FEb25kSjs7QUNybmRFO0VBQ0U7QUR3bmRKOztBQ3puZEU7RUFDRTtBRDRuZEo7O0FDN25kRTtFQUNFO0FEZ29kSjs7QUM1bmRFO0VBQ0U7QUQrbmRKOztBQ2hvZEU7RUFDRTtBRG1vZEo7O0FDcG9kRTtFQUNFO0FEdW9kSjs7QUN4b2RFO0VBQ0U7QUQyb2RKOztBQzVvZEU7RUFDRTtBRCtvZEo7O0FDaHBkRTtFQUNFO0FEbXBkSjs7QUNwcGRFO0VBQ0U7QUR1cGRKOztBQ3hwZEU7RUFDRTtBRDJwZEo7O0FDNXBkRTtFQUNFO0FEK3BkSjs7QUNocWRFO0VBQ0U7QURtcWRKOztBQ3BxZEU7RUFDRTtBRHVxZEo7O0FDeHFkRTtFQUNFO0FEMnFkSjs7QUM1cWRFO0VBQ0U7QUQrcWRKOztBQ2hyZEU7RUFDRTtBRG1yZEo7O0FDcHJkRTtFQUNFO0FEdXJkSjs7QUN4cmRFO0VBQ0U7QUQycmRKOztBQzVyZEU7RUFDRTtBRCtyZEo7O0FDaHNkRTtFQUNFO0FEbXNkSjs7QUNwc2RFO0VBQ0U7QUR1c2RKOztBQ3hzZEU7RUFDRTtBRDJzZEo7O0FDNXNkRTtFQUNFO0FEK3NkSjs7QUNodGRFO0VBQ0U7QURtdGRKOztBQ3B0ZEU7RUFDRTtBRHV0ZEo7O0FDeHRkRTtFQUNFO0FEMnRkSjs7QUM1dGRFO0VBQ0U7QUQrdGRKOztBQ2h1ZEU7RUFDRTtBRG11ZEo7O0FDcHVkRTtFQUNFO0FEdXVkSjs7QUN4dWRFO0VBQ0U7QUQydWRKOztBQzV1ZEU7RUFDRTtBRCt1ZEo7O0FDaHZkRTtFQUNFO0FEbXZkSjs7QUNwdmRFO0VBQ0U7QUR1dmRKOztBQ3h2ZEU7RUFDRTtBRDJ2ZEo7O0FDNXZkRTtFQUNFO0FEK3ZkSjs7QUNod2RFO0VBQ0U7QURtd2RKOztBQ3B3ZEU7RUFDRTtBRHV3ZEo7O0FDeHdkRTtFQUNFO0FEMndkSjs7QUM1d2RFO0VBQ0U7QUQrd2RKOztBQ2h4ZEU7RUFDRTtBRG14ZEo7O0FDcHhkRTtFQUNFO0FEdXhkSjs7QUN4eGRFO0VBQ0U7QUQyeGRKOztBQzV4ZEU7RUFDRTtBRCt4ZEo7O0FDaHlkRTtFQUNFO0FEbXlkSjs7QUNweWRFO0VBQ0U7QUR1eWRKOztBQ3h5ZEU7RUFDRTtBRDJ5ZEo7O0FDNXlkRTtFQUNFO0FEK3lkSjs7QUNoemRFO0VBQ0U7QURtemRKOztBQ3B6ZEU7RUFDRTtBRHV6ZEo7O0FDeHpkRTtFQUNFO0FEMnpkSjs7QUM1emRFO0VBQ0U7QUQremRKOztBQ2gwZEU7RUFDRTtBRG0wZEo7O0FDcDBkRTtFQUNFO0FEdTBkSjs7QUN4MGRFO0VBQ0U7QUQyMGRKOztBQzUwZEU7RUFDRTtBRCswZEo7O0FDaDFkRTtFQUNFO0FEbTFkSjs7QUNwMWRFO0VBQ0U7QUR1MWRKOztBQ3gxZEU7RUFDRTtBRDIxZEo7O0FDNTFkRTtFQUNFO0FEKzFkSjs7QUNoMmRFO0VBQ0U7QURtMmRKOztBQ3AyZEU7RUFDRTtBRHUyZEo7O0FDeDJkRTtFQUNFO0FEMjJkSjs7QUM1MmRFO0VBQ0U7QUQrMmRKOztBQ2gzZEU7RUFDRTtBRG0zZEo7O0FDcDNkRTtFQUNFO0FEdTNkSjs7QUN4M2RFO0VBQ0U7QUQyM2RKOztBQ3gzZEE7RUFFSTtJQUNFO0VEMDNkSjs7RUMzM2RFO0lBQ0U7RUQ4M2RKOztFQy8zZEU7SUFDRTtFRGs0ZEo7O0VDbjRkRTtJQUNFO0VEczRkSjs7RUN2NGRFO0lBQ0U7RUQwNGRKOztFQzM0ZEU7SUFDRTtFRDg0ZEo7O0VDLzRkRTtJQUNFO0VEazVkSjs7RUNuNWRFO0lBQ0U7RURzNWRKOztFQ3Y1ZEU7SUFDRTtFRDA1ZEo7O0VDMzVkRTtJQUNFO0VEODVkSjs7RUMvNWRFO0lBQ0U7RURrNmRKOztFQ242ZEU7SUFDRTtFRHM2ZEo7O0VDdjZkRTtJQUNFO0VEMDZkSjs7RUMzNmRFO0lBQ0U7RUQ4NmRKOztFQy82ZEU7SUFDRTtFRGs3ZEo7O0VDbjdkRTtJQUNFO0VEczdkSjs7RUN2N2RFO0lBQ0U7RUQwN2RKOztFQzM3ZEU7SUFDRTtFRDg3ZEo7O0VDLzdkRTtJQUNFO0VEazhkSjs7RUNuOGRFO0lBQ0U7RURzOGRKOztFQ3Y4ZEU7SUFDRTtFRDA4ZEo7O0VDMzhkRTtJQUNFO0VEODhkSjs7RUMvOGRFO0lBQ0U7RURrOWRKOztFQ245ZEU7SUFDRTtFRHM5ZEo7O0VDdjlkRTtJQUNFO0VEMDlkSjs7RUMzOWRFO0lBQ0U7RUQ4OWRKOztFQy85ZEU7SUFDRTtFRGsrZEo7O0VDbitkRTtJQUNFO0VEcytkSjs7RUN2K2RFO0lBQ0U7RUQwK2RKOztFQzMrZEU7SUFDRTtFRDgrZEo7O0VDLytkRTtJQUNFO0VEay9kSjs7RUNuL2RFO0lBQ0U7RURzL2RKOztFQ3YvZEU7SUFDRTtFRDAvZEo7O0VDMy9kRTtJQUNFO0VEOC9kSjs7RUMvL2RFO0lBQ0U7RURrZ2VKOztFQ25nZUU7SUFDRTtFRHNnZUo7O0VDdmdlRTtJQUNFO0VEMGdlSjs7RUMzZ2VFO0lBQ0U7RUQ4Z2VKOztFQy9nZUU7SUFDRTtFRGtoZUo7O0VDbmhlRTtJQUNFO0VEc2hlSjs7RUN2aGVFO0lBQ0U7RUQwaGVKOztFQzNoZUU7SUFDRTtFRDhoZUo7O0VDL2hlRTtJQUNFO0VEa2llSjs7RUNuaWVFO0lBQ0U7RURzaWVKOztFQ3ZpZUU7SUFDRTtFRDBpZUo7O0VDM2llRTtJQUNFO0VEOGllSjs7RUMvaWVFO0lBQ0U7RURramVKOztFQ25qZUU7SUFDRTtFRHNqZUo7O0VDdmplRTtJQUNFO0VEMGplSjs7RUMzamVFO0lBQ0U7RUQ4amVKOztFQy9qZUU7SUFDRTtFRGtrZUo7O0VDbmtlRTtJQUNFO0VEc2tlSjs7RUN2a2VFO0lBQ0U7RUQwa2VKOztFQzNrZUU7SUFDRTtFRDhrZUo7O0VDL2tlRTtJQUNFO0VEa2xlSjs7RUNubGVFO0lBQ0U7RURzbGVKOztFQ3ZsZUU7SUFDRTtFRDBsZUo7O0VDM2xlRTtJQUNFO0VEOGxlSjs7RUMvbGVFO0lBQ0U7RURrbWVKOztFQ25tZUU7SUFDRTtFRHNtZUo7O0VDdm1lRTtJQUNFO0VEMG1lSjs7RUMzbWVFO0lBQ0U7RUQ4bWVKOztFQy9tZUU7SUFDRTtFRGtuZUo7O0VDbm5lRTtJQUNFO0VEc25lSjtBQUNGO0FDbm5lQTtFQUFZO0FEc25lWjs7QUNybmVBO0VBQWE7QUR5bmViOztBQ3huZUE7RUFBYTtBRDRuZWI7O0FDM25lQTtFQUFhO0FEK25lYjs7QUM5bmVBO0VBQWE7QURrb2ViOztBQ2pvZUE7RUFBYTtBRHFvZWI7O0FDcG9lQTtFQUFhO0FEd29lYjs7QUN2b2VBO0VBQWE7QUQyb2ViOztBQzFvZUE7RUFBYztBRDhvZWQ7O0FrRmhoZkE7RUFFRTtJQUNFO0lBQ0E7SUFDQTtFbEZraGZGO0FBQ0Y7QWtGM2dmQTtFQUVFO0lBQ0U7RWxGNGdmRjs7RWtGMWdmQTtJQUNFO0VsRjZnZkY7O0VrRjFnZkE7SUFDRTtFbEY2Z2ZGO0VrRjVnZkU7SUFDRTtJQUNBO0VsRjhnZko7RWtGemdmSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VsRjJnZk47RWtGdmdmRTtJQUNFO0VsRnlnZko7O0VrRnBnZkk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbEZ1Z2ZOO0VrRm5nZkU7SUFDRTtFbEZxZ2ZKO0FBQ0Y7QW1GOWpmQTtFQUNFO0VBQ0E7RUFDQTtBbkZna2ZGO0FtRi9qZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7QW5GK2pmSjtBbUY1amZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GOGpmSjtBbUYzamZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjZqZko7QW1GempmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJsRjJETTtFa0YxRE47QW5GMmpmSjtBbUZ2amZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0FuRnVqZko7QW1GcGpmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FuRnFqZko7QW1GbGpmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Gb2pmSjtBbUZoamZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQmxGa0JNO0VrRmpCTjtBbkZramZKO0FtRi9pZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CbEZhYztFa0ZaZDtBbkZpamZKOztBb0Yzb2ZBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QXBGOG9mRjs7QW9Gem9mQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRjRvZkY7QW9Gem9mRTtFQUNFO0VBQ0E7RUFDQTtBcEYyb2ZKO0FvRjltZkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGK21mTjtBb0Y1bWZNO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXBGNG1mUjtBb0Z6bWZRO0VBQ0U7RUFDQTtFQUNBO0VBRUEsbUJuRmtCSztBRHdsZmY7QW9GeG1mUTtFQUNFO0VBQ0E7RUFDQTtFQUVBLG1CbkY2Qk87QUQ0a2ZqQjtBb0Z2bWZRO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJuRklBO0FEcW1mVjtBb0ZybWZNO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBcEZxbWZSO0FvRm5tZlE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQm5GaEJBO0FEcW5mVjtBb0ZubWZRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQm5GakJRO0FEc25mbEI7QW9GN2xmRTtFQUVFLGNuRjdCYztFbUY4QmQ7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGNmxmSjtBb0YzbGZJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGNGxmTjtBb0Z6bGZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGMmxmTjs7QXFGM3ZmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGOHZmRjtBcUZ0dmZJO0VBQ0U7QXJGd3ZmTjtBcUZ6dmZJO0VBQ0U7QXJGMnZmTjtBcUY1dmZJO0VBQ0U7QXJGOHZmTjtBcUYvdmZJO0VBQ0U7QXJGaXdmTjtBcUZsd2ZJO0VBQ0U7QXJGb3dmTjtBcUZyd2ZJO0VBQ0U7QXJGdXdmTjtBcUZ4d2ZJO0VBQ0U7QXJGMHdmTjtBcUYzd2ZJO0VBQ0U7QXJGNndmTjtBcUY5d2ZJO0VBQ0U7QXJGZ3hmTjtBcUZqeGZJO0VBQ0U7QXJGbXhmTjtBcUZweGZJO0VBQ0U7QXJGc3hmTjtBcUZ2eGZJO0VBQ0U7QXJGeXhmTjtBcUYxeGZJO0VBQ0U7QXJGNHhmTjtBcUY3eGZJO0VBQ0U7QXJGK3hmTjtBcUZoeWZJO0VBQ0U7QXJGa3lmTjtBcUZueWZJO0VBQ0U7QXJGcXlmTjtBcUZ0eWZJO0VBQ0U7QXJGd3lmTjtBcUZ6eWZJO0VBQ0U7QXJGMnlmTjtBcUY1eWZJO0VBQ0U7QXJGOHlmTjtBcUYveWZJO0VBQ0U7QXJGaXpmTjtBcUZsemZJO0VBQ0U7QXJGb3pmTjtBcUZyemZJO0VBQ0U7QXJGdXpmTjtBcUZ4emZJO0VBQ0U7QXJGMHpmTjtBcUYzemZJO0VBQ0U7QXJGNnpmTjtBcUY5emZJO0VBQ0U7QXJGZzBmTjtBcUZqMGZJO0VBQ0U7QXJGbTBmTjtBcUZwMGZJO0VBQ0U7QXJGczBmTjtBcUZ2MGZJO0VBQ0U7QXJGeTBmTjtBcUYxMGZJO0VBQ0U7QXJGNDBmTjtBcUY3MGZJO0VBQ0U7QXJGKzBmTjtBcUZoMWZJO0VBQ0U7QXJGazFmTjtBcUZuMWZJO0VBQ0U7QXJGcTFmTjtBcUZ0MWZJO0VBQ0U7QXJGdzFmTjtBcUZ6MWZJO0VBQ0U7QXJGMjFmTjtBcUY1MWZJO0VBQ0U7QXJGODFmTjtBcUYvMWZJO0VBQ0U7QXJGaTJmTjtBcUZsMmZJO0VBQ0U7QXJGbzJmTjtBcUZyMmZJO0VBQ0U7QXJGdTJmTjtBcUZ4MmZJO0VBQ0U7QXJGMDJmTjtBcUYzMmZJO0VBQ0U7QXJGNjJmTjtBcUY5MmZJO0VBQ0U7QXJGZzNmTjtBcUZqM2ZJO0VBQ0U7QXJGbTNmTjs7QXNGMTNmQTtBQU1BO0VBQ0UsbUJyRnNGZ0I7RXFGcEZoQjtBdEZ1M2ZGO0FzRnQzZkU7RUFDRSxtQnJGK0VXO0FEeXlmZjtBc0ZsM2ZJO0VBRUU7OztJQUFBO0F0RnMzZk47O0FzRi8yZkE7RUFFRTtBdEZpM2ZGO0FzRi8yZkk7RUFDRSxjckY4RFk7RXFGN0RaO0F0RmkzZk47QXNGLzJmTTtFQUNFLGNyRnNERTtBRDJ6ZlY7QXNGNzJmRTtFQUNFO0F0RisyZko7O0FzRnoyZkE7RUFDRTtFQUNBO0VBQ0E7QXRGNDJmRjs7QXNGeDJmRTtFQUNFO0VBQ0E7QXRGMjJmSjtBc0Z6MmZFO0VBQ0U7RUFFQTtBdEYwMmZKO0FzRnoyZkk7RUFDRSxjckYrQ2E7RXFGOUNYO0F0RjIyZlI7O0FBLzZmRTtFQUNFO0FBazdmSjtBQWg3ZkU7RUFDRTtFQUNBO0VBQ0E7QUFrN2ZKOztBQXo2ZkU7RUFDRTtFQUNBO0FBNDZmSjtBQTM2Zkk7RUFDRTtBQTY2Zk47QUFuNmZFO0VBRUU7RUFDQTtBQW82Zko7QUEvNWZJO0VBQ0U7QUFpNmZOO0FBLzVmTTtFQUNFO0FBaTZmUjtBQTc1Zkk7RUFDRTtBQSs1Zk4sQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2ZhcS5zY3NzIiwid2VicGFjazovLy8uL3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2FuaW0uc2NzcyIsIndlYnBhY2s6Ly8vLi9taXhpbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovLy8uL21vYmlsZS12Mi5zY3NzIiwid2VicGFjazovLy8uL19zaGFwZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9fYW5pbWF0ZWRUaXRsZS5zY3NzIiwid2VicGFjazovLy8uL19lbW9qaS5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ2FuaW0nO1xuQGltcG9ydCAncHVibGljJztcblxuXG4jZmFxe1xuICAuYmctc2hhcGV7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gICNmYXEtY29udGVudHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBtaW4taGVpZ2h0OiA4MHZoO1xuICB9XG5cblxuXG5cbn1cblxuLnF1ZXN0aW9uIHtcbiAgLnRvZ2dsZUFuc3dlcntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICY6aG92ZXJ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAuYXJyb3cgc3Zne1xuICAgICAgQGV4dGVuZCAuYW5pbS1hbGw7XG5cbiAgICB9XG5cblxuICB9XG4gIC5hbnN3ZXJ7XG4gICAgQGV4dGVuZCAuYW5pbS1hbGw7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG5cbiAgfVxuICAmLnNob3cge1xuICAgIC50b2dnbGVBbnN3ZXJ7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAgIC5hcnJvdyBzdmd7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYW5zd2Vye1xuICAgICAgbWF4LWhlaWdodDo5OTlweDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbi8qXG5ncmV5IGxpZ2h0IDogIzVEODM5RFxuZ3JlZW4tYmx1ZSA6ICNhYmFiYWJcbmJsdWUgOiAjMDAyOEY1IC8gIzY3RDZGQlxuKi9cblxuLy8gaHR0cHM6Ly9tYXRlcmlhbC5pby9yZXNvdXJjZXMvY29sb3IvIyEvP3ZpZXcubGVmdD0wJnZpZXcucmlnaHQ9MCZwcmltYXJ5LmNvbG9yPTAwMjhGNSZzZWNvbmRhcnkuY29sb3I9NjdENkZCXG4vLyBodHRwczovL2luLXlvdXItc2Fhcy5naXRodWIuaW8vbWF0ZXJpYWwtdWktdGhlbWUtZWRpdG9yL1xuLypcbntcInBhbGV0dGVcIjp7XCJjb21tb25cIjp7XCJibGFja1wiOlwicmdiYSg1MSwgNTEsIDUxLCAxKVwiLFwid2hpdGVcIjpcIiNmZmZcIn0sXCJiYWNrZ3JvdW5kXCI6e1wicGFwZXJcIjpcIiNmZmZcIixcImRlZmF1bHRcIjpcIiNmYWZhZmFcIn0sXCJwcmltYXJ5XCI6e1wibGlnaHRcIjpcInJnYmEoNTEsIDgzLCAyNDcsIDEpXCIsXCJtYWluXCI6XCJyZ2JhKDAsIDQwLCAyNDUsIDEpXCIsXCJkYXJrXCI6XCJyZ2JhKDAsIDI4LCAxNzEsIDEpXCIsXCJjb250cmFzdFRleHRcIjpcIiNmZmZcIn0sXCJzZWNvbmRhcnlcIjp7XCJsaWdodFwiOlwicmdiYSg3MiwgMTQ5LCAxNzUsIDEpXCIsXCJtYWluXCI6XCJyZ2JhKDEwMywgMjE0LCAyNTEsIDEpXCIsXCJkYXJrXCI6XCJyZ2JhKDEzMywgMjIyLCAyNTEsIDEpXCIsXCJjb250cmFzdFRleHRcIjpcIiNmZmZcIn0sXCJlcnJvclwiOntcImxpZ2h0XCI6XCIjZTU3MzczXCIsXCJtYWluXCI6XCIjZjQ0MzM2XCIsXCJkYXJrXCI6XCIjZDMyZjJmXCIsXCJjb250cmFzdFRleHRcIjpcIiNmZmZcIn0sXCJ0ZXh0XCI6e1wicHJpbWFyeVwiOlwicmdiYSgwLCAwLCAwLCAwLjg3KVwiLFwic2Vjb25kYXJ5XCI6XCJyZ2JhKDAsIDAsIDAsIDAuNTQpXCIsXCJkaXNhYmxlZFwiOlwicmdiYSgwLCAwLCAwLCAwLjM4KVwiLFwiaGludFwiOlwicmdiYSgwLCAwLCAwLCAwLjM4KVwifX19XG4qL1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86MzAwLDQwMCw1MDAsNjAwLDcwMCZkaXNwbGF5PXN3YXAnKTtcblxuQGZvbnQtZmFjZSB7XG5mb250LWZhbWlseTogJ0NpcmN1bGFyU3RkJztcbnNyYzogbG9jYWwoJ0NpcmN1bGFyU3RkLU1lZGl1bScpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1NZWRpdW0uc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtLnR0ZicpIGZvcm1hdCgndHRmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLU1lZGl1bS5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuZm9udC1mYW1pbHk6ICdDaXJjdWxhclN0ZCc7XG5zcmM6IGxvY2FsKCdDaXJjdWxhclN0ZC1NZWRpdW1JdGFsaWMnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtTWVkaXVtSXRhbGljLnN2ZyNDaXJjdWxhclN0ZCcpIGZvcm1hdCgnc3ZnJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLU1lZGl1bUl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLU1lZGl1bUl0YWxpYy50dGYnKSBmb3JtYXQoJ3R0ZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1NZWRpdW1JdGFsaWMuZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXG47XG5mb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbmZvbnQtZmFtaWx5OiAnQ2lyY3VsYXJTdGQnO1xuc3JjOiBsb2NhbCgnQ2lyY3VsYXJTdGQtQm9sZCcpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLnN2ZyNDaXJjdWxhclN0ZCcpIGZvcm1hdCgnc3ZnJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLnR0ZicpIGZvcm1hdCgndHRmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQuZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXG47XG5mb250LXdlaWdodDogYm9sZDtcbn1cbkBmb250LWZhY2Uge1xuZm9udC1mYW1pbHk6ICdDaXJjdWxhclN0ZCc7XG5zcmM6IGxvY2FsKCdDaXJjdWxhclN0ZC1Cb2xkJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQuc3ZnI0NpcmN1bGFyU3RkJykgZm9ybWF0KCdzdmcnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQudHRmJykgZm9ybWF0KCd0dGYnKSxcbnVybCgnLi4vZm9udHMvQ2lyY3VsYXIvQ2lyY3VsYXJTdGQtQm9sZC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbjtcbmZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AZm9udC1mYWNlIHtcbmZvbnQtZmFtaWx5OiAnQ2lyY3VsYXJTdGQnO1xuc3JjOiBsb2NhbCgnQ2lyY3VsYXJTdGQtQm9sZCcpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLnN2ZyNDaXJjdWxhclN0ZCcpIGZvcm1hdCgnc3ZnJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkLnR0ZicpIGZvcm1hdCgndHRmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGQuZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXG47XG5mb250LXdlaWdodDogNzAwO1xufVxuXG5AZm9udC1mYWNlIHtcbmZvbnQtZmFtaWx5OiAnQ2lyY3VsYXJTdGQnO1xuc3JjOiBsb2NhbCgnQ2lyY3VsYXJTdGQtQm9sZEl0YWxpYycpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkSXRhbGljLnN2ZyNDaXJjdWxhclN0ZCcpIGZvcm1hdCgnc3ZnJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxudXJsKCcuLi9mb250cy9DaXJjdWxhci9DaXJjdWxhclN0ZC1Cb2xkSXRhbGljLnR0ZicpIGZvcm1hdCgndHRmJyksXG51cmwoJy4uL2ZvbnRzL0NpcmN1bGFyL0NpcmN1bGFyU3RkLUJvbGRJdGFsaWMuZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpXG47XG5mb250LXdlaWdodDo1MDA7XG5mb250LXN0eWxlOiBpdGFsaWM7XG59XG4kcHJpbWFyeTogIzAwMjhGNTtcbiRwcmltYXJ5LWRhcms6ICMwMDAwYzE7XG4kcHJpbWFyeS0xMjA6ICMwMDA2NDY7XG4kcHJpbWFyeS1saWdodDogIzZkNTZmZjtcbiRwcmltYXJ5LWxpZ2h0ZXI6ICMwMDBlZmY7XG5cbiRzZWNvbmRhcnk6ICM2N0Q2RkI7XG4kc2Vjb25kYXJ5LWRhcms6ICMyMmE0Yzg7Ly8jNDg5NWFmO1xuJHNlY29uZGFyeS1saWdodGVyOiNkN2RjZmY7Ly8gIzg1ZGVmYjtcbiRzZWNvbmRhcnktbGlnaHQ6IzlmZmZmZjsvLyAjODVkZWZiO1xuJHRoaXJkOiAjNzA3MDcwO1xuXG4kcmVkOiAjRkI0RTRFO1xuJHJlZC1kYXJrZXI6ICNFOTNDM0M7XG4kcmVkLWxpZ2h0ZXI6ICNGRjYyNjI7XG5cbiRvcmFuZ2U6ICNmZjcxNDA7XG4kb3JhbmdlLWxpZ2h0OiAjRkJFM0Q0OyAvL3JnYmEoMjU1LCAxMTMsIDY0LCAwLjIpO1xuJGdyZWVuOiAjMzliNTRhO1xuJHllbGxvdzogI2ZmZjEyNTtcbiRkYXJrOiAjM0UzRTNFO1xuXG5cbiRwcmltYXJ5OiAjMzMzRUZGOyAvLyA4MCVcbiRwcmltYXJ5LWRhcms6ICMxQTI2RkY7IC8vIDkwJVxuLy8kcHJpbWFyeS1kYXJrZXIgIzAwMEVGRjsgLy8gMTAwJSAvLyBvdmVycmlkZSBiZXNjYXVzZSBub3QgZW5vdWdodCBkYXJrXG4kcHJpbWFyeS1kYXJrZXI6ICMwMDBFRkY7IC8vIDEwMCVcbiRwcmltYXJ5LWRhcmtlc3Q6ICMwMDA2NDY7XG4kcHJpbWFyeS1saWdodDogIzRENTZGRjsgLy8gNzAlXG4kcHJpbWFyeS1saWdodGVyOiAjNjY2RUZGOyAvLyA2MCVcblxuJHByaW1hcnktODA6ICRwcmltYXJ5O1xuJHByaW1hcnktOTA6ICRwcmltYXJ5LWRhcms7XG4kcHJpbWFyeS0xMDA6ICRwcmltYXJ5LWRhcmtlcjtcbiRwcmltYXJ5LTEyMDogJHByaW1hcnktZGFya2VzdDtcbiRwcmltYXJ5LTcwOiAkcHJpbWFyeS1saWdodDtcbiRwcmltYXJ5LTYwOiAkcHJpbWFyeS1saWdodGVyO1xuXG5cbiRzZWNvbmRhcnk6ICNCM0I3RkY7IC8vMzAlXG4kc2Vjb25kYXJ5LWRhcms6ICM5OTlGRkY7Ly8gNDAlO1xuJHNlY29uZGFyeS1kYXJrZXI6ICM4MDg2RkY7Ly81MCU7XG4kc2Vjb25kYXJ5LWxpZ2h0OiNDQ0NGRkY7Ly8gMjAlO1xuJHNlY29uZGFyeS1saWdodGVyOiNFNkU3RkY7Ly8gMTAlO1xuJHNlY29uZGFyeS1saWdodGVzdDojOWZmZmZmOyAvLyBub3QgZW5vdWdodCBsaWdodDtcblxuXG4kZ3JleTogIzk5OUJCNTtcbiRncmV5LWRhcms6ICM2NjZBOTA7XG4kZ3JleS1kYXJrZXI6ICMzMzM4NkI7XG4kZ3JleS1kYXJrZXN0OiAjMDAwNjQ2O1xuJGdyZXktbGlnaHQ6ICNDQ0NEREE7XG4kZ3JleS1saWdodGVyOiAjRTZFNkVEO1xuJGdyZXktbGlnaHRlc3Q6ICNGMkYzRjY7XG5cblxuJHByaW1hcnktaG92ZXI6ICRwcmltYXJ5LWRhcms7XG5cbiRncmFkaWVuLWJnOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICRwcmltYXJ5LCAkc2Vjb25kYXJ5KTtcbiRncmFkaWVuLUgtYmc6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgJHByaW1hcnktZGFyaywgJHNlY29uZGFyeS1kYXJrKTtcblxuJGdyYWRpZW4tcmV2ZXJzZS1iZzogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAkc2Vjb25kYXJ5LCAkcHJpbWFyeSk7XG4kZ3JhZGllbi1yZXZlcnNlLWgtYmc6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgJHNlY29uZGFyeSwgJHByaW1hcnkpO1xuXG5cblxuXG4kZ3JheS1saWdodDogI0VGRTZFRjtcbiR0ZWFsOiAjMDBhMDk5O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCIsXG4gIGVzOiBcIkVsZWdpclwiLFxuICBmcjogXCJQYXJjb3VyaXJcIlxuKTtcblxuXG4kaG92ZXItb3BhY2l0eTogMC44O1xuXG4uYXZpdmEtYmd7IGJhY2tncm91bmQtY29sb3I6ICNmZmQ5MDA7IH1cbi5hdml2YS1jb2xvcnsgY29sb3I6IzAwNGZiNjsgfVxuLmJ0bi1hdml2YXtcbiAgQGV4dGVuZCAucHJpbWFyeS1iZztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNGZiNjs7XG4gIGNvbG9yOiNmZmQ5MDA7XG59XG5cbiNtYXNre1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG5cbiAgei1pbmRleDoxO1xuICAmLm9wZW57XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OjEwMCU7XG4gIH1cbiAgJi52aXNpYmxle1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTI4LDEyOCwxMjgsMC4yNSk7XG4gIH1cblxufVxuXG4jcG9wdXB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgei1pbmRleDo5OTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LWhlaWdodDogOTB2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgJi5vcGVue1xuICAgIEBleHRlbmQgLmJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOjI1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICB0b3A6NXZoO1xuICAgIGxlZnQ6MTUlO1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cblxuXG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXJ7Y29udGVudDpcIlBhcmNvdXJpclwiIWltcG9ydGFudDt9XG5cblxuLnByaW1hcnktYmd7IGJhY2tncm91bmQtY29sb3I6JHByaW1hcnk7IH1cbi5wcmltYXJ5LWNvbG9ye2NvbG9yOiRwcmltYXJ5O31cblxuLnByaW1hcnktSC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1kYXJrOyB9XG4ucHJpbWFyeS1ILWNvbG9yeyBjb2xvcjokcHJpbWFyeS1kYXJrO31cbi5wcmltYXJ5LUhILWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LTEyMDt9XG4ucHJpbWFyeS1ISC1jb2xvcnsgY29sb3I6JHByaW1hcnktMTIwO31cblxuLnByaW1hcnktTC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1saWdodDsgfVxuLnByaW1hcnktTC1jb2xvcntjb2xvcjokcHJpbWFyeS1saWdodDt9XG4ucHJpbWFyeS1MTC1iZ3tiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWxpZ2h0ZXI7fVxuLnByaW1hcnktTEwtY29sb3J7Y29sb3I6JHByaW1hcnktbGlnaHRlcjt9XG5cbi5zZWNvbmRhcnktYmd7IGJhY2tncm91bmQtY29sb3I6JHNlY29uZGFyeTsgfVxuLnNlY29uZGFyeS1jb2xvcntjb2xvcjokc2Vjb25kYXJ5O31cbi5zZWNvbmRhcnktSC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokc2Vjb25kYXJ5LWRhcms7IH1cbi5zZWNvbmRhcnktSC1jb2xvcntjb2xvcjokc2Vjb25kYXJ5LWRhcms7fVxuLnNlY29uZGFyeS1ISC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokc2Vjb25kYXJ5LWRhcmtlcjsgfVxuLnNlY29uZGFyeS1ISC1jb2xvcntjb2xvcjokc2Vjb25kYXJ5LWRhcmtlcjt9XG4uc2Vjb25kYXJ5LUwtYmd7IGJhY2tncm91bmQtY29sb3I6JHNlY29uZGFyeS1saWdodDsgfVxuLnNlY29uZGFyeS1MLWNvbG9ye2NvbG9yOiRzZWNvbmRhcnktbGlnaHQ7fVxuLnNlY29uZGFyeS1MTC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokc2Vjb25kYXJ5LWxpZ2h0ZXI7IH1cbi5zZWNvbmRhcnktTEwtY29sb3J7Y29sb3I6JHNlY29uZGFyeS1saWdodGVyO31cbi5zZWNvbmRhcnktTExMLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRzZWNvbmRhcnktbGlnaHRlc3Q7IH1cbi5zZWNvbmRhcnktTExMLWNvbG9ye2NvbG9yOiRzZWNvbmRhcnktbGlnaHRlc3Q7fVxuXG4udGhpcmQtYmd7IGJhY2tncm91bmQtY29sb3I6JHRoaXJkOyB9XG4udGhpcmQtY29sb3J7Y29sb3I6JHRoaXJkO31cbi50ZWFsLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiR0ZWFsOyB9XG4udGVhbC1jb2xvcntjb2xvcjokdGVhbDt9XG5cbi5ncmFkaWVuLWJne2JhY2tncm91bmQ6ICRncmFkaWVuLWJnO31cbi5ncmFkaWVuLUgtYmd7YmFja2dyb3VuZDogJGdyYWRpZW4tSC1iZzt9XG5cbi5ncmF5LWxpZ2h0LWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5LWxpZ2h0OyB9XG4uZ3JheS1saWdodC1jb2xvcntjb2xvcjokZ3JheS1saWdodDt9XG5cblxuLndoaXRlLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7IH1cbi53aGl0ZS1jb2xvcntjb2xvcjojZmZmZmZmIWltcG9ydGFudDt9XG5cblxuLnJlZC1iZ3sgYmFja2dyb3VuZC1jb2xvcjokcmVkOyB9XG4ucmVkLWNvbG9ye2NvbG9yOiRyZWQhaW1wb3J0YW50O31cblxuLmdyZWVuLWJneyBiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjsgfVxuLmdyZWVuLWNvbG9ye2NvbG9yOiRncmVlbiFpbXBvcnRhbnQ7fVxuXG4uYm94eyBib3gtc2hhZG93OiAwcHggMHB4IDRweCAycHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbmJhY2tncm91bmQ6ICNmZmY7IH1cblxuXG4uYnRuLXByaW1hcnl7XG4gIEBleHRlbmQgLnByaW1hcnktYmc7XG5cbiAgJjpob3ZlcntcbiAgICBjb2xvcjojZmZmO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnl7XG4gIGJvcmRlcjoxcHggc29saWQgJHByaW1hcnk7XG4gIEBleHRlbmQgLnByaW1hcnktY29sb3I7XG59XG5cbi5idG4tcHJpbWFyeS1Ie1xuICBAZXh0ZW5kIC5wcmltYXJ5LUgtYmc7XG4gIGNvbG9yOiNmZmY7XG4gICY6aG92ZXJ7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICB9XG59XG4uYnRuLW91dGxpbmUtcHJpbWFyeS1Ie1xuICBib3JkZXI6MXB4IHNvbGlkICRwcmltYXJ5LWRhcms7XG4gIEBleHRlbmQgLnByaW1hcnktSC1jb2xvcjtcbn1cblxuLmJ0bi1wcmltYXJ5LUx7XG4gIEBleHRlbmQgLnByaW1hcnktTC1iZztcbiAgY29sb3I6I2ZmZjtcbiAgJjpob3ZlcntcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgY29sb3I6I2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zdHlsZTppdGFsaWM7XG4gIH1cblxuXG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5LUx7XG4gIGJvcmRlcjoxcHggc29saWQgJHByaW1hcnktbGlnaHQ7XG4gIEBleHRlbmQgLnByaW1hcnktTC1jb2xvcjtcbn1cblxuLmJ0bi1zZWNvbmRhcnl7XG4gIEBleHRlbmQgLnNlY29uZGFyeS1iZztcbiAgYm9yZGVyLWNvbG9yOiRzZWNvbmRhcnk7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5e1xuICBib3JkZXI6MXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gIEBleHRlbmQgLnNlY29uZGFyeS1jb2xvcjtcbn1cblxuXG5cblxuLmJ0bi1zZWNvbmRhcnktSHtcbiAgQGV4dGVuZCAuc2Vjb25kYXJ5LUgtYmc7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5LUh7XG5cbiAgYm9yZGVyOjFweCBzb2xpZCAkc2Vjb25kYXJ5LWRhcms7XG4gIEBleHRlbmQgLnNlY29uZGFyeS1ILWNvbG9yO1xufVxuLmJ0bi1saW5re1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5O1xuICBjb2xvcjokZGFyaztcblxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktbGlnaHRlcjtcbiAgICBjb2xvcjp3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbi5idG4tb3V0bGluZS13aGl0ZXtcbiAgYmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtcbiAgYm9yZGVyOjFweCBzb2xpZCAkZGFyaztcbiAgY29sb3I6JGRhcms7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWxpZ2h0ZXI7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkcHJpbWFyeS1saWdodGVyO1xuICAgIGNvbG9yOndoaXRlO1xuXG4gIH1cbn1cblxuXG4uYm9yZGVyLXByaW1hcnl7IGJvcmRlcjoycHggc29saWQgJHByaW1hcnk7IH1cbi5ib3JkZXItcHJpbWFyeS1IeyBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LWRhcms7IH1cbi5ib3JkZXItcHJpbWFyeS1MeyBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LWxpZ2h0OyB9XG4uYm9yZGVyLXNlY29uZGFyeXsgYm9yZGVyOjJweCBzb2xpZCAkc2Vjb25kYXJ5OyB9XG4uYm9yZGVyLXNlY29uZGFyeS1IeyBib3JkZXI6MnB4IHNvbGlkICRzZWNvbmRhcnktZGFyazsgfVxuLmJvcmRlci1zZWNvbmRhcnktTHsgYm9yZGVyOjJweCBzb2xpZCAkc2Vjb25kYXJ5LWxpZ2h0OyB9XG5cbi5ib3JkZXItdG9wLXByaW1hcnl7IGJvcmRlci10b3A6MnB4IHNvbGlkICRwcmltYXJ5OyB9XG4uYm9yZGVyLXRvcC1wcmltYXJ5LUh7IGJvcmRlci10b3A6MnB4IHNvbGlkICRwcmltYXJ5LWRhcms7IH1cbi5ib3JkZXItdG9wLXByaW1hcnktTHsgYm9yZGVyLXRvcDoycHggc29saWQgJHByaW1hcnktbGlnaHQ7IH1cbi5ib3JkZXItdG9wLXNlY29uZGFyeXsgYm9yZGVyLXRvcDoycHggc29saWQgJHNlY29uZGFyeTsgfVxuLmJvcmRlci10b3Atc2Vjb25kYXJ5LUh7IGJvcmRlci10b3A6MnB4IHNvbGlkICRzZWNvbmRhcnktZGFyazsgfVxuLmJvcmRlci10b3Atc2Vjb25kYXJ5LUx7IGJvcmRlci10b3A6MnB4IHNvbGlkICRzZWNvbmRhcnktbGlnaHQ7IH1cblxuLmJvcmRlci0yMHsgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuLmJvcmRlci01MHsgYm9yZGVyLXJhZGl1czogNTBweDsgfVxuXG4uZW1vaml7XG4gICBmb250LWZhbWlseTpBcHBsZSBDb2xvciBFbW9qaTtcbn1cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuICAuei0jeyRpfXtcbiAgICB6LWluZGV4OiN7JGl9O1xuICB9XG59XG5AZm9yICRpIGZyb20gNyB0aHJvdWdoIDcwIHtcbiAgLmZvbnQtI3skaX17XG4gICAgZm9udC1zaXplOiN7JGl9cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBAZm9yICRpIGZyb20gNyB0aHJvdWdoIDcwIHtcbiAgICAuZm9udC1tZC0jeyRpfXtcbiAgICAgIGZvbnQtc2l6ZTojeyRpfXB4O1xuICAgIH1cbiAgfVxufVxuLm9wYWNpdHktMHsgb3BhY2l0eTogMDsgfVxuLm9wYWNpdHktMTB7IG9wYWNpdHk6IDAuMTsgfVxuLm9wYWNpdHktMjB7IG9wYWNpdHk6IDAuMjsgfVxuLm9wYWNpdHktMjV7IG9wYWNpdHk6IDAuMjU7IH1cbi5vcGFjaXR5LTUweyBvcGFjaXR5OiAwLjU7IH1cbi5vcGFjaXR5LTc1eyBvcGFjaXR5OiAwLjc1OyB9XG4ub3BhY2l0eS04MHsgb3BhY2l0eTogMC44OyB9XG4ub3BhY2l0eS05MHsgb3BhY2l0eTogMC45OyB9XG4ub3BhY2l0eS0xMDB7IG9wYWNpdHk6IDE7IH1cbiIsIkBpbXBvcnQgJ21peGluJztcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cblxuLmFuaW0tYWxsIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtbXMtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2UtaW4tb3V0O1xuXHQtby10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZS1pbi1vdXQ7XG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbi5hbmltLWFsbC0xcyB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuXHQtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcblx0LW1zLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcblx0LW8tdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG59XG5cblxuLyogUk9UQVRJT04gKi9cbkAtbW96LWtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIHNwaW4tcmV2ZXJzZSB7IDEwMCUgeyAtbW96LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB9IH1cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLXJldmVyc2UgeyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTsgfSB9XG5Aa2V5ZnJhbWVzIHNwaW4tcmV2ZXJzZSB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB0cmFuc2Zvcm06cm90YXRlKC0zNjBkZWcpOyB9IH1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAyMHtcblx0LnJvdGF0ZS0jeyRpfXMge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uOnNwaW4gI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHQtbW96LWFuaW1hdGlvbjpzcGluICN7JGl9cyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdFx0YW5pbWF0aW9uOnNwaW4gI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblxuXHR9XG5cblx0LnJvdGF0ZS1yZXZlcnNlLSN7JGl9c3tcblx0XHQtd2Via2l0LWFuaW1hdGlvbjpzcGluLXJldmVyc2UgI3skaX1zICBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdFx0LW1vei1hbmltYXRpb246c3Bpbi1yZXZlcnNlICN7JGl9cyAgbGluZWFyIGZvcndhcmRzIGluZmluaXRlO1xuXHRcdGFuaW1hdGlvbjpzcGluLXJldmVyc2UgI3skaX1zIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0fVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoZmFkZWluLWFuaW0pIHtcblx0MCUgeyBvcGFjaXR5OjA7IGRpc3BsYXk6IG5vbmU7fVxuXHQxJSB7IG9wYWNpdHk6MDsgZGlzcGxheTogYmxvY2s7fVxuXHQ1MCUgIHtvcGFjaXR5IDogMTsgbWF4LWhlaWdodDogOTk5cHg7fVxuXHQxMDAlICB7b3BhY2l0eSA6IDE7IG1heC1oZWlnaHQ6IDk5OXB4O31cbn1cbkBpbmNsdWRlIGtleWZyYW1lcyhmYWRlb3V0LWFuaW0pIHtcblx0MCUge31cblx0NTAlICB7b3BhY2l0eSA6IDA7fVxuXHQxMDAlICB7b3BhY2l0eSA6IDA7IGRpc3BsYXk6bm9uZTsgei1pbmRleDotMTt9XG59XG5cblxuQGluY2x1ZGUga2V5ZnJhbWVzKHVwZGF0ZS1jb2xvcikge1xuXHQwJSB7ICB9XG5cdDUwJSAgeyBiYWNrZ3JvdW5kOiRwcmltYXJ5OyB9XG5cdDk1JSAgeyAgfVxuXHQxMDAlICB7ICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhtb3ZlLXNoYXBlKSB7XG5cdDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAlLCAwcHgpIHJvdGF0ZSgwKSB9XG5cdDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDM1MCUsIDUwJSwgMHB4KSByb3RhdGUoMzYwZGVnKTsgfVxuXHQ5NSUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAlLCAwcHgpOyB9XG5cdDEwMCUgIHsgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoYmctY2hhbmdlKSB7XG5cdDAlIHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93IH1cblx0MjUlICB7IGJhY2tncm91bmQtY29sb3I6IHJlZH1cblx0NTAlICB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvd31cblx0NzUlICB7IGJhY2tncm91bmQtY29sb3I6IGJsYWNrfVxuXHQxMDAlICB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvdyB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhzY2FsbC1uLXJvdGF0ZSkge1xuXHQwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgwKTsgbWFyZ2luOjA7fVxuXHQxMCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMTgwKTttYXJnaW46LTIwcHggMCAwIDEwcHg7fVxuXHQyMCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMC4yKSByb3RhdGUoMzYwKTttYXJnaW46MjBweCAwIDAgLTVweDt9XG5cdDQwJSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgwLjQpIHJvdGF0ZSgtMzYwKTttYXJnaW46MCAwIDAgMjBweDt9XG5cdDYwJSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpIHJvdGF0ZSgzNjApO21hcmdpbjotMjBweCAwIDAgLTVweDt9XG5cdDgwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMzYwZGVnKTsgbWFyZ2luOjA7IG9wYWNpdHk6IDE7fVxuXHQxMDAlICB7IHRyYW5zZm9ybTogc2NhbGUoMC41KSByb3RhdGUoLTM2MGRlZyk7IG9wYWNpdHk6IDA7IH1cbn1cblxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoc2NhbGwtbi1sYXVuY2gpIHtcblx0MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuXHQ1MCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyAgfVxuXHQ1MiUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDNkZWcpO31cblx0NTMlICB7ICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtM2RlZyk7fVxuXHQ1NCUgIHsgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDJkZWcpOyB9XG5cdDU1JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpOyB9XG5cdDU2JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpOyB9XG5cdDU2JSAgeyAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMWRlZyk7ICB0b3A6MzMwcHg7cmlnaHQ6NTBweDsgIH1cblx0MTAwJSAgeyB0b3A6LTIwMHB4OyByaWdodDotMjAwcHg7fVxuXG59XG4uZW1vaml7XG5cdCR0aW1lOiA1cztcblxuXG5cdCYuLWVtLWVhcnRoLm9ue1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC1hbmltYXRpb246c2NhbGwtbi1yb3RhdGUgMTBzIGxpbmVhciBmb3J3YXJkcyAgIDE7XG5cdFx0LW1vei1hbmltYXRpb246c2NhbGwtbi1yb3RhdGUgMTBzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHRcdGFuaW1hdGlvbjpzY2FsbC1uLXJvdGF0ZSAxMHMgbGluZWFyIGZvcndhcmRzICAxO1xuXHR9XG5cdCYuLWVtLXJvY2tldC5vbntcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uOnNjYWxsLW4tbGF1bmNoICR0aW1lIGxpbmVhciBmb3J3YXJkcyAgMTtcblx0XHQtbW96LWFuaW1hdGlvbjpzY2FsbC1uLWxhdW5jaCAkdGltZSBsaW5lYXIgZm9yd2FyZHMgMTtcblx0XHRhbmltYXRpb246c2NhbGwtbi1sYXVuY2ggJHRpbWUgbGluZWFyIGZvcndhcmRzICAxO1xuXHR9XG59XG5cdC8qXG4ubWV0YS10aXRsZS1zaGFwZXN7XG5cdCR0aW1lOiAxMHM7XG4td2Via2l0LWFuaW1hdGlvbjp1cGRhdGUtY29sb3IgJHRpbWUqMiBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cdC1tb3otYW5pbWF0aW9uOnVwZGF0ZS1jb2xvciAkdGltZSoyIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0YW5pbWF0aW9uOnVwZGF0ZS1jb2xvciAkdGltZSoyIGxpbmVhciBmb3J3YXJkcyAgaW5maW5pdGU7XG5cblx0Lm1ldGEtdGl0bGUtc2hhcGV7XG5cblx0XHQtd2Via2l0LWFuaW1hdGlvbjptb3ZlLXNoYXBlICR0aW1lIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHQtbW96LWFuaW1hdGlvbjptb3ZlLXNoYXBlICR0aW1lIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcblx0XHRhbmltYXRpb246bW92ZS1zaGFwZSAkdGltZSBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG5cblx0fVxufSovXG5cbkBpbmNsdWRlIGtleWZyYW1lcyhtb3ZlLWltZy1jYXJkKSB7XG5cdDAlIHsgIH1cblx0MjUlICB7IHRyYW5zZm9ybTogcm90YXRlKDNkZWcpOyB9XG5cdDUwJSAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuXHQ3NSUgIHsgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpOyB9XG5cdDEwMCUgIHsgfVxufVxuLmZhZGVvdXR7XG5cblx0LXdlYmtpdC1hbmltYXRpb246ZmFkZW91dC1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHQtbW96LWFuaW1hdGlvbjpmYWRlb3V0LWFuaW0gMXMgbGluZWFyIGZvcndhcmRzIDE7XG5cdGFuaW1hdGlvbjpmYWRlb3V0LWFuaW0gMXMgbGluZWFyIGZvcndhcmRzIDE7XG59XG5cbi5mYWRlaW57XG5cdC13ZWJraXQtYW5pbWF0aW9uOmZhZGVpbi1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xuXHQtbW96LWFuaW1hdGlvbjpmYWRlaW4tYW5pbSAxcyBsaW5lYXIgZm9yd2FyZHMgMTtcblx0YW5pbWF0aW9uOmZhZGVpbi1hbmltIDFzIGxpbmVhciBmb3J3YXJkcyAxO1xufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMgKGVtb2ppLXdhdmluZykge1xuXHQwJSB7IHRvcDoxMCU7IGxlZnQ6MTIwJTsgfVxuXHQ3JSB7IG9wYWNpdHk6IDE7IH1cblx0MTUlICB7IHRvcDoyMCU7ICB9XG5cdDI1JSAgeyB0b3A6MzAlOyAgfVxuXHQzMCUgIHsgdG9wOjI1JTsgfVxuXHQzNSUgIHsgdG9wOjM1JTsgfVxuXHQ0NSUgIHsgdG9wOjQ1JTsgfVxuXHQ1NSUgIHsgdG9wOjUxJTsgfVxuXHQ2NSUgIHsgdG9wOjQ1JTsgfVxuXHQ3NSUgIHsgdG9wOjM1JTsgfVxuXHQ4NSUgIHsgdG9wOjQ1JTsgfVxuXHQ5NSUgIHsgdG9wOjUyJTsgfVxuXHQ5OSUgeyBvcGFjaXR5OiAxO31cblx0MTAwJSAgeyB0b3A6NDUlOyBsZWZ0Oi0yMCU7IG9wYWNpdHk6IDA7fVxufVxuXG4jc2tpbGxze1xuXG5cdC5lbW9qaS5vbntcblx0XHRvcGFjaXR5OiAxO1xuXHRcdCR0aW1lOiAxNXM7XG5cdFx0LXdlYmtpdC1hbmltYXRpb246ZW1vamktd2F2aW5nICR0aW1lIGVhc2UtaW4tb3V0IGZvcndhcmRzIDE7XG5cdFx0LW1vei1hbmltYXRpb246ZW1vamktd2F2aW5nICR0aW1lIGVhc2UtaW4tb3V0IGZvcndhcmRzIDE7XG5cdFx0YW5pbWF0aW9uOmVtb2ppLXdhdmluZyAkdGltZSBlYXNlLWluLW91dCBmb3J3YXJkcyAxO1xuXHR9XG59XG4iLCJAbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW1zLWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBrZXlmcmFtZXMtYW5pbWF0aW9uKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW8ta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLyohXG4gKiBCb290c3RyYXAgdjQuNi4wIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29kZVwiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwicHJpbnRcIjtcbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+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+IC5hcnJvdyB7XG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG4gIGJvcmRlci13aWR0aDogJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtO1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cblxuQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXkgLyAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5zaGFkb3ctc20geyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbSAhaW1wb3J0YW50OyB9XG4uc2hhZG93IHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3cgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1sZyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbm9uZSB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLy8gVmlld3BvcnQgYWRkaXRpb25hbCBoZWxwZXJzXG5cbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4ubWluLXZoLTEwMCB7IG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cblxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG4udmgtMTAwIHsgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgJHNpemUgIT0gMCB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW50aW5nIFRhYmxlczpcbiAgICAvLyBodHRwczovL3dlYi5hcmNoaXZlLm9yZy93ZWIvMjAxODA4MTUxNTA5MzQvaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCl7XG5cbiAgLm5hdmJhci1jZW50ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV4KC01MCUpO1xuICB9XG5cblxuXG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KXtcblxuICAjbWFpbi1jb250ZW50e1xuICAgIHotaW5kZXg6NjtcbiAgfVxuICAjY2FyZHN7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMCFpbXBvcnRhbnQ7XG4gIH1cblxuICBuYXZ7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJ1dHRvbi5uYXZiYXItdG9nZ2xlcntcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDo1cHg7XG5cbiAgICB9XG4gICAgI3RvcF9tZW51X2NvbnRlbnR7XG5cbiAgICAgIC5uYXZiYXItY29sbGFwc2Uuc2hvd3tcbiAgICAgICAgYm94LXNoYWRvdzogNHB4IDRweCAzcHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToyMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNtZW51e1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB9XG4gIH1cbiAgI3NraWxsc3tcbiAgICAjc2tpbGwtZGVzY3tcbiAgICAgIC5za2lsbC1kZXNje1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogYXV0byFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6MCFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG4gICAgI2Vtb2ppLWJhcntcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cblxuXG59XG4iLCIuYmctc2hhcGV7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyLXJhZGl1czogMTUlO1xuICAmLi1zcTF7XG4gICAgdG9wOjEyNXB4O1xuICAgIGxlZnQ6LTM3NXB4O1xuICAgIHdpZHRoOiA0NTBweDtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuXG4gICAgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeS0xMjA7XG4gICAgQGV4dGVuZCAucm90YXRlLXJldmVyc2UtMjBzO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgfVxuICAmLi1zcTJ7XG4gICAgdG9wOjUxMHB4O1xuICAgIGxlZnQ6NSU7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKDAsIDYsIDcwLCAwLjA4KTtcbiAgICB6LWluZGV4OiAzO1xuICAgIEBleHRlbmQgLnJvdGF0ZS0xMHM7XG4gIH1cbiAgJi4tc3Eze1xuICAgIHRvcDo2ODBweDtcbiAgICBsZWZ0OjglO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LTEyMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMCU7XG4gICAgQGV4dGVuZCAucm90YXRlLXJldmVyc2UtOXM7XG5cbiAgfVxuICAmLi1zcTR7XG4gICAgdG9wOjY0MHB4O1xuICAgIGxlZnQ6MyU7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgIGJvcmRlcjoycHggc29saWQgJHByaW1hcnk7XG4gICAgQGV4dGVuZCAucm90YXRlLTExcztcbiAgfVxuXG4gICYuLXNxNntcbiAgICB0b3A6Mjc1cHg7XG4gICAgcmlnaHQ6LTMyNXB4O1xuICAgIHdpZHRoOiA0NTBweDtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuXG4gICAgYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeS0xMjA7XG4gICAgQGV4dGVuZCAucm90YXRlLXJldmVyc2UtMjBzO1xuICAgIHotaW5kZXg6IDQ7XG5cbiAgfVxuICAmLi1zcTd7XG4gICAgdG9wOjcwcHg7XG4gICAgcmlnaHQ6LTEwMHB4O1xuICAgIHdpZHRoOiA3MTdweDtcbiAgICBoZWlnaHQ6IDcxN3B4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNiwgNzAsIDAuMDgpO1xuICAgIC8qYm9yZGVyOjJweCBzb2xpZCAkcHJpbWFyeS0xMjA7Ki9cbiAgICBAZXh0ZW5kIC5yb3RhdGUtMjBzO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgfVxuICAmLi1zcTh7XG4gICAgdG9wOjY4MHB4O1xuICAgIHJpZ2h0OjglO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6MnB4IHNvbGlkICRwcmltYXJ5LTEyMDtcbiAgICBAZXh0ZW5kIC5yb3RhdGUtcmV2ZXJzZS05cztcblxuICB9XG4gICYuLXNxOXtcbiAgICB0b3A6NjQwcHg7XG4gICAgcmlnaHQ6MyU7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgIGJvcmRlcjoycHggc29saWQgJHByaW1hcnk7XG4gICAgQGV4dGVuZCAucm90YXRlLTExcztcbiAgfVxuICAmLi1zcTEwe1xuICAgIHRvcDo1NjBweDtcbiAgICByaWdodDo2JTtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktMTIwO1xuICAgIGJvcmRlcjoycHggc29saWQgJHByaW1hcnktMTIwO1xuICAgIEBleHRlbmQgLnJvdGF0ZS1yZXZlcnNlLThzO1xuICB9XG5cbn1cbiIsIlxuLyogbWFpbiB0aXRsZXMgKi9cbi5tZXRhLXRpdGxle1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cblxufVxuXG4ubWV0YS10aXRsZS1jb250YWluZXIge1xuICBib3JkZXI6MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNmb3JtOiBtYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCk7XG5cblxuICAubWV0YS10aXRsZS1oZWFkZXJ7XG4gICAgYm9yZGVyOjA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbnRhaW46IGxheW91dCBzdHlsZTtcblxuICAgIGgxe1xuICAgICAgQGV4dGVuZCAuZm9udC0zNjtcbiAgICAgIEBleHRlbmQgLmZvbnQtbWQtNjU7XG4gICAgfVxuXG4gICAgaDJ7XG4gICAgICBAZXh0ZW5kIC5mb250LTMwO1xuICAgICAgQGV4dGVuZCAuZm9udC1tZC02MDtcbiAgICB9XG4gICAgaDN7XG4gICAgICBAZXh0ZW5kIC5mb250LTI2O1xuICAgICAgQGV4dGVuZCAuZm9udC1tZC01MDtcbiAgICB9XG5cbiAgICBoNHtcbiAgICAgIEBleHRlbmQgLmZvbnQtMjA7XG4gICAgICBAZXh0ZW5kIC5mb250LW1kLTQwO1xuICAgIH1cbiAgICBoNXtcbiAgICAgIEBleHRlbmQgLmZvbnQtMTY7XG4gICAgICBAZXh0ZW5kIC5mb250LW1kLTMwO1xuICAgIH1cbiAgICBoNntcbiAgICAgIEBleHRlbmQgLmZvbnQtMTQ7XG4gICAgICBAZXh0ZW5kIC5mb250LW1kLTIwO1xuICAgIH1cblxuICAgIC5tZXRhLXRpdGxlLXNoYXBlcyB7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgICBsZWZ0OiAtNXB4O1xuICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICBib3R0b206IC01MHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8qYmFja2dyb3VuZDogJHByaW1hcnktMTIwOyovXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRhaW46IHN0cmljdDtcblxuXG4gICAgICAubWV0YS10aXRsZS1zaGFwZSB7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG5cbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMzMzO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwJTtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAyMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwJTtcblxuXG4gICAgICAgICYuLXYxIHtcbiAgICAgICAgICB3aWR0aDogNjUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA2NTBweDtcbiAgICAgICAgICBtYXJnaW46IC0zMjVweCAwIDAgLTMyNXB4O1xuXG4gICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktZGFyaztcbiAgICAgICAgfVxuICAgICAgICAmLi12MiB7XG4gICAgICAgICAgd2lkdGg6IDQ0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDQwcHg7XG4gICAgICAgICAgbWFyZ2luOiAtMjIwcHggMCAwIC0yMjBweDtcblxuICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktbGlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgJi4tdjMge1xuICAgICAgICAgIHdpZHRoOiAyNzBweDtcbiAgICAgICAgICBoZWlnaHQ6IDI3MHB4O1xuICAgICAgICAgIG1hcmdpbjogLTEzNXB4IDAgMCAtMTM1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNxdWFyZS1zaGFwZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSg3NWRlZyk7XG5cbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMzMzO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwJTtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAyMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwJTtcblxuICAgICAgICAmLi1zaDF7XG4gICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgIGxlZnQ6NSU7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgICAgJi4tc2gye1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICB0b3A6LTUlO1xuICAgICAgICAgIHJpZ2h0OjEwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1saWdodGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgfVxuXG4gIC5tZXRhLXRpdGxlLWhlYWRlci1ibGVuZCB7XG5cbiAgICBjb2xvcjogJHByaW1hcnktMTIwO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgICBtaXgtYmxlbmQtbW9kZTogc2NyZWVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcblxuICAgICY6OmJlZm9yZSB7XG5cbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMnB4O1xuICAgICAgbGVmdDogLTZweDtcbiAgICAgIHJpZ2h0OiAtNnB4O1xuICAgICAgYm90dG9tOiAtNTJweDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgICB9XG5cblxuICB9XG59XG4iLCIuZW1vaml7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDEyMHB4O1xuICBiYWNrZ3JvdW5kOiBjZW50ZXIgY2VudGVyICNmZmYgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6ODBweCA4MHB4O1xuICBib3JkZXItcmFkaXVzOiAxMCU7XG4gIGJveC1zaGFkb3c6IDAgNjBweCA2MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEzKTtcblxuICAkZW1vamlzOiAnZWFydGgnLCdyb2NrJywnaGFuZHNoYWtlJywnc3BlYWtlcicsJ3JvY2tldCcsJ3NjcmlwdCcsJ25ld3NwYXBlcicsJ2hlbGxvJywgJ2dlYXInLCdjb21wdXRlcicsXG4gICdzaG9wcGluZycsJ2FydCcsJ2NvbXB1dGVyMycsICduZXJkJywnaW52YWRlcicsJ21vYmlsZScsICdjb2ZmZWUnLCdmaXJzdCcsJ3JvYm90JyxcbiAgJ2NvbXB1dGVyMicsJ2Jvb2snLCdoYXNodGFnJywncHJpbnQnLCdwaWN0dXJlJywndmlkZW8nLCdmaWxtJywgJ2Jhci1jaGFydCcsICd3cml0aW5nJywnbG91ZHNwZWFrZXInLFxuICAnY2hhcnQnLCAnaWRlYScsICdnbGFzc2VzJywnc3Ryb25nJywnY29mZmVlJywnZmlyc3QnLCdyb2JvdCcsJ21vYmlsZScsJ2VkdWNhdGlvbicsJ2Zvb2QnLCdoZWFsdGgnLCd5b3UnLCdhbmltYWxzJztcblxuICBAZWFjaCAkZW1vamkgaW4gJGVtb2ppc3tcbiAgICAmLi1lbS0jeyRlbW9qaX0sICYuZW1vamktI3skZW1vaml9e1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaG9tZS9lbW9qaS8jeyRlbW9qaX0ucG5nJyk7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0ICdub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwJztcbi8vI0BpbXBvcnQgJ25vZGVfbW9kdWxlcy9ib290c3RyYXAtdnVlL3NyYy9pbmRleC5zY3NzJztcblxuQGltcG9ydCAnYW5pbSc7XG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuQGltcG9ydCAnbW9iaWxlLXYyJztcbkBpbXBvcnQgJ19zaGFwZXMnO1xuQGltcG9ydCAnX2FuaW1hdGVkVGl0bGUnO1xuQGltcG9ydCAnX2Vtb2ppJztcblxuLyogbGF5b3V0IGFuaW1hdGlvbiAqL1xuXG5cblxuXG5cbiNsYnAtbGF1bmNoe1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS0xMjA7XG4gIEBleHRlbmQgLmFuaW0tYWxsO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1kYXJrO1xuICB9XG5cbiAgYVxuICB7XG5cbiAgICAmOmhvdmVye1xuXG4gICAgICAvKmZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGJ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9Ki9cbiAgfVxufVxufVxubmF2Lm5hdmJhci1saWdodHtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xuICAubmF2YmFyLW5hdntcbiAgICBhLm5hdi1saW5re1xuICAgICAgY29sb3I6JHByaW1hcnktMTIwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjokcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaW1ne1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxufVxuXG5cbmJsb2NrcXVvdGV7XG4gIG1hcmdpbi1sZWZ0OjE1cHg7XG4gIHBhZGRpbmctbGVmdDoxNXB4O1xuICBib3JkZXItbGVmdDo1cHggc29saWQgJHNlY29uZGFyeS1saWdodGVyO1xufVxuXG5mb290ZXJ7XG4gICNmb290ZXItbG9nb3tcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICB9XG4gIGF7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgY29sb3I6d2hpdGU7XG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWxpZ2h0ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuXG5cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/