@charset "UTF-8";
/*  ==========================================================================
	Setup: Variables, Mixins
    ========================================================================== */
/*  ==========================================================================
	Fonts
    ========================================================================== */
/*  ==========================================================================
	Global Settings & Utilities
    ========================================================================== */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden; }

.group:after {
  content: "";
  display: table;
  clear: both; }

img {
  max-width: 100%; }

figure {
  margin: 0px; }

a:focus {
  outline: none; }

h1, h2 {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 300;
  text-transform: uppercase;
  margin-bottom: 35px; }

h3 {
  color: #f2c300;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 300;
  text-transform: uppercase; }

h4 {
  font-family: 'Roboto Condensed', sans-serif;
  color: #0d3268;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: calc(28 / 24); }

@media (max-width: 767px) {
  h1, h2 {
    font-size: 3.125rem; } }

@media (max-width: 575px) {
  h1, h2 {
    font-size: 2.1875rem; } }

@media (max-width: 991px) {
  .display-1 {
    font-size: 3.4375rem; } }

@media (max-width: 767px) {
  .display-1 {
    font-size: 2.8125rem; } }

.full-width {
  width: 100%; }

/*  ==========================================================================
	Layouts
    ========================================================================== */
#container {
  overflow-x: hidden;
  position: relative; }

/*  ==========================================================================
	Components
    ========================================================================== */
#header {
  background: #000000;
  background: rgba(0, 0, 0, 0.42);
  border-bottom: 4px solid #ffffff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 999; }
  #header:before {
    content: '';
    display: block;
    width: 25%;
    height: 100%;
    background: #ffffff;
    position: absolute;
    top: 0;
    width: 50%;
    right: 50%;
    margin-right: 270px; }
  #header .logo {
    padding-top: 24px;
    padding-bottom: 24px;
    background: #ffffff;
    position: relative; }
    #header .logo:after {
      content: '';
      display: block;
      background: #ffffff;
      width: 84px;
      height: 104%;
      position: absolute;
      right: -28px;
      top: 0;
      -webkit-transform: skew(-25deg);
          -ms-transform: skew(-25deg);
              transform: skew(-25deg);
      z-index: 1; }
    #header .logo a {
      display: block;
      background: url("../images/logo.svg") no-repeat;
      width: 204px;
      height: 60px;
      background-size: 100% 100%;
      position: relative;
      z-index: 3; }

/*
@media (max-width:1399px) {
  #header {
    &:before {
      width: 28%;
    }
  }
}
*/
@media (max-width: 991px) {
  #header .inner-wrapper {
    position: static; } }

@media (max-width: 767px) {
  #header .logo {
    padding-top: 11px;
    padding-bottom: 11px; }
    #header .logo a {
      width: 163px;
      height: 48px;
      background-size: contain; } }

.open-menu-btn {
  display: none;
  float: right;
  width: 48px;
  height: 26px;
  background: url("../images/menu-btn.png");
  background-size: contain;
  margin-top: 35px; }

.close-menu-btn {
  float: right;
  height: 35px;
  width: 35px;
  border: 0px; }
  .close-menu-btn:before, .close-menu-btn:after {
    content: '';
    display: block;
    cursor: pointer;
    background: #f2c300;
    height: 5px;
    width: 43px;
    position: relative;
    left: -4px;
    -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg); }
  .close-menu-btn:before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    top: 14px; }
  .close-menu-btn:after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: 9px; }

#menu-overlay {
  display: none;
  background: #0d3267;
  background: rgba(13, 50, 103, 0.84);
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99; }

.menu-header {
  margin-bottom: 45px; }
  .menu-header h2 {
    float: left;
    margin: 0px;
    font-family: 'Oswald', sans-serif;
    font-size: 34px;
    font-size: 2.125rem;
    line-height: calc(38 / 34);
    color: #ffffff;
    text-transform: uppercase; }

#main-navigation {
  padding-top: 10px;
  padding-left: 32px; }
  #main-navigation ul {
    margin: 0px;
    padding: 0px;
    list-style: none; }
  #main-navigation li {
    float: left;
    padding: 40px 3% 40px;
    text-transform: uppercase;
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: calc(16 / 13);
    font-weight: 900;
    letter-spacing: 1px;
    position: relative; }
    #main-navigation li:before {
      content: '';
      display: block;
      width: 100%;
      border-top: 8px solid #f2c300;
      position: absolute;
      left: 0;
      top: 0;
      -webkit-transform: scale(0);
          -ms-transform: scale(0);
              transform: scale(0);
      transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
    #main-navigation li:first-child {
      padding-left: 35px; }
    #main-navigation li:last-child {
      padding-right: 0px; }
    #main-navigation li.active:before, #main-navigation li:hover:before {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    #main-navigation li.active a, #main-navigation li:hover a {
      color: #f2c300; }
    #main-navigation li a {
      color: #ffffff;
      text-decoration: none;
      transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
      #main-navigation li a:hover {
        color: #f2c300; }

@media (min-width: 992px) {
  #main-navigation {
    height: auto !important; } }

@media (max-width: 991px) {
  .open-menu-btn {
    display: block; }
  #main-navigation {
    background: #0d3267;
    padding: 70px 40px 10px;
    position: absolute;
    position: fixed;
    height: 100%;
    overflow-x: hidden;
    top: 0;
    right: -80%;
    z-index: 2000;
    width: 80%;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
    #main-navigation ul {
      margin: 0px -40px;
      border-bottom: 1px solid #204274; }
    #main-navigation li {
      float: none;
      padding: 25px 40px;
      border-top: 1px solid #204274; }
      #main-navigation li:first-child {
        padding-left: 40px; }
      #main-navigation li:before {
        width: 5px;
        height: 100%;
        border-top: 0px;
        border-left: 5px solid #f2c300; }
  body.open-menu {
    overflow: hidden; }
    body.open-menu #main-navigation {
      right: 0; }
    body.open-menu #menu-overlay {
      display: block; } }

@media (max-width: 767px) {
  .open-menu-btn {
    margin-top: 23px; }
  .menu-header {
    margin-bottom: 30px; }
  #main-navigation {
    padding: 35px 30px 10px; }
    #main-navigation ul {
      margin: 0px -30px; }
    #main-navigation li {
      padding: 25px 30px; }
      #main-navigation li:first-child {
        padding-left: 30px; } }

#footer {
  background: #f6f9f9; }
  #footer .wrapper {
    border-top: 1px solid #c1c5c8;
    padding: 37px 0px; }
  #footer .logo a {
    display: inline-block;
    background: url("../images/logo.svg") no-repeat;
    background-size: 100% 100%;
    width: 149px;
    height: 43px; }

#footer-menu {
  padding-top: 20px; }
  #footer-menu ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
    text-align: right; }
  #footer-menu li {
    display: inline-block;
    vertical-align: top;
    margin-left: 70px;
    font-size: 14px;
    font-size: 0.875rem; }
    #footer-menu li:first-child {
      margin-left: 0px; }
    #footer-menu li a {
      color: #8794a6;
      text-decoration: none;
      font-weight: 400;
      transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
      #footer-menu li a:hover {
        color: #0d3268; }

@media (max-width: 991px) {
  #footer-menu li {
    margin-left: 40px; } }

@media (max-width: 767px) {
  #footer {
    text-align: center; }
  #footer-menu {
    padding-top: 0px; }
    #footer-menu ul {
      text-align: center; }
    #footer-menu li {
      display: block;
      margin-left: 0px;
      margin-bottom: 30px; } }

.btn {
  display: block;
  width: 100%;
  font-size: 21px;
  font-size: 1.3125rem;
  line-height: calc(24 / 21);
  text-transform: uppercase;
  padding-bottom: 14px;
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
  .btn:focus {
    outline: 0px; }

.btn-outline-secondary {
  display: inline-block;
  width: auto;
  border: 1px solid #0d3268;
  color: #0d3268 !important;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: calc(18 / 22);
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  padding: 14px 20px; }

.view-more-btn {
  background: url("../images/view-more-btn.svg") no-repeat;
  background-size: contain;
  display: block;
  width: 32px;
  height: 32px; }
  .view-more-btn:hover {
    background-image: url("../images/view-more-btn-hover.svg"); }

.form ul {
  margin: 0px;
  padding: 0px;
  list-style: none; }

.form li {
  margin-bottom: 13px; }

.form .form-control {
  font-size: 16px;
  font-size: 1rem;
  line-height: calc(24 / 16);
  font-weight: 700;
  padding-bottom: 14px;
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }

.form textarea {
  resize: none;
  min-height: 114px; }

.form .form-group textarea {
  min-height: 129px; }

.form .captcha {
  text-align: right; }
  .form .captcha .form-control {
    width: calc(300px - 126px);
    float: right; }

@media (max-width: 991px) {
  .form .captcha .form-control {
    width: calc(100% - 128px); } }

/*
* banner
*/
#banner {
  position: relative;
  max-height: 800px;
  overflow: hidden; }
  #banner .banner-image {
    background-repeat: no-repeat;
    background-size: cover; }
    #banner .banner-image img {
      width: 100%;
      max-height: 800px;
      visibility: hidden; }
  #banner .pattern-default {
    position: absolute;
    right: 0;
    bottom: 0px;
    z-index: 2;
    width: 50%; }
  #banner .description {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    color: #ffffff;
    overflow: hidden;
    background: #424a57;
    background: rgba(66, 74, 87, 0.45);
    /* For browsers that do not support gradients */
    /* For Safari 5.1 to 6.0 */
    /* For Opera 11.1 to 12.0 */
    /* For Firefox 3.6 to 15 */
    background: linear-gradient(90deg, #424a57, #424a57);
    background: linear-gradient(90deg, rgba(66, 74, 87, 0.45), rgba(66, 74, 87, 0.45)); }
    #banner .description:before, #banner .description:after {
      content: '';
      display: block;
      height: 152px;
      width: 100%;
      position: absolute;
      left: 0; }
    #banner .description:before {
      background: #f2c300;
      bottom: 0;
      -webkit-transform: skewY(-10deg);
          -ms-transform: skewY(-10deg);
              transform: skewY(-10deg);
      z-index: 1; }
    #banner .description:after {
      background: #ffffff;
      bottom: -82px;
      -webkit-transform: skewY(-5deg);
          -ms-transform: skewY(-5deg);
              transform: skewY(-5deg);
      z-index: 3; }
    #banner .description .inner-wrap {
      width: 100%;
      height: 100%;
      display: table; }
      #banner .description .inner-wrap .inner {
        display: table-cell;
        vertical-align: middle; }
    #banner .description h1, #banner .description h2, #banner .description p {
      letter-spacing: 1px; }
    #banner .description h1, #banner .description h2 {
      font-family: 'Oswald', sans-serif;
      text-transform: uppercase;
      margin-bottom: 50px;
      max-width: 50%; }
    #banner .description p {
      font-size: 14px;
      font-size: 0.875rem;
      line-height: calc(24 / 14);
      max-width: 40%; }
  #banner .btn-outline-secondary {
    color: #fff !important;
    border-color: #fff;
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 300; }

body.home #banner .banner-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

@media (min-width: 1700px) {
  #banner .description:before {
    -webkit-transform: skewY(-6deg);
        -ms-transform: skewY(-6deg);
            transform: skewY(-6deg); }
  #banner .description:after {
    -webkit-transform: skewY(-3deg);
        -ms-transform: skewY(-3deg);
            transform: skewY(-3deg); } }

@media (max-width: 991px) {
  #banner .pattern-default {
    max-width: 347px;
    bottom: 38px; }
  #banner .description:before, #banner .description:after {
    height: 122px; }
  #banner .description:before {
    bottom: -40px; }
  #banner .description h1, #banner .description h2 {
    font-size: 3.4375rem;
    margin-bottom: 25px;
    max-width: 80%; }
  #banner .description p {
    max-width: 60%; } }

@media (max-width: 767px) {
  #banner .pattern-default {
    max-width: 247px;
    bottom: 0; }
  #banner .banner-image img {
    min-height: 475px; }
  #banner .description h1, #banner .description h2 {
    font-size: 2.8125rem; }
  #banner .btn-outline-secondary {
    font-size: 1.375rem; } }

@media (max-width: 639px) {
  #banner .description {
    padding-top: 100px;
    padding-bottom: 190px; }
    #banner .description h1, #banner .description h2 {
      font-size: 1.875rem;
      margin-bottom: 10px;
      max-width: 90%; }
    #banner .description p {
      max-width: 90%; } }

.stats {
  margin: 0px -9px;
  padding: 0px;
  list-style: none;
  text-align: center; }
  .stats li {
    padding: 0px 9px;
    margin-bottom: 18px;
    float: left; }
    .stats li.employees .wrap {
      background: #0d3268;
      color: #ffffff; }
    .stats li .wrap {
      width: 160px;
      height: 160px;
      background: #e0eae9; }
    .stats li .number {
      font-size: 48px;
      font-size: 3rem;
      line-height: calc(52 / 48);
      font-family: 'Roboto Condensed', sans-serif;
      font-weight: 300;
      display: block; }
    .stats li p {
      position: relative;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      margin: 0px; }

@media (max-width: 991px) {
  .stats li .wrap {
    width: 145px;
    height: 145px; } }

@media (max-width: 767px) {
  .stats {
    max-width: 320px;
    margin: 0px auto; }
    .stats li {
      width: 50%; }
      .stats li .wrap {
        width: 125px;
        height: 125px; } }

#about-us {
  padding: 110px 0px 115px; }
  #about-us .two-column-layout .column1, #about-us .two-column-layout .column2 {
    float: left; }
  #about-us .two-column-layout .column1 {
    width: 40%; }
  #about-us .two-column-layout .column2 {
    width: 60%; }
  #about-us h2 {
    margin-bottom: 30px; }
  #about-us p {
    margin-bottom: 20px; }

@media (max-width: 991px) {
  #about-us {
    padding: 95px 0px; }
    #about-us .two-column-layout .column1, #about-us .two-column-layout .column2 {
      width: 50%; }
    #about-us h2 {
      margin-bottom: 15px; } }

@media (max-width: 767px) {
  #about-us {
    padding: 25px 0px; }
    #about-us .two-column-layout .column1, #about-us .two-column-layout .column2 {
      width: 100%;
      float: none; } }

#services {
  background: #f6f9f9;
  padding: 260px 0px 100px;
  position: relative;
  overflow: hidden; }
  #services:before {
    content: '';
    display: block;
    height: 200px;
    width: 100%;
    position: absolute;
    left: 0; }
  #services:before {
    background: #ffffff;
    top: -82px;
    -webkit-transform: skewY(5deg);
        -ms-transform: skewY(5deg);
            transform: skewY(5deg); }
  #services:after {
    content: '';
    display: block;
    width: 434px;
    height: 419px;
    background: url("../images/services-bg.svg") no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    top: -109px; }
  #services .service {
    margin-bottom: 50px;
    padding-right: 10px; }
  #services h2 {
    margin-bottom: 65px; }
  #services h3 {
    font-weight: 400;
    margin-bottom: 35px;
    color: #8695aa; }
  #services ul {
    margin: 0px;
    padding: 0px;
    list-style: none; }

@media (min-width: 1400px) {
  #services:before {
    -webkit-transform: skewY(3deg);
        -ms-transform: skewY(3deg);
            transform: skewY(3deg); } }

@media (max-width: 991px) {
  #services {
    padding: 160px 0px 30px; }
    #services:before {
      height: 140px; }
    #services:after {
      right: -220px;
      top: -125px; } }

@media (max-width: 767px) {
  #services:after {
    right: -48px;
    top: -65px;
    width: 238px;
    height: 220px; }
  #services .service {
    margin-bottom: 40px; }
  #services h2 {
    margin-bottom: 40px; }
  #services h3 {
    margin-bottom: 30px; } }

#projects {
  background: #0d3268;
  padding: 115px 0px;
  position: relative;
  overflow: hidden; }
  #projects:after {
    content: '';
    display: block;
    height: 330px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -180px;
    background: #ffffff;
    -webkit-transform: skewY(11deg);
        -ms-transform: skewY(11deg);
            transform: skewY(11deg); }
  #projects header {
    margin-bottom: 60px; }
  #projects h2, #projects .view-all {
    float: left; }
  #projects h2 {
    color: #ffffff;
    margin-bottom: 0px; }
  #projects .view-all {
    border-left: 4px solid #ffffff;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: calc(24 / 18);
    font-weight: 900;
    color: #f2c300;
    padding: 20px 0px 20px 40px;
    margin-left: 37px;
    text-transform: uppercase; }
    #projects .view-all a {
      color: #f2c300;
      text-decoration: none; }
      #projects .view-all a:hover {
        text-decoration: underline; }
  #projects .slideshow {
    background: #fff; }
  #projects .controls {
    float: right; }
    #projects .controls .cycle-prev, #projects .controls .cycle-next {
      width: 54px;
      height: 54px;
      float: left;
      background: url("../images/controls.svg"); }
    #projects .controls .cycle-prev {
      background-position: left top; }
      #projects .controls .cycle-prev:hover {
        background-position: left 55px; }
    #projects .controls .cycle-next {
      background-position: right top;
      margin-left: 22px; }
      #projects .controls .cycle-next:hover {
        background-position: right 55px; }

@media (min-width: 1400px) {
  #projects:after {
    -webkit-transform: skewY(3deg);
        -ms-transform: skewY(3deg);
            transform: skewY(3deg); } }

