@charset "UTF-8";
/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#about .gen-info {
  background: #100f3a;
  padding: 50px 30px; }
  @media (max-width: 1199.98px) {
    #about .gen-info {
      padding: 45px 25px; } }
  @media (max-width: 991.98px) {
    #about .gen-info {
      padding: 40px 20px; } }
  @media (max-width: 767.98px) {
    #about .gen-info {
      padding: 30px 15px; } }
  #about .gen-info .general_info_title {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
    line-height: 1.2;
    text-align: center; }
    @media (max-width: 575.98px) {
      #about .gen-info .general_info_title {
        font-size: 24px; } }
  #about .gen-info .general_info_list {
    margin-top: 34px; }
    @media (max-width: 575.98px) {
      #about .gen-info .general_info_list {
        display: block;
        margin: 30px auto;
        padding-left: 50px;
        padding-right: 50px; } }
    #about .gen-info .general_info_list li .general_info_icon {
      width: 21px;
      height: 21px;
      margin-right: 24px; }
      #about .gen-info .general_info_list li .general_info_icon img {
        max-width: 100%; }
    #about .gen-info .general_info_list li .general_info_text {
      font-size: 14px;
      color: #7a798c;
      line-height: 1.2; }
      @media (max-width: 575.98px) {
        #about .gen-info .general_info_list li .general_info_text {
          font-size: 16px; } }
      #about .gen-info .general_info_list li .general_info_text a {
        color: #7a798c;
        transition: all 200ms ease; }
        #about .gen-info .general_info_list li .general_info_text a:hover {
          color: #fff; }
      #about .gen-info .general_info_list li .general_info_text span {
        color: #fff; }
    #about .gen-info .general_info_list li:not(:last-child) {
      margin-bottom: 15px; }

#about .bg-right .header_button {
  display: none;
  position: fixed;
  right: 30px;
  top: 83px;
  background: #8583e1;
  transition: all 200ms ease;
  z-index: 2000; }
  #about .bg-right .header_button:hover {
    background: #100f3a; }
  #about .bg-right .header_button a {
    display: block;
    font-size: 14px;
    font-weight: 400;
    line-height: 55px;
    color: #fff;
    padding-left: 22px;
    padding-right: 76px; }
    #about .bg-right .header_button a:hover {
      color: #fff; }
  #about .bg-right .header_button > div {
    position: absolute;
    top: 0;
    right: 0;
    width: 55px;
    height: 55px;
    background: #100f3a;
    pointer-events: none; }

#about .content {
  margin: 0 auto;
  padding-top: 30px;
  padding-left: 50px;
  padding-right: 50px; }
  @media (max-width: 767.98px) {
    #about .content {
      padding-left: 15px;
      padding-right: 15px; } }
  @media (max-width: 575.98px) {
    #about .content {
      padding-left: 0px;
      padding-right: 0px; } }
  #about .content:after {
    content: "";
    display: table;
    clear: both; }
  #about .content .circle-container {
    display: block;
    text-align: center;
    float: left;
    width: 33.333%;
    position: relative; }
    @media (max-width: 575.98px) {
      #about .content .circle-container {
        width: 50%; }
        #about .content .circle-container:last-child {
          width: 100%;
          margin-bottom: 45px; } }
    @media (max-width: 410px) {
      #about .content .circle-container {
        width: 100%;
        margin-bottom: 45px; } }
    #about .content .circle-container .loader_title {
      display: block;
      font-size: 16px;
      font-weight: 700;
      color: #100f3a;
      text-transform: uppercase;
      line-height: 0.75;
      padding-top: 20px; }
    #about .content .circle-container .loader_subtitle {
      font-size: 14px;
      font-weight: 500;
      color: #7a798c;
      margin-top: 12px;
      padding-left: 20px;
      padding-right: 20px;
      padding-bottom: 50px; }
    #about .content .circle-container .circlestat {
      margin: 0 auto;
      height: 200px; }
  #about .content span.circle-text {
    font-weight: 800; }

/*
class — с помощью значения данного атрибута будет "привязываться" функционал.
data-dimension — диаметр круга.
data-text — текст внутри круга.
data-width — толщина обводки круга.
data-fontsize — размер текста внутри круга.
data-percent — процент заполнения круга.
data-fgcolor — цвет обводки.
data-bgcolor — цвет фонового круга.
data-fill — цвет заливки круга.

@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#Contact .left-contact {
  padding-left: 95px; }
  @media (max-width: 1199.98px) {
    #Contact .left-contact {
      padding-left: 79px;
      padding-right: 50px; } }
  @media (max-width: 991.98px) {
    #Contact .left-contact {
      padding-left: 56px; } }
  #Contact .left-contact .about_text {
    padding-top: 44px !important;
    padding-right: 0 !important;
    padding-left: 0 !important; }
  #Contact .left-contact form {
    padding-top: 30px; }
    #Contact .left-contact form .contact_form {
      margin-bottom: 0 !important;
      overflow-y: hidden;
      position: relative; }
      #Contact .left-contact form .contact_form .my-contact_input {
        position: absolute;
        top: -90px;
        left: 0; }
      #Contact .left-contact form .contact_form .form-control {
        display: block;
        width: 100%;
        height: calc(1.5em + .75rem + 2px);
        padding: .375rem .75rem;
        margin-bottom: 30px;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #7a798c;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #8583e1;
        border-radius: 0;
        transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; }
        #Contact .left-contact form .contact_form .form-control:focus {
          box-shadow: none;
          border: 1px solid #8583e1; }
        #Contact .left-contact form .contact_form .form-control::-webkit-input-placeholder, #Contact .left-contact form .contact_form .form-control:-moz-placeholder, #Contact .left-contact form .contact_form .form-control::-moz-placeholder, #Contact .left-contact form .contact_form .form-control:-ms-input-placeholder, #Contact .left-contact form .contact_form .form-control::input-placeholder {
          font-weight: 300;
          color: red; }
        #Contact .left-contact form .contact_form .form-control::-webkit-input-placeholder {
          opacity: 1;
          -webkit-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control::-moz-placeholder {
          opacity: 1;
          -moz-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:-moz-placeholder {
          opacity: 1;
          -moz-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:-ms-input-placeholder {
          opacity: 1;
          -ms-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:focus::-webkit-input-placeholder {
          opacity: 0.3;
          -webkit-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:focus::-moz-placeholder {
          opacity: 0.3;
          -moz-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:focus:-moz-placeholder {
          opacity: 0.3;
          -moz-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control:focus:-ms-input-placeholder {
          opacity: 0.3;
          -ms-transition: opacity 0.5s ease;
          transition: opacity 0.5s ease; }
        #Contact .left-contact form .contact_form .form-control.is-valid, #Contact .left-contact form .contact_form .form-control:valid {
          border-color: #8583e1;
          padding-right: calc(1.5em + .75rem);
          background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%238583e1' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
          background-repeat: no-repeat;
          background-position: right calc(.375em + .1875rem) center;
          background-size: calc(.75em + .375rem) calc(.75em + .375rem); }
        #Contact .left-contact form .contact_form .form-control.is-invalid {
          border-color: #DC3545; }
      #Contact .left-contact form .contact_form textarea.form-control {
        height: auto;
        margin-bottom: 0; }
    #Contact .left-contact form .contact_button {
      width: 239px;
      height: 55px;
      background: #8583e1;
      color: #fff;
      font-size: 14px;
      font-weight: 500;
      cursor: pointer;
      border: none;
      outline: none;
      margin-top: 26px;
      transition: all 200ms ease;
      margin-bottom: 100px; }
      #Contact .left-contact form .contact_button:hover {
        background: #100f3a; }

#Contact #YMapsID1 {
  padding-top: 50px;
  height: 100%; }

#Contact #YMapsID2 {
  padding-top: 30px;
  height: 400px; }

#Contact [class*="ymaps-2"][class*="-ground-pane"] {
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
  -webkit-filter: grayscale(100%); }

#Contact #messenger {
  display: block;
  text-align: center;
  margin: auto;
  width: 50vw;
  position: fixed;
  top: 45%;
  left: 25vw;
  z-index: 9999; }
  @media (max-width: 991.98px) {
    #Contact #messenger {
      width: 80vw !important;
      left: 10vw !important; } }
  @media (max-width: 767.98px) {
    #Contact #messenger {
      width: 90vw !important;
      left: 5vw !important; } }
  @media (max-width: 575.98px) {
    #Contact #messenger {
      width: 96vw !important;
      left: 2vw !important; } }

#Contact .formError {
  border: 1px solid red !important; }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
/*

#Education {
  padding-top: 0px;
  padding-bottom: 100px;

  & .bg-right {
    position: relative;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(239, 239, 239, 1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#efefef', GradientType=1); !* IE6-9 *!
    padding-top: 0px !important;
    padding-right: 50px;
    padding-bottom: 100px;
    padding-left: 0px;
  }
}*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#Experience .info {
  padding-left: 80px;
  padding-right: 50px;
  padding-bottom: 50px; }
  @media (max-width: 991.98px) {
    #Experience .info {
      padding-left: 60px; } }
  @media (max-width: 767.98px) {
    #Experience .info {
      padding-left: 40px; } }
  #Experience .info .main_subtitle,
  #Experience .info .main_title,
  #Experience .info .about_text {
    padding-left: 0;
    padding-right: 0; }
  #Experience .info .main_title {
    padding-bottom: 50px; }
  #Experience .info .about_text {
    padding-top: 50px;
    opacity: .5; }
  #Experience .info .experience {
    width: 100%;
    padding-bottom: 65px; }
    #Experience .info .experience .exp_item:not(:last-child) {
      margin-bottom: 53px; }
    #Experience .info .experience .exp_time {
      font-size: 24px;
      font-weight: 700;
      color: #8583e1;
      line-height: 0.85;
      text-align: right; }
      @media (max-width: 991.98px) {
        #Experience .info .experience .exp_time {
          text-align: left;
          padding-bottom: 10px; } }
    #Experience .info .experience .exp_title {
      font-size: 24px;
      font-weight: 700;
      color: #100f3a;
      line-height: 0.95; }
      @media (max-width: 767.98px) {
        #Experience .info .experience .exp_title {
          font-size: 22px; } }
      @media (max-width: 575.98px) {
        #Experience .info .experience .exp_title {
          font-size: 20px; } }
    #Experience .info .experience .exp_subtitle {
      font-size: 16px;
      font-weight: 600;
      color: #7a798c;
      margin-top: 7px; }
    #Experience .info .experience .exp_text {
      padding-top: 10px;
      padding-bottom: 40px;
      opacity: .5; }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
.fancybox-container {
  z-index: 9000; }

/* --------------------------- */
.fancybox-bg {
  background: #ffffff;
  opacity: 1;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71); }

.fancybox-is-open .fancybox-bg {
  opacity: 1;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); }

/* --------------------------- */
/* --------------------------- */
.container-fluid .fancybox-infobar {
  font-family: 'Comfortaa', cursive;
  position: absolute;
  right: 0;
  bottom: 0;
  color: #000;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

/* --------------------------- */
.fancybox-show-infobar .fancybox-toolbar {
  position: absolute;
  right: 0;
  top: 0; }

/* --------------------------- */
.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  padding: 30px 0 0 50px; }

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 30px 50px 0 0;
  right: 0; }

.fancybox-navigation .fancybox-button--arrow_left:hover,
.fancybox-navigation .fancybox-button--arrow_right:hover {
  opacity: .5; }

.prev-but {
  width: 30px;
  height: 60px;
  background-image: url("../images/prev.svg");
  background-repeat: no-repeat;
  background-position: 0 0; }

.next-but {
  width: 30px;
  height: 60px;
  background-image: url("../images/next.svg");
  background-repeat: no-repeat;
  background-position: 0 0; }

.fancybox-button {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color .2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px; }

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc; }

