@font-face {
  font-family: Poppins;
  src: url(/build/fonts/Poppins-Bold.2f55e0d4.ttf);
  font-weight: 700; }

@font-face {
  font-family: Poppins;
  src: url(/build/fonts/Poppins-Light.b2b23d25.ttf);
  font-weight: 200; }

@font-face {
  font-family: Poppins;
  src: url(/build/fonts/Poppins-SemiBold.f018d93c.ttf);
  font-weight: 600; }

@font-face {
  font-family: Poppins;
  src: url(/build/fonts/Poppins-Regular.e212f840.ttf);
  font-weight: 400; }

/* Insert variables (fonts, color, etc) : $variable-name: #000000; */
/* Insert typography styles (title, texts, etc) */
.title-big {
  font-weight: 700;
  letter-spacing: -0.05em;
  color: #363636;
  line-height: 1.2;
  font-size: 7.33333em; }
  @media (min-width: 991px) and (max-width: 1700px) {
    .title-big {
      font-size: 4.66667em; } }
  @media (min-width: 758px) and (max-width: 991px) {
    .title-big {
      font-size: 4.33333em; } }
  @media (max-width: 757px) {
    .title-big {
      font-size: 3.33333em; } }
  @media (max-width: 757px) {
    .title-big {
      font-size: 2.33333em; } }

.title-regular {
  font-weight: 700;
  letter-spacing: -0.05em;
  color: #363636;
  line-height: 1.5;
  font-size: 4.33333em; }
  @media (min-width: 991px) and (max-width: 1700px) {
    .title-regular {
      font-size: 3.33333em; } }
  @media (min-width: 758px) and (max-width: 991px) {
    .title-regular {
      font-size: 3em; } }
  @media (max-width: 757px) {
    .title-regular {
      font-size: 2.66667em; } }