@media (max-width: 767px) {
  #projects {
    padding: 70px 0px; }
    #projects header {
      margin-bottom: 45px; }
    #projects h2 {
      float: none; }
    #projects .view-all, #projects .controls {
      margin-top: 35px; }
    #projects .view-all {
      margin-left: 0px;
      border-left: 0px;
      border-top: 4px solid #ffffff;
      padding: 20px 45px 10px 0px; } }

/*
*we are
*/
#we-are {
  padding: 110px 0px 115px; }
  #we-are p {
    margin-bottom: 20px; }

@media (max-width: 991px) {
  #we-are {
    padding: 95px 0px; }
    #we-are h2 {
      margin-bottom: 15px; } }

@media (max-width: 767px) {
  #we-are {
    padding: 25px 0px; } }

/*
*project-list
*/
#project-list {
  padding: 33px 0px;
  background: url("../images/project-list-bg.png") no-repeat;
  background-size: 100% 868px;
  background-position-y: center; }
  #project-list .box1 {
    margin-bottom: 50px; }
    #project-list .box1 .image, #project-list .box1 .details {
      float: none; }
    #project-list .box1 .col .details {
      padding-top: 75px;
      padding-bottom: 48px; }
    #project-list .box1 .image img {
      min-height: auto; }
    #project-list .box1 .details {
      padding: 35px 30px 35px; }
      #project-list .box1 .details .view-more-btn {
        bottom: 42px; }

@media (max-width: 991px) {
  #project-list .box1 {
    margin-bottom: 23px; } }

@media (max-width: 767px) {
  #project-list {
    padding: 25px 0px 2px; }
    #project-list .box1 .col .details {
      padding-top: 30px;
      padding-bottom: 30px; }
    #project-list .box1 .details {
      padding: 30px 20px; }
      #project-list .box1 .details .view-more-btn {
        bottom: 31px; } }

/*
*team members
*/
#team-members {
  background: url("../images/pattern5.svg") no-repeat;
  background-size: 340px 557px;
  background-position: right -120px bottom 60px;
  padding: 60px 0px; }
  #team-members .wrapper {
    max-width: 729px; }
  #team-members .members {
    position: relative;
    padding: 6px 0px 10px;
    border-bottom: 1px solid #e1e4ea;
    margin-bottom: 24px; }
    #team-members .members:before {
      position: absolute;
      content: '';
      width: 6px;
      background: #0d3268;
      left: 0px;
      top: 0px;
      bottom: 27px; }
    #team-members .members:last-child {
      border-bottom: 0px; }
    #team-members .members.group1:before {
      background: #cadbda; }
    #team-members .members.group2:before {
      background: #f2c300; }
    #team-members .members.group3:before {
      background: #8695aa; }
    #team-members .members p {
      font-size: 14px;
      font-size: 0.875rem;
      line-height: calc(22 / 14);
      margin-bottom: 26px; }
    #team-members .members p a {
      color: inherit; }

@media (max-width: 991px) {
  #team-members .members {
    padding-left: 26px; } }

@media (max-width: 767px) {
  #team-members {
    background-size: 185px 294px;
    padding: 25px 0px;
    background-position: right -113px bottom 60px;
    background-repeat: repeat-y; }
    #team-members .members {
      padding-top: 2px; }
      #team-members .members p {
        margin-bottom: 0px; }
      #team-members .members .row {
        margin-bottom: 17px; } }

/*
*map
*/
#map {
  background: #e9efef;
  padding-bottom: 50px;
  position: relative;
  overflow: hidden; }
  #map:before {
    content: '';
    display: block;
    height: 200px;
    width: 100%;
    position: absolute;
    left: 0;
    top: -82px;
    background: #ffffff;
    -webkit-transform: skewY(4deg);
        -ms-transform: skewY(4deg);
            transform: skewY(4deg); }
  #map .full-width {
    min-height: 425px;
    box-shadow: 0px 1px 27px -15px rgba(0, 0, 0, 0.75); }
  #map .wrapper {
    padding-left: 62px;
    position: relative;
    z-index: 1; }
  #map .marker {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1;
    right: 29%; }
  #map .contact-info {
    width: 410px;
    left: 0px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background: #0d3268;
    padding: 65px 40px 35px; }
    #map .contact-info p {
      color: #fff; }
    #map .contact-info li {
      color: #fff; }
      #map .contact-info li a.tel {
        background-image: url("../images/phone-icon2.svg"); }
      #map .contact-info li a.mail {
        background-image: url("../images/mail-icon2.svg"); }

@media (max-width: 767px) {
  #map {
    padding-bottom: 0px; }
    #map:before {
      display: none; }
    #map .contact-info {
      position: relative;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      width: 100%;
      padding: 35px 39px 5px; }
    #map .wrapper {
      padding-left: 0px; }
    #map .full-width {
      min-height: auto; }
    #map .marker {
      top: auto;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      bottom: 5%; } }

/*
*project description
*/
.project-description {
  padding: 30px 0px 94px; }
  .project-description .box1 {
    box-shadow: none; }
    .project-description .box1 .image {
      box-shadow: 0px 0px 40px -4px rgba(0, 0, 0, 0.75);
      position: relative;
      z-index: 1; }
    .project-description .box1 .details {
      padding: 45px 45px 0px; }

@media (max-width: 767px) {
  .project-description {
    padding: 25px 0px; }
    .project-description .box1 .details {
      padding: 30px; } }

/*
*section1
*/
.section1 {
  padding: 80px 0px 41px; }
  .section1 h3 {
    line-height: calc(40 / 35);
    margin-bottom: 40px; }
  .section1 .col {
    margin-bottom: 34px; }
  .section1 .icon {
    margin-bottom: 20px; }
  .section1 p {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: calc(24 / 18);
    font-family: 'Roboto Condensed', sans-serif;
    margin-bottom: 5px; }

@media (max-width: 767px) {
  .section1 {
    padding: 54px 0px 32px; }
    .section1 p {
      font-size: 0.875rem;
      line-height: calc(18 / 14); } }

/*
*section2
*/
.section2 {
  padding: 49px 0px; }
  .section2.match-height .column {
    position: relative; }
    .section2.match-height .column:before {
      position: absolute;
      content: '';
      height: 100%;
      top: 0px;
      width: 1px;
      background: #cfd5dd;
      left: -25%;
      z-index: 100; }
  .section2.match-height dl {
    margin-bottom: 0px; }
  .section2.match-height .row > div:first-child .column:before {
    display: none; }

@media (max-width: 991px) {
  .section2.match-height {
    padding-bottom: 0px; }
    .section2.match-height .column:before {
      display: none; }
    .section2.match-height .row > div:last-child .column:before {
      display: block; }
  .section2 .column {
    margin-bottom: 50px; } }

@media (max-width: 767px) {
  .section2 {
    padding: 25px 0px; }
    .section2.match-height .column:last-child:before {
      display: none; }
    .section2 .column {
      margin-bottom: 26px;
      border-bottom: 1px solid #cfd5dd;
      padding-bottom: 26px; }
    .section2 .row > div:last-child .column {
      border-bottom: 0px; } }

/*
*about project
*/
.about-project {
  background: #0d3268; }
  .about-project .description {
    width: 100%;
    height: 100%;
    padding: 50px 40px 20px;
    display: table;
    background: #0d3268 url("../images/pattern7.png") no-repeat;
    background-position: bottom right 10px;
    position: relative;
    z-index: 100; }
    .about-project .description:after {
      content: '';
      position: absolute;
      width: 147px;
      height: 100%;
      background: url("../images/description-after.png") no-repeat;
      top: 0px;
      right: -146px;
      background-size: 100% 100%; }
    .about-project .description h3 {
      line-height: calc(40 / 35);
      color: #f2c300;
      font-family: 'Roboto Condensed', sans-serif;
      font-weight: 300;
      text-transform: uppercase;
      margin-bottom: 40px; }
    .about-project .description p {
      color: #fff;
      margin-bottom: 30px; }
  .about-project .inner-wrapper {
    display: table-cell;
    vertical-align: middle; }
    .about-project .inner-wrapper .inner {
      float: right;
      max-width: 444px; }
  .about-project .full-width {
    height: 100%;
    font-family: "object-fit:cover";
    object-fit: cover; }

@media (max-width: 767px) {
  .about-project .description:after {
    display: none; }
  .about-project .inner-wrapper .inner {
    float: none;
    max-width: 100%; } }

/*
*slideshow 1
*/
#slideshow1 .cycle-slideshow {
  position: relative; }

#slideshow1 .slide {
  width: 100%; }

#slideshow1 .controls .cycle-prev, #slideshow1 .controls .cycle-next {
  width: 54px;
  height: 54px;
  background: url("../images/controls2.svg");
  display: inline-block;
  opacity: 0.52;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=52)";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1000;
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
  -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
  #slideshow1 .controls .cycle-prev:hover, #slideshow1 .controls .cycle-next:hover {
    opacity: .70;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }

#slideshow1 .controls .cycle-prev {
  background-position: left;
  left: -54px; }

#slideshow1 .controls .cycle-next {
  background-position: right;
  right: -54px; }

@media (min-width: 768px) and (max-width: 1040px) {
  #slideshow1 .container {
    padding: 0px 69px; } }

@media (max-width: 767px) {
  #slideshow1 .controls {
    text-align: center;
    padding: 17px 0px; }
    #slideshow1 .controls .cycle-prev, #slideshow1 .controls .cycle-next {
      position: relative;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      margin-left: 6px;
      margin-right: 6px; }
    #slideshow1 .controls .cycle-prev {
      left: 0px; }
    #slideshow1 .controls .cycle-next {
      right: 0px; } }

/*
*slideshow2
*/
#slideshow2 {
  background: #f5f8f8;
  position: relative; }
  #slideshow2:before, #slideshow2:after {
    content: '';
    display: block;
    height: 140px;
    width: 100%;
    position: absolute;
    left: 0; }
  #slideshow2:before {
    background: #ffffff;
    top: -30px;
    -webkit-transform: skewY(1deg);
        -ms-transform: skewY(1deg);
            transform: skewY(1deg); }
  #slideshow2:after {
    background: #f5f8f8;
    bottom: -70px;
    -webkit-transform: skewY(-1deg);
        -ms-transform: skewY(-1deg);
            transform: skewY(-1deg); }
  #slideshow2 .cycle-slideshow {
    position: relative; }
  #slideshow2 .slide {
    width: 100%;
    margin-bottom: 19px; }
  #slideshow2 .controls .cycle-prev, #slideshow2 .controls .cycle-next {
    width: 54px;
    height: 54px;
    background: url("../images/controls2.svg");
    display: inline-block;
    opacity: 0.52;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=52)";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1000;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
    #slideshow2 .controls .cycle-prev:hover, #slideshow2 .controls .cycle-next:hover {
      opacity: .70;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
      transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
      -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
  #slideshow2 .controls .cycle-prev {
    background-position: left;
    left: -54px; }
  #slideshow2 .controls .cycle-next {
    background-position: right;
    right: -54px; }
  #slideshow2 .cycle-pager {
    position: relative;
    z-index: 1;
    margin: 0px -10px 50px;
    overflow-x: hidden; }
    #slideshow2 .cycle-pager ul {
      margin: 0px;
      padding: 0px;
      list-style-type: none; }
      #slideshow2 .cycle-pager ul li {
        float: left;
        width: 176px;
        height: 109px;
        overflow: hidden;
        opacity: .36;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=36)";
        margin: 0px 10px 19px;
        transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
        -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
        -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
        -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }
        #slideshow2 .cycle-pager ul li:hover, #slideshow2 .cycle-pager ul li.cycle-pager-active {
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
          -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
          -moz-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s;
          -ms-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0s; }

@media (min-width: 768px) and (max-width: 1040px) {
  #slideshow2 .container {
    padding: 0px 69px; } }

@media (max-width: 767px) {
  #slideshow2 {
    background: #fff; }
    #slideshow2:before, #slideshow2:after {
      display: none; }
    #slideshow2 .slide {
      margin-bottom: 0px; }
    #slideshow2 .controls {
      text-align: center;
      padding: 17px 0px; }
      #slideshow2 .controls .cycle-prev, #slideshow2 .controls .cycle-next {
        position: relative;
        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
        margin-left: 6px;
        margin-right: 6px; }
      #slideshow2 .controls .cycle-prev {
        left: 0px; }
      #slideshow2 .controls .cycle-next {
        right: 0px; }
    #slideshow2 .cycle-pager {
      display: none; } }

/*
*blockquote
*/
.blockquote {
  padding: 82px 0px; }
  .blockquote blockquote {
    text-align: center;
    padding: 57px 0px 33px;
    margin-bottom: 0px;
    background: url("../images/pattern6.svg") no-repeat;
    background-position: center center;
    background-size: 168px 192px; }
    .blockquote blockquote p {
      font-size: 18px;
      font-size: 1.125rem;
      line-height: calc(30 / 18);
      margin-bottom: 12px;
      font-style: italic;
      position: relative; }
      .blockquote blockquote p:before {
        content: '“';
        position: absolute;
        font-size: 106px;
        font-size: 6.625rem;
        line-height: calc(108 / 106);
        color: #f2c300;
        top: -36px;
        left: -40px; }
    .blockquote blockquote cite {
      color: #f2c300;
      font-size: 18px;
      font-size: 1.125rem;
      line-height: calc(30 / 18);
      font-style: italic; }

@media (max-width: 767px) {
  .blockquote {
    padding: 12px 0px; }
    .blockquote blockquote {
      padding: 13px 30px; } }

/*
* box1
*/
.box1 {
  box-shadow: 0px 0px 24px -4px rgba(0, 0, 0, 0.75); }
  .box1.column {
    position: relative; }
    .box1.column .details {
      position: static; }
  .box1 .image, .box1 .details {
    float: left; }
  .box1 .col .image {
    width: 100%;
    height: 100%; }
  .box1 .col .details {
    width: 100%;
    height: 100%; }
  .box1 .image.col {
    width: 65%; }
  .box1 .image img {
    width: 100%;
    height: 100%;
    font-family: "object-fit:cover";
    object-fit: cover; }
  .box1 .details {
    background: #ffffff;
    padding: 65px 45px 0px;
    position: relative; }
    .box1 .details.col {
      width: 35%; }
    .box1 .details h3 {
      font-size: 35px;
      font-size: 2.1875rem;
      line-height: calc(40 / 35);
      margin-bottom: 40px; }
    .box1 .details h4 {
      text-transform: uppercase;
      margin-bottom: 12px; }
    .box1 .details .view-more-btn {
      position: absolute;
      right: 45px;
      bottom: 50px; }

@media (max-width: 991px) {
  .box1 .image.col {
    width: 50%; }
  .box1 .details.col {
    width: 50%; }
  .box1 .image img {
    min-height: 440px; }
  .box1 .details {
    padding: 60px 35px 0px; } }

@media (max-width: 767px) {
  .box1 .image.col {
    width: 100%; }
  .box1 .details.col {
    width: 100%; }
  .box1 .image img {
    min-height: 226px; }
  .box1 .details {
    padding: 30px 20px 30px; }
    .box1 .details h3 {
      margin-bottom: 20px; }
    .box1 .details .view-more-btn {
      right: 20px;
      bottom: 31px; } }

/*
*icons
*/
.icon {
  display: inline-block;
  vertical-align: middle; }

.icon1 {
  background: url("../images/icon1.svg") no-repeat;
  width: 63px;
  height: 78px;
  background-size: 63px 78px; }

.icon2 {
  background: url("../images/icon2.svg") no-repeat;
  width: 63px;
  height: 78px;
  background-size: 63px 78px; }

.contact-info address {
  margin-bottom: 40px; }

.contact-info ul {
  margin: 0px;
  padding: 0px;
  list-style: none; }

.contact-info li {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: calc(24 / 18);
  margin-bottom: 30px; }
  .contact-info li a {
    display: inline-block;
    padding-left: 45px;
    color: inherit;
    text-decoration: none; }
    .contact-info li a.tel {
      background: url("../images/phone-icon.svg") no-repeat;
      background-size: 20px 20px; }
    .contact-info li a.mail {
      background: url("../images/mail-icon.svg") no-repeat;
      background-size: 25px 17px;
      background-position-y: center; }

/*
*list1
*/
.list1 dt {
  font-weight: 400;
  float: left;
  width: 117px;
  clear: right; }

.list1 dd {
  color: #0d3268;
  float: right;
  width: calc(100% - 120px);
  margin-bottom: 8px; }

/*
*call to action
*/
#call-to-action {
  padding: 10px 0px; }
  #call-to-action .inner {
    box-shadow: 0px 0px 24px -4px rgba(0, 0, 0, 0.75);
    position: relative;
    background: #fff; }
  #call-to-action .row {
    margin-left: 0px;
    margin-right: 0px; }
  #call-to-action .heading-wrapper {
    background: #3ca738;
    padding: 46px 14px;
    text-align: center;
    position: relative; }
    #call-to-action .heading-wrapper:after {
      position: absolute;
      content: '';
      width: 30px;
      height: 100%;
      right: -32px;
      top: 0px;
      width: 40px;
      height: 100%;
      background: #fff url("../images/heading-wrapper-after.png") no-repeat;
      background-size: 100% 100%; }
  #call-to-action h4 {
    color: #fff;
    font-weight: 300;
    margin-bottom: 0px;
    font-size: 26px;
    font-size: 1.625rem;
    text-transform: uppercase;
    font-family: 'Oswald', sans-serif; }
  #call-to-action .tel {
    color: #f2c300;
    font-size: 30px;
    font-size: 1.875rem;
    line-height: calc(34 / 30);
    font-family: 'Oswald', sans-serif;
    font-weight: 300;
    display: inline-block;
    background: url(../images/phone-icon3.svg) no-repeat;
    background-size: 33px 32px;
    padding-left: 45px; }
  #call-to-action ul {
    margin: 0px;
    padding: 32px 35px 0px 0px;
    list-style-type: none; }
    #call-to-action ul li {
      display: inline-block;
      vertical-align: middle;
      width: 50%;
      margin-right: -2px;
      text-align: center; }