.fancybox-button:hover {
  color: #000; }

/* --------------------------- */
/* --------------------------- */
.fancybox-caption {
  background: #fff !important; }
  .fancybox-caption .fancybox-caption__body {
    color: #000;
    padding-bottom: 50px; }
    .fancybox-caption .fancybox-caption__body .opis {
      font-size: 16px;
      opacity: .5; }

.fancybox-progress {
  background: #8583e1;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998; }

/*
.fancybox-container {
  z-index: 9000;
  & .fancybox-bg {
    background: $white;
    opacity: 1;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.47, 0, .74, .71);
    &.fancybox-is-open {
      opacity: 1;
      transition-timing-function: cubic-bezier(.22, .61, .36, 1);
    }
  }
  & .fancybox-inner {
    & .fancybox-infobar {
      font-family: 'Comfortaa', cursive;
      color: $fiolet;
      font-size: 13px;
      height: 44px;
      line-height: 44px;
      min-width: 44px;
      padding: 0 10px;
      pointer-events: none;
      user-select: none;
      & span {}
    }
    & .fancybox-toolbar {
      & .fancybox-button {
        display: inline-block;
        height: 44px;
        width: 44px;
        margin: 0;
        padding: 10px;
        background: none;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        cursor: pointer;
        position: relative;
        transition: color .2s;
        vertical-align: top;
        visibility: inherit;
        & .prev-but {
          width: 30px;
          height: 60px;
          background-image: url("../images/prev.svg");
          background-repeat: no-repeat;
          background-position: 0 0;
        }
        & .next-but {
          width: 30px;
          height: 60px;
          background-image: url("../images/next.svg");
          background-repeat: no-repeat;
          background-position: 0 0;
        }
        &:visited,
        &:link {
          color: $grey;
        }
        &:hover {
          color: $black;
        }
      }
    }
    & .fancybox-navigation {
      & .fancybox-button--arrow_left {
        left: 0;
        padding: 30px 0 0 50px;
        &:hover {
          opacity: .5;
        }
      }
      & .fancybox-button--arrow_right {
        padding: 30px 50px 0 0;
        right: 0;
        &:hover {
          opacity: .5;
        }
      }
    }
    & .fancybox-stage {}
    & .fancybox-caption {
      background: $white !important;
      & .fancybox-caption__body {
        color: $black;
        padding-bottom: 50px;
        & .opis {
          font-size: 16px;
          opacity: .5;
        }
      }
    }
  }
  & .fancybox-progress {
    background: $fiolet;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: scaleX(0);
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    z-index: 99998;
  }
}*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
.copy {
  display: block;
  margin: auto;
  text-align: center;
  font-size: 14px;
  padding-bottom: 20px;
  padding-top: 20px;
  color: #7a798c;
  opacity: .5; }
  .copy span.small {
    display: none; }
    @media (max-width: 450px) {
      .copy span.small {
        display: inline; } }
  .copy a {
    color: #7a798c; }
  @media (max-width: 450px) {
    .copy span.big {
      display: none; } }

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
.my-navbar {
  z-index: 100;
  padding-top: 0;
  padding-bottom: 0; }
  .my-navbar.cloned {
    position: fixed;
    top: 0;
    margin-top: 0;
    z-index: 1050;
    background: #fff;
    display: none; }
  .my-navbar .logo {
    font-size: 36px;
    font-weight: 800;
    color: #100f3a;
    margin-right: 25px;
    margin-top: -5px;
    transition: all 200ms ease; }
    .my-navbar .logo span {
      color: #8583e1; }
  .my-navbar button.navbar-toggler {
    padding: 10px;
    height: 50px;
    font-weight: 50px; }
    .my-navbar button.navbar-toggler .navbar-toggler-icon {
      background-image: url("../images/hamburger.svg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: 0 0; }
  .my-navbar #navbar .my-navbar-nav .my-nav-item {
    background: #100f3a;
    transition: all 200ms ease; }
    .my-navbar #navbar .my-navbar-nav .my-nav-item:not(:last-child) {
      margin-right: 1px; }
    .my-navbar #navbar .my-navbar-nav .my-nav-item a.my-nav-link {
      padding: 15px 20px;
      color: #fff; }
    .my-navbar #navbar .my-navbar-nav .my-nav-item:hover .my-nav-link,
    .my-navbar #navbar .my-navbar-nav .my-nav-item.active .my-nav-link {
      background: #8583e1; }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
/*#grid[data-columns]::before {
  content: '4 .column.size-1of4';

  @media (max-width: 1199.98px) {}
  @media (max-width: 991.98px) {
    content: '3 .column.size-1of3';
  }
  @media (max-width: 767.98px) {
    content: '2 .column.size-1of2';
  }
  @media (max-width: 575.98px) {
    content: '1 .column.size-1of1';
  }
}*/
/*.filter-container[data-columns]::before {
  content: '4 .column.size-1of4';
}*/
/*.column { float: left; }
.size-1of1 { width: 100%; }
.size-1of2 { width: 50%; }
.size-1of3 { width: 33.333%; }
.size-1of4 { width: 25%; }*/
#Portfolio .my-portfolio-photo {
  background: url("../images/551746348.jpg") no-repeat 0 0;
  height: 250px;
  background-size: cover; }

#Portfolio .info {
  padding-left: 80px;
  padding-right: 50px;
  padding-bottom: 50px; }
  @media (max-width: 991.98px) {
    #Portfolio .info {
      padding-left: 60px; } }
  @media (max-width: 767.98px) {
    #Portfolio .info {
      padding-left: 40px; } }
  #Portfolio .info .main_subtitle,
  #Portfolio .info .main_title,
  #Portfolio .info .about_text {
    padding-left: 0;
    padding-right: 0; }
  #Portfolio .info .main_subtitle {
    padding-top: 75px; }
  #Portfolio .info .main_title {
    padding-bottom: 30px; }
  #Portfolio .info .portfolio_categories {
    margin-top: 66px; }
    #Portfolio .info .portfolio_categories .portfolio_category {
      display: inline-block;
      padding: 10px 40px 8px 40px;
      cursor: pointer;
      font-size: 18px;
      font-weight: 500;
      text-transform: uppercase;
      color: #7a798c;
      transition: all 200ms ease; }
      #Portfolio .info .portfolio_categories .portfolio_category.active, #Portfolio .info .portfolio_categories .portfolio_category:hover {
        background: #8583e1;
        color: #fff;
        font-weight: 700; }

#Portfolio .filtr-item {
  display: block;
  text-align: center;
  padding: 10px;
  z-index: 300;
  float: left;
  width: 25%;
  margin-bottom: 15px; }
  @media (max-width: 991.98px) {
    #Portfolio .filtr-item {
      width: 33%; } }
  @media (max-width: 767.98px) {
    #Portfolio .filtr-item {
      width: 50%; } }
  @media (max-width: 575.98px) {
    #Portfolio .filtr-item {
      width: 100%; } }
  #Portfolio .filtr-item .zoom {
    overflow: hidden; }
    #Portfolio .filtr-item .zoom a {
      display: block; }
    #Portfolio .filtr-item .zoom img {
      max-width: 100%;
      z-index: 10; }
    #Portfolio .filtr-item .zoom:hover a {
      transition: all 200ms ease;
      transform: scale(0.95); }

#Portfolio .figcaption {
  display: none; }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
/*

#Services {
  padding-top: 0px;
  padding-bottom: 100px;

  & .bg-right {
    position: relative;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(239, 239, 239, 1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#efefef', GradientType=1); !* IE6-9 *!
    padding-top: 0px !important;
    padding-right: 50px;
    padding-bottom: 100px;
    padding-left: 0px;
  }
}*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#Skills .my-skill-photo {
  background-image: url("../images/730474690.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 200px;
  -webkit-animation: animBack 10s ease infinite;
          animation: animBack 10s ease infinite; }

#Skills .info {
  padding-left: 80px;
  padding-right: 50px;
  padding-bottom: 50px; }
  @media (max-width: 991.98px) {
    #Skills .info {
      padding-left: 60px; } }
  @media (max-width: 767.98px) {
    #Skills .info {
      padding-left: 40px; } }
  #Skills .info .main_subtitle,
  #Skills .info .main_title,
  #Skills .info .about_text {
    padding-left: 0;
    padding-right: 0; }
  #Skills .info .about_text {
    padding-top: 50px; }

#Skills .my-skills {
  padding-top: 50px; }
  #Skills .my-skills .skills {
    width: 100%; }
    #Skills .my-skills .skills .progress_bars .pb_item {
      width: 100%;
      padding-bottom: 20px; }
      #Skills .my-skills .skills .progress_bars .pb_item .p_bar_title {
        font-size: 14px;
        color: #100f3a;
        font-weight: 500;
        line-height: 0.75;
        margin-bottom: 10px;
        z-index: 1000; }
      #Skills .my-skills .skills .progress_bars .pb_item .skill_bars {
        width: 100%;
        height: 5px;
        position: relative; }
        #Skills .my-skills .skills .progress_bars .pb_item .skill_bars svg {
          position: absolute;
          top: 0;
          left: 0; }
        #Skills .my-skills .skills .progress_bars .pb_item .skill_bars .progressbar-text {
          text-align: right;
          font-size: 13px;
          color: #100f3a;
          font-weight: 500;
          position: absolute;
          top: -26px !important; }

#Skills .milestones {
  width: 100%;
  margin-top: 93px; }
  #Skills .milestones .milestone {
    width: 25%;
    float: left; }
    @media (max-width: 650px) {
      #Skills .milestones .milestone {
        width: 50%;
        padding-bottom: 30px; } }
    @media (max-width: 450px) {
      #Skills .milestones .milestone {
        width: 100%; } }
    #Skills .milestones .milestone .milestone_counter {
      font-size: 36px;
      font-weight: 800;
      color: #100f3a;
      margin-top: 6px; }
    #Skills .milestones .milestone .milestone_text {
      font-size: 16px;
      font-weight: 500;
      color: #7a798c;
      margin-top: -1px; }
  #Skills .milestones .milestone.left {
    width: 100%;
    padding-bottom: 30px; }

@-webkit-keyframes animBack {
  0% {
    background-position: center bottom; }
  50% {
    background-position: center top; }
  100% {
    background-position: center bottom; } }

@keyframes animBack {
  0% {
    background-position: center bottom; }
  50% {
    background-position: center top; }
  100% {
    background-position: center bottom; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
*/

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#start .foto-bg {
  padding-left: 0;
  padding-right: 0; }
  #start .foto-bg .my-header {
    background-image: url("../images/my-foto-new.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: calc(100vh - 54px); }

/* ======= Color ======= */
/* --------------- /reset.css --------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 100%; }

a {
  font-family: "Montserrat", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none; }

a.disabled {
  pointer-events: none;
  cursor: default; }

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

td, td img {
  vertical-align: top; }

input, select, button, textarea {
  margin: 0;
  font-size: 100%;
  outline: none; }

input[type="checkbox"] {
  vertical-align: bottom; }

input[type="radio"] {
  vertical-align: text-bottom; }

sub {
  vertical-align: sub;
  font-size: smaller; }

sup {
  vertical-align: super;
  font-size: smaller; }

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

ul {
  list-style: none; }

.wrapper {
  padding-right: 0px;
  padding-left: 0px; }

img.foto-my {
  width: 100%; }

.bg-right {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 */
  padding-left: 0;
  padding-right: 0; }