.title-small {
  font-weight: 700;
  letter-spacing: -0.035em;
  color: #363636;
  line-height: 1.5;
  font-size: 2.66667em; }
  .title-small--lighter {
    font-weight: 600;
    letter-spacing: 0.1em; }
  @media (min-width: 992px) and (max-width: 1700px) {
    .title-small {
      font-size: 2em; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .title-small {
      font-size: 1.86667em; } }
  @media (max-width: 767px) {
    .title-small {
      font-size: 1.73333em; } }

.title-small-small {
  font-weight: 700;
  letter-spacing: -0.035em;
  color: #fff;
  line-height: 1.5;
  font-size: 1em; }
  .title-small-small--black {
    color: #363636; }
  @media (min-width: 992px) and (max-width: 1700px) {
    .title-small-small {
      font-size: 1em; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .title-small-small {
      font-size: 0.53333em; } }
  @media (max-width: 767px) {
    .title-small-small {
      font-size: 0.4em; } }

.title-thin {
  font-size: 1.33333em;
  font-weight: 200;
  letter-spacing: 8px;
  color: #363636;
  line-height: 1.5;
  text-transform: uppercase; }

.text {
  font-size: 1.06667em;
  line-height: 2.3;
  letter-spacing: 0.07em;
  color: #cccccc; }
  @media (max-width: 1700px) {
    .text {
      font-size: 1.06667em; } }

.subtitle {
  position: relative;
  font-size: 0.8em;
  font-weight: 600;
  letter-spacing: 0.4em;
  color: #363636;
  margin-left: 28px; }
  .subtitle--uppercase {
    text-transform: uppercase; }
  .subtitle::before {
    position: absolute;
    content: "";
    height: 9px;
    width: 9px;
    background-color: #d9ff03;
    left: -28px;
    top: 2px; }

.square-before {
  position: relative;
  padding-left: 26px; }
  .square-before::before {
    position: absolute;
    content: "";
    height: 9px;
    width: 9px;
    background-color: #d9ff03;
    left: 0;
    top: 9px; }

.bg-word-container {
  overflow-x: hidden; }
  .bg-word-container--bottom {
    top: 550px; }

.bg-word {
  position: absolute;
  font-size: 23.33333em;
  font-weight: 700;
  letter-spacing: -0.025em;
  color: #eaeaea;
  opacity: 0.8;
  white-space: nowrap;
  line-height: 1;
  text-transform: lowercase; }
  @media (min-width: 991px) and (max-width: 1399px) {
    .bg-word {
      font-size: 230px; } }
  @media (max-width: 991px) {
    .bg-word {
      font-size: 163px; } }
  @media (max-width: 767px) {
    .bg-word {
      display: none !important; } }

.custom-quote {
  position: relative;
  quotes: '\201c' '\201d'; }
  @media (max-width: 767px) {
    .custom-quote {
      width: calc(100% - 30px);
      margin: auto; } }
  .custom-quote:before {
    content: open-quote;
    position: absolute;
    -webkit-transform: translateX(-150%);
        -ms-transform: translateX(-150%);
            transform: translateX(-150%);
    top: -8px;
    left: -7px; }
  .custom-quote:after {
    content: close-quote;
    position: absolute;
    padding-top: 53px;
    padding-left: 20px; }
    @media (max-width: 1700px) {
      .custom-quote:after {
        padding-top: 43px; } }
    @media (max-width: 768px) {
      .custom-quote:after {
        padding-top: 24px; } }
  .custom-quote p {
    display: inline-block; }
  .custom-quote--casestudy:before {
    color: white;
    top: 0;
    left: 32px; }
  .custom-quote--casestudy:after {
    color: white;
    padding-top: 19px;
    padding-left: 7px; }
  .custom-quote--white:before {
    color: white;
    top: -5px;
    left: -2px; }
  .custom-quote--white:after {
    color: white;
    padding-top: 19px;
    padding-left: 7px; }
  .custom-quote--white-right:before {
    color: white;
    left: auto;
    padding-left: 2px; }
  .custom-quote--white-right:after {
    color: white;
    padding-top: 21px;
    padding-left: 7px; }
  .custom-quote--title-small:after {
    padding-top: 35px;
    padding-left: 14px; }
    @media (max-width: 1700px) {
      .custom-quote--title-small:after {
        padding-top: 25px; } }

.text-right {
  text-align: right !important; }
  @media (max-width: 767px) {
    .text-right {
      text-align: left !important; } }

.page-bg {
  background-color: #F5F8FA;
  padding-top: 80px;
  padding-bottom: 60px;
  min-height: 100vh; }

.space {
  margin-top: 60px; }
  .space--bottom {
    margin-bottom: 50px; }
  .space--small {
    margin-top: 30px; }
  .space--mini {
    margin-top: 10px; }
  .space--big {
    margin-top: 80px; }

.user-page__info .info-container {
  background-color: white;
  padding: 30px 40px;
  display: inline-block;
  min-width: 360px; }
  .user-page__info .info-container .image {
    padding: 0 0 20px; }
    .user-page__info .info-container .image img {
      height: 80px;
      width: 80px;
      border-radius: 100px;
      object-fit: cover; }
    .user-page__info .info-container .image .no-image {
      height: 80px;
      width: 80px;
      border-radius: 100px;
      background-color: grey; }
  .user-page__info .info-container .info-list {
    list-style: none;
    padding: 0;
    margin: 0; }
    .user-page__info .info-container .info-list li {
      font-weight: 600;
      padding-bottom: 8px; }

.user-page__projects .projects-container {
  background-color: white;
  padding: 30px 20px;
  display: inline-block;
  min-width: 360px;
  list-style: none;
  margin: 0; }
  .user-page__projects .projects-container .projets__el {
    padding: 10px 0;
    cursor: auto; }

a {
  text-decoration: none; }
  a:hover {
    text-decoration: none; }

.dossiers__el {
  padding: 10px 27px;
  margin-bottom: 15px;
  background: #ffffff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .dossiers__el__name {
    color: #363636;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.2em; }
  .dossiers__el__edit {
    color: red;
    font-size: 0.9333em; }
  .dossiers__el__history {
    width: 100%; }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  font-family: "Poppins", sans-serif; }

main {
  margin-top: 90px; }

.mb--0 {
  margin-bottom: 0px !important; }

.mb--5 {
  margin-bottom: 5px !important; }

.mb--10 {
  margin-bottom: 10px !important; }

.mb--15 {
  margin-bottom: 15px !important; }

.mb--20 {
  margin-bottom: 20px !important; }

.mb--25 {
  margin-bottom: 25px !important; }

.mb--30 {
  margin-bottom: 30px !important; }

.mb--40 {
  margin-bottom: 40px !important; }

.mb--45 {
  margin-bottom: 45px !important; }

.mb--50 {
  margin-bottom: 50px !important; }

.mb--55 {
  margin-bottom: 55px !important; }

.mb--60 {
  margin-bottom: 60px !important; }

.mb--80 {
  margin-bottom: 80px !important; }

.mb--100 {
  margin-bottom: 100px !important; }

.mb--200 {
  margin-bottom: 200px !important; }

.mt--0 {
  margin-top: 0px !important; }

.mt--5 {
  margin-top: 5px !important; }

.mt--10 {
  margin-top: 10px !important; }

.mt--15 {
  margin-top: 15px !important; }

.mt--20 {
  margin-top: 20px !important; }

.mt--25 {
  margin-top: 25px !important; }

.mt--30 {
  margin-top: 30px !important; }

.mt--40 {
  margin-top: 40px !important; }

.mt--45 {
  margin-top: 45px !important; }

.mt--50 {
  margin-top: 50px !important; }

.mt--55 {
  margin-top: 55px !important; }

.mt--60 {
  margin-top: 60px !important; }

.mt--80 {
  margin-top: 80px !important; }

.mt--100 {
  margin-top: 100px !important; }

.mt--200 {
  margin-top: 200px !important; }

.mr--5 {
  margin-right: 5px !important; }

.mr--10 {
  margin-right: 10px !important; }

.mr--15 {
  margin-right: 15px !important; }

.mr--20 {
  margin-right: 20px !important; }

.mr--25 {
  margin-right: 25px !important; }

.mr--35 {
  margin-right: 35px !important; }

.mr--50 {
  margin-right: 50px !important; }

.mr--120 {
  margin-right: 120px !important; }

@media screen and (max-width: 767px) {
  .mr-xs--0 {
    margin-right: 0px !important; }
  .mr-xs--5 {
    margin-right: 5px !important; }
  .mr-xs--10 {
    margin-right: 10px !important; }
  .mr-xs--15 {
    margin-right: 15px !important; }
  .mr-xs--20 {
    margin-right: 20px !important; }
  .mr-xs--25 {
    margin-right: 25px !important; }
  .mr-xs--35 {
    margin-right: 35px !important; }
  .mr-xs--50 {
    margin-right: 50px !important; }
  .mr-xs--120 {
    margin-right: 120px !important; } }

.flex-v {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .flex-v--left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .flex-v--right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .flex-v--bottom {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .flex-v--spaced {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .flex-v--wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }

@media screen and (min-width: 1200px) {
  .no-eq-lg {
    min-height: 0 !important; }
  .no-flex-lg {
    display: block; } }

@media screen and (min-width: 992px) and (max-width: 1199px) {
  .no-eq-md {
    min-height: 0 !important; }
  .no-flex-md {
    display: block; } }

@media screen and (min-width: 768px) and (max-width: 991px) {
  .no-eq-sm {
    min-height: 0 !important; }
  .no-flex-sm {
    display: block; } }

@media screen and (max-width: 767px) {
  .no-eq-xs {
    min-height: 0 !important; }
  .no-flex-xs {
    display: block; } }

@media screen and (max-width: 479px) {
  .no-eq-xxs {
    min-height: 0 !important; }
  .no-flex-xxs {
    display: block; } }

.col-xs-15 {
  width: 20%;
  float: left; }

@media (min-width: 768px) {
  .col-sm-15 {
    width: 20%;
    float: left; } }

@media (min-width: 992px) {
  .col-md-15 {
    width: 20%;
    float: left; } }

@media (min-width: 1200px) {
  .col-lg-15 {
    width: 20%;
    float: left; } }

.menu {
  margin-top: 50px; }
  .menu__item {
    padding: 5px 0; }
    .menu__item__link {
      text-decoration: none;
      color: #363636;
      font-size: 0.93333em;
      font-weight: 600;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      display: block; }
      .menu__item__link:hover {
        -webkit-transform: translate(10px);
            -ms-transform: translate(10px);
                transform: translate(10px);
        text-decoration: none;
        color: #c8c8c8; }

.sidebar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 250px;
  padding: 50px 20px; }
  .sidebar__logo {
    width: 75px;
    height: 75px; }

.connexion {
  height: 80vh;
  min-height: 600px;
  position: relative;
  padding-top: 100px; }
  @media screen and (max-width: 767px) {
    .connexion {
      padding-top: 30px; } }
  .connexion__form {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content; }
    .connexion__form label {
      text-transform: uppercase;
      font-size: 0.73333em;
      color: #c8c8c8;
      letter-spacing: 1px;
      padding-left: 10px;
      margin-bottom: 0;
      margin-bottom: 5px;
      min-width: 105px; }
    .connexion__form input {
      border: 0;
      font-size: 0.73333em;
      letter-spacing: 2px;
      margin-left: 50px;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin-bottom: 5px;
      outline: 0; }
  .connexion__title {
    padding-bottom: 50px;
    letter-spacing: 2px;
    font-weight: 600; }
  .connexion__id {
    border-bottom: 1px solid #333333;
    width: 100%; }
  .connexion__password {
    border-bottom: 1px solid #333333;
    width: 100%;
    padding-top: 50px; }
    .connexion__password input {
      margin-left: 53px; }
  .connexion__remember {
    padding: 50px 0 50px 0; }
    .connexion__remember input[type="checkbox"] {
      width: 10px;
      height: 10px;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      border: 1px solid black;
      position: relative;
      margin: 0px 20px 0 0; }
    .connexion__remember input[type="checkbox"]:checked {
      background: black; }
    .connexion__remember label {
      padding-left: 0px;
      text-transform: none;
      color: #363636; }

.projects {
  background-color: #f2f2f2;
  padding: 80px 0;
  position: relative; }
  .projects .bg-word-container {
    overflow: hidden;
    position: absolute;
    top: 200px; }
  .projects__slider {
    z-index: 1; }
    .projects__slider .slide {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media screen and (min-width: 767px) {
        .projects__slider .slide .image {
          max-width: 50%; } }
      @media screen and (max-width: 767px) {
        .projects__slider .slide .description {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          text-align: center;
          padding-top: 20px; } }
      .projects__slider .slide img {
        width: inherit; }
  .projects__client {
    margin-top: 10%; }
    @media screen and (max-width: 767px) {
      .projects__client {
        margin-top: 2%; } }
    .projects__client--vse {
      color: #EC3354; }
    .projects__client--geo {
      color: #3305d4; }
    .projects__client--aana {
      color: #c31632; }

.slider-buttons {
  padding: 50px 0; }
  .slider-buttons button {
    background-color: transparent;
    border: none;
    text-transform: uppercase;
    letter-spacing: 0.5em;
    outline: 0; }

button:focus {
  outline: 0; }

.link-button {
  display: inline-block;
  font-weight: 400;
  font-size: 0.66667em;
  letter-spacing: 0.5em;
  color: #363636;
  padding: 12px 28px;
  border: 0;
  box-shadow: inset 0 0 0 2px transparent;
  position: relative;
  vertical-align: center;
  text-transform: uppercase;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  text-decoration: none;
  cursor: pointer;
  background-color: #ffffff;
  outline: 0; }
  .link-button::before, .link-button::after {
    box-sizing: inherit;
    content: '';
    position: absolute;
    border: 1px solid transparent;
    width: 0;
    height: 0;
    cursor: pointer; }
  .link-button::before {
    top: 0;
    left: 0; }
  .link-button::after {
    bottom: 0;
    right: 0; }
  .link-button:hover {
    color: white !important;
    background-color: #363636; }
  .link-button--active::before, .link-button--active::after {
    width: 100%;
    height: 100%; }
  .link-button--active::before {
    border-top-color: #363636;
    border-right-color: #363636;
    -webkit-transition: width 0.25s ease-out, height 0.25s ease-out 0.25s;
    transition: width 0.25s ease-out, height 0.25s ease-out 0.25s; }
  .link-button--active::after {
    border-bottom-color: #363636;
    border-left-color: #363636;
    -webkit-transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s;
    transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s; }

.delete-button {
  background-color: transparent;
  border: 0;
  font-weight: 500;
  color: red; }
  .delete-button:hover {
    color: #BB0000; }

input.link-button {
  border: 1px solid #363636; }

.link {
  display: inline-block;
  position: relative;
  color: #363636;
  font-size: 0.86667em;
  letter-spacing: 0.5em;
  text-transform: uppercase;
  cursor: pointer; }
  .link--small {
    letter-spacing: normal;
    text-transform: none; }
    @media screen and (max-width: 575px) {
      .link--small {
        letter-spacing: normal !important; } }
  .link:hover {
    text-decoration: none;
    color: #363636; }
  @media screen and (max-width: 1700px) {
    .link {
      font-size: 0.8em; } }
  @media screen and (max-width: 575px) {
    .link {
      font-size: 0.73333em;
      letter-spacing: 0.3em; } }
  .link::after {
    position: absolute;
    content: "+";
    right: -50px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: scale(1.5);
        -ms-transform: scale(1.5);
            transform: scale(1.5); }
    @media screen and (max-width: 500px) {
      .link::after {
        display: none; } }
  @media screen and (min-width: 991px) {
    .link:hover::after {
      right: -30px; } }
  .link a {
    color: #363636; }
    .link a:hover {
      color: #363636; }
  .link--line-before {
    right: -100px; }
    .link--line-before::after {
      display: none; }
    .link--line-before::before {
      position: absolute;
      content: "";
      width: 60px;
      height: 1px;
      bottom: 9px;
      left: -100px;
      background-color: #363636;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
    @media screen and (min-width: 767px) {
      .link--line-before::after {
        width: 40px;
        left: -70px; } }
    @media screen and (min-width: 991px) {
      .link--line-before:hover::before {
        left: -80px; } }
  .link--right-aligned {
    right: 100px;
    float: right; }
    @media screen and (max-width: 426px) {
      .link--right-aligned {
        top: 30px; } }

.simple-link {
  text-decoration: none;
  color: #363636;
  text-transform: uppercase;
  font-size: 0.73333em;
  margin-top: 50px;
  letter-spacing: 2px; }
  .simple-link:hover {
    text-decoration: none;
    color: #363636; }

.cgu {
  text-decoration: none;
  color: #363636;
  text-transform: uppercase;
  font-size: 0.73333em;
  bottom: 50px;
  letter-spacing: 2px;
  position: absolute; }
  .cgu:hover {
    text-decoration: none;
    color: #363636; }
  @media screen and (max-width: 767px) {
    .cgu {
      position: initial;
      margin-top: 40px; } }

.rotate {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  font-size: 28px !important; }

.logo {
  padding-top: 10px; }
  .logo a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #363636;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px; }
    .logo a:hover {
      text-decoration: none; }
  .logo img, .logo .no-image {
    width: 50px;
    height: 50px;
    border-radius: 50px;
    object-fit: cover;
    background-color: grey; }
    @media screen and (max-width: 500px) {
      .logo img, .logo .no-image {
        width: auto;
        height: 30px; } }

.dynamic-title {
  height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }
  .dynamic-title .page-container {
    padding: 15px;
    height: 100%; }
  .dynamic-title__row {
    height: 94vh; }
  .dynamic-title__col-title-container {
    top: 50%;
    position: absolute; }
  .dynamic-title__title {
    position: relative;
    top: 55%;
    -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
            transform: translateY(0%); }

@-webkit-keyframes titleAfter {
  0% {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes titleAfter {
  0% {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }
  .dynamic-title__dynamic-word {
    content: " ";
    color: #c8c8c8; }
    @media (max-width: 991px) {
      .dynamic-title__dynamic-word {
        display: block; } }
    .dynamic-title__dynamic-word--wink:after {
      opacity: 0;
      -webkit-animation: titleAfter 1s infinite;
              animation: titleAfter 1s infinite; }
  .dynamic-title__dynamic-word-end {
    color: #d9ff03; }
  .dynamic-title .fa-angle-down {
    color: #363636;
    font-size: 30px; }
  .dynamic-title__slide-down {
    left: 24px;
    top: 125px;
    -webkit-transform: rotate(-90deg) translateX(-100%);
        -ms-transform: rotate(-90deg) translateX(-100%);
            transform: rotate(-90deg) translateX(-100%);
    -webkit-transform-origin: bottom left;
        -ms-transform-origin: bottom left;
            transform-origin: bottom left;
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    @media (max-width: 769px) and (min-width: 990px) {
      .dynamic-title__slide-down {
        left: auto;
        right: -94px;
        top: 100px; } }
    @media (max-width: 768px) {
      .dynamic-title__slide-down {
        display: none;
        left: auto;
        top: 85px; } }
    @media (max-width: 575px) {
      .dynamic-title__slide-down {
        display: none; } }
    .dynamic-title__slide-down__text {
      font-size: 0.86667em;
      letter-spacing: 0.5em;
      color: #363636;
      text-transform: uppercase;
      margin-right: 30px; }
      .dynamic-title__slide-down__text--white {
        color: white; }
    .dynamic-title__slide-down__line {
      -webkit-transition: all 400ms ease 0s;
      transition: all 400ms ease 0s;
      text-align: center;
      position: relative;
      width: 70px;
      height: 20px; }
      .dynamic-title__slide-down__line:after {
        top: 8px;
        left: 0;
        height: 1px;
        content: '';
        display: block;
        background: #d9ff03;
        position: absolute;
        -webkit-animation: lineScroll 0.6s infinite;
                animation: lineScroll 0.6s infinite;
        animation-iteration-count: infinite;
        -webkit-animation: lineScroll 1s;
        /* Chrome, Safari, Opera */
        -webkit-animation-iteration-count: infinite;
        /* Chrome, Safari, Opera */ }
    @media screen and (max-width: 1700px) {
      .dynamic-title__slide-down {
        top: 125px; } }

.dynamic-title {
  border-bottom: 1px solid #F2F2F2; }
  .dynamic-title__container {
    position: fixed; }
    .dynamic-title__container--1 {
      top: 50%;
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0);
      left: 65%;
      width: 100%;
      opacity: 1;
      -webkit-transition-duration: 1s;
              transition-duration: 1s; }
      @media (max-width: 575px) {
        .dynamic-title__container--1 {
          -webkit-transform: translate3d(0, -50%, 0);
                  transform: translate3d(0, -50%, 0);
          left: 20px; } }
    .dynamic-title__container--2 {
      top: 50%;
      -webkit-transform: translate3d(-50%, 75%, 0);
              transform: translate3d(-50%, 75%, 0);
      left: 65%;
      width: 100%;
      opacity: 0;
      -webkit-transition-duration: 1s;
              transition-duration: 1s; }

.dynamic-title-container {
  height: 100vh; }

@-webkit-keyframes lineScroll {
  0% {
    left: 0;
    right: auto;
    width: 0%; }
  50% {
    left: 0;
    right: auto;
    width: 100%; }
  51% {
    left: auto;
    right: 0; }
  100% {
    left: auto;
    right: 0;
    width: 0%; } }

@keyframes lineScroll {
  0% {
    left: 0;
    right: auto;
    width: 0%; }
  50% {
    left: 0;
    right: auto;
    width: 100%; }
  51% {
    left: auto;
    right: 0; }
  100% {
    left: auto;
    right: 0;
    width: 0%; } }

.words-container {
  display: none; }

/* MENU BURGER START*/
body {
  overflow-x: hidden; }

#menuToggle {
  display: block;
  position: absolute;
  top: 23px;
  z-index: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none; }
  @media screen and (max-width: 359px) {
    #menuToggle {
      top: 13px; } }
  @media screen and (min-width: 360px) and (max-width: 500px) {
    #menuToggle {
      top: 16px; } }

#menuToggle input {
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0;
  z-index: 2;
  -webkit-touch-callout: none; }

#menuToggle span {
  display: block;
  width: 30px;
  height: 1px;
  margin-bottom: 8px;
  position: relative;
  background: #363636;
  z-index: 1;
  -webkit-transform-origin: 4px 0px;
      -ms-transform-origin: 4px 0px;
          transform-origin: 4px 0px;
  -webkit-transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1); }

#menuToggle span:first-child {
  -webkit-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
          transform-origin: 0% 0%; }

#menuToggle span:nth-last-child(2) {
  -webkit-transform-origin: 0% 100%;
      -ms-transform-origin: 0% 100%;
          transform-origin: 0% 100%; }

#menuToggle input:checked ~ span {
  opacity: 1;
  -webkit-transform: rotate(45deg) translate(-1px, 2px);
      -ms-transform: rotate(45deg) translate(-1px, 2px);
          transform: rotate(45deg) translate(-1px, 2px);
  background: #363636; }

#menuToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  -webkit-transform: rotate(0deg) scale(0.2, 0.2);
      -ms-transform: rotate(0deg) scale(0.2, 0.2);
          transform: rotate(0deg) scale(0.2, 0.2); }

#menuToggle input:checked ~ span:nth-last-child(2) {
  opacity: 1;
  -webkit-transform: rotate(-45deg) translate(-1px, 0);
      -ms-transform: rotate(-45deg) translate(-1px, 0);
          transform: rotate(-45deg) translate(-1px, 0); }

#menu {
  position: absolute;
  width: 50vw;
  height: 102vh;
  margin: -100px 0 0 0;
  padding: 50px;
  padding-top: 125px;
  right: -40vw;
  background: #ffffff;
  box-shadow: -5px 5px 26px #ccc;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  -webkit-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
          transform-origin: 0% 0%;
  -webkit-transform: translate(150%, 0);
      -ms-transform: translate(150%, 0);
          transform: translate(150%, 0);
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1); }
  @media screen and (min-width: 670px) and (max-width: 1440px) {
    #menu {
      right: -20vw; } }
  @media screen and (min-width: 360px) and (max-width: 670px) {
    #menu {
      right: -14vw;
      width: 80vw; } }
  @media screen and (max-width: 359px) {
    #menu {
      right: -30vw;
      width: 90vw; } }

#menu li {
  padding: 10px 0;
  font-size: 22px; }

#menuToggle input:checked ~ ul {
  -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
          transform: scale(1, 1);
  opacity: 1; }

/* MENU BURGER END*/
.menu-nav {
  box-shadow: 0 -3px 16px #00000013;
  padding: 10px 0 20px 0;
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ffff; }
  .menu-nav .icon .header-link {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .menu-nav .icon img {
    max-height: 25px;
    width: auto; }

.search__bar {
  width: 100%;
  border: 0;
  font-size: 0.73333em;
  background: transparent;
  border-bottom: 1px solid #363636;
  padding: 8px 20px;
  color: #363636;
  text-transform: uppercase;
  letter-spacing: 2px;
  outline: 0; }
  .search__bar::-webkit-input-placeholder {
    color: #363636;
    opacity: 1; }
  .search__bar::-moz-placeholder {
    color: #363636;
    opacity: 1; }
  .search__bar:-ms-input-placeholder {
    color: #363636;
    opacity: 1; }
  .search__bar::-ms-input-placeholder {
    color: #363636;
    opacity: 1; }
  .search__bar::placeholder {
    color: #363636;
    opacity: 1; }

.search select {
  display: none; }

.search button {
  display: none; }

.notification {
  list-style: none;
  padding: 0; }
  .notification__el {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 10px 27px;
    margin-bottom: 15px;
    background: #ffffff;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    max-height: 85px;
    -webkit-transition: max-height 0.6s ease-out;
    transition: max-height 0.6s ease-out; }
    .notification__el.open {
      max-height: 130px; }
    .notification__el__pp {
      width: 42px;
      height: 42px;
      background-color: red;
      border-radius: 100%; }
    .notification__el__title {
      color: #363636;
      text-decoration: none;
      font-weight: 600;
      padding-top: 2px;
      font-size: 0.93333em;
      cursor: pointer;
      text-align: center; }
      .notification__el__title--limit {
        white-space: nowrap;
        width: 20%;
        min-width: 150px;
        overflow: hidden;
        text-overflow: ellipsis; }
    .notification__el .js-deleteButton {
      cursor: pointer; }
    .notification__el__date {
      font-size: 12px;
      font-weight: 300;
      letter-spacing: 1px;
      text-align: center; }
      @media screen and (max-width: 400px) {
        .notification__el__date {
          display: none; } }
    .notification__el__description {
      font-size: 12px;
      font-weight: 300;
      letter-spacing: 1px;
      white-space: nowrap;
      width: 25%;
      overflow: hidden;
      text-overflow: ellipsis; }
      @media screen and (max-width: 767px) {
        .notification__el__description {
          display: none; } }
    .notification__el__icon {
      margin-left: 35px;
      margin-right: 10px; }
      @media screen and (max-width: 767px) {
        .notification__el__icon {
          margin-left: 25px;
          margin-right: 0px; } }
      .notification__el__icon img {
        height: 25px;
        width: auto; }
    .notification__el__content {
      display: none;
      padding: 20px 0 0 0;
      width: 100%; }
    .notification__el__link {
      display: none; }

.notification-all ul {
  padding-left: 0 !important; }

.mockups .notification__el__title a {
  color: inherit; }

.projets {
  list-style: none; }
  .projets li {
    background-color: white;
    margin-top: 10px; }
  .projets__el {
    padding: 20px;
    background: #ffffff;
    cursor: pointer; }
    .projets__el__title {
      font-size: 0.93333em;
      color: #363636;
      font-weight: 600; }
    .projets__el .open-project {
      background-color: transparent;
      border: 0;
      outline: 0;
      padding: 0;
      font-size: 25px;
      font-weight: 100;
      max-height: 27px; }
    .projets__el__links {
      display: none;
      padding: 5px 30px 10px;
      background-color: white; }
      .projets__el__links hr {
        margin: 0 !important; }
      .projets__el__links a {
        color: #363636;
        text-decoration: none;
        font-weight: 400;
        font-size: 0.93333em;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        display: block;
        padding: 5px 0; }
        .projets__el__links a:hover {
          -webkit-transform: translate(10px);
              -ms-transform: translate(10px);
                  transform: translate(10px);
          text-decoration: none; }
    .projets__el__status {
      color: #363636; }

.organisation-color {
  height: 40px;
  width: 40px;
  margin-right: 20px;
  border-radius: 30px;
  color: white;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold; }

.dossier-id {
  padding-right: 5px; }

.dossier-status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .dossier-status .dossier-status-pastille {
    width: 14px;
    height: 14px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 30px;
    margin-right: 14px; }

.dossier-last-update {
  font-size: 14px;
  color: #363636;
  font-weight: 100;
  font-family: 'Poppins'; }

.pagination {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px 0 0 0; }
  .pagination__el {
    height: 30px;
    width: 30px;
    border: 1px solid #363636;
    border-radius: 30px;
    margin: 0 10px;
    color: #363636;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }

.services {
  list-style: none;
  padding: 0; }
  .services__el {
    padding: 10px;
    width: 100%; }
    .services__el a {
      padding: 30px 10px;
      background: #ffffff;
      text-decoration: none;
      color: #363636;
      text-transform: uppercase;
      font-size: 0.8em;
      letter-spacing: 2px;
      -webkit-transition: -webkit-transform 0.3s;
      transition: -webkit-transform 0.3s;
      transition: transform 0.3s;
      transition: transform 0.3s, -webkit-transform 0.3s; }
      .services__el a:hover {
        text-decoration: none;
        color: #363636;
        -webkit-transform: scale(1.05, 1.05);
            -ms-transform: scale(1.05, 1.05);
                transform: scale(1.05, 1.05);
        box-shadow: 0 0 16px #00000013; }
      .services__el a img {
        max-height: 60px;
        width: auto;
        margin-bottom: 10px; }

.quick-access {
  position: fixed;
  bottom: 15%;
  right: 30px;
  z-index: 1000; }
  .quick-access ul li {
    list-style: none;
    height: 55px;
    width: 55px;
    margin-bottom: 15px;
    background-color: #363636; }
    .quick-access ul li a {
      display: block;
      width: 100%;
      height: 100%; }
    .quick-access ul li img {
      display: block;
      max-height: 26px;
      max-width: 26px; }
  @media screen and (max-width: 767px) {
    .quick-access {
      display: none; } }

.quote-form {
  display: none;
  margin-top: 50px;
  background-color: #ffffff;
  padding: 15px;
  text-transform: uppercase; }
  .quote-form__row {
    margin-right: 0px;
    margin-left: 0px; }
    .quote-form__row__el {
      border-bottom: 1px solid #363636;
      width: 100%;
      padding: 15px 0; }
      .quote-form__row__el label {
        margin: 0 10px 0 0; }
        .quote-form__row__el label img {
          height: 30px;
          width: auto; }
      .quote-form__row__el .files-added {
        font-size: 12px;
        font-weight: 300;
        letter-spacing: 1px;
        margin-right: 30px; }
      .quote-form__row__el .test-quote {
        cursor: pointer; }
      .quote-form__row__el--no-border {
        border-bottom: none; }
      .quote-form__row__el--no-pad {
        padding: 0; }
  .quote-form input[type="text"], .quote-form textarea {
    width: 100%;
    background-color: #F5F8FA;
    outline: 0;
    border: none; }
  .quote-form input[type="text"] {
    height: 35px; }
  .quote-form input[type="submit"] {
    border: 1px solid #363636; }
  .quote-form textarea {
    min-height: 80px; }
  .quote-form #document_file {
    display: none; }

.help-text {
  margin: 3px 0 0 0;
  font-size: 12px; }

textarea {
  min-height: 150px; }

.datepicker-days {
  padding: 10px; }
  .datepicker-days table {
    width: 230px; }

.modal-dialog {
  color: black; }

.radio-col {
  height: auto; }

.project-dossiers {
  display: none; }

.planning-container {
  padding-top: 0;
  padding-bottom: 0;
  min-height: unset; }
  .planning-container .calendar {
    overflow-x: scroll;
    padding: 90px 0 0 0; }
    .planning-container .calendar .dates {
      position: fixed;
      top: 90px;
      z-index: 4;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      padding: 5px;
      background-color: white;
      border-top: 1px solid #C8C8C8;
      border-bottom: 1px solid #c8c8c8; }
      .planning-container .calendar .dates__month {
        height: 50px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        .planning-container .calendar .dates__month .month {
          padding-left: 30px;
          font-size: 14px;
          text-transform: uppercase;
          font-weight: 800; }
        .planning-container .calendar .dates__month .add-task {
          position: fixed;
          right: 10px; }
        .planning-container .calendar .dates__month .task-color-switch {
          position: fixed;
          right: 305px; }
        .planning-container .calendar .dates__month .dark-mode-switch {
          position: fixed;
          right: 30px; }
          .planning-container .calendar .dates__month .dark-mode-switch button {
            outline: 0;
            font-size: 1.25rem;
            padding: 0;
            background-color: #363636;
            border: 1px solid #363636;
            height: 40px;
            width: 40px;
            border-radius: 50px;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
                -ms-flex-direction: column;
                    flex-direction: column;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
            position: relative;
            text-decoration: none;
            font-weight: 100; }
            .planning-container .calendar .dates__month .dark-mode-switch button .icon img {
              height: 20px;
              width: 20px;
              object-fit: contain; }
            .planning-container .calendar .dates__month .dark-mode-switch button .icon .moon-light {
              display: none; }
      .planning-container .calendar .dates__days {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content; }
        .planning-container .calendar .dates__days__el {
          text-align: center;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          min-width: 200px;
          min-height: 45px; }
          .planning-container .calendar .dates__days__el--today .day-number {
            background-color: #d9ff03;
            color: black;
            width: 26px;
            border-radius: 100%;
            text-align: center; }
          .planning-container .calendar .dates__days__el .day-of-week {
            padding: 0 4px 0 0; }
          .planning-container .calendar .dates__days__el--first {
            min-width: 110px; }
    .planning-container .calendar .users {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      overflow: hidden; }
      .planning-container .calendar .users__user {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        background-color: #F5F8FA;
        border-top: 1px solid #c8c8c8;
        margin-top: 20px; }
        .planning-container .calendar .users__user .user-info {
          z-index: 3;
          background-color: white;
          width: 110px;
          min-height: 100px;
          box-shadow: 0 0 16px #CCC;
          padding: 5px;
          border-left: 1px solid #c8c8c8;
          border-bottom: 1px solid #c8c8c8;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center; }
          .planning-container .calendar .users__user .user-info .image img {
            width: 50px;
            height: 50px;
            object-fit: cover;
            border-radius: 50px; }
          .planning-container .calendar .users__user .user-info .image .no-image {
            width: 50px;
            height: 50px;
            border-radius: 50px;
            color: white;
            background-color: #c8c8c8;
            text-align: center;
            font-weight: 600;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center; }
          .planning-container .calendar .users__user .user-info .name {
            font-size: 12px;
            font-weight: 700;
            padding-top: 8px; }
        .planning-container .calendar .users__user .user-slot {
          background-color: white;
          text-align: center;
          padding: 2px 2px 100px;
          width: 200px;
          min-height: 100px;
          border-left: 1px solid #c8c8c8;
          border-bottom: 1px solid #c8c8c8;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; }
          .planning-container .calendar .users__user .user-slot .task {
            height: 50px;
            background-color: white;
            color: black;
            border: 1px solid #202121;
            text-align: left;
            padding: 4px 8px;
            border-radius: 5px;
            font-size: 14px;
            position: relative;
            margin-bottom: 3px;
            width: 195px;
            overflow: hidden;
            z-index: 2;
            cursor: pointer; }
            .planning-container .calendar .users__user .user-slot .task:hover {
              box-shadow: 0 0 6px #666; }
            .planning-container .calendar .users__user .user-slot .task--empty {
              height: 50px;
              z-index: 0;
              background-color: transparent !important;
              cursor: default;
              border: none; }
              .planning-container .calendar .users__user .user-slot .task--empty:hover {
                box-shadow: none; }
            .planning-container .calendar .users__user .user-slot .task__title {
              white-space: nowrap; }
            .planning-container .calendar .users__user .user-slot .task__project {
              opacity: 0.6;
              text-transform: uppercase; }
            .planning-container .calendar .users__user .user-slot .task__duration {
              position: absolute;
              right: 0;
              top: 0;
              bottom: 0;
              width: 25px;
              display: -webkit-box;
              display: -webkit-flex;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-pack: center;
              -webkit-justify-content: center;
                  -ms-flex-pack: center;
                      justify-content: center;
              padding: 0 0 1px 0;
              -webkit-box-align: end;
              -webkit-align-items: flex-end;
                  -ms-flex-align: end;
                      align-items: flex-end;
              background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), white);
              background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), white); }
            .planning-container .calendar .users__user .user-slot .task.status-color {
              background-color: white !important;
              color: black;
              border: 1px solid #202121; }
              .planning-container .calendar .users__user .user-slot .task.status-color .task__duration {
                background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), white) !important;
                background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), white) !important; }
              .planning-container .calendar .users__user .user-slot .task.status-color.pending {
                color: white;
                background-color: #aaaaaa !important;
                border: none; }
                .planning-container .calendar .users__user .user-slot .task.status-color.pending .task__duration {
                  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #aaaaaa) !important;
                  background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), #aaaaaa) !important; }
              .planning-container .calendar .users__user .user-slot .task.status-color.in-progress {
                color: white;
                background-color: #23C9FF !important;
                border: none; }
                .planning-container .calendar .users__user .user-slot .task.status-color.in-progress .task__duration {
                  color: white;
                  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #23C9FF) !important;
                  background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), #23C9FF) !important; }
              .planning-container .calendar .users__user .user-slot .task.status-color.unfinished {
                color: white;
                border: none;
                background-color: #FF4E00 !important; }
                .planning-container .calendar .users__user .user-slot .task.status-color.unfinished .task__duration {
                  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #FF4E00) !important;
                  background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), #FF4E00) !important; }
              .planning-container .calendar .users__user .user-slot .task.status-color.undefined .task__duration {
                background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), white);
                background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), white); }
              .planning-container .calendar .users__user .user-slot .task.status-color.done {
                color: white;
                background-color: #31D843 !important;
                border: none; }
                .planning-container .calendar .users__user .user-slot .task.status-color.done .task__duration {
                  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), #31D843) !important;
                  background: linear-gradient(0.25turn, rgba(0, 0, 0, 0), #31D843) !important; }
            .planning-container .calendar .users__user .user-slot .task.project-color {
              border: none;
              color: white; }
          .planning-container .calendar .users__user .user-slot .task-status-popup {
            color: black;
            background-color: white;
            text-align: left;
            border-radius: 5px;
            box-shadow: 0 0 60px #555555;
            display: none;
            position: fixed;
            z-index: 10;
            min-width: 160px; }
            .planning-container .calendar .users__user .user-slot .task-status-popup .popup-header {
              padding: 10px 10px 5px 10px;
              font-size: 12px;
              text-transform: uppercase;
              color: #555555; }
            .planning-container .calendar .users__user .user-slot .task-status-popup ul {
              list-style: none;
              padding: 0;
              margin: 0; }
              .planning-container .calendar .users__user .user-slot .task-status-popup ul li {
                padding: 2px 10px;
                cursor: pointer; }
                .planning-container .calendar .users__user .user-slot .task-status-popup ul li:hover {
                  color: white; }
                .planning-container .calendar .users__user .user-slot .task-status-popup ul li.in-progress:hover {
                  background-color: #23C9FF; }
                .planning-container .calendar .users__user .user-slot .task-status-popup ul li.unfinished:hover {
                  background-color: #FF4E00; }
                .planning-container .calendar .users__user .user-slot .task-status-popup ul li.done:hover {
                  background-color: #31D843; }
                .planning-container .calendar .users__user .user-slot .task-status-popup ul li.pending:hover {
                  background-color: #aaaaaa; }
          .planning-container .calendar .users__user .user-slot.today {
            background-color: rgba(217, 255, 3, 0.1); }
  .planning-container .lds-ellipsis {
    position: fixed;
    top: calc(50vh - 40px);
    width: 80px;
    height: 60px;
    z-index: 5;
    background-color: #363636;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    display: none; }
    .planning-container .lds-ellipsis.loader-next {
      right: -12px;
      border-radius: 0 0 10px 10px; }
    .planning-container .lds-ellipsis.loader-prev {
      left: 100px;
      border-radius: 10px 10px 0 0; }
    .planning-container .lds-ellipsis div {
      position: absolute;
      top: 23px;
      width: 13px;
      height: 13px;
      border-radius: 50%;
      background: white;
      -webkit-animation-timing-function: cubic-bezier(0, 1, 1, 0);
              animation-timing-function: cubic-bezier(0, 1, 1, 0); }
    .planning-container .lds-ellipsis div:nth-child(1) {
      left: 8px;
      -webkit-animation: lds-ellipsis1 0.6s infinite;
              animation: lds-ellipsis1 0.6s infinite; }
    .planning-container .lds-ellipsis div:nth-child(2) {
      left: 8px;
      -webkit-animation: lds-ellipsis2 0.6s infinite;
              animation: lds-ellipsis2 0.6s infinite; }
    .planning-container .lds-ellipsis div:nth-child(3) {
      left: 32px;
      -webkit-animation: lds-ellipsis2 0.6s infinite;
              animation: lds-ellipsis2 0.6s infinite; }
    .planning-container .lds-ellipsis div:nth-child(4) {
      left: 56px;
      -webkit-animation: lds-ellipsis3 0.6s infinite;
              animation: lds-ellipsis3 0.6s infinite; }

@-webkit-keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0); } }

@keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0); } }

@-webkit-keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(24px, 0);
            transform: translate(24px, 0); } }

@keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(24px, 0);
            transform: translate(24px, 0); } }
  .planning-container.dark-mode {
    color: white;
    background-color: #111111; }
    .planning-container.dark-mode .dates {
      background-color: #202121;
      border-top: 1px solid #111;
      border-bottom: 1px solid #111; }
    .planning-container.dark-mode .dark-mode-switch button {
      background-color: white !important; }
    .planning-container.dark-mode .users__user {
      background-color: #202121;
      border-top: 1px solid #111; }
      .planning-container.dark-mode .users__user .user-info {
        background-color: #202121;
        border-left: 1px solid #111;
        border-bottom: 1px solid #111;
        box-shadow: 0 0 16px #111; }
      .planning-container.dark-mode .users__user .user-slot {
        background-color: #202121;
        border-left: 1px solid #111;
        border-bottom: 1px solid #111; }
        .planning-container.dark-mode .users__user .user-slot.today {
          background-color: #363636; }
        .planning-container.dark-mode .users__user .user-slot .task {
          border: 0; }
    .planning-container.dark-mode .lds-ellipsis {
      background-color: white; }
      .planning-container.dark-mode .lds-ellipsis div {
        background: #202121; }
  .planning-container.admin-calendar-user .dark-mode-switch {
    right: 220px !important; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }


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