@media (max-width: 991px) {
  #call-to-action h4 {
    text-align: left; }
  #call-to-action .heading-wrapper {
    padding: 46px 30px; }
    #call-to-action .heading-wrapper:after {
      right: -13px; }
  #call-to-action ul {
    padding: 23px 25px 0px; }
    #call-to-action ul li {
      width: 100%;
      margin-bottom: 13px; } }

@media (max-width: 767px) {
  #call-to-action .heading-wrapper {
    padding: 60px 30px; }
    #call-to-action .heading-wrapper:after {
      width: 100%;
      background: #3ca738;
      height: 14px;
      bottom: -5px;
      top: auto;
      right: auto;
      left: 0px;
      -webkit-transform: skew;
          -ms-transform: skew;
              transform: skew;
      -webkit-transform: skewY(1deg);
          -ms-transform: skewY(1deg);
              transform: skewY(1deg); }
  #call-to-action h4 {
    text-align: center; }
  #call-to-action ul {
    padding: 55px 25px 42px; } }

/*  ==========================================================================
	Vendor
    ========================================================================== */
/*
* team
*/
#team {
  padding: 85px 0px; }
  #team ul {
    margin: 0px 0px 45px;
    padding: 0px;
    list-style: none; }
  #team p {
    margin-bottom: 30px; }
  #team .view-all {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    text-transform: uppercase; }
  #team .site-images {
    margin-left: -130px; }
    #team .site-images img {
      margin: 0px 1% 12px;
      width: 48%;
      float: left; }
  #team .content {
    padding-top: 50px; }

@media (max-width: 1279px) {
  #team .site-images {
    margin-left: -30px; }
  #team .content {
    padding-top: 0px; } }

@media (max-width: 767px) {
  #team {
    padding: 45px 0px; }
    #team .site-images {
      margin-left: 0px;
      margin-bottom: 45px; } }

/*
* contact-us
*/
#contact-us {
  background: #f6f9f9;
  padding: 180px 0px 130px;
  position: relative; }
  #contact-us:after {
    content: '';
    display: block;
    height: 200px;
    width: 100%;
    position: absolute;
    left: 0;
    top: -82px;
    background: #ffffff;
    -webkit-transform: skewY(-7deg);
        -ms-transform: skewY(-7deg);
            transform: skewY(-7deg); }
  #contact-us.primary {
    background: #fff;
    padding: 64px 0px 106px; }
    #contact-us.primary:after {
      top: auto;
      bottom: -125px;
      -webkit-transform: skewY(3deg);
          -ms-transform: skewY(3deg);
              transform: skewY(3deg);
      display: none; }
    #contact-us.primary .form-group {
      margin-bottom: 0px; }
      #contact-us.primary .form-group .form-control {
        margin-bottom: 13px; }
  #contact-us .container {
    position: relative; }
  #contact-us .design-pattern {
    background: url("../images/contact-us-bg.svg") no-repeat;
    background-size: 555px 333px;
    width: 555px;
    height: 333px;
    position: absolute;
    left: -100px;
    top: -170px;
    z-index: 99; }
  #contact-us ul {
    margin: 0px;
    padding: 0px;
    list-style: none; }
  #contact-us .contact-info {
    padding-top: 195px; }

@media (min-width: 1600px) {
  #contact-us:after {
    -webkit-transform: skewY(-3deg);
        -ms-transform: skewY(-3deg);
            transform: skewY(-3deg); } }

@media (max-width: 1279px) {
  #contact-us {
    padding-bottom: 50px; }
    #contact-us:after {
      top: -62px;
      height: 150px; }
    #contact-us .design-pattern {
      left: -170px;
      top: -195px; }
    #contact-us .contact-info {
      padding-top: 160px; } }

@media (max-width: 767px) {
  #contact-us {
    padding-top: 90px; }
    #contact-us.primary {
      padding: 25px 0px; }
    #contact-us .design-pattern {
      width: 350px;
      height: 200px;
      background-size: contain;
      left: -70px;
      top: -75px; } }

/*
*about us
*/
@media (max-width: 991px) {
  .about-us-page #banner .banner-image img {
    min-height: 720px; } }

/*
*contact us page
*/
.contact-us-page #footer {
  background-color: #e9efef; }

@media (max-width: 767px) {
  .contact-us-page #banner .banner-image img {
    min-height: 265px; } }

/*
*realisation page
*/
.realisation-page #footer {
  background: #fff; }

/*
*team page
*/
.team-page #footer {
  background: #fff; }

@media (max-width: 767px) {
  .team-page #banner .banner-image img {
    min-height: 265px; } }

/*
*project page
*/
.project-page #footer {
  background: #fff; }

/*
*immo page
*/
.immo-page #banner .description h1 {
  max-width: 100%; }

.immo-page #banner .description:before {
  background: #3ca738; }

.immo-page #footer {
  background: #fff; }

@media (max-width: 991px) {
  .immo-page #banner .pattern-default {
    max-width: 150px; } }