.main_subtitle {
  padding-top: 160px;
  padding-left: 80px;
  font-size: 30px;
  font-weight: 500;
  color: #7a798c;
  line-height: 0.75; }
  @media (max-width: 1199.98px) {
    .main_subtitle {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_subtitle {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .main_subtitle {
      padding-left: 20px;
      font-size: 24px; } }

.main_title {
  font-size: 80px;
  font-weight: 800;
  color: #100f3a;
  line-height: 0.85;
  padding-top: 15px;
  padding-left: 80px;
  padding-right: 50px; }
  @media (max-width: 1199.98px) {
    .main_title {
      font-size: 65px;
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .main_title {
      font-size: 60px;
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .main_title {
      font-size: 50px;
      padding-left: 20px; } }

.about_title {
  font-size: 30px;
  font-weight: 700;
  color: #100f3a;
  padding-top: 90px;
  padding-left: 80px; }
  @media (max-width: 1199.98px) {
    .about_title {
      padding-left: 60px;
      font-size: 28px; } }
  @media (max-width: 991.98px) {
    .about_title {
      padding-left: 40px;
      font-size: 26px; } }
  @media (max-width: 767.98px) {
    .about_title {
      padding-left: 20px;
      font-size: 24px; } }

.about_text {
  padding-top: 31px;
  padding-left: 80px;
  padding-right: 50px;
  opacity: .5; }
  @media (max-width: 1199.98px) {
    .about_text {
      padding-left: 60px; } }
  @media (max-width: 991.98px) {
    .about_text {
      padding-left: 40px; } }
  @media (max-width: 767.98px) {
    .about_text {
      padding-left: 20px; } }

/*
@media (max-width: 1199.98px) {}
@media (max-width: 991.98px) {}
@media (max-width: 767.98px) {}
@media (max-width: 575.98px) {}
 */
#Testimonials .testimonials {
  width: 100%;
  padding-top: 75px; }
  #Testimonials .testimonials .test_slider_container {
    padding-left: 29px;
    padding-right: 30px;
    overflow: hidden; }
    #Testimonials .testimonials .test_slider_container .test_item {
      width: 100%;
      background: #fff;
      border: 1px solid #7a798c;
      padding-top: 50px;
      padding-bottom: 50px;
      padding-left: 50px;
      padding-right: 50px;
      transition: all 200ms ease; }
      #Testimonials .testimonials .test_slider_container .test_item::after {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        border: solid 2px #8583e1;
        transition: all 200ms ease;
        content: '';
        visibility: hidden;
        opacity: 0; }
      #Testimonials .testimonials .test_slider_container .test_item:hover {
        box-shadow: 0px 24px 29px rgba(0, 0, 0, 0.23); }
        #Testimonials .testimonials .test_slider_container .test_item:hover::after {
          visibility: visible;
          opacity: 1; }
      #Testimonials .testimonials .test_slider_container .test_item .test_title {
        font-size: 20px;
        font-weight: 700;
        color: #100f3a; }
      #Testimonials .testimonials .test_slider_container .test_item .test_text {
        margin-top: 24px; }
      #Testimonials .testimonials .test_slider_container .test_item .test_image {
        width: 53px;
        height: 53px;
        border-radius: 50%;
        overflow: hidden;
        margin-top: 42px; }
        #Testimonials .testimonials .test_slider_container .test_item .test_image img {
          max-width: 100%; }
      #Testimonials .testimonials .test_slider_container .test_item .test_info {
        font-size: 15px;
        font-weight: 600;
        margin-top: 25px; }
        #Testimonials .testimonials .test_slider_container .test_item .test_info a {
          color: #8583e1; }
        #Testimonials .testimonials .test_slider_container .test_item .test_info span {
          color: #7a798c;
          margin-left: 8px; }
    #Testimonials .testimonials .test_slider_container .owl-theme .owl-nav.disabled + .owl-dots {
      margin-top: 45px; }
    #Testimonials .testimonials .test_slider_container .owl-theme .owl-dots .owl-dot span {
      width: 8px;
      height: 8px;
      background: #d5c6c6;
      margin-left: 2px;
      margin-right: 3px; }
    #Testimonials .testimonials .test_slider_container .owl-theme .owl-dots .owl-dot.active span {
      background: #8583e1; }
    #Testimonials .testimonials .test_slider_container .owl-theme .owl-dots .owl-dot:hover span {
      background: #8583e1; }

.owl-carousel .owl-stage-outer {
  overflow: visible; }
  .owl-carousel .owl-stage-outer .owl-stage .owl-item {
    padding-bottom: 50px; }

