@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed:400,300,300italic,400italic,700,700italic|Roboto:400,700,700italic,400italic);
@import url("https://fonts.googleapis.com/css?family=Kanit:400,500,600,700,900");
@import url("https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700");
.border-black {
  border: 3px solid #1C1C1C; }

.border-white {
  border: 3px solid white; }

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

.color-dropdown {
  color: #7E7E7E !important; }

.color-black {
  color: #1C1C1C; }

.color-blue {
  color: #0019FF; }

.color-cyan {
  color: #0019FF; }

.color-green {
  color: #00E597; }
  .color-green svg {
    fill: #00E597; }

.color-red {
  color: #FF3D4C; }
  .color-red svg {
    fill: #FF3D4C !important; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.d-flex {
  display: flex; }

.full-width {
  width: 100%; }

.max-width-500px {
  max-width: 500px; }

.min-height-80 {
  min-height: 80%; }

.fit-content {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

.font-roboto-condensed {
  font-family: 'Roboto Condensed'; }

.font-kanit {
  font-family: 'Kanit';
  letter-spacing: 0.0325em; }

.font-mono {
  font-family: 'Space Mono';
  font-size: 0.9em; }

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

.weight-900 {
  font-weight: 900 !important; }

.weight-800 {
  font-weight: 800 !important; }

.weight-700 {
  font-weight: 700 !important; }

.uppercase {
  text-transform: uppercase; }

.text-center {
  text-align: center; }

.text-left {
  text-align: left; }

.no-decoration {
  text-decoration: none; }

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

.bg-black {
  background-color: black; }

.bg-green {
  background-color: #00E597; }

.bg-blue {
  background-color: #0019FF; }

.bg-red {
  background-color: #FF3D4C !important; }

.bg-red-light {
  background-color: rgba(255, 61, 76, 0.2); }

.bg-yellow {
  background-color: #FFC100; }

.bg-grey {
  background-color: #D2D3D5 !important; }

.bg-grey-lightest {
  background-color: #F9F9FB !important; }

.outline {
  outline: 1px solid red; }

.btn-outline-blue {
  border: 2px solid #0019FF;
  color: #0019FF;
  padding: 10px 29px; }
  .btn-outline-blue svg {
    fill: #0019FF; }

.btn-outline-blue:hover {
  background: #0019FF !important;
  color: white; }
  .btn-outline-blue:hover svg {
    fill: white; }

.btn-outline-white {
  border: 2px solid white;
  color: white;
  padding: 10px 29px; }

.btn-outline-white:hover {
  background: white !important;
  color: #1C1C1C; }

.btn-outline-white-blue {
  border: 2px solid white;
  color: white;
  padding: 10px 29px; }

.btn-outline-white-blue:hover {
  background: #0019FF !important; }

.btn-outline-yellow {
  border: 2px solid #FFC100;
  color: #FFC100;
  padding: 10px 29px; }

.btn-outline-yellow:hover {
  background: #FFC100 !important;
  color: #1C1C1C; }

.btn-yellow {
  border: 2px solid #FFC100;
  background: #FFC100;
  color: #1C1C1C;
  padding: 12px 29px; }

.btn-yellow:hover {
  background: #1C1C1C !important;
  color: #FFC100; }

.btn-black-outline {
  border: 2px solid #1C1C1C;
  color: #1C1C1C;
  padding: 10px 29px; }

.btn-black-outline:hover {
  background-color: #1C1C1C !important;
  color: white; }

.btn-blue {
  border: 2px solid #0019FF;
  background: #0019FF;
  color: white;
  padding: 12px 29px; }

.btn-blue:hover {
  color: #0019FF;
  background: #ECECEE !important; }

.btn-white-blue {
  border: 2px solid white;
  background: none;
  color: white;
  padding: 12px 29px; }

.btn-white-blue:hover {
  color: #0019FF;
  background: white !important;
  border: 2px solid #0019FF; }

.btn-round-new {
  border-radius: 40px;
  font-family: 'Roboto Condensed';
  font-size: 16px;
  line-height: 40px;
  font-weight: 600;
  letter-spacing: 0.0325em;
  padding: 0px 35px;
  transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }

.btn-round {
  border: 0;
  border-radius: 25px;
  padding: 5px 35px;
  font-size: 18px; }

.btn-cyan {
  background-color: #0019FF;
  color: white;
  border: 2px solid #0019FF; }

.btn-cyan:hover {
  color: #0019FF;
  background: white !important;
  border: 2px solid #0019FF; }

.btn-full {
  display: block;
  width: 100%;
  border-radius: 0px;
  margin: 0px;
  padding: 12px 29px; }

.btn-small {
  min-width: unset !important;
  min-height: unset !important; }

.m-0 {
  margin: 0; }

.m-10 {
  margin: 10px; }

.ml-0 {
  margin-left: 0px; }

.ml-15 {
  margin-left: 15px; }

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

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

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

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

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

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

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

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

.mr-30 {
  margin-right: 30px; }

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

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

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

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

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

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

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

.ml-10 {
  margin-left: 10px; }

.ml-20 {
  margin-left: 20px; }

.ml-30 {
  margin-left: 30px; }

.ml-50 {
  margin-left: 50px; }

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

.mw-100 {
  max-width: 100%; }

.p-0 {
  padding: 0; }

.p-10 {
  padding: 10px; }

.p-20 {
  padding: 20px; }

.p-30 {
  padding: 30px; }

.p-40 {
  padding: 40px; }

.p-50 {
  padding: 50px; }

.p-60 {
  padding: 60px; }

.pl-20 {
  padding-left: 20px; }

.pt-80 {
  padding-top: 80px; }

.py-40 {
  padding-top: 40px;
  padding-bottom: 40px; }

.px-20 {
  padding-left: 20px;
  padding-right: 20px; }

.px-40 {
  padding-left: 40px;
  padding-right: 40px; }

.img-circle {
  border-radius: 50%; }

footer p {
  font-size: 12px !important;
  line-height: 12px !important; }

.absolute {
  position: absolute; }

.relative {
  position: relative; }

.s-48 {
  width: 48px;
  height: 48px; }

html {
  scroll-behavior: smooth; }

body.active {
  overflow-y: hidden;
  overflow-x: hidden;
  position: fixed; }

.grey-waves {
  background: grey url("/assets/images/sck_bg.png");
  background-repeat: repeat;
  background-size: 65px; }

.bar {
  display: block;
  width: 25px;
  height: 3px;
  margin: 5px auto;
  transition: all 0.5s ease-in-out;
  background-color: white; }

.hamburger {
  display: none; }

.logo-box {
  background-color: #1C1C1C;
  width: 100%;
  display: flex;
  justify-content: center;
  align-content: center; }

.logo-box h1 {
  color: white !important;
  font-weight: 800 !important;
  font-size: 50px;
  padding: 15px;
  text-align: left; }

.card-text {
  padding: 30px 50px;
  align-self: center; }

.navigation {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: auto;
  align-items: center;
  padding: 6px 0% 6px 10%; }

.display-none {
  display: none !important; }

.display-block {
  display: block !important; }

.new-landing-page {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  padding-bottom: 60px; }
  .new-landing-page h1, .new-landing-page h2, .new-landing-page h3, .new-landing-page h4, .new-landing-page h5, .new-landing-page h6 {
    letter-spacing: 0.0325em;
    font-family: 'Kanit';
    font-weight: 900;
    color: #1C1C1C; }
  .new-landing-page h1 {
    line-height: 55px;
    margin: 0px 0px; }
  .new-landing-page h2 {
    font-size: 43px;
    line-height: 40px;
    margin: 0px 0px; }
  .new-landing-page h3 {
    font-size: 30px;
    line-height: 30px;
    margin-top: 10px;
    margin-bottom: 10px; }
  .new-landing-page p {
    color: #1C1C1C;
    font-family: 'Roboto Condensed';
    font-size: 20px;
    line-height: 24px; }
  .new-landing-page .p-header {
    font-size: 24px; }
  .new-landing-page a {
    text-decoration: none !important; }
  .new-landing-page .landing-menu-btn {
    border-radius: 40px;
    font-family: 'Roboto Condensed';
    font-size: 16px;
    line-height: 40px;
    font-weight: 600;
    letter-spacing: 0.0325em;
    padding: 0px 30px;
    color: white;
    transition: box-shadow 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }
  .new-landing-page .btn-justify-left {
    margin-left: 0px; }
  .new-landing-page .landing-menu .btn-round-new.md-button.btn-kit {
    margin-left: 38px; }
  .new-landing-page .landing-menu-btn:hover {
    background: none;
    color: #FFC100; }
  .new-landing-page .sc-logo {
    height: 37px;
    top: 5px; }
  .new-landing-page .sc-off-cta-platform {
    position: fixed;
    top: 0;
    z-index: 3;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: calc(100% - 20px);
    justify-content: space-between;
    align-items: center;
    background-color: #1C1C1C;
    margin: 10px 10px; }
  .new-landing-page #get-your-kit {
    scroll-margin-top: 78px; }
  .new-landing-page .lighter {
    max-width: 10%;
    transition: all 0.3s ease-in-out;
    flex-direction: column;
    padding: 5px;
    opacity: 90%; }
  .new-landing-page .lighter:hover {
    opacity: 100%; }
  .new-landing-page .landing-menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    align-self: center;
    justify-content: space-between;
    padding: 6px 10% 6px 0%; }
  .new-landing-page .img-new_sck {
    min-height: 60vw;
    background: blue url("/assets/images/landing/Legacy-SCK.gif") center/cover; }
  .new-landing-page .img-sck_edu {
    min-height: 30vw;
    background: blue url("/assets/images/landing/smart-citizen-data.jpg") center/cover; }
  .new-landing-page .img-sck_com {
    background: blue url("/assets/images/landing/local-communites.jpg") center/cover; }
  .new-landing-page .img-research {
    background: blue url("/assets/images/landing/research-institutions.jpg") center/cover; }
  .new-landing-page .img-governm {
    background: blue url("/assets/images/landing/educators.jpg") center/cover; }
  .new-landing-page .img-platform {
    background: blue url("/assets/images/landing/SCK-Platform-mobile.jpg") center/cover; }
  .new-landing-page .img-docs {
    background: blue url("/assets/images/landing/smartcitizen-docs.jpg") top/cover; }
  .new-landing-page .img-kits-complete {
    background: blue url("/assets/images/landing/smart-citizen-2-2-kit.gif") center/cover; }
  .new-landing-page .img-kits-research {
    background: blue url("/assets/images/landing/SCK-customized-projects.jpg") center/cover; }
  .new-landing-page .tile {
    padding: 50px 50px;
    border-bottom: 3px solid #1C1C1C;
    border-right: 3px solid #1C1C1C; }
  .new-landing-page .tile-image.tile {
    min-height: 500px;
    padding: 0 !important; }
  .new-landing-page .tile-left {
    border-left: 3px solid #1C1C1C; }
  .new-landing-page .tile-top {
    border-top: 3px solid #1C1C1C; }
  .new-landing-page .text-funding {
    text-align: left; }
  .new-landing-page .pd-60 {
    padding-top: 60px; }
  .new-landing-page .text-left {
    text-align: left;
    justify-content: left; }
  .new-landing-page .video-section {
    background: url("/assets/images/landing/smartcitizen-workshop.jpg") center/cover;
    position: relative;
    top: 0px;
    height: 100vh;
    overflow: hidden;
    border: 3px solid #1C1C1C;
    box-sizing: border-box; }
  .new-landing-page .mobileonly {
    display: none; }
  .new-landing-page .header-section {
    margin: 60px 10%;
    max-width: 1200px; }
  .new-landing-page .heading-over-video {
    position: absolute;
    z-index: 2;
    bottom: 80px;
    max-width: 600px;
    width: 50%;
    background-color: white;
    border: 3px solid #1C1C1C; }
    .new-landing-page .heading-over-video img {
      padding-bottom: 40px; }
  .new-landing-page .heading-over-video.right-card {
    right: 10%; }
  .new-landing-page #learn-more {
    margin: 0px auto 60px auto;
    max-width: 1200px;
    padding: 0 10%; }
  .new-landing-page .banner-section {
    background: url("/assets/images/landing/SCK-Platform.jpg") center/cover;
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    border: 3px solid #1C1C1C;
    box-sizing: border-box; }
  .new-landing-page .card {
    box-shadow: 10px 10px 0px -3px #FFC100, 10px 10px 0px 0px #1C1C1C; }
  @media only screen and (max-width: 1200px) {
    .new-landing-page #learn-more {
      padding: 0; }
    .new-landing-page .card {
      box-shadow: 0px 0px; } }
  @media only screen and (max-width: 1010px) {
    .new-landing-page h1 {
      font-size: 42px;
      line-height: 42px; }
    .new-landing-page h2 {
      font-size: 28px;
      line-height: 28px; }
    .new-landing-page h3 {
      font-size: 26px;
      line-height: 26px; }
    .new-landing-page p {
      font-size: 18px;
      line-height: 22px; }
    .new-landing-page .sc-logo {
      left: 5%; }
    .new-landing-page .heading-over-video img {
      padding-bottom: 00px; }
    .new-landing-page #get-your-kit {
      scroll-margin-top: 80px; } }
  @media only screen and (max-width: 950px) {
    .new-landing-page .mobileonly {
      display: block;
      border: 3px solid #1C1C1C;
      border-bottom: none; }
    .new-landing-page .mobileonly.img-platform {
      border-top: none; }
    .new-landing-page .sc-off-cta-platform {
      justify-self: center;
      align-self: start;
      align-items: start;
      text-align: left;
      flex-wrap: wrap;
      transition: all 0.3s ease-in-out; }
    .new-landing-page .navigation.active {
      padding: 16px 0% 6px 11%; }
    .new-landing-page .external-links {
      display: flex;
      flex-direction: column; }
    .new-landing-page .hamburger {
      display: block;
      cursor: pointer;
      align-self: center;
      padding: 6px 10% 6px 0%; }
    .new-landing-page .hamburger.active {
      display: block;
      cursor: pointer;
      align-self: center;
      padding: 16px 11% 6px 0%; }
    .new-landing-page .hamburger.active .bar:nth-child(2) {
      opacity: 0; }
    .new-landing-page .hamburger.active .bar:nth-child(1) {
      -webkit-transform: translateY(8px) rotate(45deg);
              transform: translateY(8px) rotate(45deg); }
    .new-landing-page .hamburger.active .bar:nth-child(3) {
      -webkit-transform: translateY(-8px) rotate(-45deg);
              transform: translateY(-8px) rotate(-45deg); }
    .new-landing-page .landing-menu {
      display: none;
      justify-content: space-between;
      width: 100%;
      height: 40%;
      padding: 0px 10%; }
    .new-landing-page .landing-menu.active {
      display: flex;
      align-self: start;
      transition: all .3s ease-in-out;
      flex-direction: column;
      justify-content: space-between;
      padding-bottom: 10%; }
    .new-landing-page .landing-menu .md-button.landing-menu-btn {
      text-align: left;
      padding: 0px 0px; }
    .new-landing-page .landing-menu .btn-round-new.md-button.btn-kit {
      align-self: end;
      justify-self: end; }
    .new-landing-page .sc-off-cta-platform.active {
      height: 100%;
      width: 100%;
      justify-content: space-between;
      align-content: space-between;
      transition: all .3s ease-in-out;
      margin: 0%; }
    .new-landing-page .sc-logo {
      padding: 10px 0px; }
    .new-landing-page #get-your-kit {
      scroll-margin-top: 85px; }
    .new-landing-page .layout-xs-column {
      flex-direction: column; }
    .new-landing-page .layout-xs-column > .flex-xs-100 {
      flex: 1 1 100%;
      max-width: 100%;
      max-height: 100%;
      box-sizing: border-box; }
    .new-landing-page .border-xs-top {
      border-top: 3px solid #1C1C1C;
      border-left: 3px solid #1C1C1C;
      border-right: 3px solid #1C1C1C;
      border-bottom: 3px solid #1C1C1C; }
    .new-landing-page .border-xs-bottom {
      border-top: unset;
      border-left: 3px solid #1C1C1C;
      border-right: 3px solid #1C1C1C;
      border-bottom: 3px solid #1C1C1C; }
    .new-landing-page .flex-order-xs-1 {
      order: 1 !important; }
    .new-landing-page .flex-order-xs-2 {
      order: 2 !important; }
    .new-landing-page .layout-xs-column {
      box-sizing: border-box;
      display: flex; }
    .new-landing-page .heading-over-video {
      position: static;
      bottom: 0px;
      width: 100%;
      margin: 0px;
      border-bottom: 0px;
      border-left: 0px;
      border-right: 0px;
      max-width: 100%; }
    .new-landing-page .video-section .heading-over-video {
      position: absolute; }
    .new-landing-page .heading-over-video.right-card {
      right: 0px; }
    .new-landing-page .header-section {
      margin: 0px; }
    .new-landing-page .banner-section {
      position: static;
      display: flex;
      flex-direction: column-reverse;
      height: auto;
      border: none; }
    .new-landing-page .p-header {
      font-size: 19px; }
    .new-landing-page .tile-image.tile {
      min-height: 500px; }
    .new-landing-page .text-left {
      text-align: center;
      justify-content: center; }
    .new-landing-page .banner-section {
      height: 100%; }
    .new-landing-page .btn-justify-left {
      margin-left: 8px; }
    .new-landing-page .card-text {
      text-align: center;
      border-left: 3px solid #1C1C1C;
      border-right: 3px solid #1C1C1C;
      align-self: stretch; }
    .new-landing-page .video-section .card-text {
      border-left: none;
      border-right: none; }
    .new-landing-page .video-section {
      border-bottom: 0px solid #1C1C1C; }
    .new-landing-page .pd-60 {
      padding: 0px; }
    .new-landing-page .border-black {
      border-top: 0px solid #1C1C1C; }
    .new-landing-page .mb-10 {
      margin-bottom: 0px; }
    .new-landing-page .banner-section {
      border-bottom: 0px solid #1C1C1C;
      border-top: 0px solid #1C1C1C; }
    .new-landing-page #learn-more {
      margin: 0px auto 0px auto; }
    .new-landing-page #open-platform {
      flex-direction: column-reverse;
      border-top: 3px solid #1C1C1C;
      border-bottom: 3px solid #1C1C1C; }
    .new-landing-page #open-platform .flex-xs-100 {
      flex-direction: column;
      border-bottom: 0px solid #1C1C1C; }
    .new-landing-page .mr-30 {
      margin-right: 0px; }
    .new-landing-page .new-landing-page {
      padding-bottom: 0px;
      background-size: 0px; }
    .new-landing-page .banner-section {
      background: none; } }
  @media only screen and (max-width: 750px) {
    .new-landing-page h1 {
      font-size: 30px; }
    .new-landing-page h2 {
      font-size: 25px; }
    .new-landing-page .text-funding {
      text-align: center; } }
  @media only screen and (max-width: 600px) {
    .new-landing-page h1 {
      font-size: 28px;
      line-height: 33px; }
    .new-landing-page h2 {
      font-size: 28px; }
    .new-landing-page p {
      font-size: 19px; }
    .new-landing-page .p-header {
      font-size: 19px; }
    .new-landing-page .p-60 {
      padding: 10px 10px !important; }
    .new-landing-page .my-20 {
      margin-top: 10px !important;
      margin-bottom: 10px !important; }
    .new-landing-page .tile-image.tile {
      min-height: 300px; }
    .new-landing-page .tile {
      padding: 50px 30px; } }

/**
 *  NAVBAR
 */
.navbar_container a:hover, .navbar_container a:active {
  color: white; }

.navbar_container .md-button.navbar_highlight_button {
  border: 2px solid #FFC100;
  color: #FFC100;
  border-radius: 50px;
  padding-top: .01rem;
  padding-bottom: .01rem;
  transition: color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }
  .navbar_container .md-button.navbar_highlight_button:hover, .navbar_container .md-button.navbar_highlight_button:active {
    background-color: #FFC100 !important;
    color: #1C1C1C !important; }

.navbar_container .logo_link {
  text-align: center; }
  .navbar_container .logo_link .logo_icon {
    height: 32px;
    width: 32px; }

.navbar_container .nav_icon {
  margin-right: 4px;
  height: 14px !important;
  width: 14px !important; }
  .navbar_container .nav_icon svg {
    fill: #FFC100; }

.navbar_container .navbar_signup_button .md-button {
  padding: 2px 0px;
  border: 2px solid #FFC100;
  color: #FFC100;
  border-radius: 50px;
  width: 79px; }

.navbar_container .navbar_signup_button .md-button:hover {
  background-color: #FFC100;
  color: #1C1C1C; }

.circular-img-crop {
  aspect-ratio: 1;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: middle; }

.navbar_avatar_icon {
  width: 38px;
  height: 38px; }

.owner-img {
  width: 140px;
  height: 140px; }

.image-outline {
  border: 3px solid;
  transition: border 0.5s ease; }

.white-outline {
  border: 3px solid #fff; }

.gray-outline {
  border: 3px solid #e1e1e1; }

.image-outline:hover {
  border: 3px solid #FFC100; }

.no-hover-effect {
  background-color: rgba(0, 0, 0, 0) !important; }

.md-open-menu-container.md-active {
  margin-top: 50px !important; }

#search input {
  background: url(../assets/images/search_icon_black.svg);
  background-repeat: no-repeat;
  background-position: 10px 12px;
  background-size: 18px;
  padding: 0px 35px; }

.search_results {
  display: flex;
  align-items: center; }
  .search_results .result_icon {
    flex: 0 0 18px;
    margin-right: 12px;
    height: 18px; }
  .search_results .result_name {
    margin-right: 10px; }
  .search_results .result_location {
    color: #0019FF; }

/*
  CONTAINERS USED ON SHOW KIT STATE
 */
.over_map {
  min-height: 120px; }

.kit_fixed {
  z-index: 2;
  position: relative; }

.kit_data {
  width: 100%;
  margin-top: 376px; }
  .kit_data section.overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: white;
    z-index: 3;
    color: #1C1C1C;
    text-align: center;
    font-size: 20px;
    font-weight: lighter; }
    .kit_data section.overlay h1 {
      color: #1C1C1C;
      font-size: 1.8em;
      margin: 0; }
    .kit_data section.overlay p {
      color: #D2D3D5;
      margin: 0.5em; }
  .kit_data .hint {
    background-color: white;
    text-align: center;
    color: #D2D3D5;
    margin-top: 0px;
    z-index: 10;
    position: absolute;
    height: 100%;
    width: 100%; }
    .kit_data .hint > p {
      color: #6E6E6E; }
    .kit_data .hint .md-button {
      margin-top: 20px; }

.kit_data .shadow, .kitTags__section .shadow {
  top: 0px;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
  position: relative;
  box-shadow: 0px -1px 6px 0 rgba(0, 0, 0, 0.65);
  z-index: 2; }

.kit_tags-select-header {
  height: 48px;
  display: flex; }

.kit_tags-header-searchbox {
  border: none;
  border-bottom: 1px solid #ccc;
  padding-left: 12px;
  height: 100%;
  width: 100%; }

/*
=========================================
KIT COMMENTS MODULE
=========================================
*/
.kit_comments {
  padding-bottom: 100px; }

/*
  CHART COMPONENT
*/
.chart_container {
  /*min-width: 340px;*/
  min-height: 310px;
  /*width: 100%;*/
  /*height: 90%;*/
  position: relative; }
  .chart_container .chart_line {
    fill: none;
    stroke-width: 2px; }
  .chart_container .chart_area {
    opacity: 0.1; }
  .chart_container .axis path, .chart_container .axis line {
    fill: none;
    stroke: #6E6E6E;
    stroke-width: 1;
    shape-rendering: crispEdges;
    display: none; }
  .chart_container .axis {
    font-size: 10px; }
  .chart_container .axis.y_left {
    fill: #D2D3D5; }
  .chart_container .axis.y_right {
    fill: #D2D3D5; }
  .chart_container .axis.x {
    fill: #D2D3D5; }
  .chart_container .grid .tick {
    stroke: #D2D3D5;
    stroke-opacity: 0.6;
    shape-rendering: crispEdges; }
  .chart_container .grid path {
    stroke-width: 0; }
  .chart_container .overlay {
    fill: none;
    pointer-events: all; }
  .chart_container .focus circle {
    fill: #03252d;
    stroke-width: 2px; }
  .chart_container .text_hover_container {
    border: 1px solid #6E6E6E; }
  .chart_container .popup_value {
    fill: #1C1C1C;
    color: #1C1C1C;
    font-size: 18px;
    font-weight: bold; }
  .chart_container .popup_date {
    fill: #6E6E6E;
    font-size: 10px;
    font-weight: bold; }
  .chart_container .popup_unit {
    fill: #D2D3D5;
    margin-left: 10px; }

.stickNav {
  position: fixed;
  top: 0px; }

.overlay-kitinfo {
  background: white;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 999; }

/*
  KIT MENU MODULE
 */
section .kit_menu {
  width: 100%;
  z-index: 5;
  background-color: #ECECEE;
  position: relative;
  /*Show raw Toggle*/
  /* Rounded slider */ }
  section .kit_menu .container {
    width: 100%;
    height: 33px; }
  section .kit_menu .kit_time {
    position: relative;
    text-align: center;
    color: #6E6E6E;
    letter-spacing: 0.5px;
    font-size: 14px;
    text-transform: uppercase; }
  section .kit_menu .kit_user {
    margin-left: 20px;
    line-height: 30px;
    color: #6E6E6E;
    font-weight: bold;
    font-size: 13px; }
    section .kit_menu .kit_user img {
      border-radius: 50%;
      float: left;
      width: 18px;
      height: 18px;
      margin-right: 8px;
      margin-top: 5px; }
    section .kit_menu .kit_user a {
      color: #6E6E6E;
      text-decoration: none; }
  section .kit_menu .kit_name {
    margin-left: 30px;
    line-height: 30px;
    font-size: 13px;
    font-weight: bold;
    color: #6E6E6E; }
    section .kit_menu .kit_name md-icon {
      float: left;
      width: 14px;
      height: 14px;
      margin-right: 8px;
      margin-top: 4px; }
      section .kit_menu .kit_name md-icon svg {
        fill: #FFC100; }
    section .kit_menu .kit_name span {
      vertical-align: middle; }
  section .kit_menu .kit_battery {
    margin-left: 30px;
    line-height: 30px;
    color: #6E6E6E;
    font-size: 12px;
    font-weight: bold; }
    section .kit_menu .kit_battery md-icon {
      margin-bottom: 2px;
      width: 16px;
      margin-right: 8px; }
      section .kit_menu .kit_battery md-icon svg {
        fill: #6E6E6E; }
  section .kit_menu .kit-show-raw {
    margin-right: 6px; }
  section .kit_menu .kit-raw-toggle {
    vertical-align: middle; }
  section .kit_menu .switch {
    vertical-align: middle;
    position: relative;
    display: inline-block;
    width: 30px;
    height: 15px; }
  section .kit_menu .switch input {
    opacity: 0;
    width: 0;
    height: 0; }
  section .kit_menu .slider {
    position: absolute;
    vertical-align: middle;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s; }
  section .kit_menu .slider:before {
    position: absolute;
    content: "";
    height: 11px;
    width: 11px;
    left: 3px;
    bottom: 2px;
    background-color: white;
    transition: .4s; }
  section .kit_menu input:checked + .slider {
    background-color: #FFC100; }
  section .kit_menu input:focus + .slider {
    box-shadow: 0 0 1px #2196F3; }
  section .kit_menu input:checked + .slider:before {
    -webkit-transform: translateX(14px);
    transform: translateX(14px); }
  section .kit_menu .slider.round {
    border-radius: 34px; }
  section .kit_menu .slider.round:before {
    border-radius: 50%; }
  section .kit_menu .kit-show-raw-text {
    vertical-align: middle;
    color: #6E6E6E;
    font-size: 12px;
    font-weight: bold; }
  section .kit_menu .kit_navbar {
    margin-right: 20px; }
    section .kit_menu .kit_navbar md-icon {
      width: 14px; }
      section .kit_menu .kit_navbar md-icon svg {
        fill: #6E6E6E; }
    section .kit_menu .kit_navbar .md-button {
      margin: 0; }
    section .kit_menu .kit_navbar a.md-button:hover, section .kit_menu .kit_navbar .button_active {
      border-bottom: 2px solid #1C1C1C; }

.kit_overview {
  width: 100%;
  height: 96px;
  z-index: 2;
  background-color: #F9F9FB;
  position: relative; }
  .kit_overview .button_scroll {
    margin: 0px;
    background: #ccc; }
  .kit_overview .button_scroll_left {
    left: 0; }
  .kit_overview .button_scroll_right {
    right: 0; }
  .kit_overview .sensors_container {
    width: 90%;
    height: 96px;
    margin: 0 auto;
    overflow-x: hidden;
    overflow-y: hidden; }
  @media (pointer: coarse) {
    .kit_overview .sensors_container {
      overflow-x: auto; } }
  .kit_overview .sensor_container {
    position: relative;
    color: #6E6E6E;
    display: inline-table;
    cursor: pointer;
    text-align: center;
    outline: none; }
    .kit_overview .sensor_container p {
      margin: 0px;
      padding-bottom: 15px;
      font-size: 0.8em;
      font-weight: normal; }
    .kit_overview .sensor_container .clear {
      clear: both; }
    .kit_overview .sensor_container .sensor_right {
      position: absolute;
      right: 15px;
      bottom: 38px;
      max-width: 30px; }
      .kit_overview .sensor_container .sensor_right .sensor_unit {
        margin-top: 8px;
        font-size: 14px; }
      .kit_overview .sensor_container .sensor_right .sensor_arrow {
        margin-top: -15px;
        width: 14px;
        height: 7px; }
        .kit_overview .sensor_container .sensor_right .sensor_arrow.arrow_up svg {
          fill: #00E597; }
        .kit_overview .sensor_container .sensor_right .sensor_arrow.arrow_down svg {
          fill: #FF3D4C; }
        .kit_overview .sensor_container .sensor_right .sensor_arrow.equal svg {
          fill: #55C4F5; }
    .kit_overview .sensor_container .sensor_value {
      margin-top: 10px;
      padding-left: 50px;
      padding-right: 50px; }
    .kit_overview .sensor_container .sensor_value_null {
      opacity: 0.15; }
    .kit_overview .sensor_container .sensor_icon {
      width: 22px;
      height: 22px;
      position: absolute;
      bottom: 45px;
      left: 25px; }
      .kit_overview .sensor_container .sensor_icon svg {
        fill: #6E6E6E; }
    .kit_overview .sensor_container:hover {
      opacity: 0.8; }
    .kit_overview .sensor_container.selected {
      color: #1C1C1C; }
      .kit_overview .sensor_container.selected .sensor_icon svg {
        fill: #1C1C1C; }

/**
 *  KIT DETAILS
 *
 */
.kit_details_notAuth_title {
  margin: 0; }

.kit_details_notAuth_subheader {
  color: #6E6E6E; }

.kit_details_notAuth_button {
  float: right; }

.kit_detailed {
  /*height: 1000px;*/
  z-index: 2;
  background-color: white;
  position: relative; }
  .kit_detailed p.description {
    line-height: inherit;
    font-weight: lighter;
    width: 75%; }
  .kit_detailed .kit_timeOpts {
    margin: 0;
    font-size: 1.3em; }
  .kit_detailed .kit_chart {
    min-height: 340px;
    background-color: white;
    position: relative; }
    .kit_detailed .kit_chart .hint {
      background-color: #1C1C1C;
      opacity: 0.6; }
    .kit_detailed .kit_chart .container {
      padding: 37px;
      height: 100%; }
      .kit_detailed .kit_chart .container .kit_chart_left {
        color: #1C1C1C; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_select .sensor_icon_selected {
          float: left;
          margin-right: 6px;
          padding-top: 5px; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_select .sensor_icon_selected svg {
            fill: #1C1C1C; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_select md-select {
          margin: 0; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_select md-select .md-select-value .md-text .select_image {
            display: none; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_description {
          /*//color: $background_blue_light;*/
          /*//height: 80px;*/
          /*//margin-top: 0px; //30;*/
          /*//position: relative;*/ }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_description h6 {
            margin: 0;
            margin-bottom: 3px;
            font-size: 1em; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_description small {
            line-height: 1em; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_description a {
            text-decoration: none;
            color: #6E6E6E; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_description .sensor_title {
            display: flex;
            align-items: center; }
            .kit_detailed .kit_chart .container .kit_chart_left .sensor_description .sensor_title svg {
              fill: white; }
            .kit_detailed .kit_chart .container .kit_chart_left .sensor_description .sensor_title:hover svg {
              fill: #FFC100;
              transition: 0.5s ease-in-out; }
          .kit_detailed .kit_chart .container .kit_chart_left .sensor_description .sensor_description_full {
            position: absolute;
            top: -50px;
            margin-top: 10px;
            display: none;
            overflow: visible;
            z-index: 200;
            background-color: rgba(255, 255, 255, 0.8);
            color: #1C1C1C;
            border-radius: 2px;
            line-height: 1.5em;
            padding: 10px;
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_data .sensor_value {
          font-size: 2em;
          font-weight: bold; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_data .sensor_unit {
          font-size: .8em;
          position: relative;
          top: -8px; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_data .sensor_data_icon {
          width: 14px;
          height: 14px;
          margin-left: 8px; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_data_description {
          font-size: 12px;
          display: none;
          position: absolute;
          -webkit-transform: translate(5px, 5px);
          transform: translate(5px, 5px);
          background-color: rgba(255, 255, 255, 0.8);
          color: #1C1C1C;
          border-radius: 2px;
          line-height: 1.5em;
          padding: 4px 6px;
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
          max-width: 175px; }
        .kit_detailed .kit_chart .container .kit_chart_left .sensor_dropdowns {
          font-size: .8em;
          padding-top: 30px;
          margin-top: 10px; }
      .kit_detailed .kit_chart .container .kit_chart_right {
        /*//display: inline-block;*/
        /*//height: 100%;*/ }
        .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation {
          height: 10%;
          font-size: 11px; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation > div {
            margin-left: 20px; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation input {
            margin-left: 10px;
            padding-left: 10px;
            font-size: 12px; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .kit_time md-icon {
            width: 11px;
            height: 11px;
            margin-right: 8px; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .picker_container {
            margin-left: 20px; }
          @media only screen and (max-device-width: 1050px) {
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_navigation {
              justify-content: space-around !important;
              margin: 5px !important; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .picker_container {
              margin: 0 5px 0 5px !important; } }
          @media only screen and (max-device-width: 960px) {
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .picker_container {
              display: flex !important;
              align-content: middle !important;
              margin: 10px 0 0 0 !important;
              width: 100% !important;
              justify-content: space-between !important;
              align-items: center !important; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .word_picker {
              display: inline-block !important;
              width: 100% !important; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move {
              display: flex !important;
              width: 100% !important;
              justify-content: space-between !important;
              margin-top: 15px !important; }
              .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_button {
                width: 100% !important; } }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_button {
            margin: 0px -2px 0 -2px;
            width: 40px;
            height: 28px;
            display: inline-flex;
            border: 1px solid #6E6E6E;
            background-color: #F9F9FB; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_right {
            border-top-left-radius: 0px;
            border-bottom-left-radius: 0px; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_right svg {
              fill: #6E6E6E; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_right:hover {
              background-color: #6E6E6E; }
              .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_right:hover svg {
                fill: #F9F9FB; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_left svg {
            fill: #6E6E6E; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_left:hover {
            background-color: #6E6E6E; }
            .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move .chart_move_left:hover svg {
              fill: #F9F9FB; }
          .kit_detailed .kit_chart .container .kit_chart_right .chart_navigation .chart_move md-icon {
            width: 5.5px;
            height: 9px;
            position: relative;
            top: 0px; }
  .kit_detailed .kit_details {
    color: #1C1C1C;
    background: grey url("/assets/images/sck_bg.png");
    background-repeat: repeat;
    background-size: 65px;
    padding: 30px 30px; }
  .kit_detailed .kit_detail_items {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5; }
  .kit_detailed .kit_details_content svg {
    fill: #1C1C1C; }
  .kit_detailed .kit_details_content .kit_details_labels {
    margin-top: 30px; }
  .kit_detailed .kit_details_name {
    margin: 5px 0 20px 0;
    font-weight: 800; }
  .kit_detailed .kit_details_type {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
    .kit_detailed .kit_details_type > span {
      margin-right: 15px; }
  .kit_detailed .md-button.kit_details_key_refreshButton:hover, .kit_detailed .md-button.kit_details_key_refreshButton:focus {
    background-color: #DBDBDB; }
  .kit_detailed .kit_detailed_icon_content {
    width: 14px;
    height: 14px;
    margin-right: 4px;
    position: relative;
    top: -1px; }
    .kit_detailed .kit_detailed_icon_content svg {
      fill: #6E6E6E; }
  .kit_detailed .kit_detailed_icon_title {
    width: 18px;
    height: 18px;
    margin-right: 8px;
    position: relative;
    top: -2px; }
  .kit_detailed .kit_detailed_title_container {
    padding: 20px 0; }
  .kit_detailed .kit_detailed_title {
    font-size: 16px;
    display: inline; }
  .kit_detailed .kit_detailed_content_container {
    margin: 37px 30px 37px;
    border: 3px solid #1C1C1C;
    background-color: white;
    padding: 10px 30px; }
  .kit_detailed .box-shadow-sc-yellow {
    box-shadow: 10px 10px 0px -2.5px #FFC100, 10px 10px 0px 0px #1C1C1C; }
  .kit_detailed .box-shadow-sc-blue {
    box-shadow: 10px 10px 0px -2.5px #0019FF, 10px 10px 0px 0px #1C1C1C; }
  .kit_detailed .kit_owner_usernameLink {
    text-decoration: none;
    transition: 0.3s ease-in-out; }

.sensor_value {
  font-size: 34px;
  font-family: Kanit;
  font-weight: 700; }

/**/
/* [!] Leave animation (ng-leave ) are disabled
because they conflict with enter animations */
.sensor_animation.ng-enter {
  transition: 1s ease-out all; }

.sensor_animation.ng-enter {
  -webkit-transform: scale(1.05);
          transform: scale(1.05); }

.sensor_animation.ng-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1); }

/* .sensor_animation.ng-leave{
  transition:1s ease all;
}
.sensor_animation.ng-leave{
  opacity: 0;
}
.sensor_animation.ng-leave-active{
  opacity: 1;
} */
/* Time animation currently not in use */
.time_animation.ng-enter {
  transition: 1s ease-out all; }

.time_animation.ng-enter {
  -webkit-transform: scale(1.05);
          transform: scale(1.05); }

.time_animation.ng-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1); }

/* .time_animation.ng-leave {
  transition:1s ease all;
}
.time_animation.ng-leave {
  opacity: 0;
}
.time_animation.ng-leave-active {
  opacity: 1;
} */
.bat_animation.ng-enter {
  transition: 1s ease-out all; }

.bat_animation.ng-enter {
  -webkit-transform: scale(1.05);
          transform: scale(1.05); }

.bat_animation.ng-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1); }

.token {
  font-size: 14px;
  line-height: 26px;
  border-radius: 20px;
  padding: 3px 10px;
  background-color: #FFD44D; }

.blurred {
  filter: blur(3px);
  -webkit-filter: blur(3px);
  transition: 0.7s ease-in-out; }

/* .bat_animation.ng-leave {
  transition:2s ease all;
}
.bat_animation.ng-leave {
  opacity: 0;
}
.bat_animation.ng-leave-active {
  opacity: 1;
} */
@media only screen and (max-width: 960px) {
  h1, h2 {
    font-size: 25px !important; }
  .owner-img {
    width: 80px;
    height: 80px; } }

@media only screen and (max-width: 640px) {
  h1, h2 {
    font-size: 20px !important;
    word-break: break-all; }
  .kit_detail_items {
    font-size: 15px !important; }
  .owner-img {
    width: 40px;
    height: 40px; }
  .btn-round-new {
    font-size: 14px; }
  .kit_detailed .kit_detailed_content_container {
    margin: 37px 10px 37px; } }

/*
  MODAL STORE
*/
.store_itemDescription {
  margin-left: 20px; }
  .store_itemDescription ul {
    list-style-image: url("../assets/images/check_circle.svg");
    list-style-position: inherit;
    font-size: .8em;
    line-height: 1.8em; }

.csv_file_item {
  display: flex;
  align-items: center; }
  .csv_file_item md-checkbox {
    margin-bottom: 0px; }
  .csv_file_item span {
    margin-right: 20px; }

.list-shadow {
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2); }
  .list-shadow md-list-item {
    border-bottom: solid 1px #ECECEE; }
  .list-shadow md-list-item:last-child {
    border-bottom: none; }

.label-grey {
  background-color: #D2D3D5; }

.title-timeline {
  font-size: 30px; }

/* This is temporary */
.upload-csv .container {
  margin-right: auto;
  margin-left: auto; }

.upload-csv .csv_content {
  margin-top: 240px;
  min-height: 50vh; }

@media (min-width: 768px) {
  .upload-csv .container {
    width: 750px; } }

@media (min-width: 992px) {
  .upload-csv .container {
    width: 970px; } }

@media (min-width: 1200px) {
  .upload-csv .container {
    width: 1170px; } }

/**
 *  BACKDROP COMPONENT
 */
md-content.md-opaque {
  background-color: rgba(30, 30, 30, 0.6); }

md-content.md-mainBackdrop {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh; }
  md-content.md-mainBackdrop .backdrop_icon {
    width: 101px;
    height: 101px; }

md-content.md-stateChangeBackdrop {
  z-index: 999;
  position: absolute;
  background-color: transparent;
  width: 100vw;
  height: 100vh; }

.backdrop_icon svg {
  overflow: visible;
  fill: #6E6E6E; }

.backdrop_icon .sc-circle-arrow {
  -webkit-transform-origin: 50% 53.8%;
  transform-origin: 50% 53.8%;
  -webkit-animation: spin 3s linear infinite;
  animation: spin 3s linear infinite; }

@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

section .stickMenu {
  position: absolute !important; }

.stickNav {
  position: fixed;
  top: 0px;
  border-bottom: 1px solid #666; }

/**
 *  MOZILLA-SPECIFIC CSS
 */
@-moz-document url-prefix() {
  .kit_detailed .kit_chart .container .kit_chart_left .sensor_select .sensor_icon_selected {
    transform: translateY(-8px); }
  .kit_detailed .kit_chart .container .kit_chart_left .sensor_compare md-select {
    transform: translateY(8px);
    margin: 0; }
  body .kit_detailed .kit_chart .container .kit_chart_left .sensor_data {
    margin: 5% 0 4% 0; }
  /*   section.map {
    z-index: 0;
  } */ }

/**
 *  INPUT CSS
 */
html {
  font-family: 'Roboto Condensed';
  font-size: 18px; }

body {
  background-color: rgba(0, 0, 0, 0);
  color: #1C1C1C; }

a.about {
  cursor: pointer;
  text-decoration: none;
  color: #0019FF; }

li.policy-toc {
  padding-left: 2px;
  padding-bottom: 3px; }
  li.policy-toc a {
    text-decoration: none; }

.policy-toc#header {
  list-style: none; }

.icon_label {
  width: 14px;
  height: 14px;
  margin-right: 4px;
  position: relative;
  top: -2px; }
  .icon_label svg {
    fill: #1C1C1C; }

.icon_label_online svg {
  fill: #00E597 !important; }

.icon_label_unknown svg {
  fill: #FFC100 !important; }

.icon_label_offline svg {
  fill: #F43D4D !important; }

/**
  * TYPOGRAPHY
  */
h1 {
  font-size: 2.2em;
  font-weight: normal; }

h2 {
  font-size: 1.7em;
  font-weight: normal; }

h3 {
  font-size: 1.4em;
  font-weight: normal; }

h4 {
  font-size: 1.2em;
  font-weight: normal; }

p {
  line-height: 1.5; }

td {
  padding: 5px; }

input {
  font-family: 'Roboto Condensed'; }

.label, .tag, .state {
  text-transform: uppercase;
  font-size: 12px;
  line-height: 24px;
  border-radius: 20px;
  padding: 3px 8px;
  margin-right: 8px; }
  .label md-icon, .tag md-icon, .state md-icon {
    margin-left: 4px;
    height: 11px;
    width: 11px;
    margin-top: -3px;
    cursor: pointer; }
  .label[clickable], .tag[clickable], .state[clickable] {
    cursor: pointer; }

.label {
  background-color: #FFD44D;
  color: #1C1C1C; }
  .label md-icon svg path {
    fill: #D2D3D5; }

.md-toolbar-tools md-icon {
  width: 20px;
  height: 20px; }

.tag {
  background-color: #fce08c;
  color: #1C1C1C; }
  .tag md-icon svg path {
    fill: #6E6E6E; }

.leaflet-container .tag, .leaflet-container .label,
.leaflet-container .state {
  font-size: 1em; }

.leaflet-top {
  top: 93px; }

section.info h1 {
  font-size: 1.3em; }

a {
  color: #1C1C1C; }
  a:hover, a:active {
    text-decoration: none;
    color: #0019FF; }

a.footer-link {
  color: #FFC100;
  text-decoration: none;
  transition: color 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); }
  a.footer-link:hover, a.footer-link:active {
    text-decoration: none;
    color: #0019FF; }

/*
  Overwrite global material design, allow icons to be smaller
*/
md-toolbar {
  background-color: #1C1C1C !important;
  z-index: 10;
  color: white !important; }
  md-toolbar md-icon {
    fill: white !important; }

md-icon {
  min-width: unset !important; }

md-select md-select-value {
  border-bottom-color: #cccccc75 !important; }

a.md-button h4, a.md-button .h4 {
  color: #0019FF;
  margin: 0; }

a.warn,
button.warn {
  color: #FF3D4C; }

.bold {
  font-weight: bold; }

div[api-key] {
  display: flex; }
  div[api-key] .api_key_number {
    background-color: #F2F2F2;
    word-break: break-all;
    width: 420px; }
  div[api-key] .api_key_refresh_button {
    background-color: #DBDBDB;
    margin: 0; }
    div[api-key] .api_key_refresh_button md-icon {
      padding: 10px;
      height: 15px;
      width: 15px; }
  div[api-key] md-icon {
    opacity: .5; }

.info_overlay h2 {
  color: white; }

.info_overlay p {
  margin: 0;
  font-size: 20px;
  font-weight: 300;
  color: #D2D3D5; }

.dark h1, .dark h2 {
  color: white; }

.dark h1, .dark h2 {
  margin: 0; }

.dark h3, .dark h4, .dark .h4, .dark a {
  color: #D2D3D5; }

/**
 * ANGULAR MATERIAL OVERRIDING
 */
md-select-menu {
  background-color: white; }

md-select,
md-select-menu {
  text-transform: uppercase; }

md-select:not([disabled]):focus .md-select-value {
  border-bottom-color: #6B868D; }

.md-button.md-primary.md-flat:not([disabled]):hover {
  background-color: #0019FF;
  color: white; }

.md-button.md-primary.md-flat:not([disabled]):focus {
  background-color: #0019FF;
  color: white; }

.md-button.fillwidth {
  width: 100% !important; }

md-input-container:not(.md-input-invalid).md-input-focused label {
  color: #0019FF; }

md-input-container:not(.md-input-invalid).md-input-focused .md-input {
  border-color: rgba(0, 0, 0, 0.12); }

/**
 * ALERT COMPONENT
 */
.md-toast-content {
  box-shadow: unset !important;
  background-color: unset !important;
  color: black !important;
  min-width: 100%; }

md-toast {
  bottom: unset !important;
  color: black;
  opacity: 0.95;
  padding: 0;
  position: fixed;
  top: 64px !important;
  min-width: 100%;
  z-index: 15;
  font-family: Kanit; }
  md-toast .alert_typeIcon {
    width: 16px;
    height: 16px;
    margin-right: 16px; }
  md-toast .alert_closeIcon {
    width: 10.5px;
    height: 10.5px;
    margin: 0 auto; }
  md-toast .alert_button {
    padding: 0px 12px;
    margin-left: 5px;
    color: black !important;
    background-color: #FFC100;
    border-radius: 20px;
    font-size: 12px; }

md-toast.red {
  background-color: #FF3D4C; }

md-toast.green {
  background-color: #4DBD4E; }

md-toast.blue {
  background-color: #0019FF; }

md-toast.yellow {
  background-color: #FFC100; }

md-checkbox.md-checked .md-icon {
  background-color: #0019FF; }

md-checkbox .md-label {
  pointer-events: auto; }

md-checkbox .md-label span {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/**
 *  SPINNER/PROGRESS BAR COMPONENTS
 */
md-progress-linear.md-bar.green {
  background-color: #00E597; }

md-progress-linear.green .md-container {
  background-color: rgba(0, 229, 151, 0); }

md-progress-linear.green .md-bar {
  background-color: #00E597; }

md-progress-linear.md-bar {
  background-color: #0019FF; }

md-progress-linear.md-hue-3 .md-container {
  background-color: rgba(0, 25, 255, 0.05); }

md-progress-linear.md-hue-3 .md-bar {
  background-color: #0019FF; }

.kit_spinner {
  z-index: 200;
  position: absolute;
  left: 0;
  bottom: 6px; }

.chart_spinner {
  position: absolute;
  top: 200px;
  left: 57%; }

/**
 *  COOKIES POLICY COMPONENT
 */
.cookies-policy_container {
  background-color: #3c3c3c;
  color: #FFC100;
  position: fixed;
  bottom: 0;
  padding: 5px;
  left: 0;
  width: 100%;
  z-index: 999;
  text-align: center;
  line-height: 4vh; }
  .cookies-policy_container a {
    color: rgba(255, 193, 0, 0.6); }

.md-noDataBackdrop {
  width: 100%;
  height: 381px;
  position: absolute;
  background-color: white; }
  .md-noDataBackdrop .block {
    margin: 0 auto; }
  .md-noDataBackdrop .title, .md-noDataBackdrop .message {
    text-align: center; }
  .md-noDataBackdrop .title {
    color: #6E6E6E;
    font-weight: 400;
    margin-bottom: 0; }
  .md-noDataBackdrop .message {
    margin: 0;
    font-size: 20px;
    font-weight: 300; }
  .md-noDataBackdrop a {
    color: #0019FF;
    text-decoration: none; }

/**
 *  MAP
 */
.map_state {
  position: fixed;
  z-index: 1; }

section.map {
  background-color: white;
  text-align: center;
  width: 100%;
  height: 100%;
  color: black;
  z-index: 1;
  position: fixed;
  top: 64px; }
  @media all and (max-height: 1200px) and (min-height: 1000px) {
    section.map {
      height: 950px; } }
  @media all and (max-height: 1000px) and (min-height: 800px) {
    section.map {
      height: 700px; } }
  @media all and (max-height: 800px) and (min-height: 600px) {
    section.map {
      height: 550px; } }
  @media all and (max-height: 600px) and (min-height: 400px) {
    section.map {
      height: 300px; } }
  section.map h1 {
    font-size: 3em; }

.md-sidenav-right {
  position: fixed; }

/*
  CORE CHIP COMPONENT
 */
.chips {
  display: inline-block; }
  .chips div.chips_row {
    height: 40.5px; }
  .chips .label, .chips .tag {
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); }

.chip {
  padding: 0px 10px 0px 14px;
  margin: auto 5px;
  border-radius: 20px;
  height: 30px;
  text-transform: uppercase;
  font-size: 13px;
  line-height: 29px; }
  .chip .chip_name {
    margin-left: 3px;
    margin-right: 7px; }
  .chip .chip_icon {
    border: 0;
    background-color: inherit; }
    .chip .chip_icon md-icon {
      width: 8px;
      height: 8px; }
  .chip.map_filter {
    background-color: white;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); }
  .chip.kit_tag {
    background-color: #D2D3D5;
    float: left;
    margin: 5px; }

/*
  MAP FILTERS
*/
.map_legend {
  position: absolute;
  top: 10px;
  margin-left: 10px;
  display: flex; }
  .map_legend .chips {
    align-self: flex-end;
    padding-bottom: 5px;
    padding-left: 5px;
    display: flex; }
  .map_legend .map_legend__filtersContainer {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 124px;
    height: 81px;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); }
    .map_legend .map_legend__filtersContainer svg, .map_legend .map_legend__filtersContainer p {
      fill: #1C1C1C; }
    .map_legend .map_legend__filtersContainer .map_legend__filtersRow {
      cursor: pointer;
      display: flex;
      align-items: center;
      padding-left: 5px;
      background-color: #fff; }
      .map_legend .map_legend__filtersContainer .map_legend__filtersRow:not(:last-child) {
        border-bottom: 1px solid gray; }
      .map_legend .map_legend__filtersContainer .map_legend__filtersRow .map_filter_button {
        box-shadow: none; }
        .map_legend .map_legend__filtersContainer .map_legend__filtersRow .map_filter_button p {
          margin: 0; }

.map_filter_button {
  background-color: white;
  margin-right: 15px;
  width: 26px;
  height: 26px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65); }
  .map_filter_button md-icon {
    width: 18px;
    height: 12px; }

.md-button.map_filter_button:hover, .md-button.map_filter_button:focus {
  background-color: white; }

/*
=========================================
KIT TAGS MODULE
=========================================
*/
.kitTags__section {
  margin-top: 376px; }
  .kitTags__section .kitTags__listContainer {
    background-color: #ECECEE;
    padding: 20px; }
  .kitTags__section .kitTags__container {
    padding-bottom: 20px; }
    .kitTags__section .kitTags__container .kitTags__textContainer {
      display: flex;
      justify-content: space-between;
      margin-left: 20px;
      margin-right: 20px; }
      .kitTags__section .kitTags__container .kitTags__textContainer .kitTags__textElement {
        flex-basis: 40%;
        flex-grow: 0;
        min-width: 300px; }

/*
 CORE FORM COMPONENT
 */
.form_container {
  font-size: 16px;
  position: relative;
  border-radius: 0px 0px 3px 3px; }

.form_contentContainer {
  width: 92%;
  margin: 0 auto; }

.form_field {
  position: relative; }

.form_errors {
  position: absolute;
  bottom: 15%;
  left: 5%;
  color: red;
  font-size: 0.7em;
  line-height: 1; }

.form_closeIcon {
  float: right;
  width: 14px;
  height: 14px;
  margin: 12px; }
  .form_closeIcon md-icon {
    width: 14px;
    height: 14px;
    position: absolute;
    top: 0px;
    left: 0px; }

.md-primary.form_button {
  color: white;
  background-color: #0019FF;
  height: 64px;
  bottom: 0px;
  left: 0px;
  border-radius: 0px 0px 2px 2px; }

.form_title {
  color: #0019FF;
  font-weight: normal; }

.form_messageHeader {
  font-size: 1.5em;
  color: #6E6E6E;
  font-weight: bold;
  line-height: 0;
  margin-top: 50px; }

.form_messageSubheader {
  font-size: 0.875em;
  color: rgba(0, 98, 123, 0.54);
  line-height: 0.5; }

.form_messageDescription {
  font-size: 12px;
  margin-bottom: 0; }

/*
  CORE LARGE DEVICES FORM
*/
@media (min-width: 501px) {
  .form_container {
    width: 340px;
    font-size: 16px; }
  .form_messageContainer {
    margin-bottom: 20px; }
  .md-primary.form_button {
    width: 340px;
    display: block;
    position: relative;
    margin: 0 auto;
    font-size: 1.5em; } }

/*
  CORE MOBILE DEVICES FORM
*/
@media (max-width: 500px) {
  .form_container {
    width: 80%;
    font-size: 12px; }
  .md-primary.form_button {
    width: 100%;
    position: absolute;
    font-size: 1.2em; } }

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-device-pixel-ratio: 2) and (device-aspect-ratio: 2 / 3) {
  .recovery_container {
    margin-top: 40px; }
  .form_field {
    padding: 5% 0; } }

/*
  RECOVERY FORM
*/
.recovery_container {
  position: relative;
  margin: 0px auto;
  margin-bottom: 100px; }

.formRecovery_field {
  padding: 10% 0; }

@media (min-width: 501px) {
  .recovery_container {
    margin-top: 80px; }
  .formRecovery_errors {
    bottom: 15%;
    left: 5%; } }

@media (max-width: 500px) {
  .recovery_container {
    margin-top: 20%; }
  .formRecovery_errors {
    bottom: 23%;
    left: 5%; } }

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-device-pixel-ratio: 2) and (device-aspect-ratio: 2 / 3) and (max-width: 500px) {
  .formRecovery_field {
    padding: 2% 0; }
  .formRecovery_errors {
    bottom: 29%; } }

/*
  RESET FORM
*/
.formReset_field {
  padding: 7% 0; }

@media (min-width: 501px) {
  .formReset_errors {
    bottom: 5%;
    left: 5%; } }

@media (max-width: 500px) {
  .formReset_errors {
    bottom: 18%;
    left: 1%; } }

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-device-pixel-ratio: 2) and (device-aspect-ratio: 2 / 3) and (max-width: 500px) {
  .formReset_errors {
    top: 65%; }
  .formReset_field {
    padding: 3% 0; } }

/**
 * MOVE DOWN EFFECT ON SCROLL
 */
.move_down {
  -webkit-transform: translateY(32px);
  transform: translateY(32px); }

/*
  MARKER AND POPUP MARKER
*/
.markerSmartCitizenNormal {
  border: 1px solid #FFC100;
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3); }

.markerSmartCitizenOnline {
  border: 2px solid #FFC100;
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
  background-color: rgba(255, 193, 0, 0.5); }

.markerExperimentalNormal {
  border: 2px solid #D2D3D5;
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
  background-color: #D2D3D5; }

/* @keyframes pulse {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
@-webkit-keyframes pulse {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
@-moz-keyframes pulse {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
@-o-keyframes pulse {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
} */
.markerSmartCitizenOffline {
  border: 2px solid rgba(0, 0, 0, 0.2);
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
  background-color: rgba(0, 0, 0, 0.2); }

/* .marker_blink {
  -webkit-animation: pulse 2s linear infinite;
  -moz-animation: pulse 2s linear infinite;
  -ms-animation: pulse 2s linear infinite;
  animation: pulse 2s linear infinite;
} */
.popup {
  width: 101%;
  height: 135px;
  color: #1C1C1C;
  font-family: 'Roboto Condensed'; }

.popup_top {
  height: 72px;
  border-radius: 2px 2px 0 0;
  background-color: #ECECEE;
  padding-top: 5px; }
  .popup_top a {
    color: #1C1C1C; }
    .popup_top a:hover {
      color: #6E6E6E; }
  .popup_top .popup_name {
    padding: 0 0 1px 8px;
    font-size: 16px;
    font-weight: bold; }
  .popup_top .popup_type {
    font-size: 14px;
    line-height: 1em;
    padding: 1px 0 3px 8px; }
  .popup_top .popup_time {
    font-size: 11px;
    padding: 2px 0 0 8px; }
    .popup_top .popup_time md-icon {
      width: 10px;
      height: 10px;
      margin-right: 5px; }

.popup_bottom {
  height: 68px; }
  .popup_bottom .popup_location {
    padding: 5px 0 0 8px;
    font-size: 14px; }
    .popup_bottom .popup_location md-icon {
      width: 8.4px;
      height: 12px;
      margin-right: 4px; }
  .popup_bottom .popup_labels {
    padding: 8px 0 0 8px;
    font-size: 12px; }
    .popup_bottom .popup_labels tag, .popup_bottom .popup_labels span {
      margin-bottom: 8px;
      float: left; }

.popup_icon svg:nth-child(2) {
  width: 0;
  height: 0; }

/* Kit type colors kitUtils.service.js :: classify()*/
.sck {
  background-color: #FFC100; }

.unknown {
  background-color: grey; }

/**
 * OVERRIDE LEAFLET
 */
.leaflet-left {
  left: unset !important;
  right: 11px;
  top: 15px !important; }

.leaflet-popup-content-wrapper {
  border-radius: 4px;
  width: auto !important;
  overflow: hidden; }

.leaflet-popup-content {
  margin: 0;
  min-width: 245px;
  position: relative;
  top: -1px;
  left: -1px; }
  .leaflet-popup-content p {
    margin: 0; }

.leaflet-popup-close-button {
  display: none; }

.leaflet-overlay-pane .leaflet-zoom-animated path {
  stroke: grey; }

.leaflet-top.leaflet-left {
  z-index: 1; }

.leaflet-bottom.leaflet-right {
  z-index: 1; }

.marker-cluster {
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2); }
  .marker-cluster div {
    font-family: 'Roboto Condensed';
    font-size: 14px; }

.marker-cluster-small, .marker-cluster-medium, .marker-cluster-large {
  border-radius: 50%;
  border: 2px solid rgba(255, 193, 0, 0.8);
  background-color: rgba(255, 193, 0, 0.3); }
  .marker-cluster-small div, .marker-cluster-medium div, .marker-cluster-large div {
    background-color: rgba(0, 255, 168, 0); }

/*
  PICKER COMPONENT
*/
.picker {
  color: #1C1C1C; }

.picker__weekday {
  color: #6E6E6E; }

.picker__nav--prev::before {
  border-right: 0.75em solid #6E6E6E; }

.picker__nav--next::before {
  border-left: 0.75em solid #6E6E6E; }

.picker__button--today::before {
  border-top: 0.66em solid #0019FF; }

.picker__holder.picker_container {
  background: none;
  transition: none; }

.picker__button--clear::before {
  border-top: 3px solid #FF3D4C; }

.picker__button--close {
  color: #1C1C1C; }

.picker__button--today, .picker__button--clear {
  color: #1C1C1C; }

.picker__day--highlighted, .picker__day--selected, .picker__day--selected:hover, .picker--focused .picker__day--selected {
  background: #FFC100;
  background-color: #FFC100;
  border-color: #FFC100;
  color: #1C1C1C; }

.picker__day--infocus:hover, .picker__nav--prev:hover, .picker__nav--next:hover, .picker__button--today:hover, .picker__button--clear:hover, .picker__button--close:hover {
  background: #fce08c;
  border-color: #fce08c; }

.date_picker {
  height: 24px;
  border-radius: 2px;
  border: 1px solid #6E6E6E;
  color: #6E6E6E;
  background-color: transparent; }

.select_image {
  margin-right: 10px; }

/**
 * DROPDOWN MENU
 * Override style for dropdown menu from angular-dropdowns dependency
 */
.wrap-dd-menu .dropdown li a {
  color: #6E6E6E; }

.kit_menu .wrap-dd-menu {
  width: 30px;
  display: inline-table;
  padding: 0 0; }

.kit_menu .wrap-dd-menu .dropdown {
  top: 70%;
  line-height: 1em;
  left: -25px;
  right: -25px; }
  .kit_menu .wrap-dd-menu .dropdown li a {
    text-align: center;
    border-bottom: 0px; }

.kitList_parent .wrap-dd-menu {
  width: 50px;
  display: inline-block; }

.kitList_parent .wrap-dd-menu .dropdown {
  top: 70%;
  line-height: 1em;
  left: -25px;
  right: -25px;
  border-radius: 0px; }
  .kitList_parent .wrap-dd-menu .dropdown li a {
    text-align: center;
    border-bottom: 0px; }

.kit_owner_dropdown_button {
  display: block;
  margin: 0 auto; }

/**
 *  KIT LIST
 *
 */
.kitList {
  margin: 0px;
  color: #D2D3D5;
  border-top: 1px solid #EAECF1;
  border-right: 1px solid #EAECF1;
  border-left: 1px solid #EAECF1;
  background-color: white;
  border-radius: 0 !important;
  text-transform: none;
  padding: 15px; }
  .kitList h1, .kitList h2, .kitList h3, .kitList h4 {
    line-height: inherit; }
  .kitList p {
    line-height: 0.4em; }
  .kitList .wrap-dd-menu {
    width: 50px;
    display: inline-block; }
  .kitList .wrap-dd-menu .dropdown {
    top: 70%;
    line-height: 1em;
    left: -25px;
    right: -25px;
    border-radius: 0px; }
    .kitList .wrap-dd-menu .dropdown li a {
      text-align: center;
      border-bottom: 0px; }
  .kitList .chips {
    position: absolute;
    right: 130px; }

.kitList_avatar {
  width: 44px;
  height: 44px;
  border-radius: 22px; }

.kitList_name {
  margin-bottom: 5px;
  font-size: 18px;
  color: #0019FF; }

.kitList_right {
  position: absolute;
  right: 0; }
  .kitList_right .chip .chip_name {
    text-transform: uppercase; }

.kitList_state {
  color: white;
  text-transform: uppercase; }

.kitList_state_has_published {
  color: #00E597; }

.kitList_state_never_published {
  color: #FFC100; }

.kitList_state_not_configured {
  color: #F43D4D; }

.status_online {
  color: #00E597; }

.status_unknown {
  color: #FFC100; }

.status_offline {
  color: #F43D4D; }

.kitList_dropdownButton {
  display: block;
  margin: 0 auto; }
  .kitList_dropdownButton img {
    position: relative; }

.kitList_noKits {
  line-height: 5; }

.dropdown-item-button {
  border-radius: 5px;
  text-align: center;
  width: 100%; }

.dropdown-item-button:hover {
  background-color: #FFC100 !important; }

md-card.kit-list-item {
  border-radius: 10px; }

/**
 *  USER PROFILE STATE
 *  most styles are re-used on my profile state
 */
/* profile header */
.profile_header {
  background-color: #2E2E2E;
  color: #D2D3D5;
  height: 192px;
  margin-top: 64px; }

.profile_header_avatar {
  width: 100px;
  height: 100px;
  border-radius: 50px;
  margin-right: 29px;
  margin-left: 27px; }

.profile_header_content > div {
  margin: 5px 0; }

.profile_header_content svg {
  fill: #ECECEE; }

.profile_header_content_avatar {
  width: 12px;
  height: 12px;
  margin-right: 6px;
  position: relative;
  top: -1px; }

.profile_content {
  min-height: 700px;
  position: relative; }

/* profile sidebar */
.profile_sidebar {
  background-color: #F5F5F5;
  min-width: 200px; }

.profile_sidebar_title {
  color: #1C1C1C;
  font-weight: bold; }

.profile_sidebar_description {
  font-size: 14px; }

.profile_sidebar_button {
  height: 64px;
  color: #0019FF; }
  .profile_sidebar_button svg {
    fill: #0019FF; }

.profile_sidebar_avatar {
  width: 12px;
  height: 12px;
  margin-right: 8px;
  position: relative;
  top: -2px; }

/* profile main content */
.profile_content_main_top {
  margin: 0 0 42px 20px; }

/**
 *  MY PROFILE STATE
 */
.myProfile_state md-ink-bar {
  background-color: #0019FF; }

.myProfile_state md-tab md-tab-label {
  overflow: visible; }

.myProfile_state md-tabs md-tab {
  color: #D2D3D5; }

.myProfile_state md-tabs md-tab.active {
  color: white; }

.myProfile_state md-tabs md-tabs-ink-bar {
  color: #0019FF;
  background-color: #0019FF; }

md-tabs-canvas {
  background-color: #2E2E2E; }

.myProfile_header {
  height: 188px;
  position: relative; }

.myProfile_header_container {
  padding-top: 51px;
  margin-left: 46px; }

.myProfile_header_avatar {
  margin-left: 0; }

.myProfile_tabs_parent md-tabs-wrapper {
  background-color: #1C1C1C; }

.myProfile_tab_icon {
  width: 16px;
  height: 16px;
  margin-right: 8px;
  position: relative;
  top: -1px; }
  .myProfile_tab_icon svg {
    fill: white; }

.myProfile_sidebar_button {
  padding-left: 28px; }

.myProfile_content_form {
  margin-left: 113px;
  max-width: 500px; }

.myProfile_content_form_input {
  margin: 16px 0;
  position: relative; }

.countryInput_container md-autocomplete {
  background-color: transparent; }

.countryInput_container md-autocomplete-wrap {
  box-shadow: none !important; }

.countryInput_container input {
  font-size: 100%; }

.countryInput_container label {
  position: relative;
  bottom: 55px; }

.myProfile_form_avatar {
  margin-bottom: 30px; }

.myProfile_form_avatarImage {
  width: 64px;
  height: 64px;
  border-radius: 32px;
  margin-right: 7%; }

.myProfile_apiKey_text {
  color: #D2D3D5;
  margin-right: 5px;
  width: 120px; }

.myProfile_apiKey_number {
  color: #9D9D9E;
  font-weight: bold;
  background-color: #F2F2F2;
  padding: 5px 10px; }

.myProfile_apiKey_refreshButton {
  background-color: #D2D3D5;
  height: 29px; }
  .myProfile_apiKey_refreshButton md-icon {
    height: 15px;
    width: 15px;
    display: block;
    margin: 3px auto; }

.md-button.myProfile_apiKey_refreshButton {
  border-radius: 0 4px 4px 0; }

.md-button.myProfile_apiKey_refreshButton:active, .md-button.myProfile_apiKey_refreshButton:hover, .md-button.myProfile_apiKey_refreshButton:focus {
  background-color: #D2D3D5; }

.myProfile_form_removeButton {
  display: block;
  color: #FF3D4C;
  margin-bottom: 5px; }

.myProfile_updateForm_error {
  position: absolute;
  top: 50px;
  left: 2px;
  color: red;
  font-size: 12px;
  line-height: 1; }

.myProfile_apiKey_block {
  margin-top: 63px;
  margin-bottom: 65px; }

.myProfile_apiKey {
  margin-top: 10px;
  margin-bottom: 10px; }
  .myProfile_apiKey svg {
    fill: #6E6E6E; }

.md-button.myProfile_addKitButton:focus {
  background-color: #0019FF; }

.md-button.myProfile_addKitButton:hover {
  background-color: #0019FF; }

.myProfile_hiddenhref {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0; }

/**
 * TOOL LIST
 *
 */
a.kitList h4 {
  color: #1C1C1C; }

a.kitList p {
  color: #6E6E6E; }

.clearfix {
  clear: both; }

/*
  FOOTER COMPONENT
*/
footer {
  z-index: 1;
  width: 100%;
  background-color: #1C1C1C; }

.footer_icon {
  display: block;
  width: 32px;
  height: 32px; }

.flag {
  padding-right: 15px; }

.border-white.footer-block {
  border: 2px white solid; }

.uptimerobot-logo {
  width: 150px;
  justify-self: right;
  vertical-align: center;
  padding-top: 10px; }

.uptimerobot-sponsor {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: flex-start; }

.uptimerobot-sponsor-text p {
  font-size: 15px !important;
  margin: 0px; }

@media only screen and (max-width: 950px) {
  .color-white {
    text-align: center; }
  .flag {
    padding-right: 0px; }
  .footer-block {
    margin-bottom: 20px !important; }
  .sponsor {
    justify-content: center;
    align-items: center; } }

@media (max-width: 599px) {
  .layout-align-xs-start-stretch, .layout-align-xs-center-stretch, .layout-align-xs-end-stretch, .layout-align-xs-space-between-stretch, .layout-align-xs-space-around-stretch {
    align-items: center; } }

/*
  RECOVERY PASSWORD STATE
*/
.recovery_header {
  width: 100%;
  height: 128px;
  background-color: #1C1C1C; }

.recovery_headerIcon {
  display: block;
  width: 50px;
  height: 50px; }

/*
  TIMELINE COMPONENT

  used on add and setup kit
*/
.timeline {
  height: 120px;
  background-color: #2E2E2E;
  position: fixed;
  width: 100%;
  z-index: 10;
  top: 64px;
  box-shadow: 0 4px 5px -2px #2E2E2E;
  padding: 30px; }

@media (max-width: 960px) {
  .timeline-btn-extra {
    display: None; } }

@media (min-width: 0px) and (max-width: 959px) and (orientation: portrait) {
  .timeline {
    top: 56px; }
  .profile_header {
    margin-top: 53px; } }

@media (min-width: 0px) and (max-width: 959px) and (orientation: landscape) {
  .timeline {
    top: 53px; }
  .profile_header {
    margin-top: 53px; } }

.timeline_container {
  width: 100%; }

.timeline_line {
  width: 500px;
  border: 1px solid #FFC100;
  position: relative;
  top: 14px; }

.timeline_line_small {
  width: 100px !important;
  margin: 0px 20px;
  top: 0px !important; }

.timeline-title {
  text-transform: uppercase;
  color: #FFC100;
  font-size: 24px;
  font-weight: 600; }
  .timeline-title.vertical {
    margin-top: 10px; }

.timeline_stepName {
  text-transform: uppercase;
  color: #FFC100;
  font-size: 18px; }
  .timeline_stepName.vertical {
    margin-top: 10px; }

.timeline_content {
  min-height: 400px;
  width: 100%;
  margin-top: 220px; }

.md-button.timeline_buttonBack {
  margin-left: auto;
  margin-right: 20px; }

section.relaxed-layout {
  padding: 10px 25px; }

/*
  ADD KIT STATE
*/
.kit_dataChange .form_block {
  padding: 40px 30px;
  background-color: #FFF; }
  .kit_dataChange .form_block.isEven {
    background-color: #F9F9FB; }

.kit_dataChange .form_blockInput {
  height: inherit; }

.kit_dataChange .form_blockInput_container {
  height: inherit; }

.kit_dataChange .form_blockInput_button {
  height: inherit; }

.kit_dataChange .form_blockInput_map {
  height: 250px;
  min-width: 250px; }

.kit_dataChange .form_blockInput_select label {
  color: #0019FF;
  margin-right: 10px; }

.kit_dataChange .form_blockInput_chips {
  margin-top: 35px; }

.kit_dataChange .form_blockContent {
  padding-top: 5px;
  float: left; }
  .kit_dataChange .form_blockContent img, .kit_dataChange .form_blockContent div {
    float: left; }
  .kit_dataChange .form_blockContent img {
    border-radius: 50%;
    width: 120px;
    height: 120px;
    margin: 5px 20px; }

.kit_dataChange .form_blockContent_image {
  position: relative;
  top: 3px; }

.kit_dataChange .form_blockContent_text {
  margin-left: 10px;
  width: 240px; }
  .kit_dataChange .form_blockContent_text.long {
    width: auto !important; }
  .kit_dataChange .form_blockContent_text h2 {
    margin-top: 0;
    margin-bottom: 8px; }
  .kit_dataChange .form_blockContent_text p {
    font-size: 14px;
    color: #A5A5A5;
    line-height: 1.5; }

.kit_dataChange .form_errors {
  position: absolute;
  bottom: 15%;
  left: 0;
  color: red;
  font-size: 0.7em;
  line-height: 1; }

.emoji {
  font-weight: 400; }

/*
  STATIC PAGES
*/
.static_page .timeline {
  align-items: flex-start stretch; }
  .static_page .timeline .content {
    padding: 0 0px; }

.static_page .content {
  max-width: 50em;
  margin: 0 auto;
  text-align: justify;
  padding: 40px 10px; }

.static_page .full-width-img {
  width: 100%;
  height: auto;
  max-width: 2000px;
  position: relative;
  margin: 0 0 -5px 0; }

.static_page .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }
  .static_page .embed-container iframe, .static_page .embed-container object, .static_page .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.static_page .center {
  text-align: center;
  margin-top: 30px; }

.static_page .row {
  min-height: 200px; }
  .static_page .row:nth-child(odd) {
    background-color: #F9F9FB; }

.static_page h1 {
  color: white; }

.static_page h4 {
  font-weight: bold;
  margin-bottom: 0.2em; }

.static_page .md-button.md-primary.md-raised, .static_page .md-button.md-primary.md-fab {
  padding: 6px 20px;
  height: 44px;
  border-radius: 22px;
  font-size: 18px;
  background-color: #0019FF;
  color: white; }
  .static_page .md-button.md-primary.md-raised:hover, .static_page .md-button.md-primary.md-raised:focus, .static_page .md-button.md-primary.md-fab:hover, .static_page .md-button.md-primary.md-fab:focus {
    background-color: #3C98AF; }
  .static_page .md-button.md-primary.md-raised:not([disabled]), .static_page .md-button.md-primary.md-fab:not([disabled]) {
    box-shadow: none; }

.static_page .md-button.md-primary {
  color: #0019FF; }

.not-found-404 {
  height: 45vh; }

.icon-large {
  width: 120px;
  height: 120px; }
  .icon-large svg {
    fill: #1C1C1C; }

@media (min-width: 960px) {
  .not-found-404 {
    height: 51.3vh; }
  .icon-large {
    width: 120px;
    height: 120px; }
    .icon-large svg {
      fill: #1C1C1C; } }

.icon_label {
  width: 14px;
  height: 14px;
  margin-right: 4px;
  position: relative;
  top: -2px; }
  .icon_label svg {
    fill: #1C1C1C; }

.sensor-image-margin {
  margin-top: 40px; }

h3.no-margin {
  margin: 0; }

p.no-margin {
  margin: 0; }

.team-cells-margin {
  margin-bottom: 25px; }

.subtitle-separation {
  margin-top: 60px; }

.doorbell-button {
  background-color: #FFC100 !important; }

.styleguide .info-text {
  color: rgba(0, 0, 0, 0.3); }

.styleguide .info-text-dark {
  color: rgba(255, 255, 255, 0.3) !important; }

.styleguide .dark-theme-divider {
  border-top-color: rgba(255, 255, 255, 0.12); }

.styleguide small {
  margin-top: 20px; }

.styleguide .dark-text-section {
  background-color: #1C1C1C; }
  .styleguide .dark-text-section h1 {
    font-size: 1.8em;
    color: #fff; }
  .styleguide .dark-text-section h2 {
    color: #fff; }
  .styleguide .dark-text-section h4 {
    color: #D2D3D5; }
  .styleguide .dark-text-section h6 {
    color: #87CCDD; }
  .styleguide .dark-text-section p {
    color: #C8E6ED;
    font-weight: 300; }
  .styleguide .dark-text-section small {
    color: #6E6E6E; }

.styleguide .section-padding {
  padding: 60px; }

.styleguide .colors-section p {
  padding-left: 20px; }

.styleguide .colors-section .secondary-color {
  background-color: #6E6E6E; }
  .styleguide .colors-section .secondary-color p {
    color: #fff; }

.styleguide .colors-section .terciary_color {
  background-color: #0019FF; }
  .styleguide .colors-section .terciary_color p {
    color: #fff; }

.styleguide .colors-section .secondary_color_light {
  background-color: #8DB2BA; }
  .styleguide .colors-section .secondary_color_light p {
    color: #fff; }

.styleguide .colors-section .secondary-color-pastel {
  background-color: #C8E6ED; }
  .styleguide .colors-section .secondary-color-pastel p {
    color: #8DB2BA; }

.styleguide .colors-section .white {
  background-color: #fff;
  border: 1px solid #C8E6ED; }
  .styleguide .colors-section .white p {
    color: #8DB2BA; }

.styleguide .colors-section .sensors > div {
  width: 60px;
  height: 60px;
  border-radius: 30px;
  float: left;
  margin: 10px; }

.styleguide .colors-section .sensors div:nth-child(1) {
  background: #ffc107; }

.styleguide .colors-section .sensors div:nth-child(2) {
  background: #4fc3f7; }

.styleguide .colors-section .sensors div:nth-child(3) {
  background: #ffee58; }

.styleguide .colors-section .sensors div:nth-child(4) {
  background: #f06292; }

.styleguide .colors-section .sensors div:nth-child(5) {
  background: #4caf50; }

.styleguide .colors-section .sensors div:nth-child(6) {
  background: #8bc34a; }

.styleguide .colors-section .sensors div:nth-child(7) {
  background: #9575cd; }

.styleguide .colors-section .sensors div:nth-child(8) {
  background: #fff9c4; }

.styleguide .colors-section .sensors div:nth-child(9) {
  background: #ffee58; }

.styleguide .colors-section .sensors div:nth-child(10) {
  background: #ff5722; }

/* Custom Animations */
.loading-dots span:after {
  content: '.';
  -webkit-animation: dots 2s steps(5, end) infinite;
          animation: dots 2s steps(5, end) infinite; }

@-webkit-keyframes dots {
  0%, 20% {
    color: rgba(0, 0, 0, 0);
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0); }
  40% {
    color: white;
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0); }
  60% {
    text-shadow: 0.25em 0 0 #FFC100, 0.5em 0 0 rgba(0, 0, 0, 0); }
  80%, 100% {
    text-shadow: 0.25em 0 0 #FFC100, 0.5em 0 0 #0019FF; } }

@keyframes dots {
  0%, 20% {
    color: rgba(0, 0, 0, 0);
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0); }
  40% {
    color: white;
    text-shadow: 0.25em 0 0 rgba(0, 0, 0, 0), 0.5em 0 0 rgba(0, 0, 0, 0); }
  60% {
    text-shadow: 0.25em 0 0 #FFC100, 0.5em 0 0 rgba(0, 0, 0, 0); }
  80%, 100% {
    text-shadow: 0.25em 0 0 #FFC100, 0.5em 0 0 #0019FF; } }

/* Do not remove this comments bellow. It's the markers used by gulp-inject to inject
   all your sass files automatically */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJoZWxwZXJzLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJjb21wb25lbnRzL2xhbmRpbmcvbGFuZGluZy5zY3NzIiwiY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL3NlYXJjaC9zZWFyY2guc2NzcyIsImNvbXBvbmVudHMva2l0L2tpdC5zY3NzIiwiY29tcG9uZW50cy9raXQvc2hvd0tpdC9zaG93S2l0LnNjc3MiLCJjb21wb25lbnRzL3N0b3JlL3N0b3JlTW9kYWwuc2NzcyIsImNvbXBvbmVudHMvdXBsb2FkL2NzdlVwbG9hZC5zY3NzIiwiY29yZS9hbmltYXRpb24vYmFja2Ryb3AvbG9hZGluZ0JhY2tkcm9wLnNjc3MiLCJjb3JlL2FuaW1hdGlvbi9hbmltYXRpb24uZGlyZWN0aXZlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUpBQVk7QUFDWixpRkFBWTtBQUNaLHFHQUFZO0FDRFo7RUFDRSwwQkNTaUIsRURSbEI7O0FBQ0Q7RUFDRSx3QkFBdUIsRUFDeEI7O0FBQ0Q7RUFDRSx3QkFBdUIsRUFDeEI7O0FBQ0Q7RUFDRSwwQkFBK0IsRUFDaEM7O0FBQ0Q7RUFDRSxlQ0hpQixFRElsQjs7QUFDRDtFQUNFLGVDZFksRURlYjs7QUFDRDtFQUNFLGVDakJZLEVEa0JiOztBQUNEO0VBQ0UsZUNoQmEsRURvQmQ7RUFMRDtJQUdJLGNDbEJXLEVEbUJaOztBQUVIO0VBQ0UsZUN2QlcsRUQyQlo7RUFMRDtJQUdJLHlCQUFxQixFQUN0Qjs7QUFFSDtFQUNFLFlBQVcsRUFDWjs7QUFDRDtFQUNFLGFBQVksRUFDYjs7QUFDRDtFQUNFLGNBQVksRUFDYjs7QUFDRDtFQUNFLFlBQVcsRUFDWjs7QUFDRDtFQUNFLGlCQUFnQixFQUNqQjs7QUFDRDtFQUNFLGdCQUFlLEVBQ2hCOztBQUNEO0VBQ0UsMkJBQWtCO0VBQWxCLHdCQUFrQjtFQUFsQixtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxnQ0FBOEIs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cUhLLG9CQUFtQixFQUNuQjs7QUF0SEw7RUF5SEssb0JBQW1CLEVBQ25COztBQTFITDtFQTZISyxvQkFBbUIsRUFDbkI7O0FBOUhMO0VBaUlLLG9CQUFtQixFQUNuQjs7QUFsSUw7RUFxSUssb0JBQW1CLEVBQ25COztBQXRJTDtFQXlJSyxvQkFBbUIsRUFDbkI7O0FBTUwsdUJBQXVCO0FBRXZCO0VBQ0UsYUFBWTtFQUNaLGtEQUF5QztVQUF6QywwQ0FBeUMsRUFBRTs7QUFFN0M7RUFDRTtJQUNFLHdCQUFvQjtJQUNwQixxRUFFd0IsRUFBQTtFQUMxQjtJQUNFLGFBQVk7SUFDWixxRUFFd0IsRUFBQTtFQUMxQjtJQUNFLDREQUV3QixFQUFBO0VBQzFCO0lBQ0UsbURFdnVFVSxFQUFBLEVBQUE7O0FGdXRFZDtFQUNFO0lBQ0Usd0JBQW9CO0lBQ3BCLHFFQUV3QixFQUFBO0VBQzFCO0lBQ0UsYUFBWTtJQUNaLHFFQUV3QixFQUFBO0VBQzFCO0lBQ0UsNERBRXdCLEVBQUE7RUFDMUI7SUFDRSxtREV2dUVVLEVBQUEsRUFBQTs7QUY2dUVkO3VDQUN1QyIsImZpbGUiOiJpbmRleC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvK0NvbmRlbnNlZDo0MDAsMzAwLDMwMGl0YWxpYyw0MDBpdGFsaWMsNzAwLDcwMGl0YWxpY3xSb2JvdG86NDAwLDcwMCw3MDBpdGFsaWMsNDAwaXRhbGljKTtcclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1LYW5pdDo0MDAsNTAwLDYwMCw3MDAsOTAwJyk7XHJcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVNwYWNlK01vbm86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJyk7XHJcblxyXG5cclxuQGltcG9ydCAnX3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ2hlbHBlcnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xhbmRpbmcvbGFuZGluZyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGF5b3V0L2xheW91dCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMva2l0L2tpdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMva2l0L3Nob3dLaXQvc2hvd0tpdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RvcmUvc3RvcmVNb2RhbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdXBsb2FkL2NzdlVwbG9hZCc7XHJcbkBpbXBvcnQgJ2NvcmUvYW5pbWF0aW9uL2JhY2tkcm9wL2xvYWRpbmdCYWNrZHJvcCc7XHJcbkBpbXBvcnQgJ2NvcmUvYW5pbWF0aW9uL2FuaW1hdGlvbi5kaXJlY3RpdmUnO1xyXG5cclxuLyoqXHJcbiAqICBNT1pJTExBLVNQRUNJRklDIENTU1xyXG4gKi9cclxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcclxuICAua2l0X2RldGFpbGVkIC5raXRfY2hhcnQgLmNvbnRhaW5lciAua2l0X2NoYXJ0X2xlZnQgLnNlbnNvcl9zZWxlY3QgLnNlbnNvcl9pY29uX3NlbGVjdGVkIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcclxuICB9XHJcbiAgLmtpdF9kZXRhaWxlZCAua2l0X2NoYXJ0IC5jb250YWluZXIgLmtpdF9jaGFydF9sZWZ0IC5zZW5zb3JfY29tcGFyZSBtZC1zZWxlY3Qge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG4gIGJvZHkgLmtpdF9kZXRhaWxlZCAua2l0X2NoYXJ0IC5jb250YWluZXIgLmtpdF9jaGFydF9sZWZ0IC5zZW5zb3JfZGF0YSB7XHJcbiAgICBtYXJnaW46IDUlIDAgNCUgMDtcclxuICB9XHJcblxyXG4vKiAgIHNlY3Rpb24ubWFwIHtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgfSAqL1xyXG59XHJcblxyXG4vKipcclxuICogIElOUFVUIENTU1xyXG4gKi9cclxuLy9cclxuLy8gOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogV2ViS2l0IGJyb3dzZXJzICovXHJcbi8vICAgY29sb3I6ICRmb250X2NvbG9yX3doaXRlO1xyXG4vLyB9XHJcbi8vIDotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDQgdG8gMTggKi9cclxuLy8gICBjb2xvcjogJGZvbnRfY29sb3Jfd2hpdGU7XHJcbi8vICAgb3BhY2l0eTogIDE7XHJcbi8vIH1cclxuLy8gOjotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDE5KyAqL1xyXG4vLyAgIGNvbG9yOiAgJGZvbnRfY29sb3Jfd2hpdGU7XHJcbi8vICAgb3BhY2l0eTogIDE7XHJcbi8vIH1cclxuLy8gOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xyXG4vLyAgIGNvbG9yOiAkZm9udF9jb2xvcl93aGl0ZTtcclxuLy8gfVxyXG4vL1xyXG4vLyA6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBXZWJLaXQgYnJvd3NlcnMgKi9cclxuLy8gICBjb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2JhY2tncm91bmQ7XHJcbi8vIH1cclxuLy8gOmZvY3VzOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCAqL1xyXG4vLyAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDtcclxuLy8gICBvcGFjaXR5OiAgMTtcclxuLy8gfVxyXG4vLyA6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggMTkrICovXHJcbi8vICAgY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xyXG4vLyAgIG9wYWNpdHk6ICAxO1xyXG4vLyB9XHJcbi8vIDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi9cclxuLy8gICBjb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2JhY2tncm91bmQ7XHJcbi8vIH1cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCc7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG59XHJcblxyXG5hLmFib3V0e1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6ICRibHVlO1xyXG59XHJcblxyXG5saS5wb2xpY3ktdG9jIHtcclxuICBwYWRkaW5nLWxlZnQ6IDJweDtcclxuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xyXG5cclxuICBhIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5wb2xpY3ktdG9jI2hlYWRlcntcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4uaWNvbl9sYWJlbHtcclxuICB3aWR0aDogMTRweDtcclxuICBoZWlnaHQ6IDE0cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogLTJweDtcclxuICBzdmcge1xyXG4gICAgZmlsbDogJG9mZl9ibGFjaztcclxuICB9XHJcbn1cclxuXHJcbi5pY29uX2xhYmVsX29ubGluZSB7XHJcbiAgc3ZnIHtcclxuICAgIGZpbGw6ICRncmVlbiAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLmljb25fbGFiZWxfdW5rbm93biB7XHJcbiAgc3ZnIHtcclxuICAgIGZpbGw6ICR5ZWxsb3cgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5pY29uX2xhYmVsX29mZmxpbmUge1xyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiAjRjQzRDREICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICAqIFRZUE9HUkFQSFlcclxuICAqL1xyXG5cclxuaDF7XHJcbiAgZm9udC1zaXplOiAyLjJlbTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcbmgyIHtcclxuICBmb250LXNpemU6IDEuN2VtO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuaDMge1xyXG4gIGZvbnQtc2l6ZTogMS40ZW07XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5oNCB7XHJcbiAgZm9udC1zaXplOiAxLjJlbTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG5cclxucCB7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxudGQge1xyXG4gIHBhZGRpbmc6NXB4O1xyXG59XHJcblxyXG5pbnB1dHtcclxuICBmb250LWZhbWlseTonUm9ib3RvIENvbmRlbnNlZCc7XHJcbn1cclxuXHJcbi5sYWJlbCwgLnRhZywgLnN0YXRle1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OjI0cHg7XHJcbiAgYm9yZGVyLXJhZGl1czoyMHB4O1xyXG4gIHBhZGRpbmc6IDNweCA4cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcblxyXG4gIG1kLWljb257XHJcbiAgICBtYXJnaW4tbGVmdDo0cHg7XHJcbiAgICBoZWlnaHQ6MTFweDtcclxuICAgIHdpZHRoOjExcHg7XHJcbiAgICBtYXJnaW4tdG9wOi0zcHg7XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICB9XHJcbiAgJltjbGlja2FibGVde1xyXG4gICAgY3Vyc29yOnBvaW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4ubGFiZWx7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvd19saWdodDtcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxuICBtZC1pY29uIHN2ZyBwYXRoe1xyXG4gICAgZmlsbDogJHRlcmNpYXJ5X2NvbG9yX2xpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuLm1kLXRvb2xiYXItdG9vbHN7XHJcbiAgbWQtaWNvbiB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi50YWcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3dfbGlnaHRlcjtcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxuICBtZC1pY29uIHN2ZyBwYXRoe1xyXG4gICAgZmlsbDogJHNlY29uZGFyeV9jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi5sZWFmbGV0LWNvbnRhaW5lciAudGFnLCAubGVhZmxldC1jb250YWluZXIgLmxhYmVsLFxyXG4ubGVhZmxldC1jb250YWluZXIgLnN0YXRle1xyXG4gIGZvbnQtc2l6ZToxZW07XHJcbn1cclxuXHJcbi5sZWFmbGV0LXRvcHtcclxuICAgdG9wOjkzcHg7XHJcbn1cclxuXHJcbnNlY3Rpb24uaW5mb3tcclxuICBoMXtcclxuICAgIGZvbnQtc2l6ZToxLjNlbTtcclxuICB9XHJcbn1cclxuXHJcbmF7XHJcbiAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgJjpob3ZlciwgJjphY3RpdmV7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogJGJsdWU7XHJcbiAgfVxyXG59XHJcblxyXG5hLmZvb3Rlci1saW5re1xyXG4gIGNvbG9yOiAkeWVsbG93O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpO1xyXG4gICY6aG92ZXIsICY6YWN0aXZle1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgfVxyXG59XHJcbi8vIGEubWQtYnV0dG9uLCBhLFxyXG4vLyBidXR0b24ubWQtYnV0dG9uLCBidXR0b257XHJcbi8vICAgLy8gY29sb3IgaGVyZSBvdmVyd3JpdGVzIE1BUCBhbmQgQ09NTVVOSVRZIGluIG5hdmJhclxyXG4vLyAgIC8vIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XHJcbi8vIH1cclxuXHJcbi8qXHJcbiAgT3ZlcndyaXRlIGdsb2JhbCBtYXRlcmlhbCBkZXNpZ24sIGFsbG93IGljb25zIHRvIGJlIHNtYWxsZXJcclxuKi9cclxuXHJcbm1kLXRvb2xiYXJ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX25hdmJhciAhaW1wb3J0YW50O1xyXG4gIHotaW5kZXg6ICRsYXJnZV9wcmlvcml0eTtcclxuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICBtZC1pY29ue1xyXG4gICAgZmlsbDogd2hpdGUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgLy9oZWlnaHQ6IDY0cHg7XHJcbn1cclxuXHJcbm1kLWljb257XHJcbiAgLy8gRWZmZWN0cyBBTEwgaWNvbnMgb24gdGhlIHNpdGVcclxuICBtaW4td2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbm1kLXNlbGVjdHtcclxuICBtZC1zZWxlY3QtdmFsdWV7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjY2NjY2NjNzUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbmEubWQtYnV0dG9uIGg0LCBhLm1kLWJ1dHRvbiAuaDR7XHJcbiAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuYS53YXJuLFxyXG5idXR0b24ud2FybntcclxuICBjb2xvcjogJGFsZXJ0X3JlZDtcclxuICAvLyBzdmcge1xyXG4gIC8vICAgLy8gZmlsbDogJGFsZXJ0X3JlZDtcclxuICAvLyB9XHJcbn1cclxuXHJcbi5ib2xke1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5kaXZbYXBpLWtleV17XHJcbiAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgLmFwaV9rZXlfbnVtYmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICB3aWR0aDogNDIwcHg7XHJcbiAgfVxyXG4gIC5hcGlfa2V5X3JlZnJlc2hfYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNEQkRCREI7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG1kLWljb24ge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBtZC1pY29uIHtcclxuICAgIG9wYWNpdHk6IC41O1xyXG4gIH1cclxufVxyXG5cclxuLmluZm9fb3ZlcmxheXtcclxuICBoMntcclxuICAgIGNvbG9yOndoaXRlO1xyXG4gIH1cclxuICBwe1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGNvbG9yOiR0ZXJjaWFyeV9jb2xvcl9saWdodDtcclxuICB9XHJcbn1cclxuXHJcbi5kYXJre1xyXG4gIGgxLCBoMntcclxuICAgIGNvbG9yOndoaXRlO1xyXG4gIH1cclxuICBoMSwgaDJ7XHJcbiAgICBtYXJnaW46MDtcclxuICB9XHJcbiAgaDMsIGg0LCAuaDQsIGF7XHJcbiAgICBjb2xvcjogJGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEFOR1VMQVIgTUFURVJJQUwgT1ZFUlJJRElOR1xyXG4gKi9cclxuXHJcblxyXG5tZC1zZWxlY3QtbWVudSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbn1cclxubWQtc2VsZWN0LFxyXG5tZC1zZWxlY3QtbWVudSB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5tZC1zZWxlY3Q6bm90KFtkaXNhYmxlZF0pOmZvY3VzIC5tZC1zZWxlY3QtdmFsdWUge1xyXG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICM2Qjg2OEQ7XHJcbn1cclxuXHJcbi8vIGJ1dHRvbi5tZC1wcmltYXJ5e1xyXG4vLyAgIC8vIEdldCBuZXcga2l0IHBvcHVwLCBidXR0b24gY29sb3JcclxuLy8gICAvLyBBbHNvIGludGVyZmVyZXMgd2l0aCBraXRzL2VkaXQgc2F2ZSBidXR0b25cclxuLy8gICAvLyBjb2xvcjokdGVyY2lhcnlfY29sb3IgIWltcG9ydGFudDtcclxuLy8gICAvLyBmb250LXNpemU6MThweDtcclxuLy8gfVxyXG4vLyAubWQtYnV0dG9uLm1kLWZsYXQubWQtcHJpbWFyeSB7XHJcbi8vICAgLy9tYXJnaW46IDBweDtcclxuLy8gICAvL2JhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuLy8gICAvL2NvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4vLyB9XHJcblxyXG4ubWQtYnV0dG9uLm1kLXByaW1hcnkubWQtZmxhdDpub3QoW2Rpc2FibGVkXSk6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5tZC1idXR0b24ubWQtcHJpbWFyeS5tZC1mbGF0Om5vdChbZGlzYWJsZWRdKTpmb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLm1kLWJ1dHRvbi5maWxsd2lkdGgge1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbm1kLWlucHV0LWNvbnRhaW5lcjpub3QoLm1kLWlucHV0LWludmFsaWQpLm1kLWlucHV0LWZvY3VzZWQge1xyXG4gIGxhYmVsIHtcclxuICAgIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XHJcbiAgfVxyXG5cclxuICAubWQtaW5wdXQge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTIpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEFMRVJUIENPTVBPTkVOVFxyXG4gKi9cclxuXHJcbi5tZC10b2FzdC1jb250ZW50IHtcclxuICBib3gtc2hhZG93OiB1bnNldCAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5tZC10b2FzdCB7XHJcbiAgLy8gVE9ETzogQnVnIHdoZW4gYSB0b2FzdCBpcyBvbiBzY3JlZW4sIHRoZSBib2R5IGdldHMgY2xhc3M9J21kLXRvYXN0LW9wZW4tYm90dG9tJ1xyXG4gIC8vIFdoZXJlIGRvZXMgdGhhdCBjb21lIGZyb20/XHJcbiAgLy8gSWYgdGhlcmUgaXMgYSBzaW1pbGFyICpvcGVuLXRvcCwgd2UgY2FuIHJlbW92ZSB0aGUgQ1NTIGJvdHRvbSwgdG9wXHJcbiAgYm90dG9tOiB1bnNldCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgYW5ndWxhciBkZWZhdWx0XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIG9wYWNpdHk6IDAuOTU7XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiA2NHB4ICFpbXBvcnRhbnQ7IC8vIFN0YXJ0IHRoZSB0b2FzdCBhdCB0b3AgYmVsb3cgbmF2YmFyLlxyXG4gIG1pbi13aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAxNTtcclxuICBmb250LWZhbWlseTogS2FuaXQ7XHJcblxyXG4gIC5hbGVydF90eXBlSWNvbiB7XHJcbiAgICB3aWR0aDogMTZweDtcclxuICAgIGhlaWdodDogMTZweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTZweDtcclxuICB9XHJcblxyXG4gIC5hbGVydF9jbG9zZUljb24ge1xyXG4gICAgd2lkdGg6IDEwLjVweDtcclxuICAgIGhlaWdodDogMTAuNXB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG5cclxuICAuYWxlcnRfYnV0dG9uIHtcclxuICAgIHBhZGRpbmc6IDBweCAxMnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgfVxyXG59XHJcblxyXG5tZC10b2FzdC5yZWQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRhbGVydF9yZWQ7XHJcbn1cclxuXHJcbm1kLXRvYXN0LmdyZWVuIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnRfZ3JlZW47XHJcbn1cclxuXHJcbm1kLXRvYXN0LmJsdWUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG59XHJcblxyXG5tZC10b2FzdC55ZWxsb3cge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbn1cclxuXHJcbm1kLWNoZWNrYm94Lm1kLWNoZWNrZWQgLm1kLWljb24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XHJcbn1cclxubWQtY2hlY2tib3ggLm1kLWxhYmVsIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG59XHJcbm1kLWNoZWNrYm94IC5tZC1sYWJlbCBzcGFuIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLyoqXHJcbiAqICBTUElOTkVSL1BST0dSRVNTIEJBUiBDT01QT05FTlRTXHJcbiAqL1xyXG5cclxubWQtcHJvZ3Jlc3MtbGluZWFyLm1kLWJhci5ncmVlbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xyXG59XHJcbm1kLXByb2dyZXNzLWxpbmVhci5ncmVlbiAubWQtY29udGFpbmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRncmVlbiwgMCk7XHJcbn1cclxubWQtcHJvZ3Jlc3MtbGluZWFyLmdyZWVuIC5tZC1iYXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcclxufVxyXG5tZC1wcm9ncmVzcy1saW5lYXIubWQtYmFye1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG59XHJcbm1kLXByb2dyZXNzLWxpbmVhci5tZC1odWUtMyAubWQtY29udGFpbmVye1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsdWUsIDAuMDUpO1xyXG59XHJcbm1kLXByb2dyZXNzLWxpbmVhci5tZC1odWUtMyAubWQtYmFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxufVxyXG5cclxuLmtpdF9zcGlubmVyIHtcclxuICB6LWluZGV4OiAyMDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYm90dG9tOiA2cHg7XHJcbn1cclxuXHJcbi5jaGFydF9zcGlubmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAyMDBweDtcclxuICBsZWZ0OiA1NyU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgQ09PS0lFUyBQT0xJQ1kgQ09NUE9ORU5UXHJcbiAqL1xyXG5cclxuIC5jb29raWVzLXBvbGljeV9jb250YWluZXJ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDEpO1xyXG4gICAgY29sb3I6ICR5ZWxsb3c7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOjVweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8vaGVpZ2h0OiA0dmg7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBsaW5lLWhlaWdodDogNHZoO1xyXG5cclxuICAgIGF7XHJcbiAgICAgIGNvbG9yOiByZ2JhKCR5ZWxsb3csIDAuNik7XHJcbiAgICB9XHJcbiB9XHJcblxyXG5cclxuLy8gTm8gZGF0YSBiYWNrZHJvcFxyXG4ubWQtbm9EYXRhQmFja2Ryb3Age1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogOTYgKyAyODVweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblxyXG4gIC5ibG9jayB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgfVxyXG4gIC50aXRsZSwgLm1lc3NhZ2Uge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAudGl0bGUge1xyXG4gICAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICAubWVzc2FnZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiAkYmx1ZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgTUFQXHJcbiAqL1xyXG5cclxuLm1hcF9zdGF0ZSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi8vIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDEwMjRweCkge1xyXG4vLyAgIC5tYXBfc3RhdGUge1xyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuc2VjdGlvbi5tYXAge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIHotaW5kZXg6IDE7Ly8kc21hbGxfcHJpb3JpdHk7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNjRweDtcclxuXHJcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC1oZWlnaHQ6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiAxMDAwcHgpIHtcclxuICAgIGhlaWdodDogOTUwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiAxMDAwcHgpIGFuZCAobWluLWhlaWdodDogODAwcHgpIHtcclxuICAgIGhlaWdodDogNzAwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA4MDBweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xyXG4gICAgaGVpZ2h0OiA1NTBweDtcclxuICB9XHJcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC1oZWlnaHQ6IDYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDQwMHB4KSB7XHJcbiAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gIH1cclxuXHJcblxyXG4gIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gIH1cclxufVxyXG5cclxuLm1kLXNpZGVuYXYtcmlnaHQge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxufVxyXG5cclxuLypcclxuICBDT1JFIENISVAgQ09NUE9ORU5UXHJcbiAqL1xyXG4uY2hpcHMge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgZGl2LmNoaXBzX3Jvd3tcclxuICAgIGhlaWdodDo0MC41cHg7XHJcbiAgfVxyXG5cclxuICAubGFiZWwsIC50YWd7XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjY1KTtcclxuICB9XHJcbn1cclxuLmNoaXAge1xyXG4gIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nOiAwcHggMTBweCAwcHggMTRweDtcclxuICBtYXJnaW46IGF1dG8gNXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgaGVpZ2h0OjMwcHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDEzcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI5cHg7XHJcblxyXG4gIC5jaGlwX25hbWUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gIH1cclxuICAuY2hpcF9pY29uIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcbiAgICBtZC1pY29uIHtcclxuICAgICAgd2lkdGg6IDhweDtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm1hcF9maWx0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjY1KTtcclxuICB9XHJcbiAgJi5raXRfdGFnIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDVweDtcclxuICB9XHJcbn1cclxuLypcclxuICBNQVAgRklMVEVSU1xyXG4qL1xyXG4ubWFwX2xlZ2VuZCB7XHJcblxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgLmNoaXBze1xyXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuXHJcbiAgLm1hcF9sZWdlbmRfX2ZpbHRlcnNDb250YWluZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHdpZHRoOiAxMjRweDtcclxuICAgIGhlaWdodDogODFweDtcclxuXHJcbiAgICBib3JkZXItcmFkaXVzOjRweDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuNjUpO1xyXG4gICAgc3ZnLCBwIHtcclxuICAgICAgZmlsbDogJG9mZl9ibGFjaztcclxuICAgIH1cclxuXHJcblxyXG4gICAgLm1hcF9sZWdlbmRfX2ZpbHRlcnNSb3d7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ3JheTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cclxuICAgICAgLm1hcF9maWx0ZXJfYnV0dG9ue1xyXG4gICAgICAgIGJveC1zaGFkb3c6bm9uZTtcclxuICAgICAgICBwe1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4ubWFwX2ZpbHRlcl9idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIG1hcmdpbi1yaWdodDogMTVweDtcclxuICB3aWR0aDogMjZweDtcclxuICBoZWlnaHQ6IDI2cHg7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwwLDAsMC42NSk7XHJcblxyXG4gIG1kLWljb24ge1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgfVxyXG59XHJcbi5tZC1idXR0b24ubWFwX2ZpbHRlcl9idXR0b246aG92ZXIsIC5tZC1idXR0b24ubWFwX2ZpbHRlcl9idXR0b246Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5cclxuXHJcbi8qXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbktJVCBUQUdTIE1PRFVMRVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4qL1xyXG5cclxuLmtpdFRhZ3NfX3NlY3Rpb257XHJcbiAgbWFyZ2luLXRvcDogMzc2cHg7XHJcblxyXG4gIC5raXRUYWdzX19saXN0Q29udGFpbmVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlcjtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgfVxyXG5cclxuICAua2l0VGFnc19fY29udGFpbmVye1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgLmtpdFRhZ3NfX3RleHRDb250YWluZXJ7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgLmtpdFRhZ3NfX3RleHRFbGVtZW50e1xyXG4gICAgICAgIGZsZXgtYmFzaXM6NDAlO1xyXG4gICAgICAgIGZsZXgtZ3JvdzowO1xyXG4gICAgICAgIG1pbi13aWR0aDogMzAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiBDT1JFIEZPUk0gQ09NUE9ORU5UXHJcbiAqL1xyXG5cclxuLmZvcm1fY29udGFpbmVyIHtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweCAwcHggM3B4IDNweDtcclxufVxyXG4uZm9ybV9jb250ZW50Q29udGFpbmVyIHtcclxuICB3aWR0aDogOTIlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcbi5mb3JtX2ZpZWxkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5mb3JtX2Vycm9ycyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMTUlO1xyXG4gIGxlZnQ6IDUlO1xyXG4gIGNvbG9yOiByZWQ7XHJcbiAgZm9udC1zaXplOiAwLjdlbTtcclxuICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLmZvcm1fY2xvc2VJY29uIHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgd2lkdGg6IDE0cHg7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG4gIG1hcmdpbjogMTJweDtcclxuXHJcbiAgbWQtaWNvbiB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMHB4O1xyXG4gICAgbGVmdDogMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLm1kLXByaW1hcnkuZm9ybV9idXR0b24ge1xyXG4gIGNvbG9yOiAkZm9udF9jb2xvcl93aGl0ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XHJcbiAgaGVpZ2h0OiA2NHB4O1xyXG4gIGJvdHRvbTogMHB4O1xyXG4gIGxlZnQ6IDBweDtcclxuICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDJweCAycHg7XHJcbn1cclxuXHJcblxyXG4uZm9ybV90aXRsZSB7XHJcbiAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4uZm9ybV9tZXNzYWdlSGVhZGVyIHtcclxuICBmb250LXNpemU6IDEuNWVtO1xyXG4gIGNvbG9yOiAkc2Vjb25kYXJ5X2NvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIG1hcmdpbi10b3A6IDUwcHg7XHJcbn1cclxuLmZvcm1fbWVzc2FnZVN1YmhlYWRlciB7XHJcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xyXG4gIGNvbG9yOiByZ2JhKDAsOTgsMTIzLDAuNTQpO1xyXG4gIGxpbmUtaGVpZ2h0OiAwLjU7XHJcbn1cclxuXHJcbi5mb3JtX21lc3NhZ2VEZXNjcmlwdGlvbiB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qXHJcbiAgQ09SRSBMQVJHRSBERVZJQ0VTIEZPUk1cclxuKi9cclxuQG1lZGlhIChtaW4td2lkdGg6IDUwMXB4KSB7XHJcbiAgLmZvcm1fY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAzNDBweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbiAgLmZvcm1fbWVzc2FnZUNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIH1cclxuICAubWQtcHJpbWFyeS5mb3JtX2J1dHRvbiB7XHJcbiAgICB3aWR0aDogMzQwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgQ09SRSBNT0JJTEUgREVWSUNFUyBGT1JNXHJcbiovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcclxuICAuZm9ybV9jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDgwJTtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICB9XHJcbiAgLm1kLXByaW1hcnkuZm9ybV9idXR0b24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gIH1cclxufVxyXG5cclxuLy8gb3ZlcnJpZGUgZm9yIElwaG9uZSA0XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSBhbmQgKC13ZWJraXQtZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKGRldmljZS1hc3BlY3QtcmF0aW86IDIvMykge1xyXG4gIC5yZWNvdmVyeV9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICB9XHJcbiAgLmZvcm1fZmllbGQge1xyXG4gICAgcGFkZGluZzogNSUgMDtcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAgUkVDT1ZFUlkgRk9STVxyXG4qL1xyXG4ucmVjb3ZlcnlfY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwcHggYXV0bztcclxuICBtYXJnaW4tYm90dG9tOjEwMHB4O1xyXG4vLyAgaGVpZ2h0OiAzNzZweDtcclxufVxyXG5cclxuLmZvcm1SZWNvdmVyeV9maWVsZCB7XHJcbiAgcGFkZGluZzogMTAlIDA7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA1MDFweCkge1xyXG4gIC5yZWNvdmVyeV9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXRvcDogODBweDtcclxuICB9XHJcbiAgLmZvcm1SZWNvdmVyeV9lcnJvcnMge1xyXG4gICAgYm90dG9tOiAxNSU7XHJcbiAgICBsZWZ0OiA1JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gIC5yZWNvdmVyeV9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMjAlO1xyXG4gIH1cclxuICAuZm9ybVJlY292ZXJ5X2Vycm9ycyB7XHJcbiAgICBib3R0b206IDIzJTtcclxuICAgIGxlZnQ6IDUlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogNDgwcHgpIGFuZCAoLXdlYmtpdC1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAoZGV2aWNlLWFzcGVjdC1yYXRpbzogMi8zKSB7XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gICAgLmZvcm1SZWNvdmVyeV9maWVsZCB7XHJcbiAgICAgIHBhZGRpbmc6IDIlIDA7XHJcbiAgICB9XHJcbiAgICAuZm9ybVJlY292ZXJ5X2Vycm9ycyB7XHJcbiAgICAgIGJvdHRvbTogMjklO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLypcclxuICBSRVNFVCBGT1JNXHJcbiovXHJcbi5mb3JtUmVzZXRfZmllbGQge1xyXG4gIHBhZGRpbmc6IDclIDA7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA1MDFweCkge1xyXG4gIC5mb3JtUmVzZXRfZXJyb3JzIHtcclxuICAgIGJvdHRvbTogNSU7XHJcbiAgICBsZWZ0OiA1JTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gIC5mb3JtUmVzZXRfZXJyb3JzIHtcclxuICAgIGJvdHRvbTogMTglO1xyXG4gICAgbGVmdDogMSU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA0ODBweCkgYW5kICgtd2Via2l0LWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiAyLzMpIHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcclxuICAgIC5mb3JtUmVzZXRfZXJyb3JzIHtcclxuICAgICAgdG9wOiA2NSU7XHJcbiAgICB9XHJcbiAgICAuZm9ybVJlc2V0X2ZpZWxkIHtcclxuICAgICAgcGFkZGluZzogMyUgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBNT1ZFIERPV04gRUZGRUNUIE9OIFNDUk9MTFxyXG4gKi9cclxuXHJcbi5tb3ZlX2Rvd24ge1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCk7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMycHgpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMnB4KTtcclxufVxyXG5cclxuLypcclxuICBNQVJLRVIgQU5EIFBPUFVQIE1BUktFUlxyXG4qL1xyXG5cclxuLm1hcmtlclNtYXJ0Q2l0aXplbk5vcm1hbCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHllbGxvdztcclxuICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDAsMCwwLDAuMzApO1xyXG59XHJcblxyXG4ubWFya2VyU21hcnRDaXRpemVuT25saW5lIHtcclxuICBib3JkZXI6IDJweCBzb2xpZCAkeWVsbG93O1xyXG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4IHJnYmEoMCwwLDAsMC4zMCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkeWVsbG93LCAwLjUpO1xyXG59XHJcblxyXG4ubWFya2VyRXhwZXJpbWVudGFsTm9ybWFsIHtcclxuICBib3JkZXI6IDJweCBzb2xpZCAkYmFja2dyb3VuZF9ibHVlX21pZHRvbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgwLDAsMCwwLjMwKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX21pZHRvbmU7XHJcbn1cclxuXHJcbi8qIEBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDAuMjtcclxuICB9XHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMC4yO1xyXG4gIH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDAuMjtcclxuICB9XHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMC4yO1xyXG4gIH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgcHVsc2Uge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDAuMjtcclxuICB9XHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMC4yO1xyXG4gIH1cclxufVxyXG5ALW8ta2V5ZnJhbWVzIHB1bHNlIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwLjI7XHJcbiAgfVxyXG4gIDUwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDAuMjtcclxuICB9XHJcbn0gKi9cclxuXHJcbi5tYXJrZXJTbWFydENpdGl6ZW5PZmZsaW5lIHtcclxuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDAsMCwwLCAwLjIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4IHJnYmEoMCwwLDAsMC4zMCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xyXG59XHJcblxyXG4vKiAubWFya2VyX2JsaW5rIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBwdWxzZSAycyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgLW1zLWFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xyXG4gIGFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xyXG59ICovXHJcblxyXG4ucG9wdXAge1xyXG4gIHdpZHRoOiAxMDElOztcclxuICBoZWlnaHQ6IDEzNXB4O1xyXG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCdcclxufVxyXG5cclxuLnBvcHVwX3RvcCB7XHJcbiAgaGVpZ2h0OiA3MnB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfbGlnaHQ7XHJcbiAgcGFkZGluZy10b3A6NXB4O1xyXG5cclxuICBhIHtcclxuICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkZ3JleV9kYXJrZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucG9wdXBfbmFtZSB7XHJcbiAgICBwYWRkaW5nOiAwIDAgMXB4IDhweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuICAucG9wdXBfdHlwZSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgcGFkZGluZzogMXB4IDAgM3B4IDhweDtcclxuICB9XHJcbiAgLnBvcHVwX3RpbWUge1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgcGFkZGluZzogMnB4IDAgMCA4cHg7XHJcblxyXG4gICAgbWQtaWNvbiB7XHJcbiAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnBvcHVwX2JvdHRvbSB7XHJcbiAgaGVpZ2h0OiA2OHB4O1xyXG5cclxuICAucG9wdXBfbG9jYXRpb24ge1xyXG4gICAgcGFkZGluZzogNXB4IDAgMCA4cHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gICAgbWQtaWNvbiB7XHJcbiAgICAgIHdpZHRoOiA4LjRweDtcclxuICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgIH1cclxuICB9XHJcbiAgLnBvcHVwX2xhYmVscyB7XHJcbiAgICBwYWRkaW5nOiA4cHggMCAwIDhweDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuXHJcbiAgICAvLyBzcGFuIHtcclxuICAgIC8vICAgLy8gTWFrZSBiYWxsb29ucyBvbiBtYXAgc21hbGxlclxyXG4gICAgLy8gICAvL2JvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAvLyAgIC8vbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgLy8gICAvL3BhZGRpbmc6IDNweCA4cHg7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgdGFnLCBzcGFuIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLnBvcHVwX2ljb24gc3ZnOm50aC1jaGlsZCgyKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vKiBLaXQgdHlwZSBjb2xvcnMga2l0VXRpbHMuc2VydmljZS5qcyA6OiBjbGFzc2lmeSgpKi9cclxuXHJcbi5zY2sge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbn1cclxuLnVua25vd24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGdyZXk7XHJcbn1cclxuLyoqXHJcbiAqIE9WRVJSSURFIExFQUZMRVRcclxuICovXHJcblxyXG4ubGVhZmxldC1sZWZ0IHtcclxuICAvLyBUaGlzIGlzIGEgaGFjay4gVGhlIHJpZ2h0IHdheSBpcyB0byBjaGFuZ2UgdGhlIGxlYWZsZXQgQVBJLiBTZWUgdGhlIGRvY3M6XHJcbiAgLy8gaHR0cDovL2xlYWZsZXRqcy5jb20vcmVmZXJlbmNlLTAuNy43Lmh0bWwjY29udHJvbC1wb3NpdGlvblxyXG4gIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgcmlnaHQ6IDExcHg7XHJcbiAgdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciB7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmxlYWZsZXQtcG9wdXAtY29udGVudCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1pbi13aWR0aDogMjQ1cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogLTFweDtcclxuICBsZWZ0OiAtMXB4O1xyXG5cclxuICBwIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi5sZWFmbGV0LXBvcHVwLWNsb3NlLWJ1dHRvbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmxlYWZsZXQtb3ZlcmxheS1wYW5lIC5sZWFmbGV0LXpvb20tYW5pbWF0ZWQgcGF0aCB7XHJcbiAgc3Ryb2tlOiBncmV5O1xyXG59XHJcbi8vIG92ZXJyaWRlIHotaW5kZXggb2YgbWFwIGNvbnRyb2xzXHJcbi5sZWFmbGV0LXRvcC5sZWFmbGV0LWxlZnQge1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuLmxlYWZsZXQtYm90dG9tLmxlYWZsZXQtcmlnaHQge1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5tYXJrZXItY2x1c3RlciB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4IHJnYmEoMCwwLDAsMC4yMCk7XHJcbiAgZGl2IHtcclxuICAgIC8vbWFyZ2luLXRvcDogLTJweDtcclxuICAgIC8vbWFyZ2luLWxlZnQ6IC0ycHg7XHJcbiAgICAvL3dpZHRoOiA0MHB4O1xyXG4gICAgLy9oZWlnaHQ6IDQwcHg7XHJcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgLy9saW5lLWhlaWdodDogNDBweDtcclxuICAgIC8vZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbn1cclxuXHJcbi5tYXJrZXItY2x1c3Rlci1zbWFsbCwgLm1hcmtlci1jbHVzdGVyLW1lZGl1bSwgLm1hcmtlci1jbHVzdGVyLWxhcmdlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoJHllbGxvdywgMC44KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHllbGxvdywgMC4zKTtcclxuICBkaXYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDI1NSwxNjgsMCk7XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG4gIFBJQ0tFUiBDT01QT05FTlRcclxuKi9cclxuXHJcbi5waWNrZXIge1xyXG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG59XHJcblxyXG4ucGlja2VyX193ZWVrZGF5IHtcclxuICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG59XHJcblxyXG4ucGlja2VyX19uYXYtLXByZXY6OmJlZm9yZSB7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwLjc1ZW0gc29saWQgJGdyZXlfZGFya2VyO1xyXG59XHJcblxyXG4ucGlja2VyX19uYXYtLW5leHQ6OmJlZm9yZSB7XHJcbiAgYm9yZGVyLWxlZnQ6IDAuNzVlbSBzb2xpZCAkZ3JleV9kYXJrZXI7XHJcbn1cclxuXHJcbi5waWNrZXJfX2J1dHRvbi0tdG9kYXk6OmJlZm9yZSB7XHJcbiAgICBib3JkZXItdG9wOiAwLjY2ZW0gc29saWQgJGJsdWU7XHJcbn1cclxuXHJcbi5waWNrZXJfX2hvbGRlci5waWNrZXJfY29udGFpbmVyIHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIHRyYW5zaXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6OmJlZm9yZSB7XHJcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgJHJlZDtcclxufVxyXG4ucGlja2VyX19idXR0b24tLWNsb3NlIHtcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxufVxyXG4ucGlja2VyX19idXR0b24tLXRvZGF5LCAucGlja2VyX19idXR0b24tLWNsZWFyIHtcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxufVxyXG4ucGlja2VyX19kYXktLWhpZ2hsaWdodGVkLCAucGlja2VyX19kYXktLXNlbGVjdGVkLCAucGlja2VyX19kYXktLXNlbGVjdGVkOmhvdmVyLCAucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0tc2VsZWN0ZWR7XHJcbiAgYmFja2dyb3VuZDogJHllbGxvdztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xyXG4gIGJvcmRlci1jb2xvcjogJHllbGxvdztcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxufVxyXG4ucGlja2VyX19kYXktLWluZm9jdXM6aG92ZXIsIC5waWNrZXJfX25hdi0tcHJldjpob3ZlciwgLnBpY2tlcl9fbmF2LS1uZXh0OmhvdmVyLCAucGlja2VyX19idXR0b24tLXRvZGF5OmhvdmVyLCAucGlja2VyX19idXR0b24tLWNsZWFyOmhvdmVyLCAucGlja2VyX19idXR0b24tLWNsb3NlOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOiAkeWVsbG93X2xpZ2h0ZXI7XHJcbiAgYm9yZGVyLWNvbG9yOiAkeWVsbG93X2xpZ2h0ZXI7XHJcbn1cclxuXHJcbi5kYXRlX3BpY2tlciB7XHJcbiAgaGVpZ2h0OiAyNHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9kYXJrZXI7XHJcbiAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnNlbGVjdF9pbWFnZSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4vKipcclxuICogRFJPUERPV04gTUVOVVxyXG4gKiBPdmVycmlkZSBzdHlsZSBmb3IgZHJvcGRvd24gbWVudSBmcm9tIGFuZ3VsYXItZHJvcGRvd25zIGRlcGVuZGVuY3lcclxuICovXHJcbiAud3JhcC1kZC1tZW51IC5kcm9wZG93biBsaSBhIHtcclxuICAgY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XHJcbiB9XHJcblxyXG4ua2l0X21lbnUge1xyXG5cclxuICAud3JhcC1kZC1tZW51IHtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gICAgcGFkZGluZzogMCAwO1xyXG4gIH1cclxuICAud3JhcC1kZC1tZW51IC5kcm9wZG93biB7XHJcbiAgICB0b3A6IDcwJTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICBsZWZ0OiAtMjVweDtcclxuICAgIHJpZ2h0OiAtMjVweDtcclxuICAgIGxpIGEge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmtpdExpc3RfcGFyZW50IHtcclxuXHJcbiAgLndyYXAtZGQtbWVudSB7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcbiAgLndyYXAtZGQtbWVudSAuZHJvcGRvd24ge1xyXG4gICAgdG9wOiA3MCU7XHJcbiAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgbGVmdDogLTI1cHg7XHJcbiAgICByaWdodDogLTI1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgICBsaSBhIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ua2l0X293bmVyX2Ryb3Bkb3duX2J1dHRvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgS0lUIExJU1RcclxuICpcclxuICovXHJcbi5raXRMaXN0IHtcclxuICBtYXJnaW46IDBweDtcclxuICBjb2xvcjogJGdyZXk7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFQUVDRjE7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0VBRUNGMTtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFQUVDRjE7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIHBhZGRpbmc6MTVweDtcclxuXHJcbiAgaDEsaDIsaDMsaDR7XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICB9XHJcbiAgcHtcclxuICAgIGxpbmUtaGVpZ2h0OiAwLjRlbTtcclxuICB9XHJcblxyXG4gIC53cmFwLWRkLW1lbnUge1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gIC53cmFwLWRkLW1lbnUgLmRyb3Bkb3duIHtcclxuICAgIHRvcDogNzAlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgIGxlZnQ6IC0yNXB4O1xyXG4gICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgbGkgYSB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNoaXBzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxMzBweDtcclxuICB9XHJcblxyXG59XHJcblxyXG4ua2l0TGlzdF9hdmF0YXIge1xyXG4gIHdpZHRoOiA0NHB4O1xyXG4gIGhlaWdodDogNDRweDtcclxuICBib3JkZXItcmFkaXVzOiAyMnB4O1xyXG59XHJcbi5raXRMaXN0X25hbWUge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgY29sb3I6ICRibHVlO1xyXG59XHJcbi5raXRMaXN0X3JpZ2h0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcblxyXG4gIC5jaGlwIC5jaGlwX25hbWUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbn1cclxuXHJcbi5raXRMaXN0X3N0YXRlIHtcclxuICBjb2xvcjp3aGl0ZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4ua2l0TGlzdF9zdGF0ZV9oYXNfcHVibGlzaGVkIHtcclxuICBjb2xvcjogJGdyZWVuO1xyXG59XHJcbi5raXRMaXN0X3N0YXRlX25ldmVyX3B1Ymxpc2hlZCB7XHJcbiAgY29sb3I6ICR5ZWxsb3c7XHJcbn1cclxuLmtpdExpc3Rfc3RhdGVfbm90X2NvbmZpZ3VyZWQge1xyXG4gIGNvbG9yOiAjRjQzRDREO1xyXG59XHJcblxyXG4uc3RhdHVzX29ubGluZSB7XHJcbiAgY29sb3I6ICRncmVlbjtcclxufVxyXG4uc3RhdHVzX3Vua25vd24ge1xyXG4gIGNvbG9yOiAkeWVsbG93O1xyXG59XHJcbi5zdGF0dXNfb2ZmbGluZSB7XHJcbiAgY29sb3I6ICNGNDNENEQ7XHJcbn1cclxuXHJcbi5raXRMaXN0X2Ryb3Bkb3duQnV0dG9uIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgaW1nIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi5raXRMaXN0X25vS2l0cyB7XHJcbiAgbGluZS1oZWlnaHQ6IDU7XHJcbn1cclxuXHJcbi5kcm9wZG93bi1pdGVtLWJ1dHRvbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG4uZHJvcGRvd24taXRlbS1idXR0b246aG92ZXJ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdyAhaW1wb3J0YW50XHJcbn1cclxuXHJcbm1kLWNhcmQua2l0LWxpc3QtaXRlbSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqICBVU0VSIFBST0ZJTEUgU1RBVEVcclxuICogIG1vc3Qgc3R5bGVzIGFyZSByZS11c2VkIG9uIG15IHByb2ZpbGUgc3RhdGVcclxuICovXHJcblxyXG4vKiBwcm9maWxlIGhlYWRlciAqL1xyXG4ucHJvZmlsZV9oZWFkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfbGlnaHRlcl9tZW51O1xyXG4gIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XHJcbiAgaGVpZ2h0OiAxOTJweDtcclxuICBtYXJnaW4tdG9wOiA2NHB4O1xyXG59XHJcbi5wcm9maWxlX2hlYWRlcl9hdmF0YXIge1xyXG4gIHdpZHRoOiAxMDBweDtcclxuICBoZWlnaHQ6IDEwMHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyOXB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAyN3B4O1xyXG59XHJcbi5wcm9maWxlX2hlYWRlcl9jb250ZW50IHtcclxuICA+ZGl2IHtcclxuICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgfVxyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiAkZ3JleV9saWdodGVyO1xyXG4gIH1cclxufVxyXG4ucHJvZmlsZV9oZWFkZXJfY29udGVudF9hdmF0YXIge1xyXG4gIHdpZHRoOiAxMnB4O1xyXG4gIGhlaWdodDogMTJweDtcclxuICBtYXJnaW4tcmlnaHQ6IDZweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAtMXB4O1xyXG59XHJcblxyXG4ucHJvZmlsZV9jb250ZW50IHtcclxuICBtaW4taGVpZ2h0OiA3MDBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLyogcHJvZmlsZSBzaWRlYmFyICovXHJcbi5wcm9maWxlX3NpZGViYXIge1xyXG4gIC8vbWluLWhlaWdodDogNDAwcHg7XHJcbiAgLy8gbWluLWhlaWdodDogaW5oZXJpdDtcclxuICAvLyB3aWR0aDogMjU2cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcclxuICBtaW4td2lkdGg6MjAwcHg7XHJcbn1cclxuLnByb2ZpbGVfc2lkZWJhcl90aXRsZSB7XHJcbiAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnByb2ZpbGVfc2lkZWJhcl9kZXNjcmlwdGlvbiB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG59XHJcblxyXG4ucHJvZmlsZV9zaWRlYmFyX2J1dHRvbiB7XHJcbiAgaGVpZ2h0OiA2NHB4O1xyXG4gIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XHJcbiAgc3ZnIHsgZmlsbDogJGJsdWU7IH1cclxufVxyXG5cclxuLnByb2ZpbGVfc2lkZWJhcl9hdmF0YXIge1xyXG4gIHdpZHRoOiAxMnB4O1xyXG4gIGhlaWdodDogMTJweDtcclxuICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAtMnB4O1xyXG59XHJcblxyXG4vKiBwcm9maWxlIG1haW4gY29udGVudCAqL1xyXG4ucHJvZmlsZV9jb250ZW50X21haW5fdG9wIHtcclxuICBtYXJnaW46IDAgMCA0MnB4IDIwcHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgTVkgUFJPRklMRSBTVEFURVxyXG4gKi9cclxuXHJcbi8vb3ZlcnJpZGUgYW5ndWxhci1tYXRlcmlhbFxyXG4ubXlQcm9maWxlX3N0YXRlIHtcclxuICBtZC1pbmstYmFye1xyXG4gICAgLy8gVGFicyB1bmRlcmxpbmUgY29sb3IgY3lhblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xyXG4gIH1cclxuICBtZC10YWIgbWQtdGFiLWxhYmVsIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIH1cclxuICBtZC10YWJzIG1kLXRhYiB7XHJcbiAgICBjb2xvcjogJGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xyXG4gIH1cclxuICBtZC10YWJzIG1kLXRhYi5hY3RpdmUge1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gIH1cclxuICBtZC10YWJzIG1kLXRhYnMtaW5rLWJhciB7XHJcbiAgICBjb2xvcjogJGJsdWU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxuICB9XHJcbn1cclxuXHJcbm1kLXRhYnMtY2FudmFzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkUyRTJFO1xyXG59XHJcblxyXG4ubXlQcm9maWxlX2hlYWRlciB7XHJcbiAgaGVpZ2h0OiAxODhweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLm15UHJvZmlsZV9oZWFkZXJfY29udGFpbmVyIHtcclxuICBwYWRkaW5nLXRvcDogNTFweDtcclxuICBtYXJnaW4tbGVmdDogNDZweDtcclxufVxyXG4ubXlQcm9maWxlX2hlYWRlcl9hdmF0YXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcbi5teVByb2ZpbGVfdGFic19wYXJlbnQge1xyXG4gIG1kLXRhYnMtd3JhcHBlcntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19tZW51O1xyXG4gIH1cclxufVxyXG4vLyAubXlQcm9maWxlX3RhYnMge1xyXG4vLyB9XHJcbi5teVByb2ZpbGVfdGFiX2ljb24ge1xyXG4gIHdpZHRoOiAxNnB4O1xyXG4gIGhlaWdodDogMTZweDtcclxuICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAtMXB4O1xyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiB3aGl0ZTtcclxuICB9XHJcbn1cclxuLm15UHJvZmlsZV9zaWRlYmFyX2J1dHRvbiB7XHJcbiAgcGFkZGluZy1sZWZ0OiAyOHB4O1xyXG59XHJcbi5teVByb2ZpbGVfY29udGVudF9mb3JtIHtcclxuICBtYXJnaW4tbGVmdDogMTEzcHg7XHJcbiAgbWF4LXdpZHRoOiA1MDBweDtcclxufVxyXG4ubXlQcm9maWxlX2NvbnRlbnRfZm9ybV9pbnB1dCB7XHJcbiAgbWFyZ2luOiAxNnB4IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5jb3VudHJ5SW5wdXRfY29udGFpbmVyIHtcclxuICBtZC1hdXRvY29tcGxldGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gIG1kLWF1dG9jb21wbGV0ZS13cmFwIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgaW5wdXQge1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG4gIH1cclxuICBsYWJlbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3R0b206IDU1cHg7XHJcbiAgfVxyXG59XHJcbi5teVByb2ZpbGVfZm9ybV9hdmF0YXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuLm15UHJvZmlsZV9mb3JtX2F2YXRhckltYWdlIHtcclxuICB3aWR0aDogNjRweDtcclxuICBoZWlnaHQ6IDY0cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMzJweDtcclxuICBtYXJnaW4tcmlnaHQ6IDclO1xyXG59XHJcbi5teVByb2ZpbGVfYXBpS2V5X3RleHQge1xyXG4gIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgd2lkdGg6IDEyMHB4O1xyXG59XHJcbi5teVByb2ZpbGVfYXBpS2V5X251bWJlciB7XHJcbiAgY29sb3I6ICM5RDlEOUU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjtcclxuICBwYWRkaW5nOiA1cHggMTBweDtcclxufVxyXG4ubXlQcm9maWxlX2FwaUtleV9yZWZyZXNoQnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XHJcbiAgaGVpZ2h0OiAyOXB4O1xyXG5cclxuICBtZC1pY29uIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDNweCBhdXRvO1xyXG4gIH1cclxufVxyXG4ubWQtYnV0dG9uLm15UHJvZmlsZV9hcGlLZXlfcmVmcmVzaEJ1dHRvbiB7XHJcbiAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XHJcbn1cclxuLm1kLWJ1dHRvbi5teVByb2ZpbGVfYXBpS2V5X3JlZnJlc2hCdXR0b246YWN0aXZlLCAubWQtYnV0dG9uLm15UHJvZmlsZV9hcGlLZXlfcmVmcmVzaEJ1dHRvbjpob3ZlciwgLm1kLWJ1dHRvbi5teVByb2ZpbGVfYXBpS2V5X3JlZnJlc2hCdXR0b246Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRmb250X2NvbG9yX2JsdWVfZ3JleTtcclxufVxyXG4ubXlQcm9maWxlX2Zvcm1fcmVtb3ZlQnV0dG9uIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBjb2xvcjogJGFsZXJ0X3JlZDtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuLm15UHJvZmlsZV91cGRhdGVGb3JtX2Vycm9yIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MHB4O1xyXG4gIGxlZnQ6IDJweDtcclxuICBjb2xvcjogcmVkO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBsaW5lLWhlaWdodDogMTtcclxufVxyXG4ubXlQcm9maWxlX2FwaUtleV9ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogNjNweDtcclxuICBtYXJnaW4tYm90dG9tOiA2NXB4O1xyXG59XHJcblxyXG4ubXlQcm9maWxlX2FwaUtleSB7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiAkZ3JleV9kYXJrZXI7XHJcbiAgfVxyXG59XHJcblxyXG4ubWQtYnV0dG9uLm15UHJvZmlsZV9hZGRLaXRCdXR0b246Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG59XHJcbi5tZC1idXR0b24ubXlQcm9maWxlX2FkZEtpdEJ1dHRvbjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XHJcbn1cclxuLm15UHJvZmlsZV9oaWRkZW5ocmVme1xyXG4gIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDoxMDAlO1xyXG4gIHRvcDowO1xyXG4gIGxlZnQ6MDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRPT0wgTElTVFxyXG4gKlxyXG4gKi9cclxuXHJcbiBhLmtpdExpc3Qge1xyXG4gICBoNCB7XHJcbiAgICAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgIH1cclxuICAgcCB7XHJcbiAgICAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgfVxyXG4gfVxyXG5cclxuLmNsZWFyZml4IHtcclxuICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLypcclxuICBGT09URVIgQ09NUE9ORU5UXHJcbiovXHJcblxyXG5mb290ZXIge1xyXG4vLyAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2JhY2tncm91bmQ7XHJcbn1cclxuXHJcbi5mb290ZXJfaWNvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDMycHg7XHJcbiAgaGVpZ2h0OiAzMnB4O1xyXG59XHJcbi5mbGFnIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG59XHJcbi5ib3JkZXItd2hpdGUuZm9vdGVyLWJsb2Nre1xyXG4gIGJvcmRlcjogMnB4IHdoaXRlIHNvbGlkO1xyXG59XHJcbi51cHRpbWVyb2JvdC1sb2dvIHtcclxuICB3aWR0aDogMTUwcHg7XHJcbiAganVzdGlmeS1zZWxmOiByaWdodDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xyXG59XHJcbi51cHRpbWVyb2JvdC1zcG9uc29yIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcclxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG4udXB0aW1lcm9ib3Qtc3BvbnNvci10ZXh0IHAge1xyXG4gIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xyXG4gIG1hcmdpbjogMHB4O1xyXG59XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcclxuICAuY29sb3Itd2hpdGV7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5mbGFnIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcclxuICB9XHJcbiAgLmZvb3Rlci1ibG9jayB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5zcG9uc29yIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU5OXB4KSB7XHJcbiAgLmxheW91dC1hbGlnbi14cy1zdGFydC1zdHJldGNoLCAubGF5b3V0LWFsaWduLXhzLWNlbnRlci1zdHJldGNoLCAubGF5b3V0LWFsaWduLXhzLWVuZC1zdHJldGNoLCAubGF5b3V0LWFsaWduLXhzLXNwYWNlLWJldHdlZW4tc3RyZXRjaCwgLmxheW91dC1hbGlnbi14cy1zcGFjZS1hcm91bmQtc3RyZXRjaHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLypcclxuICBSRUNPVkVSWSBQQVNTV09SRCBTVEFURVxyXG4qL1xyXG4ucmVjb3ZlcnlfaGVhZGVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEyOHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xyXG59XHJcblxyXG4ucmVjb3ZlcnlfaGVhZGVySWNvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG59XHJcblxyXG4vKlxyXG4gIFRJTUVMSU5FIENPTVBPTkVOVFxyXG5cclxuICB1c2VkIG9uIGFkZCBhbmQgc2V0dXAga2l0XHJcbiovXHJcblxyXG4udGltZWxpbmUge1xyXG4gIC8vIG1hcmdpbi10b3A6IDY0cHg7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX21lbnU7XHJcbiAgaGVpZ2h0OiAkdGltZWxpbmUtaGVpZ2h0O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfbGlnaHRlcl9tZW51O1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAxMDtcclxuICB0b3A6IDY0cHg7XHJcbiAgYm94LXNoYWRvdzogMCA0cHggNXB4IC0ycHggJGJhY2tncm91bmRfYmx1ZV9saWdodGVyX21lbnU7XHJcbiAgcGFkZGluZzogMzBweDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk2MHB4KSB7XHJcbiAgLnRpbWVsaW5lLWJ0bi1leHRyYSB7XHJcbiAgICBkaXNwbGF5OiBOb25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xyXG4gIC50aW1lbGluZSB7XHJcbiAgICB0b3A6IDU2cHg7XHJcbiAgfVxyXG4gIC5wcm9maWxlX2hlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA1M3B4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAudGltZWxpbmUge1xyXG4gICAgdG9wOiA1M3B4O1xyXG4gIH1cclxuICAucHJvZmlsZV9oZWFkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogNTNweDtcclxuICB9XHJcbn1cclxuXHJcbi50aW1lbGluZV9jb250YWluZXIge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi50aW1lbGluZV9saW5lIHtcclxuICB3aWR0aDogNTAwcHg7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJHllbGxvdztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAxNHB4O1xyXG59XHJcbi50aW1lbGluZV9saW5lX3NtYWxsIHtcclxuICB3aWR0aDogMTAwcHggIWltcG9ydGFudDtcclxuICBtYXJnaW46IDBweCAyMHB4O1xyXG4gIHRvcDowcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRpbWVsaW5lLXRpdGxlIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGNvbG9yOiAkeWVsbG93O1xyXG4gIGZvbnQtc2l6ZToyNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7IC8vIFRPRE86IENvc21ldGljXHJcblxyXG4gICYudmVydGljYWwge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcbn1cclxuXHJcbi50aW1lbGluZV9zdGVwTmFtZSB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJHllbGxvdztcclxuICBmb250LXNpemU6MThweDtcclxuXHJcbiAgJi52ZXJ0aWNhbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnRpbWVsaW5lX2NvbnRlbnQge1xyXG4gIG1pbi1oZWlnaHQ6IDQwMHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbi10b3A6ICRjb250ZW50LW1hcmdpbi10b3A7XHJcbn1cclxuXHJcbi8vIC50aW1lbGluZV9idXR0b24ge1xyXG4vLyAgIHdpZHRoOiA5OSU7XHJcbi8vICAgaGVpZ2h0OiA5MHB4O1xyXG4vLyAgIGZvbnQtc2l6ZTogMjZweDtcclxuXHJcbi8vICAgJi50aW1lbGluZV9idXR0b25PcGVuLm1kLXByaW1hcnkge1xyXG4vLyAgICAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbi8vICAgICAmLmludmVydGVke1xyXG4vLyAgICAgICBjb2xvcjogd2hpdGU7XHJcbi8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuXHJcbi8vICAgICAgIHNtYWxsIHtcclxuLy8gICAgICAgICBjb2xvcjogd2hpdGU7XHJcbi8vICAgICAgIH1cclxuLy8gICAgIH1cclxuXHJcbi8vICAgICAubWFpbiB7XHJcbi8vICAgICAgIG1hcmdpbjogMTBweDtcclxuLy8gICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4vLyAgICAgfVxyXG5cclxuLy8gICAgIC5zdWIge1xyXG4vLyAgICAgICBtYXJnaW46IDEwcHg7XHJcbi8vICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuLy8gICAgIH1cclxuXHJcbi8vICAgICBzbWFsbCB7XHJcbi8vICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuNTQpO1xyXG4vLyAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcclxuLy8gICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuLy8gICAgIH1cclxuXHJcbi8vICAgfVxyXG4vLyB9XHJcblxyXG4ubWQtYnV0dG9uLnRpbWVsaW5lX2J1dHRvbkJhY2t7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG5zZWN0aW9uLnJlbGF4ZWQtbGF5b3V0IHtcclxuICBwYWRkaW5nOiAxMHB4IDI1cHg7XHJcbn1cclxuXHJcblxyXG5cclxuLypcclxuICBBREQgS0lUIFNUQVRFXHJcbiovXHJcblxyXG4ua2l0X2RhdGFDaGFuZ2Uge1xyXG4gIC5mb3JtX2Jsb2NrIHtcclxuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XHJcblxyXG4gICAgJi5pc0V2ZW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGOUZCO1xyXG4gICAgfVxyXG4gICAgLy8gJi5mb3JtX2Jsb2NrTm9ybWFsIHtcclxuICAgIC8vICAvLyBtaW4taGVpZ2h0OiAyNTBweDtcclxuICAgIC8vIH1cclxuICAgIC8vICYuZm9ybV9ibG9ja01hcCB7XHJcbiAgICAvLyAgIC8vaGVpZ2h0OiAyOTBweDtcclxuICAgIC8vIH1cclxuICB9XHJcbiAgLmZvcm1fYmxvY2tJbnB1dCB7XHJcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgIC8vIG1hcmdpbi1sZWZ0OiAxNTBweDtcclxuICB9XHJcbiAgLmZvcm1fYmxvY2tJbnB1dF9jb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gIH1cclxuICAuZm9ybV9ibG9ja0lucHV0X2J1dHRvbiB7XHJcbiAgICBoZWlnaHQ6aW5oZXJpdDtcclxuICB9XHJcbiAgLmZvcm1fYmxvY2tJbnB1dF9tYXAge1xyXG4gICAgaGVpZ2h0OiAyNTBweDtcclxuICAgIG1pbi13aWR0aDogMjUwcHg7XHJcbiAgfVxyXG4gIC5mb3JtX2Jsb2NrSW5wdXRfc2VsZWN0IGxhYmVse1xyXG4gICAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICB9XHJcbiAgLmZvcm1fYmxvY2tJbnB1dF9jaGlwcyB7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gIH1cclxuICAuZm9ybV9ibG9ja0NvbnRlbnQge1xyXG4gICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgaW1nLCBkaXYge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgICBtYXJnaW46IDVweCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuZm9ybV9ibG9ja0NvbnRlbnRfaW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAzcHg7XHJcbiAgfVxyXG4gIC5mb3JtX2Jsb2NrQ29udGVudF90ZXh0IHtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgd2lkdGg6IDI0MHB4O1xyXG4gICAgJi5sb25ne1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBjb2xvcjogI0E1QTVBNTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIH1cclxuICB9XHJcbiAgLmZvcm1fZXJyb3JzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMTUlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGNvbG9yOiByZWQ7XHJcbiAgICBmb250LXNpemU6IDAuN2VtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uZW1vaml7XHJcbiAgZm9udC13ZWlnaHQ6NDAwO1xyXG59XHJcblxyXG4vKlxyXG4gIFNUQVRJQyBQQUdFU1xyXG4qL1xyXG4uc3RhdGljX3BhZ2V7XHJcbiAgLnRpbWVsaW5le1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgc3RyZXRjaDtcclxuXHJcbiAgICAuY29udGVudHtcclxuICAgICAgcGFkZGluZzowIDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZW50e1xyXG4gICAgbWF4LXdpZHRoOiA1MGVtO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgcGFkZGluZzo0MHB4IDEwcHg7XHJcbiAgfVxyXG5cclxuICAuZnVsbC13aWR0aC1pbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDIwMDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCAwIC01cHggMDtcclxuICB9XHJcblxyXG4gIC5lbWJlZC1jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBpZnJhbWUsIG9iamVjdCwgZW1iZWQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIC5jZW50ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG5cclxuICAucm93e1xyXG4gICAgbWluLWhlaWdodDogMjAwcHg7XHJcblxyXG4gICAgJjpudGgtY2hpbGQob2RkKXtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGQjtcclxuICAgIH1cclxuICB9XHJcbiAgaDF7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICB9XHJcbiAgaDR7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMmVtO1xyXG4gIH1cclxuXHJcbiAgLm1kLWJ1dHRvbi5tZC1wcmltYXJ5Lm1kLXJhaXNlZCwgLm1kLWJ1dHRvbi5tZC1wcmltYXJ5Lm1kLWZhYntcclxuICAgIHBhZGRpbmc6IDZweCAyMHB4O1xyXG4gICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG4gICAgY29sb3I6d2hpdGU7XHJcblxyXG4gICAgJjpob3ZlciwgJjpmb2N1c3tcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNDOThBRjtcclxuICAgIH1cclxuXHJcbiAgICAmOm5vdChbZGlzYWJsZWRdKXtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZC1idXR0b24ubWQtcHJpbWFyeXtcclxuICAgIGNvbG9yOiAkYmx1ZTtcclxuICB9XHJcbn1cclxuXHJcbi5ub3QtZm91bmQtNDA0IHtcclxuICBoZWlnaHQ6IDQ1dmg7XHJcbn1cclxuXHJcbi5pY29uLWxhcmdle1xyXG4gIHdpZHRoOiAxMjBweDtcclxuICBoZWlnaHQ6IDEyMHB4O1xyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiAkb2ZmX2JsYWNrO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XHJcbiAgLm5vdC1mb3VuZC00MDQge1xyXG4gICAgaGVpZ2h0OiA1MS4zdmg7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1sYXJnZXtcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICBzdmcge1xyXG4gICAgICBmaWxsOiAkb2ZmX2JsYWNrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmljb25fbGFiZWx7XHJcbiAgd2lkdGg6IDE0cHg7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG4gIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC0ycHg7XHJcbiAgc3ZnIHtcclxuICAgIGZpbGw6ICRvZmZfYmxhY2s7XHJcbiAgfVxyXG59XHJcbi8vIEFib3V0XHJcblxyXG4uc2Vuc29yLWltYWdlLW1hcmdpbiB7XHJcbiAgbWFyZ2luLXRvcDogNDBweDtcclxufVxyXG5cclxuaDMubm8tbWFyZ2luIHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbnAubm8tbWFyZ2luIHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi50ZWFtLWNlbGxzLW1hcmdpbiB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxufVxyXG5cclxuLnN1YnRpdGxlLXNlcGFyYXRpb24ge1xyXG4gIG1hcmdpbi10b3A6IDYwcHg7XHJcbn1cclxuXHJcbi8vIEZlZWRiYWNrXHJcblxyXG4uZG9vcmJlbGwtYnV0dG9uIHtcclxuIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3cgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gU3R5bGVndWlkZVxyXG5cclxuLnN0eWxlZ3VpZGUge1xyXG4gIC5pbmZvLXRleHQge1xyXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICB9XHJcblxyXG4gIC5pbmZvLXRleHQtZGFyayB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuZGFyay10aGVtZS1kaXZpZGVyIHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xMik7XHJcbiAgfVxyXG5cclxuICBzbWFsbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmRhcmstdGV4dC1zZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xyXG5cclxuICAgIGgxIHtcclxuICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XHJcbiAgICB9XHJcblxyXG4gICAgaDYge1xyXG4gICAgICBjb2xvcjogIzg3Q0NERDtcclxuICAgIH1cclxuXHJcbiAgICBwe1xyXG4gICAgICBjb2xvcjogI0M4RTZFRDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIH1cclxuXHJcbiAgICBzbWFsbCB7XHJcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tcGFkZGluZyB7XHJcbiAgICBwYWRkaW5nOiA2MHB4O1xyXG4gIH1cclxuXHJcbiAgLmNvbG9ycy1zZWN0aW9uIHtcclxuICAgIHAge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY29uZGFyeS1jb2xvciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRlcmNpYXJ5X2NvbG9yIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xyXG4gICAgICBwIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWNvbmRhcnlfY29sb3JfbGlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOERCMkJBO1xyXG4gICAgICBwIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWNvbmRhcnktY29sb3ItcGFzdGVsIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M4RTZFRDtcclxuICAgICAgcCB7XHJcbiAgICAgICAgY29sb3I6ICM4REIyQkE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2hpdGUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICBib3JkZXI6MXB4IHNvbGlkICNDOEU2RUQ7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGNvbG9yOiAjOERCMkJBO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbnNvcnMgPiBkaXYge1xyXG4gICAgICB3aWR0aDogNjBweDtcclxuICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5zb3JzIGRpdjpudGgtY2hpbGQoMSkge1xyXG4gICAgIGJhY2tncm91bmQ6ICNmZmMxMDc7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbnNvcnMgZGl2Om50aC1jaGlsZCgyKSB7XHJcbiAgICAgYmFja2dyb3VuZDogIzRmYzNmNztcclxuICAgIH1cclxuXHJcbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDMpIHtcclxuICAgICBiYWNrZ3JvdW5kOiAjZmZlZTU4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5zb3JzIGRpdjpudGgtY2hpbGQoNCkge1xyXG4gICAgIGJhY2tncm91bmQ6ICNmMDYyOTI7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbnNvcnMgZGl2Om50aC1jaGlsZCg1KSB7XHJcbiAgICAgYmFja2dyb3VuZDogIzRjYWY1MDtcclxuICAgIH1cclxuXHJcbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDYpIHtcclxuICAgICBiYWNrZ3JvdW5kOiAjOGJjMzRhO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5zb3JzIGRpdjpudGgtY2hpbGQoNykge1xyXG4gICAgIGJhY2tncm91bmQ6ICM5NTc1Y2Q7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbnNvcnMgZGl2Om50aC1jaGlsZCg4KSB7XHJcbiAgICAgYmFja2dyb3VuZDogI2ZmZjljNDtcclxuICAgIH1cclxuXHJcbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDkpIHtcclxuICAgICBiYWNrZ3JvdW5kOiAjZmZlZTU4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5zb3JzIGRpdjpudGgtY2hpbGQoMTApIHtcclxuICAgICBiYWNrZ3JvdW5kOiAjZmY1NzIyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vKiBDdXN0b20gQW5pbWF0aW9ucyAqL1xyXG5cclxuLmxvYWRpbmctZG90cyBzcGFuOmFmdGVyIHtcclxuICBjb250ZW50OiAnLic7XHJcbiAgYW5pbWF0aW9uOiBkb3RzIDJzIHN0ZXBzKDUsIGVuZCkgaW5maW5pdGU7fVxyXG5cclxuQGtleWZyYW1lcyBkb3RzIHtcclxuICAwJSwgMjAlIHtcclxuICAgIGNvbG9yOiByZ2JhKDAsMCwwLDApO1xyXG4gICAgdGV4dC1zaGFkb3c6XHJcbiAgICAgIC4yNWVtIDAgMCByZ2JhKDAsMCwwLDApLFxyXG4gICAgICAuNWVtIDAgMCByZ2JhKDAsMCwwLDApO31cclxuICA0MCUge1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdGV4dC1zaGFkb3c6XHJcbiAgICAgIC4yNWVtIDAgMCByZ2JhKDAsMCwwLDApLFxyXG4gICAgICAuNWVtIDAgMCByZ2JhKDAsMCwwLDApO31cclxuICA2MCUge1xyXG4gICAgdGV4dC1zaGFkb3c6XHJcbiAgICAgIC4yNWVtIDAgMCAkeWVsbG93LFxyXG4gICAgICAuNWVtIDAgMCByZ2JhKDAsMCwwLDApO31cclxuICA4MCUsIDEwMCUge1xyXG4gICAgdGV4dC1zaGFkb3c6XHJcbiAgICAgIC4yNWVtIDAgMCAkeWVsbG93LFxyXG4gICAgICAuNWVtIDAgMCAkYmx1ZTt9XHJcbn1cclxuXHJcblxyXG4vKiBEbyBub3QgcmVtb3ZlIHRoaXMgY29tbWVudHMgYmVsbG93LiBJdCdzIHRoZSBtYXJrZXJzIHVzZWQgYnkgZ3VscC1pbmplY3QgdG8gaW5qZWN0XHJcbiAgIGFsbCB5b3VyIHNhc3MgZmlsZXMgYXV0b21hdGljYWxseSAqL1xyXG4vLyBpbmplY3RvclxyXG4vLyBlbmRpbmplY3RvciIsIi8vIEdlbmVyYWwgaGVscGVyc1xyXG4uYm9yZGVyLWJsYWNre1xyXG4gIGJvcmRlcjogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbn1cclxuLmJvcmRlci13aGl0ZXtcclxuICBib3JkZXI6IDNweCBzb2xpZCB3aGl0ZTtcclxufVxyXG4uY29sb3Itd2hpdGV7XHJcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuLmNvbG9yLWRyb3Bkb3due1xyXG4gIGNvbG9yOiAkZ3JleV9kYXJrZXN0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLmNvbG9yLWJsYWNre1xyXG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG59XHJcbi5jb2xvci1ibHVle1xyXG4gIGNvbG9yOiR0ZXJjaWFyeV9jb2xvcjtcclxufVxyXG4uY29sb3ItY3lhbntcclxuICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xyXG59XHJcbi5jb2xvci1ncmVlbiB7XHJcbiAgY29sb3I6ICRncmVlbjtcclxuICBzdmcge1xyXG4gICAgZmlsbDogJGdyZWVuO1xyXG4gIH1cclxufVxyXG4uY29sb3ItcmVkIHtcclxuICBjb2xvcjogJHJlZDtcclxuICBzdmcge1xyXG4gICAgZmlsbDogJHJlZCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4uZmxvYXQtbGVmdHtcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG4uZmxvYXQtcmlnaHR7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcbi5kLWZsZXh7XHJcbiAgZGlzcGxheTpmbGV4O1xyXG59XHJcbi5mdWxsLXdpZHRoe1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5tYXgtd2lkdGgtNTAwcHgge1xyXG4gIG1heC13aWR0aDogNTAwcHg7XHJcbn1cclxuLm1pbi1oZWlnaHQtODAge1xyXG4gIG1pbi1oZWlnaHQ6IDgwJTtcclxufVxyXG4uZml0LWNvbnRlbnQge1xyXG4gIHdpZHRoOiBmaXQtY29udGVudDtcclxufVxyXG5cclxuLy8gRm9udCAmIHRleHRcclxuLmZvbnQtcm9ib3RvLWNvbmRlbnNlZHtcclxuICBmb250LWZhbWlseTonUm9ib3RvIENvbmRlbnNlZCc7XHJcbn1cclxuXHJcbi5mb250LWthbml0e1xyXG4gIGZvbnQtZmFtaWx5OidLYW5pdCc7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDMyNWVtO1xyXG59XHJcblxyXG4uZm9udC1tb25ve1xyXG4gIGZvbnQtZmFtaWx5OidTcGFjZSBNb25vJztcclxuICAvLyBsZXR0ZXItc3BhY2luZzogMC4wMzI1ZW07XHJcbiAgZm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmZvbnQtMTYge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLndlaWdodC05MDAge1xyXG4gIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLndlaWdodC04MDAge1xyXG4gIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLndlaWdodC03MDAge1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnVwcGVyY2FzZXtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4udGV4dC1jZW50ZXJ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi50ZXh0LWxlZnR7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLm5vLWRlY29yYXRpb257XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4vLyBCYWNrZ3JvdW5kIGhlbHBlcnNcclxuLmJnLXdoaXRle1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuLmJnLWJsYWNre1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xyXG59XHJcbi5iZy1ncmVlbntcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XHJcbn1cclxuLmJnLWJsdWV7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XHJcbn1cclxuLmJnLXJlZHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XHJcbn1cclxuLmJnLXJlZC1saWdodHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRyZWQsLjIpO1xyXG59XHJcbi5iZy15ZWxsb3d7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcclxufVxyXG4uYmctZ3JleSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXkgIWltcG9ydGFudDtcclxufVxyXG4uYmctZ3JleS1saWdodGVzdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlc3QgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm91dGxpbmV7XHJcbiAgb3V0bGluZTogMXB4IHNvbGlkIHJlZDtcclxufVxyXG5cclxuLy8gQnV0dG9uIGhlbHBlcnNcclxuLmJ0bi1vdXRsaW5lLWJsdWV7XHJcbiAgYm9yZGVyOjJweCBzb2xpZCAkYmx1ZTtcclxuICBjb2xvcjogJGJsdWU7XHJcbiAgcGFkZGluZzoxMHB4IDI5cHg7XHJcbiAgc3ZnIHtcclxuICAgIGZpbGw6ICRibHVlXHJcbiAgfVxyXG59XHJcbi5idG4tb3V0bGluZS1ibHVlOmhvdmVye1xyXG4gIGJhY2tncm91bmQ6ICRibHVlICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIHN2ZyB7XHJcbiAgICBmaWxsOiB3aGl0ZVxyXG4gIH1cclxufVxyXG4uYnRuLW91dGxpbmUtd2hpdGV7XHJcbiAgYm9yZGVyOjJweCBzb2xpZCB3aGl0ZTtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgcGFkZGluZzoxMHB4IDI5cHg7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLXdoaXRlOmhvdmVye1xyXG4gIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLXdoaXRlLWJsdWV7XHJcbiAgYm9yZGVyOjJweCBzb2xpZCB3aGl0ZTtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgcGFkZGluZzoxMHB4IDI5cHg7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLXdoaXRlLWJsdWU6aG92ZXJ7XHJcbiAgYmFja2dyb3VuZDogJGJsdWUgIWltcG9ydGFudDtcclxufVxyXG4uYnRuLW91dGxpbmUteWVsbG93e1xyXG4gIGJvcmRlcjoycHggc29saWQgJHllbGxvdztcclxuICBjb2xvcjogJHllbGxvdztcclxuICBwYWRkaW5nOjEwcHggMjlweDtcclxufVxyXG4uYnRuLW91dGxpbmUteWVsbG93OmhvdmVye1xyXG4gIGJhY2tncm91bmQ6ICR5ZWxsb3cgIWltcG9ydGFudDtcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxufVxyXG4uYnRuLXllbGxvd3tcclxuICBib3JkZXI6MnB4IHNvbGlkICR5ZWxsb3c7XHJcbiAgYmFja2dyb3VuZDogJHllbGxvdztcclxuICBjb2xvcjogJG9mZl9ibGFjaztcclxuICBwYWRkaW5nOjEycHggMjlweDtcclxufVxyXG5cclxuLmJ0bi15ZWxsb3c6aG92ZXJ7XHJcbiAgYmFja2dyb3VuZDogJG9mZl9ibGFjayAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkeWVsbG93O1xyXG59XHJcbi5idG4tYmxhY2stb3V0bGluZXtcclxuICBib3JkZXI6MnB4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgcGFkZGluZzoxMHB4IDI5cHg7XHJcbn1cclxuLmJ0bi1ibGFjay1vdXRsaW5lOmhvdmVye1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRvZmZfYmxhY2sgIWltcG9ydGFudDtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuLmJ0bi1ibHVle1xyXG4gIGJvcmRlcjoycHggc29saWQgJGJsdWU7XHJcbiAgYmFja2dyb3VuZDogJGJsdWU7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIHBhZGRpbmc6MTJweCAyOXB4O1xyXG59XHJcblxyXG4uYnRuLWJsdWU6aG92ZXJ7XHJcbiAgY29sb3I6ICRibHVlO1xyXG4gIGJhY2tncm91bmQ6ICRncmV5X2xpZ2h0ZXIgIWltcG9ydGFudDtcclxufVxyXG4uYnRuLXdoaXRlLWJsdWV7XHJcbiAgYm9yZGVyOjJweCBzb2xpZCB3aGl0ZTtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBwYWRkaW5nOjEycHggMjlweDtcclxufVxyXG5cclxuLmJ0bi13aGl0ZS1ibHVlOmhvdmVye1xyXG4gIGNvbG9yOiAkYmx1ZTtcclxuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjoycHggc29saWQgJGJsdWU7XHJcbn1cclxuXHJcbi8vIFRPRE86IENvc21ldGljIEZpeCBidXR0b25zIGluIGdlbmVyYWxcclxuLmJ0bi1yb3VuZC1uZXcge1xyXG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XHJcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJztcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgLy8gaGVpZ2h0OiA0NHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtaGVhdnk7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDMyNWVtO1xyXG4gIHBhZGRpbmc6MHB4IDM1cHg7XHJcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSk7XHJcbn1cclxuXHJcbi5idG4tcm91bmR7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgcGFkZGluZzo1cHggMzVweDtcclxuICBmb250LXNpemU6MThweDtcclxufVxyXG5cclxuLmJ0bi1jeWFue1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcclxuICBjb2xvcjp3aGl0ZTtcclxuICBib3JkZXI6MnB4IHNvbGlkICR0ZXJjaWFyeV9jb2xvcjtcclxufVxyXG5cclxuLmJ0bi1jeWFuOmhvdmVye1xyXG4gIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XHJcbiAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcclxuICBib3JkZXI6MnB4IHNvbGlkICR0ZXJjaWFyeV9jb2xvcjtcclxufVxyXG5cclxuLy8gZGlzcGxheSBoZWxwZXJzXHJcbi5idG4tZnVsbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIG1hcmdpbjogMHB4O1xyXG4gIHBhZGRpbmc6MTJweCAyOXB4O1xyXG59XHJcblxyXG4uYnRuLXNtYWxsIHtcclxuICBtaW4td2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgbWluLWhlaWdodDogdW5zZXQgIWltcG9ydGFudDtcclxuICAvL291dGxpbmU6IDFweCBzb2xpZCByZWQ7XHJcbn1cclxuXHJcbi8vIE1hcmdpbiAtIHBhZGRpbmcgaGVscGVyc1xyXG4ubS0we1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG4ubS0xMHtcclxuICBtYXJnaW46IDEwcHg7XHJcbn1cclxuLm1sLTAge1xyXG4gIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbn1cclxuLm1sLTE1IHtcclxuICBtYXJnaW4tbGVmdDogMTVweDtcclxufVxyXG4ubXQtMHsgbWFyZ2luLXRvcDogMHB4OyB9XHJcbi5tdC01eyBtYXJnaW4tdG9wOiA1cHg7IH1cclxuLm10LTEweyBtYXJnaW4tdG9wOiAxMHB4OyB9XHJcbi5tdC0yMHsgbWFyZ2luLXRvcDogMjBweDsgfVxyXG4ubXQtMzB7IG1hcmdpbi10b3A6IDMwcHg7IH1cclxuLm10LTUweyBtYXJnaW4tdG9wOiA1MHB4OyB9XHJcbi5tci0xMHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XHJcbi5tci0yMHsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XHJcbi5tci0zMHsgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XHJcbi5tci01MHsgbWFyZ2luLXJpZ2h0OiA1MHB4OyB9XHJcbi5tYi0weyBtYXJnaW4tYm90dG9tOiAwcHg7IH1cclxuLm1iLTV7IG1hcmdpbi1ib3R0b206IDVweDsgfVxyXG5cclxuLm1iLTEweyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XHJcbi5tYi0yMHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxyXG4ubWItMzB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cclxuLm1iLTUweyBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XHJcbi5tbC0xMCB7IG1hcmdpbi1sZWZ0OiAxMHB4OyB9XHJcbi5tbC0yMCB7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XHJcbi5tbC0zMCB7IG1hcmdpbi1sZWZ0OiAzMHB4OyB9XHJcbi5tbC01MHsgbWFyZ2luLWxlZnQ6IDUwcHg7IH1cclxuLm15LTIwe1xyXG4gIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuLm13LTEwMHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuLnAtMHsgcGFkZGluZzogMDsgfVxyXG4ucC0xMHsgcGFkZGluZzogMTBweDsgfVxyXG4ucC0yMHsgcGFkZGluZzogMjBweDsgfVxyXG4ucC0zMHsgcGFkZGluZzogMzBweDsgfVxyXG4ucC00MHsgcGFkZGluZzogNDBweDsgfVxyXG4ucC01MHsgcGFkZGluZzogNTBweDsgfVxyXG4ucC02MHsgcGFkZGluZzogNjBweDsgfVxyXG4ucGwtMjB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxyXG4ucHQtODB7IHBhZGRpbmctdG9wOjgwcHg7IH1cclxuLnB5LTQwe1xyXG4gIHBhZGRpbmctdG9wOjQwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206NDBweDtcclxufVxyXG4ucHgtMjB7XHJcbiAgcGFkZGluZy1sZWZ0OjIwcHg7XHJcbiAgcGFkZGluZy1yaWdodDoyMHB4O1xyXG59XHJcbi5weC00MHtcclxuICBwYWRkaW5nLWxlZnQ6NDBweDtcclxuICBwYWRkaW5nLXJpZ2h0OjQwcHg7XHJcbn1cclxuXHJcblxyXG4vLyBpbWcgaGVscGVyc1xyXG5cclxuLmltZy1jaXJjbGUge1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuZm9vdGVye1xyXG4gIHB7XHJcbiAgICBmb250LXNpemU6MTJweCAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6MTJweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gcG9zdGlvbiBoZWxwZXJzXHJcblxyXG4uYWJzb2x1dGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuLnJlbGF0aXZlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8vIHNpemUgaGVscGVyc1xyXG4ucy00OCB7XHJcbiAgd2lkdGg6IDQ4cHg7XHJcbiAgaGVpZ2h0OiA0OHB4O1xyXG59XHJcbiIsIiR5ZWxsb3c6ICNGRkMxMDA7XHJcbiR5ZWxsb3dfbGlnaHQ6ICNGRkQ0NEQ7XHJcbiR5ZWxsb3dfbGlnaHRlcjogI2ZjZTA4YztcclxuJGJsdWU6ICMwMDE5RkY7XHJcbiRibHVlX2xpZ2h0OiAjNTVDNEY1O1xyXG5cclxuJHJlZDogI0ZGM0Q0QztcclxuJGdyZWVuOiAjMDBFNTk3O1xyXG4vLyAkb2ZmX2JsYWNrOiAjMkUyRTJFO1xyXG4vLyAkb2ZmX2Rhcmtlcl9ibGFjazogIzFDMUMxQztcclxuJG9mZl9saWdodGVyX2JsYWNrOiAjMkUyRTJFO1xyXG4kb2ZmX2JsYWNrOiAjMUMxQzFDO1xyXG5cclxuJGdyZXlfbGlnaHRlc3Q6ICNGOUY5RkI7XHJcbiRncmV5X2xpZ2h0ZXI6ICNFQ0VDRUU7XHJcbiRncmV5OiAjRDJEM0Q1O1xyXG4kZ3JleV9kYXJrZXI6ICM2RTZFNkU7XHJcbiRncmV5X2Rhcmtlc3Q6ICM3RTdFN0U7XHJcblxyXG4kc2Vjb25kYXJ5X2NvbG9yOiAkZ3JleV9kYXJrZXI7XHJcbiR0ZXJjaWFyeV9jb2xvcjogJGJsdWU7XHJcblxyXG4kc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0OiAkZ3JleV9kYXJrZXI7XHJcbiR0ZXJjaWFyeV9jb2xvcl9saWdodDogJGdyZXk7XHJcblxyXG4kaW5mb19wcmltYXJ5OiAkZ3JleTtcclxuJGluZm9fc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0O1xyXG5cclxuJGFsZXJ0X3JlZDogJHJlZDtcclxuJGFsZXJ0X2dyZWVuOiAjNERCRDRFO1xyXG5cclxuJGZvbnRfY29sb3Jfd2hpdGU6IHdoaXRlO1xyXG4kZm9udF9jb2xvcl9ibHVlX2dyZXk6ICRncmV5O1xyXG4kZm9udF9jb2xvcl9ibHVlX2Rhcms6ICRncmV5X2RhcmtlcjtcclxuJGZvbnRfY29sb3JfYmx1ZV9saWdodDogJGJsdWU7XHJcblxyXG4kYmFja2dyb3VuZF9ibHVlX2RhcmtfbWVudTogJG9mZl9ibGFjaztcclxuJGJhY2tncm91bmRfYmx1ZV9saWdodGVyX21lbnU6ICRvZmZfbGlnaHRlcl9ibGFjaztcclxuJGJhY2tncm91bmRfYmx1ZV9kYXJrX292ZXJ2aWV3OiAkb2ZmX2JsYWNrO1xyXG4kYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDogJG9mZl9ibGFjaztcclxuJGJhY2tncm91bmRfYmx1ZV9kYXJrX25hdmJhcjogJG9mZl9ibGFjaztcclxuJGJhY2tncm91bmRfYmx1ZV9kYXJrX2NoYXJ0OiAkb2ZmX2JsYWNrO1xyXG4kYmFja2dyb3VuZF9ibHVlX2xpZ2h0OiAkZ3JleV9saWdodGVyO1xyXG4kYmFja2dyb3VuZF9ibHVlX21pZHRvbmU6ICRncmV5O1xyXG5cclxuJGxhcmdlX3ByaW9yaXR5OiAxMDtcclxuJG1vcmVfcHJpb3JpdHk6IDU7XHJcbiRtZWRpdW1fcHJpb3JpdHk6IDI7XHJcbiRzbWFsbF9wcmlvcml0eTogLTE7XHJcblxyXG4kZHJvcGRvd25fYmx1ZTogIzNmNTFiNTtcclxuXHJcbiRmb250LXdlaWdodC1oZWF2eTogNjAwO1xyXG4kdGltZWxpbmUtaGVpZ2h0OiAxMjBweDtcclxuJGNvbnRlbnQtbWFyZ2luLXRvcDogMjIwcHg7XHJcbiIsIi8vIE5ldyBsYW5kaW5nIHBhZ2VcclxuXHJcbmh0bWx7XHJcbiAgc2Nyb2xsLWJlaGF2aW9yOnNtb290aFxyXG59XHJcbmJvZHkuYWN0aXZlIHtcclxuICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxufVxyXG4uZ3JleS13YXZlc3tcclxuICBiYWNrZ3JvdW5kOiBncmV5IHVybChcIi9hc3NldHMvaW1hZ2VzL3Nja19iZy5wbmdcIikgO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiA2NXB4O1xyXG59XHJcbi5iYXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAyNXB4O1xyXG4gIGhlaWdodDogM3B4O1xyXG4gIG1hcmdpbjogNXB4IGF1dG87XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmhhbWJ1cmdlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmxvZ28tYm94IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gICB3aWR0aDogMTAwJTtcclxuICAgZGlzcGxheTogZmxleDtcclxuICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4ubG9nby1ib3ggaDEge1xyXG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDUwcHg7XHJcbiAgcGFkZGluZzogMTVweDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbi5jYXJkLXRleHQge1xyXG4gIHBhZGRpbmc6IDMwcHggNTBweDtcclxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5uYXZpZ2F0aW9uIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogNnB4IDAlIDZweCAxMCU7XHJcbn1cclxuLmRpc3BsYXktbm9uZXtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLmRpc3BsYXktYmxvY2t7XHJcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm5ldy1sYW5kaW5nLXBhZ2Uge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gIGgxLGgyLGgzLGg0LGg1LGg2e1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDMyNWVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICdLYW5pdCc7XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgfVxyXG4gIGgxe1xyXG4gICAgLy8gZm9udC1zaXplOiA0NXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDU1cHg7XHJcbiAgICBtYXJnaW46MHB4IDBweDtcclxuICB9XHJcbiAgaDJ7XHJcbiAgICBmb250LXNpemU6IDQzcHg7XHJcbiAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgIG1hcmdpbjowcHggMHB4O1xyXG4gIH1cclxuICBoM3tcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICB9XHJcbiAgcHtcclxuICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJztcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gIH1cclxuICAucC1oZWFkZXIge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH1cclxuICBhe1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5sYW5kaW5nLW1lbnUtYnRue1xyXG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCc7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAvLyBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtaGVhdnk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzI1ZW07XHJcbiAgICBwYWRkaW5nOjBweCAzMHB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSk7XHJcbiAgfVxyXG4gIC5idG4tanVzdGlmeS1sZWZ0e1xyXG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICB9XHJcbiAgLmxhbmRpbmctbWVudSAuYnRuLXJvdW5kLW5ldy5tZC1idXR0b24uYnRuLWtpdCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMzhweDtcclxuICB9XHJcbiAgLmxhbmRpbmctbWVudS1idG46aG92ZXJ7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgY29sb3I6ICNGRkMxMDA7XHJcbiAgfVxyXG4gIC5zYy1sb2dve1xyXG4gICAgaGVpZ2h0OiAzN3B4O1xyXG4gICAgdG9wOiA1cHg7XHJcbiAgfVxyXG5cclxuICAuc2Mtb2ZmLWN0YS1wbGF0Zm9ybSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBmbGV4LXdyYXA6bm93cmFwO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgICBtYXJnaW46IDEwcHggMTBweDtcclxuXHJcbiAgfVxyXG4gICNnZXQteW91ci1raXQge1xyXG4gICAgc2Nyb2xsLW1hcmdpbi10b3A6IDc4cHg7XHJcbiAgfVxyXG4gIC5saWdodGVye1xyXG4gICAgbWF4LXdpZHRoOiAxMCU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICBvcGFjaXR5OiA5MCU7IFxyXG4gIH1cclxuICAubGlnaHRlcjpob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmxhbmRpbmctbWVudSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDZweCAxMCUgNnB4IDAlO1xyXG4gIH1cclxuICAvLyBJbWFnZXMgb24gbGFuZGluZyBwYWdlXHJcbiAgLmltZy1uZXdfc2Nre1xyXG4gICAgbWluLWhlaWdodDogNjB2dztcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9MZWdhY3ktU0NLLmdpZlwiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWctc2NrX2VkdXtcclxuICAgIG1pbi1oZWlnaHQ6IDMwdnc7XHJcbiAgICBiYWNrZ3JvdW5kOiBibHVlIHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcvc21hcnQtY2l0aXplbi1kYXRhLmpwZ1wiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWctc2NrX2NvbXtcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9sb2NhbC1jb21tdW5pdGVzLmpwZ1wiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWctcmVzZWFyY2h7XHJcbiAgICBiYWNrZ3JvdW5kOiBibHVlIHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcvcmVzZWFyY2gtaW5zdGl0dXRpb25zLmpwZ1wiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWctZ292ZXJubXtcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9lZHVjYXRvcnMuanBnXCIpIGNlbnRlci9jb3ZlcjtcclxuICB9XHJcbiAgLmltZy1wbGF0Zm9ybXtcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9TQ0stUGxhdGZvcm0tbW9iaWxlLmpwZ1wiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWctZG9jc3tcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9zbWFydGNpdGl6ZW4tZG9jcy5qcGdcIikgdG9wL2NvdmVyO1xyXG4gIH1cclxuICAuaW1nLWtpdHMtY29tcGxldGV7XHJcbiAgICBiYWNrZ3JvdW5kOiBibHVlIHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcvc21hcnQtY2l0aXplbi0yLTIta2l0LmdpZlwiKSBjZW50ZXIvY292ZXI7XHJcbiAgfVxyXG4gIC5pbWcta2l0cy1yZXNlYXJjaHtcclxuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9TQ0stY3VzdG9taXplZC1wcm9qZWN0cy5qcGdcIikgY2VudGVyL2NvdmVyO1xyXG4gIH1cclxuICAvLyBUaWxlcyBvbiBsYW5kaW5nIHBhZ2VcclxuICAudGlsZXtcclxuICAgIHBhZGRpbmc6IDUwcHggNTBweDtcclxuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICB9XHJcbiAgLnRpbGUtaW1hZ2UudGlsZXtcclxuICAgIG1pbi1oZWlnaHQ6NTAwcHg7XHJcbiAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC50aWxlLWxlZnR7XHJcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgfVxyXG4gIC50aWxlLXRvcHtcclxuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xyXG4gIH1cclxuXHJcbiAgLnRleHQtZnVuZGluZ3tcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAucGQtNjAge1xyXG4gICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgfVxyXG4gIC50ZXh0LWxlZnR7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLy8gVmlkZW8gc2VjdGlvblxyXG4gIC52aWRlby1zZWN0aW9ue1xyXG4gICAgYmFja2dyb3VuZDogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZy9zbWFydGNpdGl6ZW4td29ya3Nob3AuanBnXCIpIGNlbnRlci9jb3ZlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcbiAgLm1vYmlsZW9ubHkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgLmhlYWRlci1zZWN0aW9ue1xyXG4gICAgbWFyZ2luOiA2MHB4IDEwJTtcclxuICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG5cclxuICB9XHJcbiAgLmhlYWRpbmctb3Zlci12aWRlb3tcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBib3R0b206IDgwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICBpbWd7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oZWFkaW5nLW92ZXItdmlkZW8ucmlnaHQtY2FyZCB7XHJcbiAgICByaWdodDogMTAlO1xyXG4gIH1cclxuXHJcbiAgI2xlYXJuLW1vcmUge1xyXG4gICAgbWFyZ2luOiAwcHggYXV0byA2MHB4IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6MTIwMHB4O1xyXG4gICAgcGFkZGluZzogMCAxMCU7XHJcbiAgfVxyXG4gIC8vIEJhbm5lciBzZWN0aW9uXHJcblxyXG4gIC5iYW5uZXItc2VjdGlvbntcclxuICAgIGJhY2tncm91bmQ6IHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcvU0NLLVBsYXRmb3JtLmpwZ1wiKSBjZW50ZXIvY292ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfVxyXG5cclxuICAvLyBDYXJkc1xyXG5cclxuICAuY2FyZCB7XHJcbiAgICBib3gtc2hhZG93OiAxMHB4IDEwcHggMHB4IC0zcHggI0ZGQzEwMCwxMHB4IDEwcHggMHB4IDBweCAkb2ZmX2JsYWNrO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICNsZWFybi1tb3JlIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICAgIC5jYXJkIHtcclxuICAgICAgYm94LXNoYWRvdzogMHB4IDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAxMHB4KSB7XHJcbiAgICBoMXtcclxuICAgICAgZm9udC1zaXplOjQycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjQycHg7XHJcbiAgICB9XHJcbiAgICBoMntcclxuICAgICAgZm9udC1zaXplOjI4cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjI4cHg7XHJcbiAgICB9XHJcbiAgICBoM3tcclxuICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgIH1cclxuICAgIHB7XHJcbiAgICAgIGZvbnQtc2l6ZToxOHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDoyMnB4O1xyXG4gICAgfVxyXG4gICAgLnNjLWxvZ297XHJcbiAgICAgIGxlZnQ6NSU7XHJcbiAgICB9XHJcbiAgICAuaGVhZGluZy1vdmVyLXZpZGVve1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2dldC15b3VyLWtpdCB7XHJcbiAgICAgIHNjcm9sbC1tYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xyXG4gICAgLm1vYmlsZW9ubHkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgYm9yZGVyOiAzcHggc29saWQgIzFDMUMxQztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIH1cclxuICAgIC5tb2JpbGVvbmx5LmltZy1wbGF0Zm9ybSB7XHJcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuc2Mtb2ZmLWN0YS1wbGF0Zm9ybSB7XHJcbiAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xyXG4gICAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICAubmF2aWdhdGlvbi5hY3RpdmUge1xyXG4gICAgICBwYWRkaW5nOiAxNnB4IDAlIDZweCAxMSU7XHJcbiAgICB9XHJcbiAgICAuZXh0ZXJuYWwtbGlua3Mge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICB9XHJcbiAgICAuaGFtYnVyZ2VyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiA2cHggMTAlIDZweCAwJTtcclxuICAgIH1cclxuICAgIC5oYW1idXJnZXIuYWN0aXZlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAxNnB4IDExJSA2cHggMCU7XHJcbiAgICB9XHJcbiAgICAuaGFtYnVyZ2VyLmFjdGl2ZSAuYmFyOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICAuaGFtYnVyZ2VyLmFjdGl2ZSAuYmFyOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB9XHJcbiAgICAuaGFtYnVyZ2VyLmFjdGl2ZSAuYmFyOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgIH1cclxuICAgIC5sYW5kaW5nLW1lbnUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDQwJTtcclxuICAgICAgcGFkZGluZzogMHB4IDEwJTtcclxuICAgIH1cclxuICAgIC5sYW5kaW5nLW1lbnUuYWN0aXZlIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAlO1xyXG4gICAgfVxyXG4gICAgLmxhbmRpbmctbWVudSAubWQtYnV0dG9uLmxhbmRpbmctbWVudS1idG4ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBwYWRkaW5nOiAwcHggMHB4O1xyXG4gICAgfVxyXG4gICAubGFuZGluZy1tZW51IC5idG4tcm91bmQtbmV3Lm1kLWJ1dHRvbi5idG4ta2l0IHtcclxuICAgICAgYWxpZ24tc2VsZjogZW5kO1xyXG4gICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcclxuICAgIH1cclxuICAgIC5zYy1vZmYtY3RhLXBsYXRmb3JtLmFjdGl2ZSB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBtYXJnaW46IDAlO1xyXG4gICAgfVxyXG4gICAgLnNjLWxvZ297XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMHB4O1xyXG4gICAgfVxyXG4gICAgI2dldC15b3VyLWtpdCB7XHJcbiAgICAgIHNjcm9sbC1tYXJnaW4tdG9wOiA4NXB4O1xyXG4gICAgfVxyXG4gICAgLmxheW91dC14cy1jb2x1bW4ge1xyXG4gICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcbiAgICAubGF5b3V0LXhzLWNvbHVtbiA+IC5mbGV4LXhzLTEwMCB7XHJcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB9XHJcbiAgICAuYm9yZGVyLXhzLXRvcHtcclxuICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICB9XHJcbiAgICAuYm9yZGVyLXhzLWJvdHRvbXtcclxuICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLWJvdHRvbTozcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgIH1cclxuICAgIC5mbGV4LW9yZGVyLXhzLTEge1xyXG4gICAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmZsZXgtb3JkZXIteHMtMiB7XHJcbiAgICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAubGF5b3V0LXhzLWNvbHVtbiB7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAuaGVhZGluZy1vdmVyLXZpZGVve1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICBib3R0b206IDBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAwcHg7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMHB4O1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAudmlkZW8tc2VjdGlvbiAuaGVhZGluZy1vdmVyLXZpZGVve1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB9XHJcbiAgICAuaGVhZGluZy1vdmVyLXZpZGVvLnJpZ2h0LWNhcmQge1xyXG4gICAgICByaWdodDogMHB4O1xyXG4gICAgfVxyXG4gICAgLmhlYWRlci1zZWN0aW9uIHtcclxuICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLXNlY3Rpb24ge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG4gICAgLnAtaGVhZGVye1xyXG4gICAgICBmb250LXNpemU6MTlweDtcclxuICAgIH1cclxuXHJcbiAgICAudGlsZS1pbWFnZS50aWxlIHtcclxuICAgICAgbWluLWhlaWdodDo1MDBweDtcclxuICAgIH1cclxuICAgIC50ZXh0LWxlZnR7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLXNlY3Rpb257XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIC5idG4tanVzdGlmeS1sZWZ0e1xyXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgfVxyXG4gICAgLmNhcmQtdGV4dCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xyXG4gICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xyXG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xyXG4gICAgfVxyXG4gICAgLnZpZGVvLXNlY3Rpb24gLmNhcmQtdGV4dCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTW9iaWxlIHJlbW92ZSBwYWRkaW5nIGFuZCBleHRyYSBsaW5lc1xyXG5cclxuICAgIC52aWRlby1zZWN0aW9uIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMHB4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICB9XHJcbiAgICAucGQtNjAge1xyXG4gICAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICB9XHJcbiAgICAuYm9yZGVyLWJsYWNrIHtcclxuICAgICAgYm9yZGVyLXRvcDogMHB4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICB9XHJcbiAgICAubWItMTAge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLXNlY3Rpb24ge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLXRvcDogMHB4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICB9XHJcbiAgICAjbGVhcm4tbW9yZSB7XHJcbiAgICAgIG1hcmdpbjogMHB4IGF1dG8gMHB4IGF1dG9cclxuICAgIH1cclxuICAgICNvcGVuLXBsYXRmb3JtIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICB9XHJcbiAgICAjb3Blbi1wbGF0Zm9ybSAuZmxleC14cy0xMDAge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwcHggc29saWQgJG9mZl9ibGFjaztcclxuICAgIH1cclxuICAgIC5tci0zMCB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gICAgfVxyXG4gICAgLm5ldy1sYW5kaW5nLXBhZ2Uge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDBweDtcclxuICAgIH1cclxuICAgIC5iYW5uZXItc2VjdGlvbntcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIExlc3MgdGhlbiA3NTBweFxyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcclxuICAgIGgxe1xyXG4gICAgICBmb250LXNpemU6MzBweDtcclxuICAgIH1cclxuICAgIGgye1xyXG4gICAgICBmb250LXNpemU6MjVweDtcclxuICAgIH1cclxuICAgIC50ZXh0LWZ1bmRpbmd7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgIGgxe1xyXG4gICAgICBmb250LXNpemU6MjhweDtcclxuICAgICAgbGluZS1oZWlnaHQ6MzNweDtcclxuICAgIH1cclxuICAgIGgye1xyXG4gICAgICBmb250LXNpemU6MjhweDtcclxuICAgIH1cclxuICAgIHB7XHJcbiAgICAgIGZvbnQtc2l6ZToxOXB4O1xyXG4gICAgfVxyXG4gICAgLnAtaGVhZGVye1xyXG4gICAgICBmb250LXNpemU6MTlweDtcclxuICAgIH1cclxuICAgIC5wLTYwe1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5teS0yMHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnRpbGUtaW1hZ2UudGlsZXtcclxuICAgICAgbWluLWhlaWdodDozMDBweDtcclxuICAgIH1cclxuICAgIC50aWxle1xyXG4gICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLyoqXHJcbiAqICBOQVZCQVJcclxuICovXHJcblxyXG4ubmF2YmFyX2NvbnRhaW5lciB7XHJcbiAgYXtcclxuICAgICY6aG92ZXIsICY6YWN0aXZle1xyXG4gICAgICBjb2xvcjogJGZvbnRfY29sb3Jfd2hpdGVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZC1idXR0b24ubmF2YmFyX2hpZ2hsaWdodF9idXR0b24ge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHllbGxvdztcclxuICAgIGNvbG9yOiAkeWVsbG93O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgIC8vcGFkZGluZzogOXB4IDExcHg7XHJcbiAgICAvL3dpZHRoOiAxMDhweDtcclxuICAgIHBhZGRpbmctdG9wOiAuMDFyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogLjAxcmVtO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC40cyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpO1xyXG4gICAgJjpob3ZlciwgJjphY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR5ZWxsb3cgIWltcG9ydGFudDtcclxuICAgICAgY29sb3I6ICRvZmZfYmxhY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5sb2dvX2xpbmsge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC5sb2dvX2ljb24ge1xyXG4gICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdl9pY29uIHtcclxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMTRweCAhaW1wb3J0YW50O1xyXG4gICAgc3ZnIHtcclxuICAgICAgZmlsbDogJHllbGxvdztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uYXZiYXJfc2lnbnVwX2J1dHRvbiB7XHJcbiAgICAubWQtYnV0dG9uIHtcclxuICAgICAgcGFkZGluZzogMnB4IDBweDtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgJHllbGxvdztcclxuICAgICAgY29sb3I6ICR5ZWxsb3c7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgIHdpZHRoOiA3OXB4O1xyXG4gICAgfVxyXG4gICAgLm1kLWJ1dHRvbjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XHJcbiAgICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNpcmN1bGFyLWltZy1jcm9wIHtcclxuICBhc3BlY3QtcmF0aW86IDE7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5uYXZiYXJfYXZhdGFyX2ljb24ge1xyXG4gIHdpZHRoOiAzOHB4O1xyXG4gIGhlaWdodDogMzhweDtcclxufVxyXG5cclxuLm93bmVyLWltZyB7XHJcbiAgd2lkdGg6IDE0MHB4O1xyXG4gIGhlaWdodDogMTQwcHg7XHJcbn1cclxuXHJcbi5pbWFnZS1vdXRsaW5lIHtcclxuICBib3JkZXI6IDNweCBzb2xpZDtcclxuICB0cmFuc2l0aW9uOiBib3JkZXIgMC41cyBlYXNlO1xyXG59XHJcblxyXG4ud2hpdGUtb3V0bGluZXtcclxuICBib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xyXG59XHJcblxyXG4uZ3JheS1vdXRsaW5le1xyXG4gIGJvcmRlcjogM3B4IHNvbGlkICNlMWUxZTE7XHJcbn1cclxuXHJcbi5pbWFnZS1vdXRsaW5lOmhvdmVyIHtcclxuICBib3JkZXI6IDNweCBzb2xpZCAkeWVsbG93O1xyXG59XHJcblxyXG4ubm8taG92ZXItZWZmZWN0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMCkgIWltcG9ydGFudDtcclxufVxyXG4vLyBNYWtlIHN1cmUgdGhlIERyb3Bkb3duIHN0YXlzIGJlbG93IHRoZSBidXR0b24gcHVzaGVkXHJcbi5tZC1vcGVuLW1lbnUtY29udGFpbmVyLm1kLWFjdGl2ZXtcclxuICBtYXJnaW4tdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiIsIi8vIC8qKlxyXG4vLyAgKiAgU0VBUkNIIENPTVBPTkVOVFxyXG4vLyAgKi9cclxuXHJcblxyXG4jc2VhcmNoIGlucHV0IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCguLi9hc3NldHMvaW1hZ2VzL3NlYXJjaF9pY29uX2JsYWNrLnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxOHB4O1xyXG4gICAgcGFkZGluZzogMHB4IDM1cHg7XHJcbn1cclxuXHJcbi5zZWFyY2hfcmVzdWx0cyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIC5yZXN1bHRfaWNvbiB7XHJcbiAgICBmbGV4OiAwIDAgMThweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgIGhlaWdodDogMThweDtcclxuICB9XHJcbiAgLnJlc3VsdF9uYW1lIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICB9XHJcbiAgLnJlc3VsdF9sb2NhdGlvbiB7XHJcbiAgICBjb2xvcjogJGJsdWU7XHJcbiAgfVxyXG59XHJcbiIsIi8qXHJcbiAgQ09OVEFJTkVSUyBVU0VEIE9OIFNIT1cgS0lUIFNUQVRFXHJcbiAqL1xyXG5cclxuLm92ZXJfbWFwe1xyXG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xyXG59XHJcblxyXG4ua2l0X2ZpeGVkIHtcclxuICB6LWluZGV4OiAkbWVkaXVtLXByaW9yaXR5O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmtpdF9kYXRhIHtcclxuICB3aWR0aDoxMDAlO1xyXG4gIG1hcmdpbi10b3A6IDM3NnB4O1xyXG5cclxuICBzZWN0aW9uLm92ZXJsYXl7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgei1pbmRleDogMztcclxuICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICBmb250LXNpemU6MjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG5cclxuICAgIGgxe1xyXG4gICAgICBjb2xvcjogJG9mZl9ibGFjaztcclxuICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICB9XHJcbiAgICBwe1xyXG4gICAgICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yX2xpZ2h0O1xyXG4gICAgICBtYXJnaW46IDAuNWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhpbnR7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgY29sb3I6JGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xyXG5cclxuICAgIG1hcmdpbi10b3A6MHB4O1xyXG5cclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICBoZWlnaHQ6MTAwJTtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICA+IHAge1xyXG4gICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgfVxyXG4gICAgLm1kLWJ1dHRvbntcclxuICAgICAgbWFyZ2luLXRvcDoyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmtpdF9kYXRhLCAua2l0VGFnc19fc2VjdGlvbntcclxuICAuc2hhZG93e1xyXG4gICAgdG9wOiAwcHg7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IDBweCAtMXB4IDZweCAwIHJnYmEoMCwwLDAsMC42NSk7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gIH1cclxufVxyXG4ua2l0X3RhZ3Mtc2VsZWN0LWhlYWRlciB7XHJcbiAgaGVpZ2h0OiA0OHB4O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuLmtpdF90YWdzLWhlYWRlci1zZWFyY2hib3gge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcclxuICBwYWRkaW5nLWxlZnQ6IDEycHg7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbiIsIi8qXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbktJVCBDT01NRU5UUyBNT0RVTEVcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuKi9cclxuLmtpdF9jb21tZW50cyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG59XHJcblxyXG4vKlxyXG4gIENIQVJUIENPTVBPTkVOVFxyXG4qL1xyXG5cclxuLmNoYXJ0X2NvbnRhaW5lciB7XHJcbiAgLyptaW4td2lkdGg6IDM0MHB4OyovXHJcbiAgbWluLWhlaWdodDogMzEwcHg7XHJcbiAgLyp3aWR0aDogMTAwJTsqL1xyXG4gIC8qaGVpZ2h0OiA5MCU7Ki9cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5jaGFydF9saW5lIHtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcclxuICB9XHJcbiAgLmNoYXJ0X2FyZWEge1xyXG4gICAgb3BhY2l0eTogMC4xO1xyXG4gIH1cclxuXHJcbiAgLmF4aXMgcGF0aCwuYXhpcyBsaW5lIHtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBzdHJva2U6ICRncmV5X2RhcmtlcjtcclxuICAgIHN0cm9rZS13aWR0aDogMTtcclxuICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5heGlzIHtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICB9XHJcbiAgLmF4aXMueV9sZWZ0IHtcclxuICAgIGZpbGw6ICRncmV5O1xyXG4gIH1cclxuICAuYXhpcy55X3JpZ2h0IHtcclxuICAgIGZpbGw6ICRncmV5O1xyXG4gIH1cclxuICAuYXhpcy54IHtcclxuICAgIGZpbGw6ICRncmV5O1xyXG4gIH1cclxuICAuZ3JpZCB7XHJcbiAgICAudGljayB7XHJcbiAgICAgIHN0cm9rZTogJGdyZXk7XHJcbiAgICAgIHN0cm9rZS1vcGFjaXR5OiAwLjY7XHJcbiAgICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcclxuICAgIH1cclxuICAgIHBhdGgge1xyXG4gICAgICBzdHJva2Utd2lkdGg6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5vdmVybGF5IHtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gIH1cclxuXHJcbiAgLmZvY3VzIGNpcmNsZSB7XHJcbiAgICBmaWxsOiByZ2IoMywgMzcsIDQ1KTtcclxuICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gIH1cclxuICAudGV4dF9ob3Zlcl9jb250YWluZXIge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlfZGFya2VyO1xyXG4gIH1cclxuICAucG9wdXBfdmFsdWUge1xyXG4gICAgZmlsbDogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2NoYXJ0O1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19jaGFydDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuICAucG9wdXBfZGF0ZSB7XHJcbiAgICBmaWxsOiAkZ3JleV9kYXJrZXI7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcbiAgLnBvcHVwX3VuaXQge1xyXG4gICAgZmlsbDogJGdyZXk7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICB9XHJcbn1cclxuXHJcbi5zdGlja05hdiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMHB4O1xyXG59XHJcblxyXG4ub3ZlcmxheS1raXRpbmZve1xyXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICB6LWluZGV4Ojk5OTtcclxufVxyXG5cclxuXHJcbi8qXHJcbiAgS0lUIE1FTlUgTU9EVUxFXHJcbiAqL1xyXG5zZWN0aW9uIC5raXRfbWVudSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogJG1vcmVfcHJpb3JpdHk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlcjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDMzcHg7XHJcbiAgfVxyXG5cclxuICAua2l0X3RpbWUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy9sZWZ0OiAtNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkZ3JleV9kYXJrZXI7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAua2l0X3VzZXIge1xyXG4gICAgbWFyZ2luLWxlZnQ6MjBweDtcclxuICAgIC8vZmxvYXQ6IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgIC8vbWFyZ2luOiAwIDMycHggMCAyMHB4O1xyXG4gICAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6NTAlO1xyXG4gICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICB3aWR0aDogMThweDtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5raXRfbmFtZSB7XHJcbiAgICBtYXJnaW4tbGVmdDozMHB4O1xyXG4gICAgLy9mbG9hdDogbGVmdDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgLy9tYXJnaW46IDAgMzJweCAwIDA7XHJcblxyXG4gICAgbWQtaWNvbiB7XHJcbiAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgIHN2ZyB7IGZpbGw6ICR5ZWxsb3c7IH1cclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmtpdF9iYXR0ZXJ5IHtcclxuICAgIG1hcmdpbi1sZWZ0OjMwcHg7XHJcbiAgICAvL2Zsb2F0OiBsZWZ0O1xyXG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgbWQtaWNvbiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICBzdmcge1xyXG4gICAgICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmtpdC1zaG93LXJhd3tcclxuICAgIG1hcmdpbi1yaWdodDogNnB4O1xyXG4gIH1cclxuXHJcbiAgLmtpdC1yYXctdG9nZ2xle1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcblxyXG4gIC8qU2hvdyByYXcgVG9nZ2xlKi9cclxuICAuc3dpdGNoIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogMzBweDtcclxuICAgIGhlaWdodDogMTVweDtcclxuICB9XHJcblxyXG4gIC5zd2l0Y2ggaW5wdXQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGhlaWdodDogMTFweDtcclxuICAgIHdpZHRoOiAxMXB4O1xyXG4gICAgbGVmdDogM3B4O1xyXG4gICAgYm90dG9tOiAycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gIH1cclxuXHJcbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcclxuICB9XHJcblxyXG4gIGlucHV0OmZvY3VzICsgLnNsaWRlciB7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICMyMTk2RjM7XHJcbiAgfVxyXG5cclxuICBpbnB1dDpjaGVja2VkICsgLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTRweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE0cHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE0cHgpO1xyXG4gIH1cclxuXHJcbiAgLyogUm91bmRlZCBzbGlkZXIgKi9cclxuICAuc2xpZGVyLnJvdW5kIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDM0cHg7XHJcbiAgfVxyXG5cclxuICAuc2xpZGVyLnJvdW5kOmJlZm9yZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG5cclxuICAua2l0LXNob3ctcmF3LXRleHR7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuXHJcbiAgLmtpdF9uYXZiYXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cclxuICAgIC8vIEljb25zIGFyZSBpbnNpZGUgbWQtYnV0dG9uXHJcbiAgICBtZC1pY29uIHtcclxuICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgZmlsbDogJGdyZXlfZGFya2VyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1kLWJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgfVxyXG5cclxuICAgIGEubWQtYnV0dG9uOmhvdmVyLCAuYnV0dG9uX2FjdGl2ZSAge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJG9mZl9ibGFjaztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuLmtpdF9vdmVydmlldyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiA5NnB4O1xyXG4gIHotaW5kZXg6ICRtZWRpdW1fcHJpb3JpdHk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlc3Q7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAuYnV0dG9uX3Njcm9sbCB7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy90b3A6IDA7XHJcbiAgICAvL3dpZHRoOiA2MHB4O1xyXG4gICAgLy9oZWlnaHQ6IDk2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbl9zY3JvbGxfbGVmdCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbl9zY3JvbGxfcmlnaHQge1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuc2Vuc29yc19jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICAgIGhlaWdodDogOTZweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcclxuICAgIC5zZW5zb3JzX2NvbnRhaW5lciB7XHJcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2Vuc29yX2NvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgb3V0bGluZTpub25lO1xyXG5cclxuICAgIHB7XHJcbiAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICAuY2xlYXIge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuXHJcbiAgICAuc2Vuc29yX3JpZ2h0IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMTVweDtcclxuICAgICAgYm90dG9tOiAzOHB4O1xyXG4gICAgICBtYXgtd2lkdGg6IDMwcHg7XHJcbiAgICAgIC5zZW5zb3JfdW5pdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo4cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5zZW5zb3JfYXJyb3cge1xyXG4gICAgICAgIG1hcmdpbi10b3A6LTE1cHg7XHJcbiAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3cHg7XHJcbiAgICAgICAgJi5hcnJvd191cCBzdmcgeyBmaWxsOiAkZ3JlZW47IH1cclxuICAgICAgICAmLmFycm93X2Rvd24gc3ZnIHsgZmlsbDogJHJlZDsgfVxyXG4gICAgICAgICYuZXF1YWwgc3ZnIHsgZmlsbDogJGJsdWVfbGlnaHQ7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlbnNvcl92YWx1ZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgIH1cclxuICAgIC5zZW5zb3JfdmFsdWVfbnVsbCB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMTU7XHJcbiAgICB9XHJcbiAgICAuc2Vuc29yX2ljb24ge1xyXG4gICAgICB3aWR0aDogMjJweDtcclxuICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogNDVweDtcclxuICAgICAgbGVmdDogMjVweDtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICBmaWxsOiAkZ3JleV9kYXJrZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICB9XHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgICAgIC5zZW5zb3JfaWNvbiBzdmcge1xyXG4gICAgICAgIGZpbGw6ICRvZmZfYmxhY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgS0lUIERFVEFJTFNcclxuICpcclxuICovXHJcblxyXG4gLmtpdF9kZXRhaWxzX25vdEF1dGgge1xyXG4gICAvLyBCdWc6IHRoaXMgd2lsbCBjcmVhdGUgYW4gZXh0cmEgZ2FwIG9uIG1vYmlsZSBkZXZpY2VzXHJcbiAgLy93aWR0aDogNTAwcHg7XHJcbiB9XHJcbi5raXRfZGV0YWlsc19ub3RBdXRoX3RpdGxlIHtcclxuICBtYXJnaW46IDA7XHJcbiB9XHJcbi5raXRfZGV0YWlsc19ub3RBdXRoX3N1YmhlYWRlciB7XHJcbiAgY29sb3I6ICRncmV5X2RhcmtlcjtcclxufVxyXG4ua2l0X2RldGFpbHNfbm90QXV0aF9idXR0b24ge1xyXG4gIGZsb2F0OiByaWdodDtcclxufVxyXG5cclxuLmtpdF9kZXRhaWxlZCB7XHJcbiAgLypoZWlnaHQ6IDEwMDBweDsqL1xyXG4gIHotaW5kZXg6ICRtZWRpdW1fcHJpb3JpdHk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBwLmRlc2NyaXB0aW9uIHtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcbiAgICB3aWR0aDogNzUlO1xyXG4gIH1cclxuXHJcbiAgLmtpdF90aW1lT3B0c3tcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtc2l6ZTogMS4zZW07XHJcbiAgfVxyXG5cclxuICAua2l0X2NoYXJ0IHtcclxuICAgIG1pbi1oZWlnaHQ6IDM0MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmhpbnR7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZfYmxhY2s7XHJcbiAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogMzdweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgLmtpdF9jaGFydF9sZWZ0IHtcclxuICAgICAgICBjb2xvcjogJG9mZl9ibGFjaztcclxuXHJcbiAgICAgICAgLnNlbnNvcl9zZWxlY3Qge1xyXG4gICAgICAgICAgLnNlbnNvcl9pY29uX3NlbGVjdGVkIHtcclxuICAgICAgICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjVweDtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICBmaWxsOiAkb2ZmX2JsYWNrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBtZC1zZWxlY3Qge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIC5tZC1zZWxlY3QtdmFsdWV7XHJcbiAgICAgICAgICAgICAgLm1kLXRleHR7XHJcbiAgICAgICAgICAgICAgICAuc2VsZWN0X2ltYWdle1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2Vuc29yX2Rlc2NyaXB0aW9uIHtcclxuICAgICAgICAgIC8qLy9jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9saWdodDsqL1xyXG4gICAgICAgICAgLyovL2hlaWdodDogODBweDsqL1xyXG4gICAgICAgICAgLyovL21hcmdpbi10b3A6IDBweDsgLy8zMDsqL1xyXG4gICAgICAgICAgLyovL3Bvc2l0aW9uOiByZWxhdGl2ZTsqL1xyXG5cclxuICAgICAgICAgIGg2IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjNweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc21hbGwge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5zZW5zb3JfdGl0bGV7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogJHllbGxvdztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnNlbnNvcl9kZXNjcmlwdGlvbl9mdWxsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IC01MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICAgICAgei1pbmRleDogMjAwO1xyXG4gICAgICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCBncmV5O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfY2hhcnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLCAwLCAwLCAwLjY1KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZW5zb3JfZGF0YSB7XHJcbiAgICAgICAgICAuc2Vuc29yX3ZhbHVlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnNlbnNvcl91bml0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAuOGVtO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRvcDogLThweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5zZW5zb3JfZGF0YV9pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlbnNvcl9kYXRhX2Rlc2NyaXB0aW9uIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgNXB4KTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCA1cHgpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgNXB4KTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgNXB4KTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgNXB4KTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfY2hhcnQ7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgICAgICAgICBwYWRkaW5nOiA0cHggNnB4O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC42NSk7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDE3NXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2Vuc29yX2Ryb3Bkb3ducyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IC44ZW07XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDozMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5raXRfY2hhcnRfcmlnaHQge1xyXG4gICAgICAgIC8qLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7Ki9cclxuICAgICAgICAvKi8vaGVpZ2h0OiAxMDAlOyovXHJcblxyXG4gICAgICAgIC5jaGFydF9uYXZpZ2F0aW9uIHtcclxuICAgICAgICAgIGhlaWdodDogMTAlO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmtpdF90aW1lIHtcclxuICAgICAgICAgICAgbWQtaWNvbiB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDExcHg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnBpY2tlcl9jb250YWluZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMDUwcHgpIHtcclxuICAgICAgICAgICAgLmNoYXJ0X25hdmlnYXRpb257XHJcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5waWNrZXJfY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA5NjBweCkge1xyXG5cclxuICAgICAgICAgICAgLnBpY2tlcl9jb250YWluZXIge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBhbGlnbi1jb250ZW50OiBtaWRkbGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLndvcmRfcGlja2Vye1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoYXJ0X21vdmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgLmNoYXJ0X21vdmVfYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmNoYXJ0X21vdmUge1xyXG4gICAgICAgICAgICAuY2hhcnRfbW92ZV9idXR0b24ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMHB4IC0ycHggMCAtMnB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9kYXJrZXI7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlc3Q7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoYXJ0X21vdmVfcmlnaHQge1xyXG4gICAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogJGdyZXlfZGFya2VyO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X2xpZ2h0ZXN0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2hhcnRfbW92ZV9sZWZ0IHtcclxuICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogJGdyZXlfZGFya2VyO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X2RhcmtlcjtcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X2xpZ2h0ZXN0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBtZC1pY29uIHtcclxuICAgICAgICAgICAgICB3aWR0aDogNS41cHg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA5cHg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAua2l0X2RldGFpbHMge1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19uYXZiYXI7XHJcbiAgICBiYWNrZ3JvdW5kOiBncmV5IHVybChcIi9hc3NldHMvaW1hZ2VzL3Nja19iZy5wbmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA2NXB4O1xyXG4gICAgcGFkZGluZzogMzBweCAzMHB4O1xyXG4gIH1cclxuXHJcbiAgLmtpdF9kZXRhaWxfaXRlbXMge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgfVxyXG5cclxuICAua2l0X2RldGFpbHNfY29udGVudCB7XHJcbiAgICBzdmcge1xyXG4gICAgICBmaWxsOiAkb2ZmX2JsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIC5raXRfZGV0YWlsc19sYWJlbHN7XHJcbiAgICAgIG1hcmdpbi10b3A6MzBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmtpdF9kZXRhaWxzX25hbWUge1xyXG4gICAgbWFyZ2luOiA1cHggMCAyMHB4IDA7XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gIH1cclxuXHJcbiAgLmtpdF9kZXRhaWxzX3R5cGUge1xyXG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgPiBzcGFuIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1kLWJ1dHRvbi5raXRfZGV0YWlsc19rZXlfcmVmcmVzaEJ1dHRvbjpob3ZlciwgLm1kLWJ1dHRvbi5raXRfZGV0YWlsc19rZXlfcmVmcmVzaEJ1dHRvbjpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREJEQkRCO1xyXG4gIH1cclxuICAua2l0X2RldGFpbGVkX2ljb25fY29udGVudCB7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAtMXB4O1xyXG4gICAgc3ZnIHtcclxuICAgICAgZmlsbDogJGdyZXlfZGFya2VyO1xyXG4gICAgfVxyXG4gIH1cclxuICAua2l0X2RldGFpbGVkX2ljb25fdGl0bGUge1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTJweDtcclxuICB9XHJcbiAgLmtpdF9kZXRhaWxlZF90aXRsZV9jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMjBweCAwO1xyXG4gIH1cclxuICAua2l0X2RldGFpbGVkX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICB9XHJcblxyXG4gIC5raXRfZGV0YWlsZWRfY29udGVudF9jb250YWluZXIge1xyXG4gICAgbWFyZ2luOiAzN3B4IDMwcHggMzdweDtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkICRvZmZfYmxhY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICB9XHJcblxyXG4gIC5ib3gtc2hhZG93LXNjLXllbGxvdyB7XHJcbiAgICBib3gtc2hhZG93OiAxMHB4IDEwcHggMHB4IC0yLjVweCAkeWVsbG93LCAxMHB4IDEwcHggMHB4IDBweCAjMUMxQzFDO1xyXG4gIH1cclxuXHJcbiAgLmJveC1zaGFkb3ctc2MtYmx1ZSB7XHJcbiAgICBib3gtc2hhZG93OiAxMHB4IDEwcHggMHB4IC0yLjVweCAkYmx1ZSwgMTBweCAxMHB4IDBweCAwcHggIzFDMUMxQztcclxuICB9XHJcblxyXG4gIC5raXRfb3duZXJfdXNlcm5hbWVMaW5rIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnNlbnNvcl92YWx1ZSB7XHJcbiAgZm9udC1zaXplOiAzNHB4O1xyXG4gIGZvbnQtZmFtaWx5OiBLYW5pdDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4vKiovXHJcblxyXG4vKiBbIV0gTGVhdmUgYW5pbWF0aW9uIChuZy1sZWF2ZSApIGFyZSBkaXNhYmxlZFxyXG5iZWNhdXNlIHRoZXkgY29uZmxpY3Qgd2l0aCBlbnRlciBhbmltYXRpb25zICovXHJcblxyXG5cclxuLnNlbnNvcl9hbmltYXRpb24ubmctZW50ZXIge1xyXG4gIHRyYW5zaXRpb246MXMgZWFzZS1vdXQgYWxsO1xyXG59XHJcbi5zZW5zb3JfYW5pbWF0aW9uLm5nLWVudGVyIHtcclxuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG4gIC8vIG9wYWNpdHk6IDA7XHJcbn1cclxuLnNlbnNvcl9hbmltYXRpb24ubmctZW50ZXItYWN0aXZlIHtcclxuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIC8vIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIC5zZW5zb3JfYW5pbWF0aW9uLm5nLWxlYXZle1xyXG4gIHRyYW5zaXRpb246MXMgZWFzZSBhbGw7XHJcbn1cclxuLnNlbnNvcl9hbmltYXRpb24ubmctbGVhdmV7XHJcbiAgb3BhY2l0eTogMDtcclxufVxyXG4uc2Vuc29yX2FuaW1hdGlvbi5uZy1sZWF2ZS1hY3RpdmV7XHJcbiAgb3BhY2l0eTogMTtcclxufSAqL1xyXG5cclxuLyogVGltZSBhbmltYXRpb24gY3VycmVudGx5IG5vdCBpbiB1c2UgKi9cclxuXHJcbi50aW1lX2FuaW1hdGlvbi5uZy1lbnRlciB7XHJcbiAgdHJhbnNpdGlvbjoxcyBlYXNlLW91dCBhbGw7XHJcbn1cclxuLnRpbWVfYW5pbWF0aW9uLm5nLWVudGVyIHtcclxuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG59XHJcbi50aW1lX2FuaW1hdGlvbi5uZy1lbnRlci1hY3RpdmUge1xyXG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbn1cclxuXHJcbi8qIC50aW1lX2FuaW1hdGlvbi5uZy1sZWF2ZSB7XHJcbiAgdHJhbnNpdGlvbjoxcyBlYXNlIGFsbDtcclxufVxyXG4udGltZV9hbmltYXRpb24ubmctbGVhdmUge1xyXG4gIG9wYWNpdHk6IDA7XHJcbn1cclxuLnRpbWVfYW5pbWF0aW9uLm5nLWxlYXZlLWFjdGl2ZSB7XHJcbiAgb3BhY2l0eTogMTtcclxufSAqL1xyXG5cclxuLmJhdF9hbmltYXRpb24ubmctZW50ZXIge1xyXG4gIHRyYW5zaXRpb246MXMgZWFzZS1vdXQgYWxsO1xyXG59XHJcbi5iYXRfYW5pbWF0aW9uLm5nLWVudGVyIHtcclxuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG59XHJcbi5iYXRfYW5pbWF0aW9uLm5nLWVudGVyLWFjdGl2ZSB7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxufVxyXG5cclxuLnRva2VuIHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgbGluZS1oZWlnaHQ6MjZweDtcclxuICBib3JkZXItcmFkaXVzOjIwcHg7XHJcbiAgcGFkZGluZzogM3B4IDEwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvd19saWdodDtcclxuXHJcbn1cclxuXHJcbi5ibHVycmVkIHtcclxuICBmaWx0ZXI6IGJsdXIoM3B4KTtcclxuICAtd2Via2l0LWZpbHRlcjogYmx1cigzcHgpO1xyXG4gIHRyYW5zaXRpb246IDAuN3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi8qIC5iYXRfYW5pbWF0aW9uLm5nLWxlYXZlIHtcclxuICB0cmFuc2l0aW9uOjJzIGVhc2UgYWxsO1xyXG59XHJcbi5iYXRfYW5pbWF0aW9uLm5nLWxlYXZlIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcbi5iYXRfYW5pbWF0aW9uLm5nLWxlYXZlLWFjdGl2ZSB7XHJcbiAgb3BhY2l0eTogMTtcclxufSAqL1xyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xyXG4gIGgxLGgyIHtcclxuICAgIGZvbnQtc2l6ZToyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5vd25lci1pbWcge1xyXG4gICAgd2lkdGg6IDgwcHg7XHJcbiAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XHJcbiAgaDEsaDIge1xyXG4gICAgZm9udC1zaXplOjIwcHggIWltcG9ydGFudDtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICB9XHJcblxyXG4gIC5raXRfZGV0YWlsX2l0ZW1zIHtcclxuICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLm93bmVyLWltZyB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICB9XHJcblxyXG4gIC5idG4tcm91bmQtbmV3IHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcblxyXG4gIC5raXRfZGV0YWlsZWQgLmtpdF9kZXRhaWxlZF9jb250ZW50X2NvbnRhaW5lciB7XHJcbiAgICBtYXJnaW46IDM3cHggMTBweCAzN3B4O1xyXG4gIH1cclxuXHJcbn0iLCIvKlxyXG4gIE1PREFMIFNUT1JFXHJcbiovXHJcblxyXG4uc3RvcmVfaXRlbURlc2NyaXB0aW9uIHtcclxuICBtYXJnaW4tbGVmdDoyMHB4O1xyXG4gIHVsIHtcclxuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgnLi4vYXNzZXRzL2ltYWdlcy9jaGVja19jaXJjbGUuc3ZnJyk7XHJcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbmhlcml0O1xyXG4gICAgZm9udC1zaXplOiAuOGVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xyXG4gIH1cclxufVxyXG4iLCIuY3N2X2ZpbGVfaXRlbSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIG1kLWNoZWNrYm94IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICB9XHJcbiAgc3BhbiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHhcclxuICB9XHJcbn1cclxuXHJcbi5saXN0LXNoYWRvdyB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDFweCAzcHggMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuICBtZC1saXN0LWl0ZW0ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRncmV5X2xpZ2h0ZXI7XHJcbiAgfVxyXG4gIG1kLWxpc3QtaXRlbTpsYXN0LWNoaWxkIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vLyAubWQtYmFyLmJnLWdyZWVuIHtcclxuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XHJcbi8vIH1cclxuXHJcbi5sYWJlbC1ncmV5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcclxufVxyXG5cclxuLnRpdGxlLXRpbWVsaW5lIHtcclxuICBmb250LXNpemU6IDMwcHg7XHJcbn1cclxuXHJcbi8qIFRoaXMgaXMgdGVtcG9yYXJ5ICovXHJcblxyXG4udXBsb2FkLWNzdiB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgLy8gcGFkZGluZy1ib3R0b206MjBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuY3N2X2NvbnRlbnR7XHJcbiAgICAgIG1hcmdpbi10b3A6IDI0MHB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiA1MHZoO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNzUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogOTcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDExNzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqICBCQUNLRFJPUCBDT01QT05FTlRcclxuICovXHJcblxyXG4vLyBQb3B1cCBiYWNrZHJvcFxyXG5cclxubWQtY29udGVudC5tZC1vcGFxdWUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzAsIDMwLCAzMCwgMC42KTtcclxufVxyXG5cclxuLy9Mb2FkaW5nIGJhY2tkcm9wXHJcblxyXG5tZC1jb250ZW50Lm1kLW1haW5CYWNrZHJvcCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIC5iYWNrZHJvcF9pY29uIHtcclxuICAgIHdpZHRoOiAxMDFweDtcclxuICAgIGhlaWdodDogMTAxcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBzdGF0ZSBjaGFuZ2UgYmFja2Ryb3BcclxubWQtY29udGVudC5tZC1zdGF0ZUNoYW5nZUJhY2tkcm9wIHtcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG59XHJcblxyXG4uYmFja2Ryb3BfaWNvbiB7XHJcbiAgc3ZnIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgZmlsbDogJGdyZXlfZGFya2VyO1xyXG4gIH1cclxuICAuc2MtY2lyY2xlLWFycm93IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUzLjglO1xyXG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTMuOCU7XHJcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTMuOCU7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTMuOCU7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjpzcGluIDNzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIC1tb3otYW5pbWF0aW9uOnNwaW4gM3MgbGluZWFyIGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uOnNwaW4gM3MgbGluZWFyIGluZmluaXRlO1xyXG4gIH1cclxufVxyXG5cclxuQC1tb3ota2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cclxuQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cclxuIiwic2VjdGlvbiAuc3RpY2tNZW51IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuLy8gIHRvcDogNjRweDtcclxufVxyXG5cclxuLnN0aWNrTmF2IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwcHg7XHJcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzY2NjtcclxufVxyXG4iXX0= */