@media (max-width: 991px) {
  .immo-page #banner .pattern-default {
    max-width: 120px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwibWFpbi5zY3NzIiwic2V0dGluZ3MvX2dsb2JhbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsInZhcmlhYmxlcy9fYm9vdHN0cmFwLnNjc3MiLCJtaXhpbnMvX3VuaXRzLnNjc3MiLCJzZXR0aW5ncy9fdXRpbGl0aWVzLnNjc3MiLCJsYXlvdXRzL19kZWZhdWx0LnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX21haW4tbmF2aWdhdGlvbi5zY3NzIiwibWl4aW5zL19jdWJpYy10cmFuc2l0aW9uLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2Jhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fc3RhdHMuc2NzcyIsImNvbXBvbmVudHMvX2Fib3V0LXVzLnNjc3MiLCJjb21wb25lbnRzL19zZXJ2aWNlcy5zY3NzIiwiY29tcG9uZW50cy9fcHJvamVjdHMuc2NzcyIsImNvbXBvbmVudHMvX3dlLWFyZS5zY3NzIiwiY29tcG9uZW50cy9fcHJvamVjdC1saXN0LnNjc3MiLCJjb21wb25lbnRzL190ZWFtLW1lbWJlcnMuc2NzcyIsImNvbXBvbmVudHMvX21hcC5zY3NzIiwibWl4aW5zL19jZW50ZXItYWxpZ24uc2NzcyIsImNvbXBvbmVudHMvX3Byb2plY3QtZGVzY3JpcHRpb24uc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24xLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uMi5zY3NzIiwiY29tcG9uZW50cy9fYWJvdXQtcHJvamVjdC5zY3NzIiwiY29tcG9uZW50cy9fc2xpZGVzaG93MS5zY3NzIiwiPG5vIHNvdXJjZT4iLCJjb21wb25lbnRzL19zbGlkZXNob3cyLnNjc3MiLCJjb21wb25lbnRzL19ibG9ja3F1b3RlLnNjc3MiLCJjb21wb25lbnRzL19ib3gxLnNjc3MiLCJjb21wb25lbnRzL19pY29ucy5zY3NzIiwiY29tcG9uZW50cy9fY29udGFjdC1pbmZvLnNjc3MiLCJjb21wb25lbnRzL19saXN0MS5zY3NzIiwiY29tcG9uZW50cy9fY2FsbC10by1hY3Rpb24uc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJwYWdlcy9fYWJvdXQtdXMuc2NzcyIsInBhZ2VzL19jb250YWN0LXVzLXBhZ2Uuc2NzcyIsInBhZ2VzL19yZWFsaXNhdGlvbi1wYWdlLnNjc3MiLCJwYWdlcy9fdGVhbS1wYWdlLnNjc3MiLCJwYWdlcy9fcHJvamVjdC1wYWdlLnNjc3MiLCJwYWdlcy9faW1tby1wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOztpRkFFaUY7QUFJakY7O2lGQUVpRjtBQUdqRjs7aUZBRWlGO0FDYmpGO0VBQ0Usb0NBQW9DO0VBQ3BDLG1DQUFtQztFQUNuQyxtQkFBbUIsRUFDcEI7O0FBRUQ7RUNKSSxZQUFZO0VBQ1osZUFBZTtFQUNmLFlBQVksRUFDYjs7QURLSDtFQUNFLGdCQUFnQixFQUNqQjs7QUFFRDtFQUNFLFlBQVksRUFDYjs7QUFFRDtFQUVJLGNBQWMsRUFDZjs7QUFHSDtFQUNFLDRDQUE0QztFQUM1QyxpQkFBaUI7RUFDakIsMEJBQTBCO0VBQzFCLG9CQUFvQixFQUNyQjs7QUFFRDtFQUNFLGVFa0JpQztFRmpCakMsNENBQTRDO0VBQzVDLGlCQUFpQjtFQUNqQiwwQkFBMEIsRUFDM0I7O0FBRUQ7RUFDRSw0Q0FBNEM7RUFDNUMsZUFBZTtFQUNmLGdCR1lvQjtFSFpwQixrQkdZb0I7RUhYcEIsMkJBQWlCLEVBQ2xCOztBQUVEO0VBQ0U7SUFDRSxvQkdNa0IsRUhMbkIsRUFBQTs7QUFHSDtFQUNFO0lBQ0UscUJHQWtCLEVIQ25CLEVBQUE7O0FJdERIO0VBQ0U7SUFDRSxxQkRtRGtCLEVDbERuQixFQUFBOztBQUVIO0VBQ0U7SUFDRSxxQkQ4Q2tCLEVDN0NuQixF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QGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFNldHVwOiBWYXJpYWJsZXMsIE1peGluc1xuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0Rm9udHNcbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdEdsb2JhbCBTZXR0aW5ncyAmIFV0aWxpdGllc1xuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5ib2R5IHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG4uZ3JvdXA6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDBweDsgfVxuXG5hOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5oMSwgaDIge1xuICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG5cbmgzIHtcbiAgY29sb3I6ICNmMmMzMDA7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaDQge1xuICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBkMzI2ODtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDI4IC8gMjQpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoMSwgaDIge1xuICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgaDEsIGgyIHtcbiAgICBmb250LXNpemU6IDIuMTg3NXJlbTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZGlzcGxheS0xIHtcbiAgICBmb250LXNpemU6IDMuNDM3NXJlbTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZGlzcGxheS0xIHtcbiAgICBmb250LXNpemU6IDIuODEyNXJlbTsgfSB9XG5cbi5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdExheW91dHNcbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI2NvbnRhaW5lciB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRDb21wb25lbnRzXG4gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2ZmZmZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTk7IH1cbiAgI2hlYWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNzBweDsgfVxuICAjaGVhZGVyIC5sb2dvIHtcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICNoZWFkZXIgLmxvZ286YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICB3aWR0aDogODRweDtcbiAgICAgIGhlaWdodDogMTA0JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2tldygtMjVkZWcpO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICNoZWFkZXIgLmxvZ28gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9sb2dvLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjA0cHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDM7IH1cblxuLypcbkBtZWRpYSAobWF4LXdpZHRoOjEzOTlweCkge1xuICAjaGVhZGVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB3aWR0aDogMjglO1xuICAgIH1cbiAgfVxufVxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAjaGVhZGVyIC5pbm5lci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNoZWFkZXIgLmxvZ28ge1xuICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMXB4OyB9XG4gICAgI2hlYWRlciAubG9nbyBhIHtcbiAgICAgIHdpZHRoOiAxNjNweDtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfSB9XG5cbi5vcGVuLW1lbnUtYnRuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbWVudS1idG4ucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIG1hcmdpbi10b3A6IDM1cHg7IH1cblxuLmNsb3NlLW1lbnUtYnRuIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBoZWlnaHQ6IDM1cHg7XG4gIHdpZHRoOiAzNXB4O1xuICBib3JkZXI6IDBweDsgfVxuICAuY2xvc2UtbWVudS1idG46YmVmb3JlLCAuY2xvc2UtbWVudS1idG46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZjJjMzAwO1xuICAgIGhlaWdodDogNXB4O1xuICAgIHdpZHRoOiA0M3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIC5jbG9zZS1tZW51LWJ0bjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0b3A6IDE0cHg7IH1cbiAgLmNsb3NlLW1lbnUtYnRuOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRvcDogOXB4OyB9XG5cbiNtZW51LW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEzLCA1MCwgMTAzLCAwLjg0KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OyB9XG5cbi5tZW51LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgLm1lbnUtaGVhZGVyIGgyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBmb250LWZhbWlseTogJ09zd2FsZCcsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygzOCAvIDM0KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbiNtYWluLW5hdmlnYXRpb24ge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4OyB9XG4gICNtYWluLW5hdmlnYXRpb24gdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICNtYWluLW5hdmlnYXRpb24gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDQwcHggMyUgNDBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDE2IC8gMTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItdG9wOiA4cHggc29saWQgI2YyYzMwMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweDsgfVxuICAgICNtYWluLW5hdmlnYXRpb24gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpLmFjdGl2ZTpiZWZvcmUsICNtYWluLW5hdmlnYXRpb24gbGk6aG92ZXI6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpLmFjdGl2ZSBhLCAjbWFpbi1uYXZpZ2F0aW9uIGxpOmhvdmVyIGEge1xuICAgICAgY29sb3I6ICNmMmMzMDA7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpIGEge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwczsgfVxuICAgICAgI21haW4tbmF2aWdhdGlvbiBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmMmMzMDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICNtYWluLW5hdmlnYXRpb24ge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5vcGVuLW1lbnUtYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGQzMjY3O1xuICAgIHBhZGRpbmc6IDcwcHggNDBweCAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC04MCU7XG4gICAgei1pbmRleDogMjAwMDtcbiAgICB3aWR0aDogODAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzOyB9XG4gICAgI21haW4tbmF2aWdhdGlvbiB1bCB7XG4gICAgICBtYXJnaW46IDBweCAtNDBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjA0Mjc0OyB9XG4gICAgI21haW4tbmF2aWdhdGlvbiBsaSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDI1cHggNDBweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjA0Mjc0OyB9XG4gICAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9XG4gICAgICAjbWFpbi1uYXZpZ2F0aW9uIGxpOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNmMmMzMDA7IH1cbiAgYm9keS5vcGVuLW1lbnUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBib2R5Lm9wZW4tbWVudSAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgYm9keS5vcGVuLW1lbnUgI21lbnUtb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAub3Blbi1tZW51LWJ0biB7XG4gICAgbWFyZ2luLXRvcDogMjNweDsgfVxuICAubWVudS1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgI21haW4tbmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZzogMzVweCAzMHB4IDEwcHg7IH1cbiAgICAjbWFpbi1uYXZpZ2F0aW9uIHVsIHtcbiAgICAgIG1hcmdpbjogMHB4IC0zMHB4OyB9XG4gICAgI21haW4tbmF2aWdhdGlvbiBsaSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDMwcHg7IH1cbiAgICAgICNtYWluLW5hdmlnYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuXG4jZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2Y2ZjlmOTsgfVxuICAjZm9vdGVyIC53cmFwcGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2MxYzVjODtcbiAgICBwYWRkaW5nOiAzN3B4IDBweDsgfVxuICAjZm9vdGVyIC5sb2dvIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbG9nby5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgIHdpZHRoOiAxNDlweDtcbiAgICBoZWlnaHQ6IDQzcHg7IH1cblxuI2Zvb3Rlci1tZW51IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgI2Zvb3Rlci1tZW51IHVsIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAjZm9vdGVyLW1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAjZm9vdGVyLW1lbnUgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDsgfVxuICAgICNmb290ZXItbWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiAjODc5NGE2O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzOyB9XG4gICAgICAjZm9vdGVyLW1lbnUgbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMGQzMjY4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAjZm9vdGVyLW1lbnUgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNmb290ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjZm9vdGVyLW1lbnUge1xuICAgIHBhZGRpbmctdG9wOiAwcHg7IH1cbiAgICAjZm9vdGVyLW1lbnUgdWwge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgI2Zvb3Rlci1tZW51IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4uYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAyMSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctYm90dG9tOiAxNHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwczsgfVxuICAuYnRuOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwcHg7IH1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwZDMyNjg7XG4gIGNvbG9yOiAjMGQzMjY4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDE4IC8gMjIpO1xuICBmb250LWZhbWlseTogJ09zd2FsZCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDE0cHggMjBweDsgfVxuXG4udmlldy1tb3JlLWJ0biB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy92aWV3LW1vcmUtYnRuLnN2Z1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7IH1cbiAgLnZpZXctbW9yZS1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy92aWV3LW1vcmUtYnRuLWhvdmVyLnN2Z1wiKTsgfVxuXG4uZm9ybSB1bCB7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmZvcm0gbGkge1xuICBtYXJnaW4tYm90dG9tOiAxM3B4OyB9XG5cbi5mb3JtIC5mb3JtLWNvbnRyb2wge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7IH1cblxuLmZvcm0gdGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDExNHB4OyB9XG5cbi5mb3JtIC5mb3JtLWdyb3VwIHRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogMTI5cHg7IH1cblxuLmZvcm0gLmNhcHRjaGEge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuZm9ybSAuY2FwdGNoYSAuZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogY2FsYygzMDBweCAtIDEyNnB4KTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5mb3JtIC5jYXB0Y2hhIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjhweCk7IH0gfVxuXG4vKlxuKiBiYW5uZXJcbiovXG4jYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiA4MDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAjYmFubmVyIC5iYW5uZXItaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICNiYW5uZXIgLmJhbm5lci1pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiA4MDBweDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAjYmFubmVyIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgI2Jhbm5lciAuZGVzY3JpcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY2LCA3NCwgODcsIDAuNDUpO1xuICAgIC8qIEZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IGdyYWRpZW50cyAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDY2LCA3NCwgODcsIDAuNDUpLCByZ2JhKDY2LCA3NCwgODcsIDAuNDUpKTtcbiAgICAvKiBGb3IgU2FmYXJpIDUuMSB0byA2LjAgKi9cbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoNjYsIDc0LCA4NywgMC40NSksIHJnYmEoNjYsIDc0LCA4NywgMC40NSkpO1xuICAgIC8qIEZvciBPcGVyYSAxMS4xIHRvIDEyLjAgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSg2NiwgNzQsIDg3LCAwLjQ1KSwgcmdiYSg2NiwgNzQsIDg3LCAwLjQ1KSk7XG4gICAgLyogRm9yIEZpcmVmb3ggMy42IHRvIDE1ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDY2LCA3NCwgODcsIDAuNDUpLCByZ2JhKDY2LCA3NCwgODcsIDAuNDUpKTsgfVxuICAgICNiYW5uZXIgLmRlc2NyaXB0aW9uOmJlZm9yZSwgI2Jhbm5lciAuZGVzY3JpcHRpb246YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTUycHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAjYmFubmVyIC5kZXNjcmlwdGlvbjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2YyYzMwMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2tld1koLTEwZGVnKTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAjYmFubmVyIC5kZXNjcmlwdGlvbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm90dG9tOiAtODJweDtcbiAgICAgIHRyYW5zZm9ybTogc2tld1koLTVkZWcpO1xuICAgICAgei1pbmRleDogMzsgfVxuICAgICNiYW5uZXIgLmRlc2NyaXB0aW9uIC5pbm5lci13cmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgICNiYW5uZXIgLmRlc2NyaXB0aW9uIC5pbm5lci13cmFwIC5pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAjYmFubmVyIC5kZXNjcmlwdGlvbiBoMSwgI2Jhbm5lciAuZGVzY3JpcHRpb24gaDIsICNiYW5uZXIgLmRlc2NyaXB0aW9uIHAge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgICNiYW5uZXIgLmRlc2NyaXB0aW9uIGgxLCAjYmFubmVyIC5kZXNjcmlwdGlvbiBoMiB7XG4gICAgICBmb250LWZhbWlseTogJ09zd2FsZCcsIHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gICAgI2Jhbm5lciAuZGVzY3JpcHRpb24gcCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAxNCk7XG4gICAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAjYmFubmVyIC5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG5ib2R5LmhvbWUgI2Jhbm5lciAuYmFubmVyLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE3MDBweCkge1xuICAjYmFubmVyIC5kZXNjcmlwdGlvbjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2tld1koLTZkZWcpOyB9XG4gICNiYW5uZXIgLmRlc2NyaXB0aW9uOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKC0zZGVnKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAjYmFubmVyIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgIG1heC13aWR0aDogMzQ3cHg7XG4gICAgYm90dG9tOiAzOHB4OyB9XG4gICNiYW5uZXIgLmRlc2NyaXB0aW9uOmJlZm9yZSwgI2Jhbm5lciAuZGVzY3JpcHRpb246YWZ0ZXIge1xuICAgIGhlaWdodDogMTIycHg7IH1cbiAgI2Jhbm5lciAuZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgICBib3R0b206IC00MHB4OyB9XG4gICNiYW5uZXIgLmRlc2NyaXB0aW9uIGgxLCAjYmFubmVyIC5kZXNjcmlwdGlvbiBoMiB7XG4gICAgZm9udC1zaXplOiAzLjQzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBtYXgtd2lkdGg6IDgwJTsgfVxuICAjYmFubmVyIC5kZXNjcmlwdGlvbiBwIHtcbiAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjYmFubmVyIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgIG1heC13aWR0aDogMjQ3cHg7XG4gICAgYm90dG9tOiAwOyB9XG4gICNiYW5uZXIgLmJhbm5lci1pbWFnZSBpbWcge1xuICAgIG1pbi1oZWlnaHQ6IDQ3NXB4OyB9XG4gICNiYW5uZXIgLmRlc2NyaXB0aW9uIGgxLCAjYmFubmVyIC5kZXNjcmlwdGlvbiBoMiB7XG4gICAgZm9udC1zaXplOiAyLjgxMjVyZW07IH1cbiAgI2Jhbm5lciAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gICNiYW5uZXIgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE5MHB4OyB9XG4gICAgI2Jhbm5lciAuZGVzY3JpcHRpb24gaDEsICNiYW5uZXIgLmRlc2NyaXB0aW9uIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbWF4LXdpZHRoOiA5MCU7IH1cbiAgICAjYmFubmVyIC5kZXNjcmlwdGlvbiBwIHtcbiAgICAgIG1heC13aWR0aDogOTAlOyB9IH1cblxuLnN0YXRzIHtcbiAgbWFyZ2luOiAwcHggLTlweDtcbiAgcGFkZGluZzogMHB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN0YXRzIGxpIHtcbiAgICBwYWRkaW5nOiAwcHggOXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuc3RhdHMgbGkuZW1wbG95ZWVzIC53cmFwIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwZDMyNjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5zdGF0cyBsaSAud3JhcCB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgICAgYmFja2dyb3VuZDogI2UwZWFlOTsgfVxuICAgIC5zdGF0cyBsaSAubnVtYmVyIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDUyIC8gNDgpO1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5zdGF0cyBsaSBwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgbWFyZ2luOiAwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zdGF0cyBsaSAud3JhcCB7XG4gICAgd2lkdGg6IDE0NXB4O1xuICAgIGhlaWdodDogMTQ1cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnN0YXRzIHtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87IH1cbiAgICAuc3RhdHMgbGkge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgLnN0YXRzIGxpIC53cmFwIHtcbiAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICBoZWlnaHQ6IDEyNXB4OyB9IH1cblxuI2Fib3V0LXVzIHtcbiAgcGFkZGluZzogMTEwcHggMHB4IDExNXB4OyB9XG4gICNhYm91dC11cyAudHdvLWNvbHVtbi1sYXlvdXQgLmNvbHVtbjEsICNhYm91dC11cyAudHdvLWNvbHVtbi1sYXlvdXQgLmNvbHVtbjIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICNhYm91dC11cyAudHdvLWNvbHVtbi1sYXlvdXQgLmNvbHVtbjEge1xuICAgIHdpZHRoOiA0MCU7IH1cbiAgI2Fib3V0LXVzIC50d28tY29sdW1uLWxheW91dCAuY29sdW1uMiB7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAjYWJvdXQtdXMgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgI2Fib3V0LXVzIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICNhYm91dC11cyB7XG4gICAgcGFkZGluZzogOTVweCAwcHg7IH1cbiAgICAjYWJvdXQtdXMgLnR3by1jb2x1bW4tbGF5b3V0IC5jb2x1bW4xLCAjYWJvdXQtdXMgLnR3by1jb2x1bW4tbGF5b3V0IC5jb2x1bW4yIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAjYWJvdXQtdXMgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjYWJvdXQtdXMge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9XG4gICAgI2Fib3V0LXVzIC50d28tY29sdW1uLWxheW91dCAuY29sdW1uMSwgI2Fib3V0LXVzIC50d28tY29sdW1uLWxheW91dCAuY29sdW1uMiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBub25lOyB9IH1cblxuI3NlcnZpY2VzIHtcbiAgYmFja2dyb3VuZDogI2Y2ZjlmOTtcbiAgcGFkZGluZzogMjYwcHggMHB4IDEwMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgI3NlcnZpY2VzOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDsgfVxuICAjc2VydmljZXM6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHRvcDogLTgycHg7XG4gICAgdHJhbnNmb3JtOiBza2V3WSg1ZGVnKTsgfVxuICAjc2VydmljZXM6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MzRweDtcbiAgICBoZWlnaHQ6IDQxOXB4O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9zZXJ2aWNlcy1iZy5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtMTA5cHg7IH1cbiAgI3NlcnZpY2VzIC5zZXJ2aWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgI3NlcnZpY2VzIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NXB4OyB9XG4gICNzZXJ2aWNlcyBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIGNvbG9yOiAjODY5NWFhOyB9XG4gICNzZXJ2aWNlcyB1bCB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAjc2VydmljZXM6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKDNkZWcpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICNzZXJ2aWNlcyB7XG4gICAgcGFkZGluZzogMTYwcHggMHB4IDMwcHg7IH1cbiAgICAjc2VydmljZXM6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogMTQwcHg7IH1cbiAgICAjc2VydmljZXM6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC0yMjBweDtcbiAgICAgIHRvcDogLTEyNXB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNzZXJ2aWNlczphZnRlciB7XG4gICAgcmlnaHQ6IC00OHB4O1xuICAgIHRvcDogLTY1cHg7XG4gICAgd2lkdGg6IDIzOHB4O1xuICAgIGhlaWdodDogMjIwcHg7IH1cbiAgI3NlcnZpY2VzIC5zZXJ2aWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICNzZXJ2aWNlcyBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAjc2VydmljZXMgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4jcHJvamVjdHMge1xuICBiYWNrZ3JvdW5kOiAjMGQzMjY4O1xuICBwYWRkaW5nOiAxMTVweCAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAjcHJvamVjdHM6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMzMwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAtMTgwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKDExZGVnKTsgfVxuICAjcHJvamVjdHMgaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICNwcm9qZWN0cyBoMiwgI3Byb2plY3RzIC52aWV3LWFsbCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgI3Byb2plY3RzIGgyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgI3Byb2plY3RzIC52aWV3LWFsbCB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAxOCk7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBjb2xvcjogI2YyYzMwMDtcbiAgICBwYWRkaW5nOiAyMHB4IDBweCAyMHB4IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDM3cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICNwcm9qZWN0cyAudmlldy1hbGwgYSB7XG4gICAgICBjb2xvcjogI2YyYzMwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgI3Byb2plY3RzIC52aWV3LWFsbCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgI3Byb2plY3RzIC5zbGlkZXNob3cge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgI3Byb2plY3RzIC5jb250cm9scyB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgI3Byb2plY3RzIC5jb250cm9scyAuY3ljbGUtcHJldiwgI3Byb2plY3RzIC5jb250cm9scyAuY3ljbGUtbmV4dCB7XG4gICAgICB3aWR0aDogNTRweDtcbiAgICAgIGhlaWdodDogNTRweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2NvbnRyb2xzLnN2Z1wiKTsgfVxuICAgICNwcm9qZWN0cyAuY29udHJvbHMgLmN5Y2xlLXByZXYge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7IH1cbiAgICAgICNwcm9qZWN0cyAuY29udHJvbHMgLmN5Y2xlLXByZXY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDU1cHg7IH1cbiAgICAjcHJvamVjdHMgLmNvbnRyb2xzIC5jeWNsZS1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHRvcDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4OyB9XG4gICAgICAjcHJvamVjdHMgLmNvbnRyb2xzIC5jeWNsZS1uZXh0OmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNTVweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICNwcm9qZWN0czphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBza2V3WSgzZGVnKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjcHJvamVjdHMge1xuICAgIHBhZGRpbmc6IDcwcHggMHB4OyB9XG4gICAgI3Byb2plY3RzIGhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gICAgI3Byb2plY3RzIGgyIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgI3Byb2plY3RzIC52aWV3LWFsbCwgI3Byb2plY3RzIC5jb250cm9scyB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gICAgI3Byb2plY3RzIC52aWV3LWFsbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDBweDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogMjBweCA0NXB4IDEwcHggMHB4OyB9IH1cblxuLypcclxuKndlIGFyZVxyXG4qL1xuI3dlLWFyZSB7XG4gIHBhZGRpbmc6IDExMHB4IDBweCAxMTVweDsgfVxuICAjd2UtYXJlIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICN3ZS1hcmUge1xuICAgIHBhZGRpbmc6IDk1cHggMHB4OyB9XG4gICAgI3dlLWFyZSBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICN3ZS1hcmUge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9IH1cblxuLypcclxuKnByb2plY3QtbGlzdFxyXG4qL1xuI3Byb2plY3QtbGlzdCB7XG4gIHBhZGRpbmc6IDMzcHggMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1saXN0LWJnLnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSA4NjhweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7IH1cbiAgI3Byb2plY3QtbGlzdCAuYm94MSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAgICNwcm9qZWN0LWxpc3QgLmJveDEgLmltYWdlLCAjcHJvamVjdC1saXN0IC5ib3gxIC5kZXRhaWxzIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgI3Byb2plY3QtbGlzdCAuYm94MSAuY29sIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7IH1cbiAgICAjcHJvamVjdC1saXN0IC5ib3gxIC5pbWFnZSBpbWcge1xuICAgICAgbWluLWhlaWdodDogYXV0bzsgfVxuICAgICNwcm9qZWN0LWxpc3QgLmJveDEgLmRldGFpbHMge1xuICAgICAgcGFkZGluZzogMzVweCAzMHB4IDM1cHg7IH1cbiAgICAgICNwcm9qZWN0LWxpc3QgLmJveDEgLmRldGFpbHMgLnZpZXctbW9yZS1idG4ge1xuICAgICAgICBib3R0b206IDQycHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICNwcm9qZWN0LWxpc3QgLmJveDEge1xuICAgIG1hcmdpbi1ib3R0b206IDIzcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI3Byb2plY3QtbGlzdCB7XG4gICAgcGFkZGluZzogMjVweCAwcHggMnB4OyB9XG4gICAgI3Byb2plY3QtbGlzdCAuYm94MSAuY29sIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgICAjcHJvamVjdC1saXN0IC5ib3gxIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDsgfVxuICAgICAgI3Byb2plY3QtbGlzdCAuYm94MSAuZGV0YWlscyAudmlldy1tb3JlLWJ0biB7XG4gICAgICAgIGJvdHRvbTogMzFweDsgfSB9XG5cbi8qXHJcbip0ZWFtIG1lbWJlcnNcclxuKi9cbiN0ZWFtLW1lbWJlcnMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcGF0dGVybjUuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAzNDBweCA1NTdweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTEyMHB4IGJvdHRvbSA2MHB4O1xuICBwYWRkaW5nOiA2MHB4IDBweDsgfVxuICAjdGVhbS1tZW1iZXJzIC53cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDcyOXB4OyB9XG4gICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA2cHggMHB4IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMWU0ZWE7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuICAgICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnM6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDZweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwZDMyNjg7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICB0b3A6IDBweDtcbiAgICAgIGJvdHRvbTogMjdweDsgfVxuICAgICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnM6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7IH1cbiAgICAjdGVhbS1tZW1iZXJzIC5tZW1iZXJzLmdyb3VwMTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2NhZGJkYTsgfVxuICAgICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnMuZ3JvdXAyOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjJjMzAwOyB9XG4gICAgI3RlYW0tbWVtYmVycyAubWVtYmVycy5ncm91cDM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM4Njk1YWE7IH1cbiAgICAjdGVhbS1tZW1iZXJzIC5tZW1iZXJzIHAge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDIyIC8gMTQpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDsgfVxuICAgICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnMgcCBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAjdGVhbS1tZW1iZXJzIC5tZW1iZXJzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI3RlYW0tbWVtYmVycyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxODVweCAyOTRweDtcbiAgICBwYWRkaW5nOiAyNXB4IDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMTEzcHggYm90dG9tIDYwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15OyB9XG4gICAgI3RlYW0tbWVtYmVycyAubWVtYmVycyB7XG4gICAgICBwYWRkaW5nLXRvcDogMnB4OyB9XG4gICAgICAjdGVhbS1tZW1iZXJzIC5tZW1iZXJzIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgICAgICN0ZWFtLW1lbWJlcnMgLm1lbWJlcnMgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE3cHg7IH0gfVxuXG4vKlxyXG4qbWFwXHJcbiovXG4jbWFwIHtcbiAgYmFja2dyb3VuZDogI2U5ZWZlZjtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAjbWFwOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IC04MnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgdHJhbnNmb3JtOiBza2V3WSg0ZGVnKTsgfVxuICAjbWFwIC5mdWxsLXdpZHRoIHtcbiAgICBtaW4taGVpZ2h0OiA0MjVweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMjdweCAtMTVweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDFweCAyN3B4IC0xNXB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDFweCAyN3B4IC0xNXB4IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgI21hcCAud3JhcHBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICNtYXAgLm1hcmtlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHJpZ2h0OiAyOSU7IH1cbiAgI21hcCAuY29udGFjdC1pbmZvIHtcbiAgICB3aWR0aDogNDEwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogIzBkMzI2ODtcbiAgICBwYWRkaW5nOiA2NXB4IDQwcHggMzVweDsgfVxuICAgICNtYXAgLmNvbnRhY3QtaW5mbyBwIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgI21hcCAuY29udGFjdC1pbmZvIGxpIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAjbWFwIC5jb250YWN0LWluZm8gbGkgYS50ZWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGhvbmUtaWNvbjIuc3ZnXCIpOyB9XG4gICAgICAjbWFwIC5jb250YWN0LWluZm8gbGkgYS5tYWlsIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL21haWwtaWNvbjIuc3ZnXCIpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjbWFwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4OyB9XG4gICAgI21hcDpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICNtYXAgLmNvbnRhY3QtaW5mbyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDM1cHggMzlweCA1cHg7IH1cbiAgICAjbWFwIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4OyB9XG4gICAgI21hcCAuZnVsbC13aWR0aCB7XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gICAgI21hcCAubWFya2VyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGJvdHRvbTogNSU7IH0gfVxuXG4vKlxyXG4qcHJvamVjdCBkZXNjcmlwdGlvblxyXG4qL1xuLnByb2plY3QtZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nOiAzMHB4IDBweCA5NHB4OyB9XG4gIC5wcm9qZWN0LWRlc2NyaXB0aW9uIC5ib3gxIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnByb2plY3QtZGVzY3JpcHRpb24gLmJveDEgLmltYWdlIHtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCA0MHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCA0MHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNDBweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLnByb2plY3QtZGVzY3JpcHRpb24gLmJveDEgLmRldGFpbHMge1xuICAgICAgcGFkZGluZzogNDVweCA0NXB4IDBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2plY3QtZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9XG4gICAgLnByb2plY3QtZGVzY3JpcHRpb24gLmJveDEgLmRldGFpbHMge1xuICAgICAgcGFkZGluZzogMzBweDsgfSB9XG5cbi8qXHJcbipzZWN0aW9uMVxyXG4qL1xuLnNlY3Rpb24xIHtcbiAgcGFkZGluZzogODBweCAwcHggNDFweDsgfVxuICAuc2VjdGlvbjEgaDMge1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDQwIC8gMzUpO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLnNlY3Rpb24xIC5jb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDM0cHg7IH1cbiAgLnNlY3Rpb24xIC5pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5zZWN0aW9uMSBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTgpO1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VjdGlvbjEge1xuICAgIHBhZGRpbmc6IDU0cHggMHB4IDMycHg7IH1cbiAgICAuc2VjdGlvbjEgcCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTggLyAxNCk7IH0gfVxuXG4vKlxyXG4qc2VjdGlvbjJcclxuKi9cbi5zZWN0aW9uMiB7XG4gIHBhZGRpbmc6IDQ5cHggMHB4OyB9XG4gIC5zZWN0aW9uMi5tYXRjaC1oZWlnaHQgLmNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnNlY3Rpb24yLm1hdGNoLWhlaWdodCAuY29sdW1uOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMHB4O1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICNjZmQ1ZGQ7XG4gICAgICBsZWZ0OiAtMjUlO1xuICAgICAgei1pbmRleDogMTAwOyB9XG4gIC5zZWN0aW9uMi5tYXRjaC1oZWlnaHQgZGwge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDsgfVxuICAuc2VjdGlvbjIubWF0Y2gtaGVpZ2h0IC5yb3cgPiBkaXY6Zmlyc3QtY2hpbGQgLmNvbHVtbjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zZWN0aW9uMi5tYXRjaC1oZWlnaHQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwcHg7IH1cbiAgICAuc2VjdGlvbjIubWF0Y2gtaGVpZ2h0IC5jb2x1bW46YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc2VjdGlvbjIubWF0Y2gtaGVpZ2h0IC5yb3cgPiBkaXY6bGFzdC1jaGlsZCAuY29sdW1uOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2VjdGlvbjIgLmNvbHVtbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VjdGlvbjIge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9XG4gICAgLnNlY3Rpb24yLm1hdGNoLWhlaWdodCAuY29sdW1uOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc2VjdGlvbjIgLmNvbHVtbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZmQ1ZGQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjZweDsgfVxuICAgIC5zZWN0aW9uMiAucm93ID4gZGl2Omxhc3QtY2hpbGQgLmNvbHVtbiB7XG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7IH0gfVxuXG4vKlxyXG4qYWJvdXQgcHJvamVjdFxyXG4qL1xuLmFib3V0LXByb2plY3Qge1xuICBiYWNrZ3JvdW5kOiAjMGQzMjY4OyB9XG4gIC5hYm91dC1wcm9qZWN0IC5kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDUwcHggNDBweCAyMHB4O1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGJhY2tncm91bmQ6ICMwZDMyNjggdXJsKFwiLi4vaW1hZ2VzL3BhdHRlcm43LnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwMDsgfVxuICAgIC5hYm91dC1wcm9qZWN0IC5kZXNjcmlwdGlvbjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxNDdweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kZXNjcmlwdGlvbi1hZnRlci5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgdG9wOiAwcHg7XG4gICAgICByaWdodDogLTE0NnB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgICAuYWJvdXQtcHJvamVjdCAuZGVzY3JpcHRpb24gaDMge1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoNDAgLyAzNSk7XG4gICAgICBjb2xvcjogI2YyYzMwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgICAuYWJvdXQtcHJvamVjdCAuZGVzY3JpcHRpb24gcCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmFib3V0LXByb2plY3QgLmlubmVyLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5hYm91dC1wcm9qZWN0IC5pbm5lci13cmFwcGVyIC5pbm5lciB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXgtd2lkdGg6IDQ0NHB4OyB9XG4gIC5hYm91dC1wcm9qZWN0IC5mdWxsLXdpZHRoIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5hYm91dC1wcm9qZWN0IC5kZXNjcmlwdGlvbjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYWJvdXQtcHJvamVjdCAuaW5uZXItd3JhcHBlciAuaW5uZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbi8qXHJcbipzbGlkZXNob3cgMVxyXG4qL1xuI3NsaWRlc2hvdzEgLmN5Y2xlLXNsaWRlc2hvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jc2xpZGVzaG93MSAuc2xpZGUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4jc2xpZGVzaG93MSAuY29udHJvbHMgLmN5Y2xlLXByZXYsICNzbGlkZXNob3cxIC5jb250cm9scyAuY3ljbGUtbmV4dCB7XG4gIHdpZHRoOiA1NHB4O1xuICBoZWlnaHQ6IDU0cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9jb250cm9sczIuc3ZnXCIpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDAuNTI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7IH1cbiAgI3NsaWRlc2hvdzEgLmNvbnRyb2xzIC5jeWNsZS1wcmV2OmhvdmVyLCAjc2xpZGVzaG93MSAuY29udHJvbHMgLmN5Y2xlLW5leHQ6aG92ZXIge1xuICAgIG9wYWNpdHk6IC43MDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwczsgfVxuXG4jc2xpZGVzaG93MSAuY29udHJvbHMgLmN5Y2xlLXByZXYge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O1xuICBsZWZ0OiAtNTRweDsgfVxuXG4jc2xpZGVzaG93MSAuY29udHJvbHMgLmN5Y2xlLW5leHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgcmlnaHQ6IC01NHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuICAjc2xpZGVzaG93MSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwcHggNjlweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjc2xpZGVzaG93MSAuY29udHJvbHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxN3B4IDBweDsgfVxuICAgICNzbGlkZXNob3cxIC5jb250cm9scyAuY3ljbGUtcHJldiwgI3NsaWRlc2hvdzEgLmNvbnRyb2xzIC5jeWNsZS1uZXh0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAgICNzbGlkZXNob3cxIC5jb250cm9scyAuY3ljbGUtcHJldiB7XG4gICAgICBsZWZ0OiAwcHg7IH1cbiAgICAjc2xpZGVzaG93MSAuY29udHJvbHMgLmN5Y2xlLW5leHQge1xuICAgICAgcmlnaHQ6IDBweDsgfSB9XG5cbi8qXHJcbipzbGlkZXNob3cyXHJcbiovXG4jc2xpZGVzaG93MiB7XG4gIGJhY2tncm91bmQ6ICNmNWY4Zjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjc2xpZGVzaG93MjpiZWZvcmUsICNzbGlkZXNob3cyOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwOyB9XG4gICNzbGlkZXNob3cyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0b3A6IC0zMHB4O1xuICAgIHRyYW5zZm9ybTogc2tld1koMWRlZyk7IH1cbiAgI3NsaWRlc2hvdzI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmNWY4Zjg7XG4gICAgYm90dG9tOiAtNzBweDtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKC0xZGVnKTsgfVxuICAjc2xpZGVzaG93MiAuY3ljbGUtc2xpZGVzaG93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgI3NsaWRlc2hvdzIgLnNsaWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxOXB4OyB9XG4gICNzbGlkZXNob3cyIC5jb250cm9scyAuY3ljbGUtcHJldiwgI3NsaWRlc2hvdzIgLmNvbnRyb2xzIC5jeWNsZS1uZXh0IHtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2NvbnRyb2xzMi5zdmdcIik7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG9wYWNpdHk6IDAuNTI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzOyB9XG4gICAgI3NsaWRlc2hvdzIgLmNvbnRyb2xzIC5jeWNsZS1wcmV2OmhvdmVyLCAjc2xpZGVzaG93MiAuY29udHJvbHMgLmN5Y2xlLW5leHQ6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjcwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7IH1cbiAgI3NsaWRlc2hvdzIgLmNvbnRyb2xzIC5jeWNsZS1wcmV2IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O1xuICAgIGxlZnQ6IC01NHB4OyB9XG4gICNzbGlkZXNob3cyIC5jb250cm9scyAuY3ljbGUtbmV4dCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgcmlnaHQ6IC01NHB4OyB9XG4gICNzbGlkZXNob3cyIC5jeWNsZS1wYWdlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwcHggLTEwcHggNTBweDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgICAjc2xpZGVzaG93MiAuY3ljbGUtcGFnZXIgdWwge1xuICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgICAgICNzbGlkZXNob3cyIC5jeWNsZS1wYWdlciB1bCBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTc2cHg7XG4gICAgICAgIGhlaWdodDogMTA5cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IC4zNjtcbiAgICAgICAgbWFyZ2luOiAwcHggMTBweCAxOXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwczsgfVxuICAgICAgICAjc2xpZGVzaG93MiAuY3ljbGUtcGFnZXIgdWwgbGk6aG92ZXIsICNzbGlkZXNob3cyIC5jeWNsZS1wYWdlciB1bCBsaS5jeWNsZS1wYWdlci1hY3RpdmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG4gICNzbGlkZXNob3cyIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDBweCA2OXB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNzbGlkZXNob3cyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgI3NsaWRlc2hvdzI6YmVmb3JlLCAjc2xpZGVzaG93MjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgI3NsaWRlc2hvdzIgLnNsaWRlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDsgfVxuICAgICNzbGlkZXNob3cyIC5jb250cm9scyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxN3B4IDBweDsgfVxuICAgICAgI3NsaWRlc2hvdzIgLmNvbnRyb2xzIC5jeWNsZS1wcmV2LCAjc2xpZGVzaG93MiAuY29udHJvbHMgLmN5Y2xlLW5leHQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgICAgICNzbGlkZXNob3cyIC5jb250cm9scyAuY3ljbGUtcHJldiB7XG4gICAgICAgIGxlZnQ6IDBweDsgfVxuICAgICAgI3NsaWRlc2hvdzIgLmNvbnRyb2xzIC5jeWNsZS1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDBweDsgfVxuICAgICNzbGlkZXNob3cyIC5jeWNsZS1wYWdlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLypcclxuKmJsb2NrcXVvdGVcclxuKi9cbi5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogODJweCAwcHg7IH1cbiAgLmJsb2NrcXVvdGUgYmxvY2txdW90ZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDU3cHggMHB4IDMzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wYXR0ZXJuNi5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNjhweCAxOTJweDsgfVxuICAgIC5ibG9ja3F1b3RlIGJsb2NrcXVvdGUgcCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMzAgLyAxOCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuYmxvY2txdW90ZSBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KAnCc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZm9udC1zaXplOiA2LjYyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTA4IC8gMTA2KTtcbiAgICAgICAgY29sb3I6ICNmMmMzMDA7XG4gICAgICAgIHRvcDogLTM2cHg7XG4gICAgICAgIGxlZnQ6IC00MHB4OyB9XG4gICAgLmJsb2NrcXVvdGUgYmxvY2txdW90ZSBjaXRlIHtcbiAgICAgIGNvbG9yOiAjZjJjMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDMwIC8gMTgpO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZzogMTJweCAwcHg7IH1cbiAgICAuYmxvY2txdW90ZSBibG9ja3F1b3RlIHtcbiAgICAgIHBhZGRpbmc6IDEzcHggMzBweDsgfSB9XG5cbi8qXG4qIGJveDFcbiovXG4uYm94MSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyNHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDI0cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDI0cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gIC5ib3gxLmNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmJveDEuY29sdW1uIC5kZXRhaWxzIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgLmJveDEgLmltYWdlLCAuYm94MSAuZGV0YWlscyB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmJveDEgLmNvbCAuaW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuYm94MSAuY29sIC5kZXRhaWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmJveDEgLmltYWdlLmNvbCB7XG4gICAgd2lkdGg6IDY1JTsgfVxuICAuYm94MSAuaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgLmJveDEgLmRldGFpbHMge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogNjVweCA0NXB4IDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYm94MSAuZGV0YWlscy5jb2wge1xuICAgICAgd2lkdGg6IDM1JTsgfVxuICAgIC5ib3gxIC5kZXRhaWxzIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4xODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoNDAgLyAzNSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgLmJveDEgLmRldGFpbHMgaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH1cbiAgICAuYm94MSAuZGV0YWlscyAudmlldy1tb3JlLWJ0biB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNDVweDtcbiAgICAgIGJvdHRvbTogNTBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmJveDEgLmltYWdlLmNvbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuYm94MSAuZGV0YWlscy5jb2wge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmJveDEgLmltYWdlIGltZyB7XG4gICAgbWluLWhlaWdodDogNDQwcHg7IH1cbiAgLmJveDEgLmRldGFpbHMge1xuICAgIHBhZGRpbmc6IDYwcHggMzVweCAwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJveDEgLmltYWdlLmNvbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmJveDEgLmRldGFpbHMuY29sIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuYm94MSAuaW1hZ2UgaW1nIHtcbiAgICBtaW4taGVpZ2h0OiAyMjZweDsgfVxuICAuYm94MSAuZGV0YWlscyB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDMwcHg7IH1cbiAgICAuYm94MSAuZGV0YWlscyBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmJveDEgLmRldGFpbHMgLnZpZXctbW9yZS1idG4ge1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICBib3R0b206IDMxcHg7IH0gfVxuXG4vKlxyXG4qaWNvbnNcclxuKi9cbi5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pY29uMSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uMS5zdmdcIikgbm8tcmVwZWF0O1xuICB3aWR0aDogNjNweDtcbiAgaGVpZ2h0OiA3OHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDYzcHggNzhweDsgfVxuXG4uaWNvbjIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbjIuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgd2lkdGg6IDYzcHg7XG4gIGhlaWdodDogNzhweDtcbiAgYmFja2dyb3VuZC1zaXplOiA2M3B4IDc4cHg7IH1cblxuLmNvbnRhY3QtaW5mbyBhZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uY29udGFjdC1pbmZvIHVsIHtcbiAgbWFyZ2luOiAwcHg7XG4gIHBhZGRpbmc6IDBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uY29udGFjdC1pbmZvIGxpIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAxOCk7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmNvbnRhY3QtaW5mbyBsaSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5jb250YWN0LWluZm8gbGkgYS50ZWwge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3Bob25lLWljb24uc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4OyB9XG4gICAgLmNvbnRhY3QtaW5mbyBsaSBhLm1haWwge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL21haWwtaWNvbi5zdmdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDE3cHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNlbnRlcjsgfVxuXG4vKlxyXG4qbGlzdDFcclxuKi9cbi5saXN0MSBkdCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTE3cHg7XG4gIGNsZWFyOiByaWdodDsgfVxuXG4ubGlzdDEgZGQge1xuICBjb2xvcjogIzBkMzI2ODtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cblxuLypcclxuKmNhbGwgdG8gYWN0aW9uXHJcbiovXG4jY2FsbC10by1hY3Rpb24ge1xuICBwYWRkaW5nOiAxMHB4IDBweDsgfVxuICAjY2FsbC10by1hY3Rpb24gLmlubmVyIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMjRweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDI0cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjRweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgI2NhbGwtdG8tYWN0aW9uIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7IH1cbiAgI2NhbGwtdG8tYWN0aW9uIC5oZWFkaW5nLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6ICMzY2E3Mzg7XG4gICAgcGFkZGluZzogNDZweCAxNHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjY2FsbC10by1hY3Rpb24gLmhlYWRpbmctd3JhcHBlcjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcmlnaHQ6IC0zMnB4O1xuICAgICAgdG9wOiAwcHg7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1hZ2VzL2hlYWRpbmctd3JhcHBlci1hZnRlci5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgI2NhbGwtdG8tYWN0aW9uIGg0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICdPc3dhbGQnLCBzYW5zLXNlcmlmOyB9XG4gICNjYWxsLXRvLWFjdGlvbiAudGVsIHtcbiAgICBjb2xvcjogI2YyYzMwMDtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDM0IC8gMzApO1xuICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3Bob25lLWljb24zLnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzNweCAzMnB4O1xuICAgIHBhZGRpbmctbGVmdDogNDVweDsgfVxuICAjY2FsbC10by1hY3Rpb24gdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDMycHggMzVweCAwcHggMHB4O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAgICNjYWxsLXRvLWFjdGlvbiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTJweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgI2NhbGwtdG8tYWN0aW9uIGg0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICNjYWxsLXRvLWFjdGlvbiAuaGVhZGluZy13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA0NnB4IDMwcHg7IH1cbiAgICAjY2FsbC10by1hY3Rpb24gLmhlYWRpbmctd3JhcHBlcjphZnRlciB7XG4gICAgICByaWdodDogLTEzcHg7IH1cbiAgI2NhbGwtdG8tYWN0aW9uIHVsIHtcbiAgICBwYWRkaW5nOiAyM3B4IDI1cHggMHB4OyB9XG4gICAgI2NhbGwtdG8tYWN0aW9uIHVsIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTNweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY2FsbC10by1hY3Rpb24gLmhlYWRpbmctd3JhcHBlciB7XG4gICAgcGFkZGluZzogNjBweCAzMHB4OyB9XG4gICAgI2NhbGwtdG8tYWN0aW9uIC5oZWFkaW5nLXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjM2NhNzM4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICB0cmFuc2Zvcm06IHNrZXc7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKDFkZWcpOyB9XG4gICNjYWxsLXRvLWFjdGlvbiBoNCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICNjYWxsLXRvLWFjdGlvbiB1bCB7XG4gICAgcGFkZGluZzogNTVweCAyNXB4IDQycHg7IH0gfVxuXG4vKiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0VmVuZG9yXG4gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4qIHRlYW1cbiovXG4jdGVhbSB7XG4gIHBhZGRpbmc6IDg1cHggMHB4OyB9XG4gICN0ZWFtIHVsIHtcbiAgICBtYXJnaW46IDBweCAwcHggNDVweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAjdGVhbSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICN0ZWFtIC52aWV3LWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgI3RlYW0gLnNpdGUtaW1hZ2VzIHtcbiAgICBtYXJnaW4tbGVmdDogLTEzMHB4OyB9XG4gICAgI3RlYW0gLnNpdGUtaW1hZ2VzIGltZyB7XG4gICAgICBtYXJnaW46IDBweCAxJSAxMnB4O1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICN0ZWFtIC5jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICN0ZWFtIC5zaXRlLWltYWdlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4OyB9XG4gICN0ZWFtIC5jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICN0ZWFtIHtcbiAgICBwYWRkaW5nOiA0NXB4IDBweDsgfVxuICAgICN0ZWFtIC5zaXRlLWltYWdlcyB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG5cbi8qXG4qIGNvbnRhY3QtdXNcbiovXG4jY29udGFjdC11cyB7XG4gIGJhY2tncm91bmQ6ICNmNmY5Zjk7XG4gIHBhZGRpbmc6IDE4MHB4IDBweCAxMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNjb250YWN0LXVzOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLTgycHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKC03ZGVnKTsgfVxuICAjY29udGFjdC11cy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmc6IDY0cHggMHB4IDEwNnB4OyB9XG4gICAgI2NvbnRhY3QtdXMucHJpbWFyeTphZnRlciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IC0xMjVweDtcbiAgICAgIHRyYW5zZm9ybTogc2tld1koM2RlZyk7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgI2NvbnRhY3QtdXMucHJpbWFyeSAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgICAgICNjb250YWN0LXVzLnByaW1hcnkgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7IH1cbiAgI2NvbnRhY3QtdXMgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNjb250YWN0LXVzIC5kZXNpZ24tcGF0dGVybiB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2NvbnRhY3QtdXMtYmcuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDU1NXB4IDMzM3B4O1xuICAgIHdpZHRoOiA1NTVweDtcbiAgICBoZWlnaHQ6IDMzM3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwcHg7XG4gICAgdG9wOiAtMTcwcHg7XG4gICAgei1pbmRleDogOTk7IH1cbiAgI2NvbnRhY3QtdXMgdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICNjb250YWN0LXVzIC5jb250YWN0LWluZm8ge1xuICAgIHBhZGRpbmctdG9wOiAxOTVweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gICNjb250YWN0LXVzOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKC0zZGVnKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgI2NvbnRhY3QtdXMge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gICAgI2NvbnRhY3QtdXM6YWZ0ZXIge1xuICAgICAgdG9wOiAtNjJweDtcbiAgICAgIGhlaWdodDogMTUwcHg7IH1cbiAgICAjY29udGFjdC11cyAuZGVzaWduLXBhdHRlcm4ge1xuICAgICAgbGVmdDogLTE3MHB4O1xuICAgICAgdG9wOiAtMTk1cHg7IH1cbiAgICAjY29udGFjdC11cyAuY29udGFjdC1pbmZvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNjBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29udGFjdC11cyB7XG4gICAgcGFkZGluZy10b3A6IDkwcHg7IH1cbiAgICAjY29udGFjdC11cy5wcmltYXJ5IHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9XG4gICAgI2NvbnRhY3QtdXMgLmRlc2lnbi1wYXR0ZXJuIHtcbiAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBsZWZ0OiAtNzBweDtcbiAgICAgIHRvcDogLTc1cHg7IH0gfVxuXG4vKlxyXG4qYWJvdXQgdXNcclxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuYWJvdXQtdXMtcGFnZSAjYmFubmVyIC5iYW5uZXItaW1hZ2UgaW1nIHtcbiAgICBtaW4taGVpZ2h0OiA3MjBweDsgfSB9XG5cbi8qXHJcbipjb250YWN0IHVzIHBhZ2VcclxuKi9cbi5jb250YWN0LXVzLXBhZ2UgI2Zvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVmZWY7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jb250YWN0LXVzLXBhZ2UgI2Jhbm5lciAuYmFubmVyLWltYWdlIGltZyB7XG4gICAgbWluLWhlaWdodDogMjY1cHg7IH0gfVxuXG4vKlxyXG4qcmVhbGlzYXRpb24gcGFnZVxyXG4qL1xuLnJlYWxpc2F0aW9uLXBhZ2UgI2Zvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLypcclxuKnRlYW0gcGFnZVxyXG4qL1xuLnRlYW0tcGFnZSAjZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRlYW0tcGFnZSAjYmFubmVyIC5iYW5uZXItaW1hZ2UgaW1nIHtcbiAgICBtaW4taGVpZ2h0OiAyNjVweDsgfSB9XG5cbi8qXHJcbipwcm9qZWN0IHBhZ2VcclxuKi9cbi5wcm9qZWN0LXBhZ2UgI2Zvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLypcclxuKmltbW8gcGFnZVxyXG4qL1xuLmltbW8tcGFnZSAjYmFubmVyIC5kZXNjcmlwdGlvbiBoMSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uaW1tby1wYWdlICNiYW5uZXIgLmRlc2NyaXB0aW9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMzY2E3Mzg7IH1cblxuLmltbW8tcGFnZSAjZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmltbW8tcGFnZSAjYmFubmVyIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgIG1heC13aWR0aDogMTUwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmltbW8tcGFnZSAjYmFubmVyIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgIG1heC13aWR0aDogMTIwcHg7IH0gfVxuIiwiLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFNldHVwOiBWYXJpYWJsZXMsIE1peGluc1xuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW1wb3J0ICd2YXJpYWJsZXMvbWFpbic7XG5AaW1wb3J0ICdtaXhpbnMvbWFpbic7XG5cbi8qICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRGb250c1xuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW1wb3J0ICdmb250cy9tYWluJztcblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdEdsb2JhbCBTZXR0aW5ncyAmIFV0aWxpdGllc1xuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW1wb3J0ICdzZXR0aW5ncy9tYWluJztcblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdExheW91dHNcbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCAnbGF5b3V0cy9tYWluJztcblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdENvbXBvbmVudHNcbiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCAnY29tcG9uZW50cy9tYWluJztcblxuLyogID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFZlbmRvclxuICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgJ3BhZ2VzL21haW4nO1xuXG5cblxuIiwiYm9keSB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbi5ncm91cCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbmEge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbmgxICwgaDIge1xuICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xufVxuXG5oMyB7XG4gIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDQge1xuICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBkMzI2ODtcbiAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDI4IC8gMjQpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICBoMSAsIGgyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo1NzVweCkge1xuICBoMSAsIGgyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM1KTtcbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gQ29weSBzZXR0aW5ncyBmcm9tIHRoaXMgZmlsZSBpbnRvIHRoZSBwcm92aWRlZCBgX2N1c3RvbS5zY3NzYCB0byBvdmVycmlkZVxuLy8gdGhlIEJvb3RzdHJhcCBkZWZhdWx0cyB3aXRob3V0IG1vZGlmeWluZyBrZXksIHZlcnNpb25lZCBmaWxlcy5cblxuXG4vLyBUYWJsZSBvZiBDb250ZW50c1xuLy9cbi8vIENvbG9yc1xuLy8gT3B0aW9uc1xuLy8gU3BhY2luZ1xuLy8gQm9keVxuLy8gTGlua3Ncbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vIEdyaWQgY29udGFpbmVyc1xuLy8gR3JpZCBjb2x1bW5zXG4vLyBGb250c1xuLy8gQ29tcG9uZW50c1xuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBHZW5lcmFsIHZhcmlhYmxlIHN0cnVjdHVyZVxuLy9cbi8vIFZhcmlhYmxlIGZvcm1hdCBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1tb2RpZmllci1zdGF0ZS1wcm9wZXJ0eWAgb3JkZXIuXG5cblxuLy8gQ29sb3JzXG4vL1xuLy8gR3JheXNjYWxlIGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgICAgIzM3M2EzYyAhZGVmYXVsdDtcbiRncmF5OiAgICAgICAgICAgICAgICAgICAgICAjODY5NWFhICFkZWZhdWx0O1xuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgICM4MThhOTEgIWRlZmF1bHQ7XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgICAgI2VjZWVlZiAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0ZXN0OiAgICAgICAgICAgICAjZjdmN2Y5ICFkZWZhdWx0O1xuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAgICAgI2YyYzMwMCAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuJGJyYW5kLWludmVyc2U6ICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1mbGV4OiAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAgIDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyLXg6ICRzcGFjZXIgIWRlZmF1bHQ7XG4kc3BhY2VyLXk6ICRzcGFjZXIgIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAoXG4gICAgeDogMCxcbiAgICB5OiAwXG4gICksXG4gIDE6IChcbiAgICB4OiAkc3BhY2VyLXgsXG4gICAgeTogJHNwYWNlci15XG4gICksXG4gIDI6IChcbiAgICB4OiAoJHNwYWNlci14ICogMS41KSxcbiAgICB5OiAoJHNwYWNlci15ICogMS41KVxuICApLFxuICAzOiAoXG4gICAgeDogKCRzcGFjZXIteCAqIDMpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAzKVxuICApXG4pICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAjZmZmICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICRncmF5ICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTAyMHB4XG4pICFkZWZhdWx0O1xuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aC1iYXNlOiAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aHM6IChcbiAgeHM6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICBzbTogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIG1kOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgbGc6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICB4bDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2VcbikgIWRlZmF1bHQ7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICdSb2JvdG8nLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFBpeGVsIHZhbHVlIHVzZWQgdG8gcmVzcG9uc2l2ZWx5IHNjYWxlIGFsbCB0eXBvZ3JhcGh5LiBBcHBsaWVkIHRvIHRoZSBgPGh0bWw+YCBlbGVtZW50LlxuJGZvbnQtc2l6ZS1yb290OiAxNnB4ICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6IDAuODc1cmVtICFkZWZhdWx0OyAvLzE0cHhcbiRmb250LXNpemUtbGc6ICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteHM6ICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogMS43ICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWgxOiAzLjc1cmVtICFkZWZhdWx0OyAvLzYwcHhcbiRmb250LXNpemUtaDI6IDMuNzVyZW0gIWRlZmF1bHQ7IC8vNjBweFxuJGZvbnQtc2l6ZS1oMzogMS43NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDQ6IDEuNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAxcmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogNC4zNzVyZW0gIWRlZmF1bHQ7IC8vIDcwcHhcbiRkaXNwbGF5Mi1zaXplOiA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6IDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogMzAwICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGFiYnItYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKDAsMCwwLC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgKDQgLyAzKSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAwcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgIDByZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgMHJlbSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXdpZHRoLWxnOiAgICAgICAgICRjYXJldC13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLXNtLWNlbGwtcGFkZGluZzogICAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgOTAwICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xNSksIDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgICRidG4tcHJpbWFyeS1iZyAhZGVmYXVsdDtcblxuJGJ0bi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXNlY29uZGFyeS1ib3JkZXI6ICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICAkYnRuLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgICRidG4tc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgJGJ0bi13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICRidG4tZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXRvb2xiYXItbWFyZ2luOiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwwKSAhZGVmYXVsdDtcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICNhZGI1YzMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZTFlNmVlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgMnB4ICFkZWZhdWx0OyAvLyBGb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9uc1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJnLWZvY3VzOiAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdy1mb2N1czogICAgICAgICAkaW5wdXQtYm94LXNoYWRvdywgMCAwIDhweCByZ2JhKDEwMiwxNzUsMjMzLC42KSAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvci1mb2N1czogICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgI2FkYjVjMyAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgKCgxcmVtICogMS41KSArICgkaW5wdXQtcGFkZGluZy15ICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtcGFkZGluZy15LWxnICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtcGFkZGluZy15LXNtICogMikpICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAkc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6IDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXk6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgwLDAsMCwuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I6ICAgICAgICAgICAgICRjdXJzb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnOiAgICAgICAjZWVlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWRlc2NyaXB0aW9uLWNvbG9yOiAgIzc2NzY3NiAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYmc6ICAgICAgICAgIzAwNzRkOSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZm9jdXMtaW5kaWNhdG9yLWJveC1zaGFkb3c6IDAgMCAwIC4wNzVyZW0gI2ZmZiwgMCAwIDAgLjJyZW0gIzAwNzRkOSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWJnOiAgICAgICAgICM4NGM2ZmYgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWNoZWNrZWQtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnOiAjMDA3NGQ5ICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWluZGljYXRvci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTAgMmg0Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8tcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWNoZWNrZWQtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNFJTNDY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yfScvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0VcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAjNTFhN2U4ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDVweCByZ2JhKDgxLCAxNjcsIDIzMiwgLjUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1zbS1wYWRkaW5nLXk6IC4ycmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3Qtc20tZm9udC1zaXplOiA3NSUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAyLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtd2lkdGg6ICAgICAgICAgICAgMTRyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgLjA3NXJlbSAjZmZmLCAwIDAgMCAuMnJlbSAjMDA3NGQ5ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAxLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgI2RkZCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICBpbnNldCAwIC4ycmVtIC40cmVtIHJnYmEoMCwwLDAsLjA1KSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgI2VlZSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIHBsYWNlaG9sZGVyOiAoXG4gICAgZW46IFwiQ2hvb3NlIGZpbGUuLi5cIlxuICApLFxuICBidXR0b24tbGFiZWw6IChcbiAgICBlbjogXCJCcm93c2VcIlxuICApXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvbiBpY29uc1xuJGZvcm0taWNvbi1zdWNjZXNzLWNvbG9yOiAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWljb24tc3VjY2VzczogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skZm9ybS1pY29uLXN1Y2Nlc3MtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLXdhcm5pbmctY29sb3I6ICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGZvcm0taWNvbi13YXJuaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24td2FybmluZy1jb2xvcn0nIGQ9J000LjQgNS4zMjRoLS44di0yLjQ2aC44em0wIDEuNDJoLS44VjUuODloLjh6TTMuNzYuNjNMLjA0IDcuMDc1Yy0uMTE1LjIuMDE2LjQyNS4yNi40MjZoNy4zOTdjLjI0MiAwIC4zNzItLjIyNi4yNTgtLjQyNkM2LjcyNiA0LjkyNCA1LjQ3IDIuNzkgNC4yNTMuNjNjLS4xMTMtLjE3NC0uMzktLjE3NC0uNDk0IDB6Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLWRhbmdlci1jb2xvcjogJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRmb3JtLWljb24tZGFuZ2VyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0taWNvbi1kYW5nZXItY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2Q5NTM0ZicgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNFJTNDY2lyY2xlIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tbWFyZ2luLXRvcDogICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoMCwwLDAsLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duLWJhY2tkcm9wOiAgOTkwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1zdGlja3k6ICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iZzogICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1kaXZpZGVyLXBhZGRpbmcteTogICAgICAgICAgLjQyNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwxKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJnOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA4aDI0TTQgMTZoMjRNNCAyNGgyNCcvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlcjogICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoMCwwLDAsLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgwLDAsMCwuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKDAsMCwwLC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMyIDMyJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDhoMjRNNCAxNmgyNE00IDI0aDI0Jy8lM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlcjogICAgICAgcmdiYSgwLDAsMCwuMSkgIWRlZmF1bHQ7XG5cbi8vIE5hdnNcblxuJG5hdi1pdGVtLW1hcmdpbjogICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRuYXYtaXRlbS1pbmxpbmUtc3BhY2VyOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgLjVlbSAxZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1iZzogICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgICAuMjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oJHN0YXRlLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJHN0YXRlLWluZm8tYmcsIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkc3RhdGUtd2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkc3RhdGUtZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAxcHggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoMCwwLDAsLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyOiBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJkLWxpbmstaG92ZXItY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtc20tdXAtY29sdW1uLWdhcDogMS4yNXJlbSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcblxuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg6ICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXk6ICAgICAgICAgICA5cHggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMXB4KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVGFnc1xuXG4kdGFnLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kdGFnLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kdGFnLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kdGFnLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kdGFnLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kdGFnLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuJHRhZy1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kdGFnLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiR0YWctZm9udC1zaXplOiAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kdGFnLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiR0YWctcGFkZGluZy14OiAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJHRhZy1wYWRkaW5nLXk6ICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kdGFnLXBpbGwtcGFkZGluZy14OiAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiR0YWctcGlsbC1ib3JkZXItcmFkaXVzOiAgICAxMHJlbSAhZGVmYXVsdDtcblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctc20tdXAtbWFyZ2luLXk6IDMwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3c6ICAgIDAgM3B4IDlweCByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXNtLXVwLWJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLDAsMCwuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgIzAwNzRkOSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKDAsMCwwLC4xKSAhZGVmYXVsdDtcblxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0taGVhZGluZy1tYXJnaW4tYm90dG9tOiA1cHggIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAjZGRkICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6IDkwJSAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLyBNZWRpYSBvYmplY3RzXG5cbiRtZWRpYS1tYXJnaW4tdG9wOiAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kbWVkaWEtaGVhZGluZy1tYXJnaW4tYm90dG9tOiAgNXB4ICFkZWZhdWx0O1xuJG1lZGlhLWFsaWdubWVudC1wYWRkaW5nLXg6ICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1zbS11cC1zaXplOiAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9ycy13aWR0aDogICAgICAgICAgICAgICAgICAgNjAlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLXNpemU6ICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNtLXVwLXdpZHRoOiAgICAgICAgICAgICAgICA2MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kY29kZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteTogICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2JkNDE0NyAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmN2Y3ZjkgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjdmN2Y5ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcbiIsIlxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbJGZvbnQtc2l6ZS1yb290XSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogJGZvbnQtc2l6ZS1yb290KSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5cblxuXG5cbiIsIkBtZWRpYSAobWF4LXdpZHRoOjk5MXB4KSB7XG4gIC5kaXNwbGF5LTEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTUpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAuZGlzcGxheS0xIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ1KTtcbiAgfVxufVxuXG4uZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4iLCJcclxuI2NvbnRhaW5lciB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvL21pbi13aWR0aDogMzIwcHg7XHJcbn1cclxuIiwiI2hlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC40Mik7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogMjcwcHg7XG4gIH1cbiAgLmxvZ28ge1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICB3aWR0aDogODRweDtcbiAgICAgIGhlaWdodDogMTA0JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2tldygtMjVkZWcpO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2xvZ28uc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDIwNHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuQG1lZGlhIChtYXgtd2lkdGg6MTM5OXB4KSB7XG4gICNoZWFkZXIge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyOCU7XG4gICAgfVxuICB9XG59XG4qL1xuXG5AbWVkaWEgKG1heC13aWR0aDo5OTFweCkge1xuICAjaGVhZGVyIHtcbiAgICAuaW5uZXItd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAjaGVhZGVyIHtcbiAgICAubG9nbyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICAgICAgYSB7XG4gICAgICAgIHdpZHRoOiAxNjNweDtcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIub3Blbi1tZW51LWJ0biB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogMjZweDtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWVudS1idG4ucG5nJyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgbWFyZ2luLXRvcDogMzVweDtcbn1cblxuLmNsb3NlLW1lbnUtYnRuIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBoZWlnaHQ6IDM1cHg7XG4gIHdpZHRoOiAzNXB4O1xuICBib3JkZXI6IDBweDtcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogNDNweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTRweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRvcDogMTRweDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRvcDogOXB4O1xuICB9XG59XG5cbiNtZW51LW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKCMwZDMyNjcsIDAuODQpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogOTk7XG59XG5cbi5tZW51LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIGgyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBmb250LWZhbWlseTogJ09zd2FsZCcsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzNCk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMzggLyAzNCk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG4jbWFpbi1uYXZpZ2F0aW9uIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDQwcHggMyUgNDBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDE2IC8gMTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICBAaW5jbHVkZSBjdWJpYy10cmFuc2l0aW9uO1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICB9XG4gICAgJi5hY3RpdmUsICY6aG92ZXIge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGN1YmljLXRyYW5zaXRpb247XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo5OTFweCkge1xuICAub3Blbi1tZW51LWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgI21haW4tbmF2aWdhdGlvbiB7XG4gICAgYmFja2dyb3VuZDogIzBkMzI2NztcbiAgICBwYWRkaW5nOiA3MHB4IDQwcHggMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtODAlO1xuICAgIHotaW5kZXg6IDIwMDA7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBAaW5jbHVkZSBjdWJpYy10cmFuc2l0aW9uO1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwcHggLTQwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzIwNDI3NDtcbiAgICAgIC8vaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMDRweCk7XG4gICAgICAvL292ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyNXB4IDQwcHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIwNDI3NDtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGJvZHkge1xuICAgICYub3Blbi1tZW51IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgICNtZW51LW92ZXJsYXkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgLm9wZW4tbWVudS1idG4ge1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cblxuICAubWVudS1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBwYWRkaW5nOiAzNXB4IDMwcHggMTBweDtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDBweCAtMzBweDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMjVweCAzMHB4O1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEN1YmljIFRyYW5zaXRpb25cbkBtaXhpbiBjdWJpYy10cmFuc2l0aW9uKCR0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGwsICR0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNXMpIHtcblx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tcHJvcGVydHkgJHRyYW5zaXRpb24tZHVyYXRpb24gY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDBzO1xuXHQtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uLXByb3BlcnR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSAwcztcblx0LW1vei10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG5cdC1tcy10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSkgMHM7XG59XG4iLCIjZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2Y2ZjlmOTtcblxuICAud3JhcHBlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjMWM1Yzg7XG4gICAgcGFkZGluZzogMzdweCAwcHg7XG4gIH1cbiAgLmxvZ28ge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbG9nby5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgIHdpZHRoOiAxNDlweDtcbiAgICAgIGhlaWdodDogNDNweDtcbiAgICB9XG4gIH1cbn1cblxuI2Zvb3Rlci1tZW51IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHVsIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luLWxlZnQ6IDcwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjODc5NGE2O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIEBpbmNsdWRlIGN1YmljLXRyYW5zaXRpb247XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMwZDMyNjg7XG4gICAgICAgLy8gZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6OTkxcHgpIHtcbiAgI2Zvb3Rlci1tZW51IHtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgI2Zvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICNmb290ZXItbWVudSB7XG4gICAgcGFkZGluZy10b3A6IDBweDtcbiAgICB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG59XG4iLCIuYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDIxKTtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAyMSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctYm90dG9tOiAxNHB4O1xuICBAaW5jbHVkZSBjdWJpYy10cmFuc2l0aW9uO1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwcHg7XG4gIH1cbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwZDMyNjg7XG4gIGNvbG9yOiAjMGQzMjY4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICBsaW5lLWhlaWdodDogY2FsYygxOCAvIDIyKTtcbiAgZm9udC1mYW1pbHk6ICdPc3dhbGQnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAxNHB4IDIwcHg7XG59XG5cbi52aWV3LW1vcmUtYnRuIHtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvdmlldy1tb3JlLWJ0bi5zdmcnKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3ZpZXctbW9yZS1idG4taG92ZXIuc3ZnJyk7XG4gIH1cbn1cbiIsIi5mb3JtIHtcbiAgdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gIH1cblxuICAvLyBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gIC8vICAgJjpmb2N1cyB7XG4gIC8vICAgICBvdXRsaW5lOiBub25lO1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gICAgQGluY2x1ZGUgY3ViaWMtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogMTE0cHg7XG4gIH1cblxuICAuZm9ybS1ncm91cCB7XG4gICAgdGV4dGFyZWEge1xuICAgICAgbWluLWhlaWdodDogMTI5cHg7XG4gICAgfVxuICB9XG4gXG4gIC5jYXB0Y2hhIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMwMHB4IC0gMTI2cHgpO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfSBcbn1cblxuQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmZvcm0ge1xuICAgIC5jYXB0Y2hhIHtcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTI4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qXG4qIGJhbm5lclxuKi9cbiNiYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IDgwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuYmFubmVyLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogODAwcHg7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLnBhdHRlcm4tZGVmYXVsdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIC8vYm90dG9tOiA1OHB4O1xuICAgIGJvdHRvbTogMHB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDUwJTtcbiB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogcmdiYSgjNDI0YTU3LCAwLjQ1KTsgLyogRm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgZ3JhZGllbnRzICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoIzQyNGE1NywgMC40NSksIHJnYmEoIzQyNGE1NywgMC40NSkpOyAvKiBGb3IgU2FmYXJpIDUuMSB0byA2LjAgKi9cbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoIzQyNGE1NywgMC40NSksIHJnYmEoIzQyNGE1NywgMC40NSkpOyAvKiBGb3IgT3BlcmEgMTEuMSB0byAxMi4wICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoIzQyNGE1NywgMC40NSksIHJnYmEoIzQyNGE1NywgMC40NSkpOyAvKiBGb3IgRmlyZWZveCAzLjYgdG8gMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoIzQyNGE1NywgMC40NSksIHJnYmEoIzQyNGE1NywgMC40NSkpO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTUycHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKC0xMGRlZyk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGJvdHRvbTogLTgycHg7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKC01ZGVnKTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgLmlubmVyLXdyYXAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIC5pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDEsIGgyLCBwIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgfVxuXG4gICAgaDEsIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgc2Fucy1zZXJpZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTQpO1xuICAgICAgbWF4LXdpZHRoOiA0MCU7XG4gICAgfVxuXG4gIH1cbiAgXG4gIC5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbn1cblxuYm9keS5ob21lIHtcbiAgI2Jhbm5lciB7XG4gICAgLmJhbm5lci1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cblxuQG1lZGlhKG1pbi13aWR0aDogMTcwMHB4KSB7XG4gI2Jhbm5lciB7XG4gICAuZGVzY3JpcHRpb24ge1xuICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2tld1koLTZkZWcpO1xuICAgICB9XG4gICAgICY6YWZ0ZXIge1xuICAgICAgIHRyYW5zZm9ybTogc2tld1koLTNkZWcpO1xuICAgICB9XG4gICB9XG4gfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo5OTFweCkge1xuICAjYmFubmVyIHtcbiAgICAucGF0dGVybi1kZWZhdWx0IHtcbiAgICAgIG1heC13aWR0aDogMzQ3cHg7XG4gICAgICBib3R0b206IDM4cHg7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTIycHg7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogLTQwcHg7XG4gICAgICB9XG4gICAgICBoMSwgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU1KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICNiYW5uZXIge1xuICAgIC5wYXR0ZXJuLWRlZmF1bHQge1xuICAgICAgbWF4LXdpZHRoOiAyNDdweDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuYmFubmVyLWltYWdlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ3NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgaDEsIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NjM5cHgpIHtcbiAgI2Jhbm5lciB7XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIC8vcGFkZGluZy10b3A6IDkwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTkwcHg7XG4gICAgICBoMSwgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc3RhdHMge1xuICBtYXJnaW46IDBweCAtOXB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGkge1xuICAgIHBhZGRpbmc6IDBweCA5cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgICYuZW1wbG95ZWVzIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzBkMzI2ODtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIC53cmFwIHtcbiAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgIGhlaWdodDogMTYwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTBlYWU5O1xuICAgIH1cblxuICAgIC5udW1iZXIge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0OCk7XG4gICAgICBsaW5lLWhlaWdodDogY2FsYyg1MiAvIDQ4KTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIG1hcmdpbjogMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo5OTFweCkge1xuICAuc3RhdHMge1xuICAgIGxpIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgICBoZWlnaHQ6IDE0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAuc3RhdHMge1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICBsaSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgLndyYXAge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIGhlaWdodDogMTI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjYWJvdXQtdXMge1xuICBwYWRkaW5nOiAxMTBweCAwcHggMTE1cHg7XG4gIC50d28tY29sdW1uLWxheW91dCB7XG4gICAgLmNvbHVtbjEsIC5jb2x1bW4yIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuY29sdW1uMSB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgIH1cbiAgICAuY29sdW1uMiB7XG4gICAgICB3aWR0aDogNjAlO1xuICAgIH1cbiAgfVxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6OTkxcHgpIHtcbiAgI2Fib3V0LXVzIHtcbiAgICBwYWRkaW5nOiA5NXB4IDBweDtcbiAgICAudHdvLWNvbHVtbi1sYXlvdXQge1xuICAgICAgLmNvbHVtbjEsIC5jb2x1bW4yIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICNhYm91dC11cyB7XG4gICAgcGFkZGluZzogMjVweCAwcHg7XG4gICAgLnR3by1jb2x1bW4tbGF5b3V0IHtcbiAgICAgIC5jb2x1bW4xLCAuY29sdW1uMiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNzZXJ2aWNlcyB7XG4gIGJhY2tncm91bmQ6ICNmNmY5Zjk7XG4gIHBhZGRpbmc6IDI2MHB4IDBweCAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHRvcDogLTgycHg7XG4gICAgdHJhbnNmb3JtOiBza2V3WSg1ZGVnKTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MzRweDtcbiAgICBoZWlnaHQ6IDQxOXB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3NlcnZpY2VzLWJnLnN2ZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogLTEwOXB4O1xuICB9XG5cbiAgLnNlcnZpY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NXB4O1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICBjb2xvcjogIzg2OTVhYTtcbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KSB7XG4gICNzZXJ2aWNlcyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBza2V3WSgzZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6OTkxcHgpIHtcbiAgI3NlcnZpY2VzIHtcbiAgICBwYWRkaW5nOiAxNjBweCAwcHggMzBweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtMjIwcHg7XG4gICAgICB0b3A6IC0xMjVweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgI3NlcnZpY2VzIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtNDhweDtcbiAgICAgIHRvcDogLTY1cHg7XG4gICAgICB3aWR0aDogMjM4cHg7XG4gICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIH1cblxuICAgIC5zZXJ2aWNlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICB9XG59XG4iLCIjcHJvamVjdHMge1xuICBiYWNrZ3JvdW5kOiAjMGQzMjY4O1xuICBwYWRkaW5nOiAxMTVweCAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDMzMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogLTE4MHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgdHJhbnNmb3JtOiBza2V3WSgxMWRlZyk7XG4gIH1cblxuICBoZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cblxuICBoMiwgLnZpZXctYWxsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIH1cblxuICAudmlldy1hbGwge1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygyNCAvIDE4KTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBwYWRkaW5nOiAyMHB4IDBweCAyMHB4IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDM3cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2xpZGVzaG93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG5cbiAgLmNvbnRyb2xzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgLmN5Y2xlLXByZXYsIC5jeWNsZS1uZXh0IHtcbiAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9jb250cm9scy5zdmcnKTtcbiAgICB9XG4gICAgLmN5Y2xlLXByZXYge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCA1NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY3ljbGUtbmV4dCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB0b3A7XG4gICAgICBtYXJnaW4tbGVmdDogMjJweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDoxNDAwcHgpIHsgXG4gICNwcm9qZWN0cyB7XG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKDNkZWcpO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAjcHJvamVjdHMge1xuICAgIHBhZGRpbmc6IDcwcHggMHB4O1xuICAgIGhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgICAudmlldy1hbGwsIC5jb250cm9scyB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIH1cbiAgICAudmlldy1hbGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwcHg7XG4gICAgICBib3JkZXItdG9wOiA0cHggc29saWQgI2ZmZmZmZjtcbiAgICAgIHBhZGRpbmc6IDIwcHggNDVweCAxMHB4IDBweDtcbiAgICB9XG5cbiAgfVxufVxuIiwiLypcclxuKndlIGFyZVxyXG4qL1xyXG4jd2UtYXJlIHtcclxuICBwYWRkaW5nOiAxMTBweCAwcHggMTE1cHg7XHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDo5OTFweCkge1xyXG4gICAgI3dlLWFyZSB7XHJcbiAgICAgICAgcGFkZGluZzogOTVweCAwcHg7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAjd2UtYXJlIHtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qcHJvamVjdC1saXN0XHJcbiovXHJcbiNwcm9qZWN0LWxpc3Qge1xyXG4gICAgcGFkZGluZzogMzNweCAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9wcm9qZWN0LWxpc3QtYmcucG5nJykgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDg2OHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjZW50ZXI7XHJcbiAgICAuYm94MSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAuaW1hZ2UsIC5kZXRhaWxzIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNzVweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzVweCAzMHB4IDM1cHg7XHJcbiAgICAgICAgICAgIC52aWV3LW1vcmUtYnRuIHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogNDJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHsgXHJcbiAgICAjcHJvamVjdC1saXN0IHtcclxuICAgICAgICAuYm94MSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgI3Byb2plY3QtbGlzdCB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAwcHggMnB4O1xyXG4gICAgICAgIC5ib3gxIHtcclxuICAgICAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgICAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgLnZpZXctbW9yZS1idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qXHJcbip0ZWFtIG1lbWJlcnNcclxuKi9cclxuI3RlYW0tbWVtYmVycyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuNS5zdmcnKSBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM0MHB4IDU1N3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTEyMHB4IGJvdHRvbSA2MHB4O1xyXG4gICAgcGFkZGluZzogNjBweCAwcHg7XHJcbiAgIC53cmFwcGVyIHtcclxuICAgICAgIG1heC13aWR0aDogNzI5cHg7XHJcbiAgIH1cclxuICAgIC5tZW1iZXJzIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogNnB4IDBweCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFlNGVhO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzBkMzI2ODtcclxuICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgYm90dG9tOiAyN3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgICYuZ3JvdXAxIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2NhZGJkYTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5ncm91cDIge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjJjMzAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmdyb3VwMyB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM4Njk1YWE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDIyIC8gMTQpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAjdGVhbS1tZW1iZXJzIHtcclxuICAgICAgICAubWVtYmVycyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAjdGVhbS1tZW1iZXJzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE4NXB4IDI5NHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xMTNweCBib3R0b20gNjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XHJcbiAgICAgICAgLm1lbWJlcnMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xyXG4gICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKm1hcFxyXG4qL1xyXG4jbWFwIHtcclxuICAgIGJhY2tncm91bmQ6ICNlOWVmZWY7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogLTgycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKDRkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIC5mdWxsLXdpZHRoIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MjVweDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAxcHggMjdweCAtMTVweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDFweCAyN3B4IC0xNXB4IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAyN3B4IC0xNXB4IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC53cmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYycHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLm1hcmtlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcmlnaHQ6IDI5JTtcclxuICAgIH1cclxuICAgICBcclxuICAgIC5jb250YWN0LWluZm8ge1xyXG4gICAgICAgIHdpZHRoOiA0MTBweDtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMwZDMyNjg7XHJcbiAgICAgICAgcGFkZGluZzogNjVweCA0MHB4IDM1cHg7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICYudGVsIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGhvbmUtaWNvbjIuc3ZnXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYubWFpbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL21haWwtaWNvbjIuc3ZnXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgI21hcCB7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbiAgICAgICAgLmNvbnRhY3QtaW5mbyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMzVweCAzOXB4IDVweDsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mdWxsLXdpZHRoIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1hcmtlciB7XHJcbiAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBib3R0b206IDUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4iLCIvKlxyXG4qcHJvamVjdCBkZXNjcmlwdGlvblxyXG4qL1xyXG4ucHJvamVjdC1kZXNjcmlwdGlvbiB7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDBweCA5NHB4O1xyXG4gICAgLmJveDEge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDQwcHggLTRweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggNDBweCAtNHB4IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNDBweCAtNHB4IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0NXB4IDQ1cHggMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcclxuICAgICAgICAuYm94MSB7XHJcbiAgICAgICAgICAgIC5kZXRhaWxzIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qc2VjdGlvbjFcclxuKi9cclxuLnNlY3Rpb24xIHtcclxuICAgIHBhZGRpbmc6IDgwcHggMHB4IDQxcHg7XHJcbiAgICBoMyB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoNDAgLyAzNSk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICAgIC5jb2wge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XHJcbiAgICB9XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTgpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgLnNlY3Rpb24xIHtcclxuICAgICAgICBwYWRkaW5nOiA1NHB4IDBweCAzMnB4O1xyXG4gICAgICAgcCB7XHJcbiAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTggLyAxNCk7XHJcbiAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qc2VjdGlvbjJcclxuKi9cclxuLnNlY3Rpb24yIHtcclxuICAgIHBhZGRpbmc6IDQ5cHggMHB4O1xyXG4gICAgJi5tYXRjaC1oZWlnaHQge1xyXG4gICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2NmZDVkZDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC0yNSU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmNvbHVtbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAuc2VjdGlvbjIge1xyXG4gICAgICAgICYubWF0Y2gtaGVpZ2h0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcclxuICAgICAgICAgICAgLmNvbHVtbiB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpe1xyXG4gICAgLnNlY3Rpb24yIHtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcclxuICAgICAgICAmLm1hdGNoLWhlaWdodCB7XHJcbiAgICAgICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NmZDVkZDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qYWJvdXQgcHJvamVjdFxyXG4qL1xyXG4uYWJvdXQtcHJvamVjdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMGQzMjY4O1xyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCA0MHB4IDIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzBkMzI2OCB1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuNy5wbmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0IDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDE0N3B4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZGVzY3JpcHRpb24tYWZ0ZXIucG5nJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC0xNDZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoNDAgLyAzNSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbm5lci13cmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgLmlubmVyIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ0NHB4OyAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mdWxsLXdpZHRoIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuYWJvdXQtcHJvamVjdCB7XHJcbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbm5lci13cmFwcGVyIHtcclxuICAgICAgICAgICAuaW5uZXIge1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qc2xpZGVzaG93IDFcclxuKi9cclxuI3NsaWRlc2hvdzEge1xyXG4gICAgLmN5Y2xlLXNsaWRlc2hvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIC5jb250cm9scyB7XHJcbiAgICAgICAgIC5jeWNsZS1wcmV2LCAuY3ljbGUtbmV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2NvbnRyb2xzMi5zdmcnKTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjUyO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGN1YmljLXRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjcwO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY3ViaWMtdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY3ljbGUtcHJldiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XHJcbiAgICAgICAgICAgIGxlZnQ6IC01NHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY3ljbGUtbmV4dCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xyXG4gICAgICAgICAgICByaWdodDogLTU0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcclxuICAgICNzbGlkZXNob3cxIHtcclxuICAgICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDY5cHg7XHJcbiAgICAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgI3NsaWRlc2hvdzEge1xyXG4gICAgICAgIC5jb250cm9scyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTdweCAwcHg7XHJcbiAgICAgICAgICAgIC5jeWNsZS1wcmV2LCAuY3ljbGUtbmV4dCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmN5Y2xlLXByZXYge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jeWNsZS1uZXh0IHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLG51bGwsIi8qXHJcbipzbGlkZXNob3cyXHJcbiovXHJcbiNzbGlkZXNob3cyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmNWY4Zjg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTQwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICAgICAgdG9wOiAtMzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKDFkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWY4Zjg7XHJcbiAgICAgICAgYm90dG9tOiAtNzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKC0xZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICAuY3ljbGUtc2xpZGVzaG93IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAuc2xpZGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XHJcbiAgICB9XHJcbiAgICAuY29udHJvbHMge1xyXG4gICAgICAgICAuY3ljbGUtcHJldiwgLmN5Y2xlLW5leHQge1xyXG4gICAgICAgICAgICB3aWR0aDogNTRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9jb250cm9sczIuc3ZnJyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgb3BhY2l0eTogMC41MjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjdWJpYy10cmFuc2l0aW9uO1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43MDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGN1YmljLXRyYW5zaXRpb247XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmN5Y2xlLXByZXYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O1xyXG4gICAgICAgICAgICBsZWZ0OiAtNTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmN5Y2xlLW5leHQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcclxuICAgICAgICAgICAgcmlnaHQ6IC01NHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY3ljbGUtcGFnZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIG1hcmdpbjogMHB4IC0xMHB4IDUwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNzZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTA5cHg7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjM2O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHggMTBweCAxOXB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY3ViaWMtdHJhbnNpdGlvbjtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsICYuY3ljbGUtcGFnZXItYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGN1YmljLXRyYW5zaXRpb247XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xyXG4gICAgI3NsaWRlc2hvdzIge1xyXG4gICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggNjlweDtcclxuICAgICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAjc2xpZGVzaG93MiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbGlkZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbnRyb2xzIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxN3B4IDBweDtcclxuICAgICAgICAgICAgLmN5Y2xlLXByZXYsIC5jeWNsZS1uZXh0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY3ljbGUtcHJldiB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmN5Y2xlLW5leHQge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY3ljbGUtcGFnZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qXHJcbipibG9ja3F1b3RlXHJcbiovXHJcbi5ibG9ja3F1b3RlIHtcclxuICAgIHBhZGRpbmc6IDgycHggMHB4O1xyXG4gICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDU3cHggMHB4IDMzcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3BhdHRlcm42LnN2ZycpIG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTY4cHggMTkycHg7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogY2FsYygzMCAvIDE4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfigJwnO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMDYpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTA4IC8gMTA2KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZjJjMzAwO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtMzZweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC00MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNpdGUge1xyXG4gICAgICAgICAgICBjb2xvcjogI2YyYzMwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XHJcbiAgICAgICAgICAgICBsaW5lLWhlaWdodDogY2FsYygzMCAvIDE4KTtcclxuICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuYmxvY2txdW90ZSB7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAwcHg7XHJcbiAgICAgICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxuKiBib3gxXG4qL1xuLmJveDEge1xuIC8vIGJveC1zaGFkb3c6IDBweCAwcHggMThweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyNHB4IC00cHggcmdiYSgwLDAsMCwwLjc1KTtcbiAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDI0cHggLTRweCByZ2JhKDAsMCwwLDAuNzUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDI0cHggLTRweCByZ2JhKDAsMCwwLDAuNzUpO1xuXG4gICYuY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLmRldGFpbHMge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gIH1cbiAgXG4gIC5pbWFnZSwgLmRldGFpbHMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5jb2wge1xuICAgIC5pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLmRldGFpbHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5pbWFnZSB7XG4gICAgJi5jb2wge1xuICAgICAgd2lkdGg6IDY1JTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG4gIC5kZXRhaWxzIHtcbiAgICAmLmNvbCB7XG4gICAgICB3aWR0aDogMzUlO1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDY1cHggNDVweCAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzUpO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoNDAgLyAzNSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBoNCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICB9XG4gICAgLnZpZXctbW9yZS1idG4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDQ1cHg7XG4gICAgICBib3R0b206IDUwcHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOjk5MXB4KSB7XG4gIC5ib3gxIHtcbiAgICAuaW1hZ2Uge1xuICAgICAgJi5jb2wge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZGV0YWlscyB7XG4gICAgICAmLmNvbCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBpbWcge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NDBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbHMge1xuICAgICAgcGFkZGluZzogNjBweCAzNXB4IDBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgLmJveDEge1xuICAgIC5pbWFnZSB7XG4gICAgICAmLmNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZGV0YWlscyB7XG4gICAgICAmLmNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWluLWhlaWdodDogMjI2cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAzMHB4O1xuICAgICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgICAgIC52aWV3LW1vcmUtYnRuIHsgXG4gICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgIGJvdHRvbTogMzFweDtcbiAgICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKlxyXG4qaWNvbnNcclxuKi9cclxuLmljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG4uaWNvbjEge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvaWNvbjEuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgd2lkdGg6IDYzcHg7XHJcbiAgICBoZWlnaHQ6IDc4cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDYzcHggNzhweDtcclxufVxyXG5cclxuLmljb24yIHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2ljb24yLnN2ZycpIG5vLXJlcGVhdDtcclxuICAgIHdpZHRoOiA2M3B4O1xyXG4gICAgaGVpZ2h0OiA3OHB4O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA2M3B4IDc4cHg7XHJcbn0iLCIuY29udGFjdC1pbmZvIHtcbiAgYWRkcmVzcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTgpO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICYudGVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvcGhvbmUtaWNvbi5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICAgICAgfVxuICAgICAgJi5tYWlsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWFpbC1pY29uLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDE3cHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcclxuKmxpc3QxXHJcbiovXHJcbi5saXN0MSB7XHJcbiAgICBkdCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogMTE3cHg7XHJcbiAgICAgICAgY2xlYXI6IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgZGQge1xyXG4gICAgICAgIGNvbG9yOiAjMGQzMjY4O1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgIH1cclxufSIsIi8qXHJcbipjYWxsIHRvIGFjdGlvblxyXG4qL1xyXG4jY2FsbC10by1hY3Rpb24ge1xyXG4gICAgcGFkZGluZzogMTBweCAwcHg7XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyNHB4IC00cHggcmdiYSgwLDAsMCwwLjc1KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMjRweCAtNHB4IHJnYmEoMCwwLDAsMC43NSk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyNHB4IC00cHggcmdiYSgwLDAsMCwwLjc1KTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICB9XHJcbiAgICAuaGVhZGluZy13cmFwcGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjM2NhNzM4O1xyXG4gICAgICAgIHBhZGRpbmc6IDQ2cHggMTRweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICByaWdodDogLTMycHg7XHJcbiAgICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybCgnLi4vaW1hZ2VzL2hlYWRpbmctd3JhcHBlci1hZnRlci5wbmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGg0IHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgc2Fucy1zZXJpZjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLnRlbCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDM0IC8gMzApO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3Bob25lLWljb24zLnN2Zykgbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzNweCAzMnB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDVweDtcclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICBwYWRkaW5nOiAzMnB4IDM1cHggMHB4IDBweDtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMnB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7XHJcbiAgICAjY2FsbC10by1hY3Rpb24ge1xyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmhlYWRpbmctd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQ2cHggMzBweDtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogLTEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyM3B4IDI1cHggMHB4O1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KXtcclxuICAgICNjYWxsLXRvLWFjdGlvbiB7XHJcbiAgICAgICAgLmhlYWRpbmctd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMzBweDtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzY2E3Mzg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IC01cHg7XHJcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tldztcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tld1koMWRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNTVweCAyNXB4IDQycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcbiogdGVhbVxuKi9cbiN0ZWFtIHtcbiAgcGFkZGluZzogODVweCAwcHg7XG4gIHVsIHtcbiAgICBtYXJnaW46IDBweCAwcHggNDVweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAudmlldy1hbGwge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIC5zaXRlLWltYWdlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMzBweDtcbiAgICBpbWcge1xuICAgICAgbWFyZ2luOiAwcHggMSUgMTJweDtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOjEyNzlweCkge1xuICAjdGVhbSB7XG4gICAgLnNpdGUtaW1hZ2VzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgI3RlYW0ge1xuICAgIHBhZGRpbmc6IDQ1cHggMHB4O1xuICAgIC5zaXRlLWltYWdlcyB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB9XG4gIH1cbn1cblxuLypcbiogY29udGFjdC11c1xuKi9cbiNjb250YWN0LXVzIHtcbiAgYmFja2dyb3VuZDogI2Y2ZjlmOTtcbiAgcGFkZGluZzogMTgwcHggMHB4IDEzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAtODJweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHRyYW5zZm9ybTogc2tld1koLTdkZWcpO1xuICB9XG4gICYucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiA2NHB4IDBweCAxMDZweDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogLTEyNXB4OyBcbiAgICAgIHRyYW5zZm9ybTogc2tld1koM2RlZyk7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmRlc2lnbi1wYXR0ZXJuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9jb250YWN0LXVzLWJnLnN2ZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDU1NXB4IDMzM3B4O1xuICAgIHdpZHRoOiA1NTVweDtcbiAgICBoZWlnaHQ6IDMzM3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwcHg7XG4gICAgdG9wOiAtMTcwcHg7XG4gICAgei1pbmRleDogOTk7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLmNvbnRhY3QtaW5mbyB7XG4gICAgcGFkZGluZy10b3A6IDE5NXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOjE2MDBweCkgeyBcbiAgI2NvbnRhY3QtdXMge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKC0zZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6MTI3OXB4KSB7XG4gICNjb250YWN0LXVzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAtNjJweDtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgfVxuICAgIC5kZXNpZ24tcGF0dGVybiB7XG4gICAgICBsZWZ0OiAtMTcwcHg7XG4gICAgICB0b3A6IC0xOTVweDtcbiAgICB9XG4gICAgLmNvbnRhY3QtaW5mbyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICNjb250YWN0LXVzIHtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgICAmLnByaW1hcnkge1xuICAgICAgcGFkZGluZzogMjVweCAwcHg7XG4gICAgfVxuXG4gICAgLmRlc2lnbi1wYXR0ZXJuIHtcbiAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBsZWZ0OiAtNzBweDtcbiAgICAgIHRvcDogLTc1cHg7XG4gICAgfVxuICB9XG59XG4iLCIvKlxyXG4qYWJvdXQgdXNcclxuKi9cclxuQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5hYm91dC11cy1wYWdlIHtcclxuICAgICAgICAjYmFubmVyIHtcclxuICAgICAgICAgICAgLmJhbm5lci1pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDcyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKmNvbnRhY3QgdXMgcGFnZVxyXG4qL1xyXG4uY29udGFjdC11cy1wYWdlIHtcclxuICAgICNmb290ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVmZWY7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KXtcclxuICAgIC5jb250YWN0LXVzLXBhZ2Uge1xyXG4gICAgICAgICNiYW5uZXIge1xyXG4gICAgICAgICAgICAuYmFubmVyLWltYWdlIHtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjY1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qcmVhbGlzYXRpb24gcGFnZVxyXG4qL1xyXG4ucmVhbGlzYXRpb24tcGFnZSB7XHJcbiAgICAjZm9vdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgfVxyXG59IiwiLypcclxuKnRlYW0gcGFnZVxyXG4qL1xyXG4udGVhbS1wYWdlIHtcclxuICAgICNmb290ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpe1xyXG4gICAgLnRlYW0tcGFnZSB7XHJcbiAgICAgICAgI2Jhbm5lciB7XHJcbiAgICAgICAgICAgIC5iYW5uZXItaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyNjVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qXHJcbipwcm9qZWN0IHBhZ2VcclxuKi9cclxuLnByb2plY3QtcGFnZSB7XHJcbiAgICAjZm9vdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgfVxyXG59IiwiLypcclxuKmltbW8gcGFnZVxyXG4qL1xyXG4uaW1tby1wYWdlIHtcclxuICAgICNiYW5uZXIge1xyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIGgxIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzNjYTczODtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNmb290ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCl7XHJcbiAgICAuaW1tby1wYWdlIHtcclxuICAgICAgICAjYmFubmVyIHtcclxuICAgICAgICAgICAgLnBhdHRlcm4tZGVmYXVsdCB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpe1xyXG4gICAgLmltbW8tcGFnZSB7XHJcbiAgICAgICAgI2Jhbm5lciB7XHJcbiAgICAgICAgICAgIC5wYXR0ZXJuLWRlZmF1bHQge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ== */