/*
#Testimonials {
  padding-top: 0px;

  & .bg-right {
    position: relative;
    background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(239,239,239,1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#efefef',GradientType=1 ); !* IE6-9 *!
    padding-top: 20px;
    padding-right: 50px;
    padding-bottom: 30px;
    padding-left: 80px;
  }

  & .main_subtitle {
    padding-top: 130px;
  }

  & .main_title {
    padding-bottom: 100px;
  }

  & .testimonials {
    width: 100%;

    & .test_slider_container {
      padding-left: 29px;
      padding-right: 30px;
      overflow: hidden;

      & .test_item {
        width: 100%;
        background: #f7f8fc;
        padding-top: 74px;
        padding-bottom: 74px;
        padding-left: 46px;
        padding-right: 40px;
        transition: all 200ms ease;

        &::after {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          pointer-events: none;
          border: solid 2px $fiolet;
          transition: all 200ms ease;
          content: '';
          visibility: hidden;
          opacity: 0;
        }

        &:hover {
          box-shadow: 0px 24px 29px rgba(0,0,0,0.23);

          &::after {
            visibility: visible;
            opacity: 1;
          }
        }

        & .test_title {
          font-size: 20px;
          font-weight: 700;
          color: $darkfiolet;
        }

        & .test_text {
          margin-top: 24px;
        }

        & .test_image {
          width: 53px;
          height: 53px;
          border-radius: 50%;
          overflow: hidden;
          margin-top: 42px;

          & img {
            max-width: 100%;
          }
        }

        & .test_info {
          font-size: 15px;
          font-weight: 600;
          margin-top: 25px;

          & a {
            color: $fiolet;
          }

          & span {
            color: $grey;
            margin-left: 8px;
          }
        }
      }

      & .owl-theme .owl-nav.disabled + .owl-dots {
        margin-top: 45px;
      }
      & .owl-theme .owl-dots .owl-dot span {
        width: 8px;
        height: 8px;
        background: #d5c6c6;
        margin-left: 2px;
        margin-right: 3px;
      }
      & .owl-theme .owl-dots .owl-dot.active span {
        background: $fiolet;
      }
      & .owl-theme .owl-dots .owl-dot:hover span {
        background: $fiolet;
      }
    }
  }
}

.owl-carousel .owl-stage-outer {
  overflow: visible;
}*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm15X3N0eWxlLm1pbi5jc3MiLCJwYXJ0aWFscy9fbWl4aW5zLnNjc3MiLCJwYXJ0aWFscy9fcGFyYW1zLnNjc3MiLCJhYm91dC5zY3NzIiwiY29udGFjdC5zY3NzIiwiZWR1Y2F0aW9uLnNjc3MiLCJleHBlcmllbmNlLnNjc3MiLCJmYW5jeWJveC5zY3NzIiwiZm9vdGVyLnNjc3MiLCJuYXZpZ2F0aW9uLnNjc3MiLCJwb3J0Zm9saW8uc2NzcyIsInNlcnZpY2VzLnNjc3MiLCJza2lsbHMuc2NzcyIsInN0YXJ0X3BhZ2Uuc2NzcyIsInRlc3RpbW9uaWFscy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQiwwQkFBQTtBQ0NBLCtDQUFBO0FBQ0E7RUFDRSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxVQUFVO0VBQ1YsdUJBQXVCO0VBQ3ZCLHFDQUFxQztFQUNyQyxlQUFlLEVBQUE7O0FBRWpCO0VBQ0UscUNBQXFDO0VBQ3JDLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQUNmLHdCQUF3QjtFQUN4Qix1QkFBdUI7RUFDdkIsYUFBYSxFQUFBOztBQUdmO0VBQ0Usb0JBQW9CO0VBQ3BCLGVBQWUsRUFBQTs7QUFFakI7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCLEVBQUE7O0FBRW5CO0VBQ0UsbUJBQW1CLEVBQUE7O0FBRXJCO0VBQ0UsU0FBUztFQUNULGVBQWU7RUFDZixhQUFhLEVBQUE7O0FBRWY7RUFDRSxzQkFBc0IsRUFBQTs7QUFFeEI7RUFDRSwyQkFBMkIsRUFBQTs7QUFFN0I7RUFDRSxtQkFBbUI7RUFDbkIsa0JBQWtCLEVBQUE7O0FBRXBCO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQixFQUFBOztBQUVwQjtFQUNFLGNBQWMsRUFBQTs7QUFFaEI7RUFDRSxnQkFBZ0IsRUFBQTs7QUFFbEI7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQWlCLEVBQUE7O0FBRW5CO0VBQ0UsV0FBVyxFQUFBOztBQUViO0VBQ0Usa0JB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Ozs7Ozs7OztFZDZ1RkUiLCJmaWxlIjoibXlfc3R5bGUubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuI2Fib3V0IC5nZW4taW5mbyB7XG4gIGJhY2tncm91bmQ6ICMxMDBmM2E7XG4gIHBhZGRpbmc6IDUwcHggMzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgI2Fib3V0IC5nZW4taW5mbyB7XG4gICAgICBwYWRkaW5nOiA0NXB4IDI1cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAjYWJvdXQgLmdlbi1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICNhYm91dCAuZ2VuLWluZm8ge1xuICAgICAgcGFkZGluZzogMzBweCAxNXB4OyB9IH1cbiAgI2Fib3V0IC5nZW4taW5mbyAuZ2VuZXJhbF9pbmZvX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgICAgI2Fib3V0IC5nZW4taW5mbyAuZ2VuZXJhbF9pbmZvX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgI2Fib3V0IC5nZW4taW5mbyAuZ2VuZXJhbF9pbmZvX2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDM0cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAgICNhYm91dCAuZ2VuLWluZm8gLmdlbmVyYWxfaW5mb19saXN0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH0gfVxuICAgICNhYm91dCAuZ2VuLWluZm8gLmdlbmVyYWxfaW5mb19saXN0IGxpIC5nZW5lcmFsX2luZm9faWNvbiB7XG4gICAgICB3aWR0aDogMjFweDtcbiAgICAgIGhlaWdodDogMjFweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjRweDsgfVxuICAgICAgI2Fib3V0IC5nZW4taW5mbyAuZ2VuZXJhbF9pbmZvX2xpc3QgbGkgLmdlbmVyYWxfaW5mb19pY29uIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICNhYm91dCAuZ2VuLWluZm8gLmdlbmVyYWxfaW5mb19saXN0IGxpIC5nZW5lcmFsX2luZm9fdGV4dCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogIzdhNzk4YztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgICAgICAjYWJvdXQgLmdlbi1pbmZvIC5nZW5lcmFsX2luZm9fbGlzdCBsaSAuZ2VuZXJhbF9pbmZvX3RleHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAjYWJvdXQgLmdlbi1pbmZvIC5nZW5lcmFsX2luZm9fbGlzdCBsaSAuZ2VuZXJhbF9pbmZvX3RleHQgYSB7XG4gICAgICAgIGNvbG9yOiAjN2E3OThjO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTsgfVxuICAgICAgICAjYWJvdXQgLmdlbi1pbmZvIC5nZW5lcmFsX2luZm9fbGlzdCBsaSAuZ2VuZXJhbF9pbmZvX3RleHQgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICNhYm91dCAuZ2VuLWluZm8gLmdlbmVyYWxfaW5mb19saXN0IGxpIC5nZW5lcmFsX2luZm9fdGV4dCBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAjYWJvdXQgLmdlbi1pbmZvIC5nZW5lcmFsX2luZm9fbGlzdCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cblxuI2Fib3V0IC5iZy1yaWdodCAuaGVhZGVyX2J1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDMwcHg7XG4gIHRvcDogODNweDtcbiAgYmFja2dyb3VuZDogIzg1ODNlMTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XG4gIHotaW5kZXg6IDIwMDA7IH1cbiAgI2Fib3V0IC5iZy1yaWdodCAuaGVhZGVyX2J1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzEwMGYzYTsgfVxuICAjYWJvdXQgLmJnLXJpZ2h0IC5oZWFkZXJfYnV0dG9uIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NnB4OyB9XG4gICAgI2Fib3V0IC5iZy1yaWdodCAuaGVhZGVyX2J1dHRvbiBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICNhYm91dCAuYmctcmlnaHQgLmhlYWRlcl9idXR0b24gPiBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIGJhY2tncm91bmQ6ICMxMDBmM2E7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuI2Fib3V0IC5jb250ZW50IHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgI2Fib3V0IC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAjYWJvdXQgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH0gfVxuICAjYWJvdXQgLmNvbnRlbnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgI2Fib3V0IC5jb250ZW50IC5jaXJjbGUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgICAjYWJvdXQgLmNvbnRlbnQgLmNpcmNsZS1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgICNhYm91dCAuY29udGVudCAuY2lyY2xlLWNvbnRhaW5lcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDEwcHgpIHtcbiAgICAgICNhYm91dCAuY29udGVudCAuY2lyY2xlLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgICAjYWJvdXQgLmNvbnRlbnQgLmNpcmNsZS1jb250YWluZXIgLmxvYWRlcl90aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzEwMGYzYTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogMC43NTtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gICAgI2Fib3V0IC5jb250ZW50IC5jaXJjbGUtY29udGFpbmVyIC5sb2FkZXJfc3VidGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjN2E3OThjO1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgICNhYm91dCAuY29udGVudCAuY2lyY2xlLWNvbnRhaW5lciAuY2lyY2xlc3RhdCB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGhlaWdodDogMjAwcHg7IH1cbiAgI2Fib3V0IC5jb250ZW50IHNwYW4uY2lyY2xlLXRleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLypcclxuY2xhc3Mg4oCUINGBINC/0L7QvNC+0YnRjNGOINC30L3QsNGH0LXQvdC40Y8g0LTQsNC90L3QvtCz0L4g0LDRgtGA0LjQsdGD0YLQsCDQsdGD0LTQtdGCIFwi0L/RgNC40LLRj9C30YvQstCw0YLRjNGB0Y9cIiDRhNGD0L3QutGG0LjQvtC90LDQuy5cclxuZGF0YS1kaW1lbnNpb24g4oCUINC00LjQsNC80LXRgtGAINC60YDRg9Cz0LAuXHJcbmRhdGEtdGV4dCDigJQg0YLQtdC60YHRgiDQstC90YPRgtGA0Lgg0LrRgNGD0LPQsC5cclxuZGF0YS13aWR0aCDigJQg0YLQvtC70YnQuNC90LAg0L7QsdCy0L7QtNC60Lgg0LrRgNGD0LPQsC5cclxuZGF0YS1mb250c2l6ZSDigJQg0YDQsNC30LzQtdGAINGC0LXQutGB0YLQsCDQstC90YPRgtGA0Lgg0LrRgNGD0LPQsC5cclxuZGF0YS1wZXJjZW50IOKAlCDQv9GA0L7RhtC10L3RgiDQt9Cw0L/QvtC70L3QtdC90LjRjyDQutGA0YPQs9CwLlxyXG5kYXRhLWZnY29sb3Ig4oCUINGG0LLQtdGCINC+0LHQstC+0LTQutC4LlxyXG5kYXRhLWJnY29sb3Ig4oCUINGG0LLQtdGCINGE0L7QvdC+0LLQvtCz0L4g0LrRgNGD0LPQsC5cclxuZGF0YS1maWxsIOKAlCDRhtCy0LXRgiDQt9Cw0LvQuNCy0LrQuCDQutGA0YPQs9CwLlxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuKi9cblxuLyogPT09PT09PSBDb2xvciA9PT09PT09ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0gL3Jlc2V0LmNzcyAtLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIHN0cm9uZywgc3ViLCBzdXAsIGIsIHUsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5zdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG5cbmltZy5mb3RvLW15IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJnLXJpZ2h0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlZmVmZWYgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubWFpbl9zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBsaW5lLWhlaWdodDogMC43NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1haW5fdGl0bGUge1xuICBmb250LXNpemU6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBsaW5lLWhlaWdodDogMC44NTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmFib3V0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgcGFkZGluZy10b3A6IDkwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmFib3V0X3RleHQge1xuICBwYWRkaW5nLXRvcDogMzFweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBvcGFjaXR5OiAuNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovXG4jQ29udGFjdCAubGVmdC1jb250YWN0IHtcbiAgcGFkZGluZy1sZWZ0OiA5NXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNzlweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTZweDsgfSB9XG4gICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgLmFib3V0X3RleHQge1xuICAgIHBhZGRpbmctdG9wOiA0NHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7IH1cbiAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9mb3JtIC5teS1jb250YWN0X2lucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC05MHB4O1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAuNzVyZW0gKyAycHgpO1xuICAgICAgICBwYWRkaW5nOiAuMzc1cmVtIC43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogIzdhNzk4YztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg1ODNlMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsgfVxuICAgICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4NTgzZTE7IH1cbiAgICAgICAgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyLCAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyLCAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDo6aW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6IHJlZDsgfVxuICAgICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlOyB9XG4gICAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9mb3JtIC5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7IH1cbiAgICAgICAgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlOyB9XG4gICAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9mb3JtIC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlOyB9XG4gICAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9mb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTsgfVxuICAgICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7IH1cbiAgICAgICAgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7IH1cbiAgICAgICAgI0NvbnRhY3QgLmxlZnQtY29udGFjdCBmb3JtIC5jb250YWN0X2Zvcm0gLmZvcm0tY29udHJvbDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTsgfVxuICAgICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkLCAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSAuZm9ybS1jb250cm9sOnZhbGlkIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICM4NTgzZTE7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIC43NXJlbSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjM4NTgzZTEnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKC4zNzVlbSArIC4xODc1cmVtKSBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pOyB9XG4gICAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjREMzNTQ1OyB9XG4gICAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfZm9ybSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAjQ29udGFjdCAubGVmdC1jb250YWN0IGZvcm0gLmNvbnRhY3RfYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAyMzlweDtcbiAgICAgIGhlaWdodDogNTVweDtcbiAgICAgIGJhY2tncm91bmQ6ICM4NTgzZTE7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH1cbiAgICAgICNDb250YWN0IC5sZWZ0LWNvbnRhY3QgZm9ybSAuY29udGFjdF9idXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTAwZjNhOyB9XG5cbiNDb250YWN0ICNZTWFwc0lEMSB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuI0NvbnRhY3QgI1lNYXBzSUQyIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGhlaWdodDogNDAwcHg7IH1cblxuI0NvbnRhY3QgW2NsYXNzKj1cInltYXBzLTJcIl1bY2xhc3MqPVwiLWdyb3VuZC1wYW5lXCJdIHtcbiAgZmlsdGVyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PGZpbHRlciBpZD0nZ3JheXNjYWxlJz48ZmVDb2xvck1hdHJpeCB0eXBlPSdtYXRyaXgnIHZhbHVlcz0nMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMCAwIDAgMSAwJy8+PC9maWx0ZXI+PC9zdmc+I2dyYXlzY2FsZVwiKTtcbiAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTsgfVxuXG4jQ29udGFjdCAjbWVzc2VuZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogNTB2dztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDQ1JTtcbiAgbGVmdDogMjV2dztcbiAgei1pbmRleDogOTk5OTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAjQ29udGFjdCAjbWVzc2VuZ2VyIHtcbiAgICAgIHdpZHRoOiA4MHZ3ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAxMHZ3ICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAjQ29udGFjdCAjbWVzc2VuZ2VyIHtcbiAgICAgIHdpZHRoOiA5MHZ3ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiA1dncgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgICNDb250YWN0ICNtZXNzZW5nZXIge1xuICAgICAgd2lkdGg6IDk2dncgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDJ2dyAhaW1wb3J0YW50OyB9IH1cblxuI0NvbnRhY3QgLmZvcm1FcnJvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJlZCAhaW1wb3J0YW50OyB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiovXG5cbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuLypcclxuXHJcbiNFZHVjYXRpb24ge1xyXG4gIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICAmIC5iZy1yaWdodCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjM5LCAyMzksIDIzOSwgMSkgMTAwJSk7ICEqIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqIVxyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLCBHcmFkaWVudFR5cGU9MSk7ICEqIElFNi05ICohXHJcbiAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgfVxyXG59Ki9cblxuLyogPT09PT09PSBDb2xvciA9PT09PT09ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0gL3Jlc2V0LmNzcyAtLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIHN0cm9uZywgc3ViLCBzdXAsIGIsIHUsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5zdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG5cbmltZy5mb3RvLW15IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJnLXJpZ2h0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlZmVmZWYgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubWFpbl9zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBsaW5lLWhlaWdodDogMC43NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1haW5fdGl0bGUge1xuICBmb250LXNpemU6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBsaW5lLWhlaWdodDogMC44NTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmFib3V0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgcGFkZGluZy10b3A6IDkwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmFib3V0X3RleHQge1xuICBwYWRkaW5nLXRvcDogMzFweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBvcGFjaXR5OiAuNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovXG4jRXhwZXJpZW5jZSAuaW5mbyB7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgI0V4cGVyaWVuY2UgLmluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgI0V4cGVyaWVuY2UgLmluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgI0V4cGVyaWVuY2UgLmluZm8gLm1haW5fc3VidGl0bGUsXG4gICNFeHBlcmllbmNlIC5pbmZvIC5tYWluX3RpdGxlLFxuICAjRXhwZXJpZW5jZSAuaW5mbyAuYWJvdXRfdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgI0V4cGVyaWVuY2UgLmluZm8gLm1haW5fdGl0bGUge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gICNFeHBlcmllbmNlIC5pbmZvIC5hYm91dF90ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBvcGFjaXR5OiAuNTsgfVxuICAjRXhwZXJpZW5jZSAuaW5mbyAuZXhwZXJpZW5jZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDY1cHg7IH1cbiAgICAjRXhwZXJpZW5jZSAuaW5mbyAuZXhwZXJpZW5jZSAuZXhwX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1M3B4OyB9XG4gICAgI0V4cGVyaWVuY2UgLmluZm8gLmV4cGVyaWVuY2UgLmV4cF90aW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzg1ODNlMTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjg1O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICAgICAjRXhwZXJpZW5jZSAuaW5mbyAuZXhwZXJpZW5jZSAuZXhwX3RpbWUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH0gfVxuICAgICNFeHBlcmllbmNlIC5pbmZvIC5leHBlcmllbmNlIC5leHBfdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMTAwZjNhO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuOTU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgICAjRXhwZXJpZW5jZSAuaW5mbyAuZXhwZXJpZW5jZSAuZXhwX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgICAgICNFeHBlcmllbmNlIC5pbmZvIC5leHBlcmllbmNlIC5leHBfdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgI0V4cGVyaWVuY2UgLmluZm8gLmV4cGVyaWVuY2UgLmV4cF9zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICM3YTc5OGM7XG4gICAgICBtYXJnaW4tdG9wOiA3cHg7IH1cbiAgICAjRXhwZXJpZW5jZSAuaW5mbyAuZXhwZXJpZW5jZSAuZXhwX3RleHQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgIG9wYWNpdHk6IC41OyB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiovXG5cbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuLmZhbmN5Ym94LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDkwMDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZmFuY3lib3gtYmcge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDAsIDAuNzQsIDAuNzEpOyB9XG5cbi5mYW5jeWJveC1pcy1vcGVuIC5mYW5jeWJveC1iZyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb250YWluZXItZmx1aWQgLmZhbmN5Ym94LWluZm9iYXIge1xuICBmb250LWZhbWlseTogJ0NvbWZvcnRhYScsIGN1cnNpdmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtdG9vbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X2xlZnQge1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAzMHB4IDAgMCA1MHB4OyB9XG5cbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X3JpZ2h0IHtcbiAgcGFkZGluZzogMzBweCA1MHB4IDAgMDtcbiAgcmlnaHQ6IDA7IH1cblxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdDpob3Zlcixcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X3JpZ2h0OmhvdmVyIHtcbiAgb3BhY2l0eTogLjU7IH1cblxuLnByZXYtYnV0IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3ByZXYuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cblxuLm5leHQtYnV0IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL25leHQuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgd2lkdGg6IDQ0cHg7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbixcbi5mYW5jeWJveC1idXR0b246dmlzaXRlZCxcbi5mYW5jeWJveC1idXR0b246bGluayB7XG4gIGNvbG9yOiAjY2NjOyB9XG5cbi5mYW5jeWJveC1idXR0b246aG92ZXIge1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZhbmN5Ym94LWNhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7IH1cbiAgLmZhbmN5Ym94LWNhcHRpb24gLmZhbmN5Ym94LWNhcHRpb25fX2JvZHkge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gICAgLmZhbmN5Ym94LWNhcHRpb24gLmZhbmN5Ym94LWNhcHRpb25fX2JvZHkgLm9waXMge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgb3BhY2l0eTogLjU7IH1cblxuLmZhbmN5Ym94LXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogIzg1ODNlMTtcbiAgaGVpZ2h0OiAycHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgei1pbmRleDogOTk5OTg7IH1cblxuLypcclxuLmZhbmN5Ym94LWNvbnRhaW5lciB7XHJcbiAgei1pbmRleDogOTAwMDtcclxuICAmIC5mYW5jeWJveC1iZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdDtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40NywgMCwgLjc0LCAuNzEpO1xyXG4gICAgJi5mYW5jeWJveC1pcy1vcGVuIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjIsIC42MSwgLjM2LCAxKTtcclxuICAgIH1cclxuICB9XHJcbiAgJiAuZmFuY3lib3gtaW5uZXIge1xyXG4gICAgJiAuZmFuY3lib3gtaW5mb2JhciB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAnQ29tZm9ydGFhJywgY3Vyc2l2ZTtcclxuICAgICAgY29sb3I6ICRmaW9sZXQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogNDRweDtcclxuICAgICAgbWluLXdpZHRoOiA0NHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgJiBzcGFuIHt9XHJcbiAgICB9XHJcbiAgICAmIC5mYW5jeWJveC10b29sYmFyIHtcclxuICAgICAgJiAuZmFuY3lib3gtYnV0dG9uIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgICAgIHdpZHRoOiA0NHB4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGluaGVyaXQ7XHJcbiAgICAgICAgJiAucHJldi1idXQge1xyXG4gICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcHJldi5zdmdcIik7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmIC5uZXh0LWJ1dCB7XHJcbiAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9uZXh0LnN2Z1wiKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6dmlzaXRlZCxcclxuICAgICAgICAmOmxpbmsge1xyXG4gICAgICAgICAgY29sb3I6ICRncmV5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmIC5mYW5jeWJveC1uYXZpZ2F0aW9uIHtcclxuICAgICAgJiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19sZWZ0IHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwIDUwcHg7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19yaWdodCB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCA1MHB4IDAgMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiAuZmFuY3lib3gtc3RhZ2Uge31cclxuICAgICYgLmZhbmN5Ym94LWNhcHRpb24ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgJiAuZmFuY3lib3gtY2FwdGlvbl9fYm9keSB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgICAgICAmIC5vcGlzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmIC5mYW5jeWJveC1wcm9ncmVzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkZmlvbGV0O1xyXG4gICAgaGVpZ2h0OiAycHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgei1pbmRleDogOTk5OTg7XHJcbiAgfVxyXG59Ki9cblxuLyogPT09PT09PSBDb2xvciA9PT09PT09ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0gL3Jlc2V0LmNzcyAtLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIHN0cm9uZywgc3ViLCBzdXAsIGIsIHUsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5zdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG5cbmltZy5mb3RvLW15IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJnLXJpZ2h0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlZmVmZWYgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubWFpbl9zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBsaW5lLWhlaWdodDogMC43NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1haW5fdGl0bGUge1xuICBmb250LXNpemU6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBsaW5lLWhlaWdodDogMC44NTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmFib3V0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgcGFkZGluZy10b3A6IDkwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmFib3V0X3RleHQge1xuICBwYWRkaW5nLXRvcDogMzFweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBvcGFjaXR5OiAuNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovXG4uY29weSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBvcGFjaXR5OiAuNTsgfVxuICAuY29weSBzcGFuLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gICAgICAuY29weSBzcGFuLnNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyB9IH1cbiAgLmNvcHkgYSB7XG4gICAgY29sb3I6ICM3YTc5OGM7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gICAgLmNvcHkgc3Bhbi5iaWcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuLm15LW5hdmJhciB7XG4gIHotaW5kZXg6IDEwMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5teS1uYXZiYXIuY2xvbmVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgei1pbmRleDogMTA1MDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm15LW5hdmJhciAubG9nbyB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgY29sb3I6ICMxMDBmM2E7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7IH1cbiAgICAubXktbmF2YmFyIC5sb2dvIHNwYW4ge1xuICAgICAgY29sb3I6ICM4NTgzZTE7IH1cbiAgLm15LW5hdmJhciBidXR0b24ubmF2YmFyLXRvZ2dsZXIge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MHB4OyB9XG4gICAgLm15LW5hdmJhciBidXR0b24ubmF2YmFyLXRvZ2dsZXIgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2hhbWJ1cmdlci5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICAubXktbmF2YmFyICNuYXZiYXIgLm15LW5hdmJhci1uYXYgLm15LW5hdi1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTAwZjNhO1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlOyB9XG4gICAgLm15LW5hdmJhciAjbmF2YmFyIC5teS1uYXZiYXItbmF2IC5teS1uYXYtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgLm15LW5hdmJhciAjbmF2YmFyIC5teS1uYXZiYXItbmF2IC5teS1uYXYtaXRlbSBhLm15LW5hdi1saW5rIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLm15LW5hdmJhciAjbmF2YmFyIC5teS1uYXZiYXItbmF2IC5teS1uYXYtaXRlbTpob3ZlciAubXktbmF2LWxpbmssXG4gICAgLm15LW5hdmJhciAjbmF2YmFyIC5teS1uYXZiYXItbmF2IC5teS1uYXYtaXRlbS5hY3RpdmUgLm15LW5hdi1saW5rIHtcbiAgICAgIGJhY2tncm91bmQ6ICM4NTgzZTE7IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuKi9cblxuLyogPT09PT09PSBDb2xvciA9PT09PT09ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0gL3Jlc2V0LmNzcyAtLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIHN0cm9uZywgc3ViLCBzdXAsIGIsIHUsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5zdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG5cbmltZy5mb3RvLW15IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJnLXJpZ2h0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlZmVmZWYgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubWFpbl9zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBsaW5lLWhlaWdodDogMC43NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1haW5fdGl0bGUge1xuICBmb250LXNpemU6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBsaW5lLWhlaWdodDogMC44NTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmFib3V0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgcGFkZGluZy10b3A6IDkwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmFib3V0X3RleHQge1xuICBwYWRkaW5nLXRvcDogMzFweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBvcGFjaXR5OiAuNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovXG4vKiNncmlkW2RhdGEtY29sdW1uc106OmJlZm9yZSB7XHJcbiAgY29udGVudDogJzQgLmNvbHVtbi5zaXplLTFvZjQnO1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xyXG4gICAgY29udGVudDogJzMgLmNvbHVtbi5zaXplLTFvZjMnO1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgIGNvbnRlbnQ6ICcyIC5jb2x1bW4uc2l6ZS0xb2YyJztcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICBjb250ZW50OiAnMSAuY29sdW1uLnNpemUtMW9mMSc7XHJcbiAgfVxyXG59Ki9cbi8qLmZpbHRlci1jb250YWluZXJbZGF0YS1jb2x1bW5zXTo6YmVmb3JlIHtcclxuICBjb250ZW50OiAnNCAuY29sdW1uLnNpemUtMW9mNCc7XHJcbn0qL1xuLyouY29sdW1uIHsgZmxvYXQ6IGxlZnQ7IH1cclxuLnNpemUtMW9mMSB7IHdpZHRoOiAxMDAlOyB9XHJcbi5zaXplLTFvZjIgeyB3aWR0aDogNTAlOyB9XHJcbi5zaXplLTFvZjMgeyB3aWR0aDogMzMuMzMzJTsgfVxyXG4uc2l6ZS0xb2Y0IHsgd2lkdGg6IDI1JTsgfSovXG4jUG9ydGZvbGlvIC5teS1wb3J0Zm9saW8tcGhvdG8ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvNTUxNzQ2MzQ4LmpwZ1wiKSBuby1yZXBlYXQgMCAwO1xuICBoZWlnaHQ6IDI1MHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG5cbiNQb3J0Zm9saW8gLmluZm8ge1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICNQb3J0Zm9saW8gLmluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgI1BvcnRmb2xpbyAuaW5mbyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuICAjUG9ydGZvbGlvIC5pbmZvIC5tYWluX3N1YnRpdGxlLFxuICAjUG9ydGZvbGlvIC5pbmZvIC5tYWluX3RpdGxlLFxuICAjUG9ydGZvbGlvIC5pbmZvIC5hYm91dF90ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAjUG9ydGZvbGlvIC5pbmZvIC5tYWluX3N1YnRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDogNzVweDsgfVxuICAjUG9ydGZvbGlvIC5pbmZvIC5tYWluX3RpdGxlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAjUG9ydGZvbGlvIC5pbmZvIC5wb3J0Zm9saW9fY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luLXRvcDogNjZweDsgfVxuICAgICNQb3J0Zm9saW8gLmluZm8gLnBvcnRmb2xpb19jYXRlZ29yaWVzIC5wb3J0Zm9saW9fY2F0ZWdvcnkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMTBweCA0MHB4IDhweCA0MHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzdhNzk4YztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlOyB9XG4gICAgICAjUG9ydGZvbGlvIC5pbmZvIC5wb3J0Zm9saW9fY2F0ZWdvcmllcyAucG9ydGZvbGlvX2NhdGVnb3J5LmFjdGl2ZSwgI1BvcnRmb2xpbyAuaW5mbyAucG9ydGZvbGlvX2NhdGVnb3JpZXMgLnBvcnRmb2xpb19jYXRlZ29yeTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM4NTgzZTE7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbiNQb3J0Zm9saW8gLmZpbHRyLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiAzMDA7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICNQb3J0Zm9saW8gLmZpbHRyLWl0ZW0ge1xuICAgICAgd2lkdGg6IDMzJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICNQb3J0Zm9saW8gLmZpbHRyLWl0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgICNQb3J0Zm9saW8gLmZpbHRyLWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAjUG9ydGZvbGlvIC5maWx0ci1pdGVtIC56b29tIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgI1BvcnRmb2xpbyAuZmlsdHItaXRlbSAuem9vbSBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgI1BvcnRmb2xpbyAuZmlsdHItaXRlbSAuem9vbSBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTA7IH1cbiAgICAjUG9ydGZvbGlvIC5maWx0ci1pdGVtIC56b29tOmhvdmVyIGEge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpOyB9XG5cbiNQb3J0Zm9saW8gLmZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiovXG5cbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuLypcclxuXHJcbiNTZXJ2aWNlcyB7XHJcbiAgcGFkZGluZy10b3A6IDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcblxyXG4gICYgLmJnLXJpZ2h0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyMzksIDIzOSwgMjM5LCAxKSAxMDAlKTsgISogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICohXHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDBmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VmZWZlZicsIEdyYWRpZW50VHlwZT0xKTsgISogSUU2LTkgKiFcclxuICAgIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDBweDtcclxuICB9XHJcbn0qL1xuXG4vKiA9PT09PT09IENvbG9yID09PT09PT0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLSAvcmVzZXQuY3NzIC0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBlbSwgc3Ryb25nLCBzdWIsIHN1cCwgYiwgdSwgaSwgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCB0YWJsZSwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuYSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuYS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCwgdGQgaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG5pbnB1dCwgc2VsZWN0LCBidXR0b24sIHRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207IH1cblxuc3ViIHtcbiAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgZm9udC1zaXplOiBzbWFsbGVyOyB9XG5cbnN1cCB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgZm9udC1zaXplOiBzbWFsbGVyOyB9XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ud3JhcHBlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cblxuaW1nLmZvdG8tbXkge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYmctcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgI2VmZWZlZiAxMDAlKTtcbiAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDBmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VmZWZlZicsR3JhZGllbnRUeXBlPTEgKTtcbiAgLyogSUU2LTkgKi9cbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5tYWluX3N1YnRpdGxlIHtcbiAgcGFkZGluZy10b3A6IDE2MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICM3YTc5OGM7XG4gIGxpbmUtaGVpZ2h0OiAwLjc1OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAubWFpbl9zdWJ0aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAubWFpbl9zdWJ0aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAubWFpbl9zdWJ0aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuXG4ubWFpbl90aXRsZSB7XG4gIGZvbnQtc2l6ZTogODBweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIGxpbmUtaGVpZ2h0OiAwLjg1O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAubWFpbl90aXRsZSB7XG4gICAgICBmb250LXNpemU6IDY1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAubWFpbl90aXRsZSB7XG4gICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAubWFpbl90aXRsZSB7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG4uYWJvdXRfdGl0bGUge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBwYWRkaW5nLXRvcDogOTBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuXG4uYWJvdXRfdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAzMXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIG9wYWNpdHk6IC41OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGV4dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGV4dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGV4dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG4vKlxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG4gKi9cbiNTa2lsbHMgLm15LXNraWxsLXBob3RvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzczMDQ3NDY5MC5qcGdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBhbmltYXRpb246IGFuaW1CYWNrIDEwcyBlYXNlIGluZmluaXRlOyB9XG5cbiNTa2lsbHMgLmluZm8ge1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICNTa2lsbHMgLmluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgI1NraWxscyAuaW5mbyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuICAjU2tpbGxzIC5pbmZvIC5tYWluX3N1YnRpdGxlLFxuICAjU2tpbGxzIC5pbmZvIC5tYWluX3RpdGxlLFxuICAjU2tpbGxzIC5pbmZvIC5hYm91dF90ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAjU2tpbGxzIC5pbmZvIC5hYm91dF90ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuXG4jU2tpbGxzIC5teS1za2lsbHMge1xuICBwYWRkaW5nLXRvcDogNTBweDsgfVxuICAjU2tpbGxzIC5teS1za2lsbHMgLnNraWxscyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjU2tpbGxzIC5teS1za2lsbHMgLnNraWxscyAucHJvZ3Jlc3NfYmFycyAucGJfaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gICAgICAjU2tpbGxzIC5teS1za2lsbHMgLnNraWxscyAucHJvZ3Jlc3NfYmFycyAucGJfaXRlbSAucF9iYXJfdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGNvbG9yOiAjMTAwZjNhO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMC43NTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgei1pbmRleDogMTAwMDsgfVxuICAgICAgI1NraWxscyAubXktc2tpbGxzIC5za2lsbHMgLnByb2dyZXNzX2JhcnMgLnBiX2l0ZW0gLnNraWxsX2JhcnMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAjU2tpbGxzIC5teS1za2lsbHMgLnNraWxscyAucHJvZ3Jlc3NfYmFycyAucGJfaXRlbSAuc2tpbGxfYmFycyBzdmcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAjU2tpbGxzIC5teS1za2lsbHMgLnNraWxscyAucHJvZ3Jlc3NfYmFycyAucGJfaXRlbSAuc2tpbGxfYmFycyAucHJvZ3Jlc3NiYXItdGV4dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGNvbG9yOiAjMTAwZjNhO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTI2cHggIWltcG9ydGFudDsgfVxuXG4jU2tpbGxzIC5taWxlc3RvbmVzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDkzcHg7IH1cbiAgI1NraWxscyAubWlsZXN0b25lcyAubWlsZXN0b25lIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICAgICAjU2tpbGxzIC5taWxlc3RvbmVzIC5taWxlc3RvbmUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gICAgICAjU2tpbGxzIC5taWxlc3RvbmVzIC5taWxlc3RvbmUge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgI1NraWxscyAubWlsZXN0b25lcyAubWlsZXN0b25lIC5taWxlc3RvbmVfY291bnRlciB7XG4gICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6ICMxMDBmM2E7XG4gICAgICBtYXJnaW4tdG9wOiA2cHg7IH1cbiAgICAjU2tpbGxzIC5taWxlc3RvbmVzIC5taWxlc3RvbmUgLm1pbGVzdG9uZV90ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzdhNzk4YztcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgI1NraWxscyAubWlsZXN0b25lcyAubWlsZXN0b25lLmxlZnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG5cbkBrZXlmcmFtZXMgYW5pbUJhY2sge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTsgfVxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7IH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiovXG5cbi8qID09PT09PT0gQ29sb3IgPT09PT09PSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tIC9yZXNldC5jc3MgLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5hIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hLmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLCB0ZCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbmlucHV0LCBzZWxlY3QsIGJ1dHRvbiwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTsgfVxuXG5zdWIge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuc3VwIHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBmb250LXNpemU6IHNtYWxsZXI7IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuXG5pbWcuZm90by1teSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZy1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjZWZlZmVmIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1haW5fc3VidGl0bGUge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzdhNzk4YztcbiAgbGluZS1oZWlnaHQ6IDAuNzU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3N1YnRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5tYWluX3RpdGxlIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi5hYm91dF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMDBmM2E7XG4gIHBhZGRpbmctdG9wOiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5hYm91dF90ZXh0IHtcbiAgcGFkZGluZy10b3A6IDMxcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgb3BhY2l0eTogLjU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5hYm91dF90ZXh0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbi8qXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbiAqL1xuI3N0YXJ0IC5mb3RvLWJnIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICNzdGFydCAuZm90by1iZyAubXktaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbXktZm90by1uZXcuanBnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTRweCk7IH1cblxuLyogPT09PT09PSBDb2xvciA9PT09PT09ICovXG4vKiAtLS0tLS0tLS0tLS0tLS0gL3Jlc2V0LmNzcyAtLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgZW0sIHN0cm9uZywgc3ViLCBzdXAsIGIsIHUsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgdGFibGUsIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmEuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBvdXRsaW5lOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tOyB9XG5cbnN1YiB7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5zdXAge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG5cbmltZy5mb3RvLW15IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJnLXJpZ2h0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsICNlZmVmZWYgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubWFpbl9zdWJ0aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjN2E3OThjO1xuICBsaW5lLWhlaWdodDogMC43NTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fc3VidGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1haW5fdGl0bGUge1xuICBmb250LXNpemU6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMTAwZjNhO1xuICBsaW5lLWhlaWdodDogMC44NTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW5fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmFib3V0X3RpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzEwMGYzYTtcbiAgcGFkZGluZy10b3A6IDkwcHg7XG4gIHBhZGRpbmctbGVmdDogODBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5hYm91dF90aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYWJvdXRfdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmFib3V0X3RleHQge1xuICBwYWRkaW5nLXRvcDogMzFweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBvcGFjaXR5OiAuNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmFib3V0X3RleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovXG4jVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDc1cHg7IH1cbiAgI1Rlc3RpbW9uaWFscyAudGVzdGltb25pYWxzIC50ZXN0X3NsaWRlcl9jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMjlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3YTc5OGM7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlOyB9XG4gICAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogc29saWQgMnB4ICM4NTgzZTE7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDI0cHggMjlweCByZ2JhKDAsIDAsIDAsIDAuMjMpOyB9XG4gICAgICAgICNUZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFscyAudGVzdF9zbGlkZXJfY29udGFpbmVyIC50ZXN0X2l0ZW06aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICNUZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFscyAudGVzdF9zbGlkZXJfY29udGFpbmVyIC50ZXN0X2l0ZW0gLnRlc3RfdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjMTAwZjNhOyB9XG4gICAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtIC50ZXN0X3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9XG4gICAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtIC50ZXN0X2ltYWdlIHtcbiAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgIGhlaWdodDogNTNweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MnB4OyB9XG4gICAgICAgICNUZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFscyAudGVzdF9zbGlkZXJfY29udGFpbmVyIC50ZXN0X2l0ZW0gLnRlc3RfaW1hZ2UgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgICNUZXN0aW1vbmlhbHMgLnRlc3RpbW9uaWFscyAudGVzdF9zbGlkZXJfY29udGFpbmVyIC50ZXN0X2l0ZW0gLnRlc3RfaW5mbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgICAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAudGVzdF9pdGVtIC50ZXN0X2luZm8gYSB7XG4gICAgICAgICAgY29sb3I6ICM4NTgzZTE7IH1cbiAgICAgICAgI1Rlc3RpbW9uaWFscyAudGVzdGltb25pYWxzIC50ZXN0X3NsaWRlcl9jb250YWluZXIgLnRlc3RfaXRlbSAudGVzdF9pbmZvIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjN2E3OThjO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAub3dsLXRoZW1lIC5vd2wtbmF2LmRpc2FibGVkICsgLm93bC1kb3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7IH1cbiAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGJhY2tncm91bmQ6ICNkNWM2YzY7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7IH1cbiAgICAjVGVzdGltb25pYWxzIC50ZXN0aW1vbmlhbHMgLnRlc3Rfc2xpZGVyX2NvbnRhaW5lciAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjODU4M2UxOyB9XG4gICAgI1Rlc3RpbW9uaWFscyAudGVzdGltb25pYWxzIC50ZXN0X3NsaWRlcl9jb250YWluZXIgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjODU4M2UxOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLXN0YWdlIC5vd2wtaXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cblxuLypcclxuI1Rlc3RpbW9uaWFscyB7XHJcbiAgcGFkZGluZy10b3A6IDBweDtcclxuXHJcbiAgJiAuYmctcmlnaHQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSxyZ2JhKDIzOSwyMzksMjM5LDEpIDEwMCUpOyAhKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKiFcclxuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDBmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VmZWZlZicsR3JhZGllbnRUeXBlPTEgKTsgISogSUU2LTkgKiFcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gIH1cclxuXHJcbiAgJiAubWFpbl9zdWJ0aXRsZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTMwcHg7XHJcbiAgfVxyXG5cclxuICAmIC5tYWluX3RpdGxlIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICB9XHJcblxyXG4gICYgLnRlc3RpbW9uaWFscyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAmIC50ZXN0X3NsaWRlcl9jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI5cHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAmIC50ZXN0X2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y4ZmM7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDc0cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc0cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0NnB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCAkZmlvbGV0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAyNHB4IDI5cHggcmdiYSgwLDAsMCwwLjIzKTtcclxuXHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC50ZXN0X3RpdGxlIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICBjb2xvcjogJGRhcmtmaW9sZXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC50ZXN0X3RleHQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfaW1hZ2Uge1xyXG4gICAgICAgICAgd2lkdGg6IDUzcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDUzcHg7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogNDJweDtcclxuXHJcbiAgICAgICAgICAmIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfaW5mbyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuXHJcbiAgICAgICAgICAmIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGZpb2xldDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmIC5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XHJcbiAgICAgIH1cclxuICAgICAgJiAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHtcclxuICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNkNWM2YzY7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcclxuICAgICAgfVxyXG4gICAgICAmIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZmlvbGV0O1xyXG4gICAgICB9XHJcbiAgICAgICYgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGZpb2xldDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufSovXG4iLCIvKiA9PT09PT09IENvbG9yID09PT09PT0gKi9cclxuJGZpb2xldDogIzg1ODNlMTtcclxuJGRhcmtmaW9sZXQ6ICMxMDBmM2E7XHJcbiR3aGl0ZTogI2ZmZjtcclxuJGJsYWNrOiAjMDAwO1xyXG4kZ3JleTogIzdhNzk4YzsiLCJAY2hhcnNldCBcIlVURi04XCI7XHJcbi8qIC0tLS0tLS0tLS0tLS0tLSAvcmVzZXQuY3NzIC0tLS0tLS0tLS0tLS0tLSAqL1xyXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGVtLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIHRhYmxlLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgb3V0bGluZTogMDtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiAxMDAlOyB9XHJcblxyXG5hIHtcclxuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZm9udC1zaXplOiAxMDAlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5hLmRpc2FibGVkIHtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7IH1cclxuXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XHJcblxyXG50ZCwgdGQgaW1nIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XHJcblxyXG5pbnB1dCwgc2VsZWN0LCBidXR0b24sIHRleHRhcmVhIHtcclxuICBtYXJnaW46IDA7XHJcbiAgZm9udC1zaXplOiAxMDAlO1xyXG4gIG91dGxpbmU6IG5vbmU7IH1cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxyXG5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207IH1cclxuXHJcbnN1YiB7XHJcbiAgdmVydGljYWwtYWxpZ246IHN1YjtcclxuICBmb250LXNpemU6IHNtYWxsZXI7IH1cclxuXHJcbnN1cCB7XHJcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xyXG4gIGZvbnQtc2l6ZTogc21hbGxlcjsgfVxyXG5cclxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcclxuICBkaXNwbGF5OiBibG9jazsgfVxyXG5cclxudWwge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cclxuXHJcbi53cmFwcGVyIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbn1cclxuaW1nLmZvdG8tbXkge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5iZy1yaWdodCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUscmdiYSgyMzksMjM5LDIzOSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZWZlZmVmJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcbi5tYWluX3N1YnRpdGxlIHtcclxuICBwYWRkaW5nLXRvcDogMTYwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gIGZvbnQtc2l6ZTogMzBweDtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGNvbG9yOiAkZ3JleTtcclxuICBsaW5lLWhlaWdodDogMC43NTtcclxuXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxufVxyXG4ubWFpbl90aXRsZSB7XHJcbiAgZm9udC1zaXplOiA4MHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgY29sb3I6ICRkYXJrZmlvbGV0O1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjg1O1xyXG4gIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogODBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XHJcbiAgICBmb250LXNpemU6IDY1cHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xyXG4gICAgZm9udC1zaXplOiA2MHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG59XHJcbi5hYm91dF90aXRsZSB7XHJcbiAgZm9udC1zaXplOiAzMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgY29sb3I6ICRkYXJrZmlvbGV0O1xyXG4gIHBhZGRpbmctdG9wOiA5MHB4O1xyXG4gIHBhZGRpbmctbGVmdDogODBweDtcclxuXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxufVxyXG4uYWJvdXRfdGV4dCB7XHJcbiAgcGFkZGluZy10b3A6IDMxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgb3BhY2l0eTogLjU7XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcclxuICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHt9XHJcbn1cclxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICovIiwiQGltcG9ydCBcInBhcnRpYWxzL21peGluc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcGFyYW1zXCI7XHJcblxyXG4jYWJvdXQge1xyXG5cclxuICAuZ2VuLWluZm8ge1xyXG4gICAgYmFja2dyb3VuZDogJGRhcmtmaW9sZXQ7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xyXG4gICAgICBwYWRkaW5nOiA0NXB4IDI1cHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAgIHBhZGRpbmc6IDMwcHggMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5nZW5lcmFsX2luZm9fdGl0bGUge1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgLmdlbmVyYWxfaW5mb19saXN0IHtcclxuICAgICAgbWFyZ2luLXRvcDogMzRweDtcclxuXHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMzBweCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmIGxpIHtcclxuICAgICAgICAmIC5nZW5lcmFsX2luZm9faWNvbiB7XHJcbiAgICAgICAgICB3aWR0aDogMjFweDtcclxuICAgICAgICAgIGhlaWdodDogMjFweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjRweDtcclxuXHJcbiAgICAgICAgICAmIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLmdlbmVyYWxfaW5mb190ZXh0IHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgIGNvbG9yOiAkZ3JleTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblxyXG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgLmJnLXJpZ2h0IHtcclxuICAgICYgLmhlYWRlcl9idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgICB0b3A6IDgzcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRmaW9sZXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xyXG4gICAgICB6LWluZGV4OiAyMDAwO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcmtmaW9sZXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNzZweDtcclxuXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gZGl2IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHdpZHRoOiA1NXB4O1xyXG4gICAgICAgIGhlaWdodDogNTVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFya2Zpb2xldDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiAuY29udGVudCB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5jaXJjbGUtY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIHdpZHRoOjMzLjMzMyU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLmxvYWRlcl90aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgY29sb3I6ICRkYXJrZmlvbGV0O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuNzU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLmxvYWRlcl9zdWJ0aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgY29sb3I6ICM3YTc5OGM7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJiAuY2lyY2xlc3RhdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgc3Bhbi5jaXJjbGUtdGV4dCB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG5jbGFzcyDigJQg0YEg0L/QvtC80L7RidGM0Y4g0LfQvdCw0YfQtdC90LjRjyDQtNCw0L3QvdC+0LPQviDQsNGC0YDQuNCx0YPRgtCwINCx0YPQtNC10YIgXCLQv9GA0LjQstGP0LfRi9Cy0LDRgtGM0YHRj1wiINGE0YPQvdC60YbQuNC+0L3QsNC7LlxyXG5kYXRhLWRpbWVuc2lvbiDigJQg0LTQuNCw0LzQtdGC0YAg0LrRgNGD0LPQsC5cclxuZGF0YS10ZXh0IOKAlCDRgtC10LrRgdGCINCy0L3Rg9GC0YDQuCDQutGA0YPQs9CwLlxyXG5kYXRhLXdpZHRoIOKAlCDRgtC+0LvRidC40L3QsCDQvtCx0LLQvtC00LrQuCDQutGA0YPQs9CwLlxyXG5kYXRhLWZvbnRzaXplIOKAlCDRgNCw0LfQvNC10YAg0YLQtdC60YHRgtCwINCy0L3Rg9GC0YDQuCDQutGA0YPQs9CwLlxyXG5kYXRhLXBlcmNlbnQg4oCUINC/0YDQvtGG0LXQvdGCINC30LDQv9C+0LvQvdC10L3QuNGPINC60YDRg9Cz0LAuXHJcbmRhdGEtZmdjb2xvciDigJQg0YbQstC10YIg0L7QsdCy0L7QtNC60LguXHJcbmRhdGEtYmdjb2xvciDigJQg0YbQstC10YIg0YTQvtC90L7QstC+0LPQviDQutGA0YPQs9CwLlxyXG5kYXRhLWZpbGwg4oCUINGG0LLQtdGCINC30LDQu9C40LLQutC4INC60YDRg9Cz0LAuXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG4qLyIsIkBpbXBvcnQgXCJwYXJ0aWFscy9taXhpbnNcIjtcclxuQGltcG9ydCBcInBhcnRpYWxzL3BhcmFtc1wiO1xyXG5cclxuI0NvbnRhY3Qge1xyXG5cclxuICAmIC5sZWZ0LWNvbnRhY3Qge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA5NXB4O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA3OXB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNTZweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuXHJcbiAgICAmIC5hYm91dF90ZXh0IHtcclxuICAgICAgcGFkZGluZy10b3A6IDQ0cHghaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmIGZvcm0ge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuXHJcbiAgICAgICYgLmNvbnRhY3RfZm9ybSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICYgLm15LWNvbnRhY3RfaW5wdXQge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAtOTBweDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogY2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAuMzc1cmVtIC43NXJlbTtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgIGNvbG9yOiAkZ3JleTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZmlvbGV0O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmaW9sZXQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcclxuICAgICAgICAgICY6LW1vei1wbGFjZWhvbGRlcixcclxuICAgICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIsXHJcbiAgICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcclxuICAgICAgICAgICY6OmlucHV0LXBsYWNlaG9sZGVye1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICBjb2xvcjogcmVkO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgICAgICAge29wYWNpdHk6IDE7IHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO31cclxuICAgICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgICAgICAge29wYWNpdHk6IDE7IHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO31cclxuICAgICAgICAgICY6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICAgICAgICAge29wYWNpdHk6IDE7IHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO31cclxuICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAgICAgICAge29wYWNpdHk6IDE7IHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO31cclxuICAgICAgICAgICY6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge29wYWNpdHk6IDAuMzsgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7fVxyXG4gICAgICAgICAgJjpmb2N1czo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICB7b3BhY2l0eTogMC4zOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTt9XHJcbiAgICAgICAgICAmOmZvY3VzOi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHtvcGFjaXR5OiAwLjM7IHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO31cclxuICAgICAgICAgICY6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge29wYWNpdHk6IDAuMzsgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7fVxyXG5cclxuICAgICAgICAgICYuaXMtdmFsaWQsXHJcbiAgICAgICAgICAmOnZhbGlke1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRmaW9sZXQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAuNzVyZW0pO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzg1ODNlMScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSkgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5pcy1pbnZhbGlkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjREMzNTQ1O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLmNvbnRhY3RfYnV0dG9uIHtcclxuICAgICAgICB3aWR0aDogMjM5cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRmaW9sZXQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjZweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFya2Zpb2xldDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuXHJcbiAgJiAjWU1hcHNJRDEge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAmICNZTWFwc0lEMiB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIGhlaWdodDogNDAwcHg7XHJcbiAgfVxyXG4gICYgW2NsYXNzKj1cInltYXBzLTJcIl1bY2xhc3MqPVwiLWdyb3VuZC1wYW5lXCJdIHtcclxuICAgIGZpbHRlcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cXCdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcJz48ZmlsdGVyIGlkPVxcJ2dyYXlzY2FsZVxcJz48ZmVDb2xvck1hdHJpeCB0eXBlPVxcJ21hdHJpeFxcJyB2YWx1ZXM9XFwnMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMCAwIDAgMSAwXFwnLz48L2ZpbHRlcj48L3N2Zz4jZ3JheXNjYWxlXCIpO1xyXG4gICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcclxuICB9XHJcblxyXG4gICYgI21lc3NlbmdlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHdpZHRoOiA1MHZ3O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA0NSU7XHJcbiAgICBsZWZ0OiAyNXZ3O1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAgIHdpZHRoOiA4MHZ3ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGxlZnQ6IDEwdncgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICB3aWR0aDogOTB2dyAhaW1wb3J0YW50O1xyXG4gICAgICBsZWZ0OiA1dncgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICB3aWR0aDogOTZ2dyAhaW1wb3J0YW50O1xyXG4gICAgICBsZWZ0OiAydncgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgLmZvcm1FcnJvcntcclxuICAgIGJvcmRlcjoxcHggc29saWQgcmVkICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG4qL1xyXG4iLCJAaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXJhbXNcIjtcclxuLypcclxuXHJcbiNFZHVjYXRpb24ge1xyXG4gIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICAmIC5iZy1yaWdodCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjM5LCAyMzksIDIzOSwgMSkgMTAwJSk7ICEqIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqIVxyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlZmVmZWYnLCBHcmFkaWVudFR5cGU9MSk7ICEqIElFNi05ICohXHJcbiAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgfVxyXG59Ki9cclxuIiwiQGltcG9ydCBcInBhcnRpYWxzL21peGluc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcGFyYW1zXCI7XHJcblxyXG4jRXhwZXJpZW5jZSB7XHJcblxyXG4gICYgLmluZm8ge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuXHJcbiAgICAmIC5tYWluX3N1YnRpdGxlLFxyXG4gICAgJiAubWFpbl90aXRsZSxcclxuICAgICYgLmFib3V0X3RleHQge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiAubWFpbl90aXRsZSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYgLmFib3V0X3RleHQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgICAgb3BhY2l0eTogLjU7XHJcbiAgICB9XHJcblxyXG4gICAgJiAuZXhwZXJpZW5jZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcclxuXHJcbiAgICAgICYgLmV4cF9pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUzcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLmV4cF90aW1lIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGZpb2xldDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMC44NTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7fVxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuICAgICAgfVxyXG5cclxuICAgICAgJiAuZXhwX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGRhcmtmaW9sZXQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLmV4cF9zdWJ0aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgY29sb3I6ICRncmV5O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJiAuZXhwX3RleHQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG4qL1xyXG5cclxuIiwiQGltcG9ydCBcInBhcnRpYWxzL21peGluc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcGFyYW1zXCI7XHJcblxyXG4uZmFuY3lib3gtY29udGFpbmVyIHtcclxuICB6LWluZGV4OiA5MDAwO1xyXG59XHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uZmFuY3lib3gtYmcge1xyXG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgb3BhY2l0eTogMTtcclxuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNDcsIDAsIC43NCwgLjcxKTtcclxufVxyXG4uZmFuY3lib3gtaXMtb3BlbiAuZmFuY3lib3gtYmcge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjIsIC42MSwgLjM2LCAxKTtcclxufVxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmZhbmN5Ym94LWlubmVyIHt9XHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY29udGFpbmVyLWZsdWlkIC5mYW5jeWJveC1pbmZvYmFyIHtcclxuICBmb250LWZhbWlseTogJ0NvbWZvcnRhYScsIGN1cnNpdmU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBjb2xvcjogJGJsYWNrO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcclxuICBoZWlnaHQ6IDQ0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgbWluLXdpZHRoOiA0NHB4O1xyXG4gIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlO1xyXG4gIHBhZGRpbmc6IDAgMTBweDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtdG9vbGJhciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxufVxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24ge31cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICBwYWRkaW5nOiAzMHB4IDAgMCA1MHB4O1xyXG59XHJcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X3JpZ2h0IHtcclxuICBwYWRkaW5nOiAzMHB4IDUwcHggMCAwO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X2xlZnQ6aG92ZXIsXHJcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24tLWFycm93X3JpZ2h0OmhvdmVyIHtcclxuICBvcGFjaXR5OiAuNTtcclxufVxyXG4ucHJldi1idXQge1xyXG4gIHdpZHRoOiAzMHB4O1xyXG4gIGhlaWdodDogNjBweDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcHJldi5zdmdcIik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbn1cclxuLm5leHQtYnV0IHtcclxuICB3aWR0aDogMzBweDtcclxuICBoZWlnaHQ6IDYwcHg7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL25leHQuc3ZnXCIpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG59XHJcbi5mYW5jeWJveC1idXR0b24ge1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogNDRweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcclxuICB3aWR0aDogNDRweDtcclxufVxyXG4uZmFuY3lib3gtYnV0dG9uLFxyXG4uZmFuY3lib3gtYnV0dG9uOnZpc2l0ZWQsXHJcbi5mYW5jeWJveC1idXR0b246bGluayB7XHJcbiAgY29sb3I6ICNjY2M7XHJcbn1cclxuLmZhbmN5Ym94LWJ1dHRvbjpob3ZlciB7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5mYW5jeWJveC1zdGFnZSB7fVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5mYW5jeWJveC1jYXB0aW9uIHtcclxuICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuXHJcbiAgJiAuZmFuY3lib3gtY2FwdGlvbl9fYm9keSB7XHJcbiAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcblxyXG4gICAgJiAub3BpcyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgb3BhY2l0eTogLjU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5mYW5jeWJveC1wcm9ncmVzcyB7XHJcbiAgYmFja2dyb3VuZDogJGZpb2xldDtcclxuICBoZWlnaHQ6IDJweDtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogMDtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcclxuICB6LWluZGV4OiA5OTk5ODtcclxufVxyXG5cclxuXHJcbi8qXHJcbi5mYW5jeWJveC1jb250YWluZXIge1xyXG4gIHotaW5kZXg6IDkwMDA7XHJcbiAgJiAuZmFuY3lib3gtYmcge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQ7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNDcsIDAsIC43NCwgLjcxKTtcclxuICAgICYuZmFuY3lib3gtaXMtb3BlbiB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjIyLCAuNjEsIC4zNiwgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYgLmZhbmN5Ym94LWlubmVyIHtcclxuICAgICYgLmZhbmN5Ym94LWluZm9iYXIge1xyXG4gICAgICBmb250LWZhbWlseTogJ0NvbWZvcnRhYScsIGN1cnNpdmU7XHJcbiAgICAgIGNvbG9yOiAkZmlvbGV0O1xyXG4gICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgICAgIG1pbi13aWR0aDogNDRweDtcclxuICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICYgc3BhbiB7fVxyXG4gICAgfVxyXG4gICAgJiAuZmFuY3lib3gtdG9vbGJhciB7XHJcbiAgICAgICYgLmZhbmN5Ym94LWJ1dHRvbiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICB3aWR0aDogNDRweDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnM7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xyXG4gICAgICAgICYgLnByZXYtYnV0IHtcclxuICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3ByZXYuc3ZnXCIpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJiAubmV4dC1idXQge1xyXG4gICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbmV4dC5zdmdcIik7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOnZpc2l0ZWQsXHJcbiAgICAgICAgJjpsaW5rIHtcclxuICAgICAgICAgIGNvbG9yOiAkZ3JleTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiAuZmFuY3lib3gtbmF2aWdhdGlvbiB7XHJcbiAgICAgICYgLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdCB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMCA1MHB4O1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgb3BhY2l0eTogLjU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYgLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfcmlnaHQge1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggNTBweCAwIDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYgLmZhbmN5Ym94LXN0YWdlIHt9XHJcbiAgICAmIC5mYW5jeWJveC1jYXB0aW9uIHtcclxuICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICYgLmZhbmN5Ym94LWNhcHRpb25fX2JvZHkge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgJiAub3BpcyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJiAuZmFuY3lib3gtcHJvZ3Jlc3Mge1xyXG4gICAgYmFja2dyb3VuZDogJGZpb2xldDtcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcclxuICAgIHotaW5kZXg6IDk5OTk4O1xyXG4gIH1cclxufSovXHJcbiIsIkBpbXBvcnQgXCJwYXJ0aWFscy9taXhpbnNcIjtcclxuQGltcG9ydCBcInBhcnRpYWxzL3BhcmFtc1wiO1xyXG5cclxuLmNvcHkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjogYXV0bztcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIGNvbG9yOiAkZ3JleTtcclxuICBvcGFjaXR5OiAuNTtcclxuICBcclxuICAgICYgc3Bhbi5zbWFsbCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDUwcHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgJiBhIHtcclxuICAgIGNvbG9yOiAkZ3JleTtcclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xyXG4gICAgXHJcbiAgICAmIHNwYW4uYmlnIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcInBhcnRpYWxzL21peGluc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcGFyYW1zXCI7XHJcblxyXG4jbmF2IHt9XHJcbi5teS1uYXZiYXIge1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICBwYWRkaW5nLXRvcDogMDtcclxuICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgJi5jbG9uZWQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIHotaW5kZXg6IDEwNTA7XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJiAubG9nbyB7XHJcbiAgICBmb250LXNpemU6IDM2cHg7XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgY29sb3I6ICRkYXJrZmlvbGV0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xyXG4gICAgbWFyZ2luLXRvcDogLTVweDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xyXG5cclxuICAgICYgc3BhbiB7XHJcbiAgICAgIGNvbG9yOiAkZmlvbGV0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiBidXR0b24ubmF2YmFyLXRvZ2dsZXIge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MHB4O1xyXG5cclxuICAgICYgLm5hdmJhci10b2dnbGVyLWljb24ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaGFtYnVyZ2VyLnN2Z1wiKTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiAjbmF2YmFyIHtcclxuICAgICYgLm15LW5hdmJhci1uYXYge1xyXG4gICAgICAmIC5teS1uYXYtaXRlbSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGRhcmtmaW9sZXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblxyXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgYS5teS1uYXYtbGluayB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciAubXktbmF2LWxpbmssXHJcbiAgICAgICAgJi5hY3RpdmUgLm15LW5hdi1saW5rIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRmaW9sZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG4qL1xyXG4iLCJAaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXJhbXNcIjtcclxuXHJcbi8qI2dyaWRbZGF0YS1jb2x1bW5zXTo6YmVmb3JlIHtcclxuICBjb250ZW50OiAnNCAuY29sdW1uLnNpemUtMW9mNCc7XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHt9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICBjb250ZW50OiAnMyAuY29sdW1uLnNpemUtMW9mMyc7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgY29udGVudDogJzIgLmNvbHVtbi5zaXplLTFvZjInO1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgIGNvbnRlbnQ6ICcxIC5jb2x1bW4uc2l6ZS0xb2YxJztcclxuICB9XHJcbn0qL1xyXG5cclxuLyouZmlsdGVyLWNvbnRhaW5lcltkYXRhLWNvbHVtbnNdOjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICc0IC5jb2x1bW4uc2l6ZS0xb2Y0JztcclxufSovXHJcblxyXG4vKi5jb2x1bW4geyBmbG9hdDogbGVmdDsgfVxyXG4uc2l6ZS0xb2YxIHsgd2lkdGg6IDEwMCU7IH1cclxuLnNpemUtMW9mMiB7IHdpZHRoOiA1MCU7IH1cclxuLnNpemUtMW9mMyB7IHdpZHRoOiAzMy4zMzMlOyB9XHJcbi5zaXplLTFvZjQgeyB3aWR0aDogMjUlOyB9Ki9cclxuXHJcbiNQb3J0Zm9saW8ge1xyXG5cclxuICAmIC5teS1wb3J0Zm9saW8tcGhvdG8ge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzU1MTc0NjM0OC5qcGdcIikgbm8tcmVwZWF0IDAgMDtcclxuICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIH1cclxuXHJcbiAgJiAuaW5mbyB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgIH1cclxuXHJcbiAgICAmIC5tYWluX3N1YnRpdGxlLFxyXG4gICAgJiAubWFpbl90aXRsZSxcclxuICAgICYgLmFib3V0X3RleHQge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiAubWFpbl9zdWJ0aXRsZSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xyXG4gICAgfVxyXG5cclxuICAgICYgLm1haW5fdGl0bGUge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5wb3J0Zm9saW9fY2F0ZWdvcmllcyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDY2cHg7XHJcblxyXG4gICAgICAmIC5wb3J0Zm9saW9fY2F0ZWdvcnkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHggOHB4IDQwcHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgY29sb3I6ICRncmV5O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xyXG5cclxuICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRmaW9sZXQ7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgLmZpbHRyLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgei1pbmRleDogMzAwO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogMjUlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7fVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmIC56b29tIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICYgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguOTUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmIC5maWdjYXB0aW9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuKi8iLCJAaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXJhbXNcIjtcclxuLypcclxuXHJcbiNTZXJ2aWNlcyB7XHJcbiAgcGFkZGluZy10b3A6IDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcblxyXG4gICYgLmJnLXJpZ2h0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyMzksIDIzOSwgMjM5LCAxKSAxMDAlKTsgISogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICohXHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDBmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VmZWZlZicsIEdyYWRpZW50VHlwZT0xKTsgISogSUU2LTkgKiFcclxuICAgIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDBweDtcclxuICB9XHJcbn0qL1xyXG4iLCJAaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXJhbXNcIjtcclxuXHJcbiNTa2lsbHMge1xyXG5cclxuICAmIC5teS1za2lsbC1waG90byB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNzMwNDc0NjkwLmpwZ1wiKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgbWluLWhlaWdodDogMjAwcHg7XHJcbiAgICBhbmltYXRpb246IGFuaW1CYWNrIDEwcyBlYXNlIGluZmluaXRlO1xyXG4gIH1cclxuXHJcbiAgJiAuaW5mbyB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7fVxyXG5cclxuICAgICYgLm1haW5fc3VidGl0bGUsXHJcbiAgICAmIC5tYWluX3RpdGxlLFxyXG4gICAgJiAuYWJvdXRfdGV4dCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5hYm91dF90ZXh0IHtcclxuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmIC5teS1za2lsbHMge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcblxyXG4gICAgJiAuc2tpbGxzIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAmIC5wcm9ncmVzc19iYXJzIHtcclxuICAgICAgICAmIC5wYl9pdGVtIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgJiAucF9iYXJfdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZGFya2Zpb2xldDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNzU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiAuc2tpbGxfYmFycyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJiBzdmcge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiAucHJvZ3Jlc3NiYXItdGV4dCB7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkZGFya2Zpb2xldDtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IC0yNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgLm1pbGVzdG9uZXMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tdG9wOiA5M3B4O1xyXG5cclxuICAgICYgLm1pbGVzdG9uZSB7XHJcbiAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmIC5taWxlc3RvbmVfaWNvbiB7fVxyXG5cclxuICAgICAgJiAubWlsZXN0b25lX2NvdW50ZXIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIGNvbG9yOiAkZGFya2Zpb2xldDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLm1pbGVzdG9uZV90ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBjb2xvcjogJGdyZXk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgLm1pbGVzdG9uZS5sZWZ0IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGFuaW1CYWNrIHtcclxuICAwJSB7YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbX1cclxuICA1MCUge2JhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3B9XHJcbiAgMTAwJSB7YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbX1cclxufVxyXG5cclxuLypcclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge31cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7fVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHt9XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge31cclxuKi9cclxuIiwiQGltcG9ydCBcInBhcnRpYWxzL21peGluc1wiO1xyXG5AaW1wb3J0IFwicGFydGlhbHMvcGFyYW1zXCI7XHJcblxyXG4jc3RhcnQge1xyXG5cclxuICAmIC5mb3RvLWJnIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcblxyXG4gICAgJiAubXktaGVhZGVyIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL215LWZvdG8tbmV3LmpwZ1wiKTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NHB4KTtcclxuICAgIH1cclxuICB9XHJcbn0iLCJAaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXJhbXNcIjtcclxuXHJcbiNUZXN0aW1vbmlhbHMge1xyXG5cclxuICAmIC50ZXN0aW1vbmlhbHMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcclxuXHJcbiAgICAmIC50ZXN0X3NsaWRlcl9jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI5cHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAmIC50ZXN0X2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICRmaW9sZXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogMHB4IDI0cHggMjlweCByZ2JhKDAsMCwwLDAuMjMpO1xyXG5cclxuICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfdGl0bGUge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgIGNvbG9yOiAkZGFya2Zpb2xldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfdGV4dCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiAudGVzdF9pbWFnZSB7XHJcbiAgICAgICAgICB3aWR0aDogNTNweDtcclxuICAgICAgICAgIGhlaWdodDogNTNweDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MnB4O1xyXG5cclxuICAgICAgICAgICYgaW1nIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiAudGVzdF9pbmZvIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG5cclxuICAgICAgICAgICYgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZmlvbGV0O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgLm93bC10aGVtZSAub3dsLW5hdi5kaXNhYmxlZCArIC5vd2wtZG90cyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcclxuICAgICAgfVxyXG4gICAgICAmIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xyXG4gICAgICAgIHdpZHRoOiA4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2Q1YzZjNjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xyXG4gICAgICB9XHJcbiAgICAgICYgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRmaW9sZXQ7XHJcbiAgICAgIH1cclxuICAgICAgJiAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZmlvbGV0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcblxyXG4gICYgLm93bC1zdGFnZSB7XHJcblxyXG4gICAgJiAub3dsLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLypcclxuI1Rlc3RpbW9uaWFscyB7XHJcbiAgcGFkZGluZy10b3A6IDBweDtcclxuXHJcbiAgJiAuYmctcmlnaHQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSxyZ2JhKDIzOSwyMzksMjM5LDEpIDEwMCUpOyAhKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKiFcclxuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDBmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2VmZWZlZicsR3JhZGllbnRUeXBlPTEgKTsgISogSUU2LTkgKiFcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xyXG4gIH1cclxuXHJcbiAgJiAubWFpbl9zdWJ0aXRsZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTMwcHg7XHJcbiAgfVxyXG5cclxuICAmIC5tYWluX3RpdGxlIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICB9XHJcblxyXG4gICYgLnRlc3RpbW9uaWFscyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAmIC50ZXN0X3NsaWRlcl9jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI5cHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAmIC50ZXN0X2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y4ZmM7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDc0cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc0cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0NnB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCAkZmlvbGV0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAyNHB4IDI5cHggcmdiYSgwLDAsMCwwLjIzKTtcclxuXHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC50ZXN0X3RpdGxlIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICBjb2xvcjogJGRhcmtmaW9sZXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC50ZXN0X3RleHQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfaW1hZ2Uge1xyXG4gICAgICAgICAgd2lkdGg6IDUzcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDUzcHg7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogNDJweDtcclxuXHJcbiAgICAgICAgICAmIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgLnRlc3RfaW5mbyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuXHJcbiAgICAgICAgICAmIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGZpb2xldDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmIC5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XHJcbiAgICAgIH1cclxuICAgICAgJiAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHtcclxuICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNkNWM2YzY7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcclxuICAgICAgfVxyXG4gICAgICAmIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZmlvbGV0O1xyXG4gICAgICB9XHJcbiAgICAgICYgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGZpb2xldDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufSovXHJcbiJdfQ== */
