@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");
.border-black {
  border: 3px solid #2E2E2E; }

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

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

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

.color-black {
  color: #2E2E2E; }

.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%; }

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

.font-kanit {
  font-family: 'Kanit'; }

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

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

.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;
  color: white; }
  .btn-outline-blue:hover svg {
    fill: white; }

.btn-outline-white:hover {
  background: white;
  color: #2E2E2E; }

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

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

.btn-outline-yellow:hover {
  background: #FFC100;
  color: #2E2E2E; }

.btn-yellow {
  background: #FFC100;
  color: #2E2E2E;
  padding: 12px 29px; }

.btn-yellow:hover {
  background: #2E2E2E;
  color: #FFC100; }

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

.btn-black-outline:hover {
  background: #2E2E2E;
  color: white; }

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

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

.btn-round-new {
  border-radius: 40px;
  font-family: 'Roboto Condensed';
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.0325em;
  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; }

.btn-cyan:hover {
  color: blue; }

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

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

.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: #2E2E2E; }

.new-landing-page h1 {
  font-size: 65px;
  line-height: 65px;
  margin: 0px 0px;
  padding-top: 70px; }

.new-landing-page h2 {
  font-size: 45px;
  line-height: 45px;
  margin: 0px 0px; }

.new-landing-page h3 {
  font-size: 30px;
  line-height: 30px;
  margin-top: 10px;
  margin-bottom: 10px; }

.new-landing-page p {
  color: #2E2E2E;
  font-family: 'Roboto Condensed';
  font-size: 20px;
  line-height: 24px; }

.new-landing-page a {
  text-decoration: none !important; }

.new-landing-page .sc-logo {
  height: 43px;
  position: absolute;
  z-index: 2;
  left: 10%;
  top: 25px; }

.new-landing-page .sc-off-cta-platform {
  position: absolute;
  z-index: 2;
  right: 10%;
  top: 25px; }

.new-landing-page .img-new_sck {
  min-height: 30vw;
  background: blue url("/assets/images/new_sck.jpg") center/cover; }

.new-landing-page .img-sck_edu {
  min-height: 30vw;
  background: blue url("/assets/images/sck_edu.jpg") center/cover; }

.new-landing-page .img-sck_com {
  background: blue url("/assets/images/sck_communities.jpg") center/cover; }

.new-landing-page .img-research {
  background: blue url("/assets/images/sck_research.jpg") center/cover; }

.new-landing-page .img-governm {
  background: blue url("/assets/images/sck_cities.jpg") center/cover; }

.new-landing-page .img-platform {
  min-height: 630px !important;
  background: blue url("/assets/images/sck_platform.jpg") center/cover; }

.new-landing-page .img-docs {
  min-height: 320px !important;
  background: blue url("/assets/images/sck_docs.jpg") top/cover; }

.new-landing-page .tile {
  padding: 60px 40px;
  border-bottom: 3px solid #2E2E2E;
  border-right: 3px solid #2E2E2E; }

.new-landing-page .tile-image {
  min-height: 300px;
  padding: 0 !important; }

.new-landing-page .tile-left {
  border-left: 3px solid #2E2E2E; }

.new-landing-page .tile-top {
  border-top: 3px solid #2E2E2E; }

.new-landing-page .text-funding {
  text-align: left; }

.new-landing-page .video-section {
  background: blue url("/assets/images/landing/smartcitizen-seeed-preorder.jpg") center/cover;
  position: relative;
  height: 90vh;
  width: 100%;
  overflow: hidden; }

.new-landing-page .heading-over-video {
  position: absolute;
  z-index: 1;
  top: 0px;
  height: 100%;
  padding-left: 10%;
  padding-right: 60%; }
  .new-landing-page .heading-over-video img {
    padding-bottom: 40px; }

@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 {
    padding-top: 40px;
    position: absolute;
    padding-left: 5%;
    padding-right: 25%;
    height: 100%; }
    .new-landing-page .heading-over-video img {
      padding-bottom: 00px; } }

@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;
    padding-bottom: 10px; }
  .new-landing-page h2 {
    font-size: 28px; }
  .new-landing-page p {
    font-size: 19px; }
  .new-landing-page .p-60 {
    padding: 50px 10px !important; }
  .new-landing-page .border-xs-top {
    border-top: 3px solid #2E2E2E;
    border-left: 3px solid #2E2E2E;
    border-right: 3px solid #2E2E2E;
    border-bottom: 3px solid #2E2E2E; }
  .new-landing-page .border-xs-bottom {
    border-top: unset;
    border-left: 3px solid #2E2E2E;
    border-right: 3px solid #2E2E2E;
    border-bottom: 3px solid #2E2E2E; }
  .new-landing-page .img-platform {
    min-height: 356px !important; }
  .new-landing-page .heading-over-video {
    padding-right: 5%; }
  .new-landing-page .sc-off-cta-platform {
    padding: 10px 10px; }
  .new-landing-page .my-20 {
    margin-top: 10px !important;
    margin-bottom: 10px !important; }
  .new-landing-page .img-new_sck {
    background: blue url("/assets/images/sck_edu.jpg") center/cover; }
  .new-landing-page .img-sck_edu {
    background: blue url("/assets/images/new_sck.jpg") center/cover; } }

/**
 *  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: #2E2E2E !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: #2E2E2E; }

.navbar_avatar_icon {
  width: 38px;
  height: 38px;
  border-radius: 19px; }

.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: #2E2E2E;
    text-align: center;
    font-size: 20px;
    font-weight: lighter; }
    .kit_data section.overlay h1 {
      color: #2E2E2E;
      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: #2E2E2E;
    color: #2E2E2E;
    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 #2E2E2E; }

.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: #2E2E2E; }
      .kit_overview .sensor_container.selected .sensor_icon svg {
        fill: #2E2E2E; }

/**
 *  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: #2E2E2E;
      opacity: 0.6; }
    .kit_detailed .kit_chart .container {
      padding: 37px;
      height: 100%; }
      .kit_detailed .kit_chart .container .kit_chart_left {
        color: #2E2E2E; }
        .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: #2E2E2E; }
        .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 {
            margin-left: 10px;
            text-decoration: none;
            color: #6E6E6E; }
          .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: #2E2E2E;
            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: #2E2E2E;
          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_compare {
          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: #2E2E2E; }
  .kit_detailed .kit_details_content svg {
    fill: #2E2E2E; }
  .kit_detailed .kit_details_content .kit_details_labels {
    margin-top: 30px; }
  .kit_detailed .kit_details_name {
    margin: 5px 0 20px 0; }
  .kit_detailed .kit_details_type > span {
    margin-right: 15px; }
  .kit_detailed .kit_details_type_location svg {
    fill: #6E6E6E; }
  .kit_detailed .kit_details_version span {
    color: #6E6E6E;
    font-weight: bold; }
  .kit_detailed .kit_details_id span {
    color: #6E6E6E;
    font-weight: bold; }
  .kit_detailed .kit_details_description {
    padding-top: 4px; }
  .kit_detailed .kit_details_description_title {
    font-size: 16px;
    margin-bottom: 15px; }
  .kit_detailed .kit_details_description_content {
    font-size: 12px; }
  .kit_detailed .kit_details_manage_buttons {
    margin-bottom: 32px; }
  .kit_detailed .kit_details_button_delete {
    color: #FF3D4C; }
  .kit_detailed .kit_details_key {
    float: left;
    height: 26px; }
  .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: 62px 37px 0px; }
  .kit_detailed .kit_owner {
    color: #2E2E2E;
    background-color: #F5F5F5;
    padding-bottom: 40px; }
    .kit_detailed .kit_owner .container {
      width: 95%;
      margin: 0 auto; }
    .kit_detailed .kit_owner .kit_owner_usernameLink {
      text-decoration: none; }
    .kit_detailed .kit_owner .kit_owner_usernameText {
      color: #2E2E2E;
      margin: 50px 0 20px 0; }
    .kit_detailed .kit_owner .kit_owner_location {
      color: #6E6E6E;
      font-weight: bold; }
    .kit_detailed .kit_owner .kit_owner_url a {
      text-decoration: none;
      color: #2E2E2E; }
    .kit_detailed .kit_owner .kit_owner_kits_title {
      margin-bottom: 50px; }
    .kit_detailed .kit_owner .kit_owner_kits_list {
      border: 1px solid #EAECF1;
      height: 82px;
      background-color: white; }
    .kit_detailed .kit_owner .kit_owner_kits_list_avatar {
      float: left;
      width: 44px;
      height: 44px;
      margin-right: 3%;
      margin-top: 9px; }
    .kit_detailed .kit_owner .kit_owner_kits_list_content {
      float: left;
      margin-top: 5px; }
    .kit_detailed .kit_owner .kit_owner_kits_list_data {
      font-size: 16px; }
      .kit_detailed .kit_owner .kit_owner_kits_list_data span {
        margin-right: 15px; }
    .kit_detailed .kit_owner .kit_owner_kits_list_state {
      display: inline;
      font-size: 12px;
      border-radius: 20px;
      padding: 6px 11px;
      margin: 15px; }
    .kit_detailed .kit_owner .kit_owner_kits_list_never_published {
      background-color: #FFC100; }
    .kit_detailed .kit_owner .kit_owner_kits_list_not_configured {
      background-color: #FF3D4C; }
    .kit_detailed .kit_owner .kit_owner_kits_list_config {
      float: right;
      margin-top: 13px; }
    .kit_detailed .kit_owner .kit_owner_kits_list_config_icon {
      width: 22px;
      height: 22px; }

.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); }

/* .bat_animation.ng-leave {
  transition:2s ease all;
}
.bat_animation.ng-leave {
  opacity: 0;
}
.bat_animation.ng-leave-active {
  opacity: 1;
} */
/*
  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 {
  padding-bottom: 20px;
  margin-right: auto;
  margin-left: auto; }

@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: #2E2E2E; }

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

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

ul#policy-toc {
  padding-bottom: 0px !important;
  padding-bottom: 0px !important; }

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

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

/**
  * 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: #2E2E2E; }
  .label md-icon svg path {
    fill: #D2D3D5; }

.tag {
  background-color: #FFECB3;
  color: #2E2E2E; }
  .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: #2E2E2E; }
  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: #2E2E2E !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.9;
  padding: 0;
  position: fixed;
  top: 64px !important;
  min-width: 100%;
  z-index: 8; }
  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; }

/*
  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: #2E2E2E; }
    .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: #2E2E2E;
  font-family: 'Roboto Condensed'; }

.popup_top {
  height: 72px;
  border-radius: 2px 2px 0 0;
  background-color: #ECECEE;
  padding-top: 5px; }
  .popup_top a {
    color: #2E2E2E; }
    .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: #2E2E2E; }

.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: #2E2E2E; }

.picker__button--today, .picker__button--clear {
  color: #2E2E2E; }

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

.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: #FFECB3;
  border-color: #FFECB3; }

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

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

.kitList_noKits {
  line-height: 5; }

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

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

/**
 *  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: #2E2E2E;
  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; }

.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: #2E2E2E; }

.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: #2E2E2E; }

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

.clearfix {
  clear: both; }

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

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

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

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

/*
  TIMELINE COMPONENT

  used on add and setup kit
*/
.timeline {
  margin-top: 64px;
  background-color: #2E2E2E;
  height: 128px; }

.timeline_container {
  margin: 0 20px;
  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_stepCircle {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  margin: 0 8px;
  color: white;
  font-weight: bold; }
  .timeline_stepCircle.is-on {
    border: 2px solid #FFC100;
    background-color: #FFC100; }
  .timeline_stepCircle.is-off {
    border: 2px solid #FFC100;
    color: #FFC100; }

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

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

.timeline_button {
  width: 99%;
  height: 90px;
  font-size: 26px; }
  .timeline_button.timeline_buttonOpen.md-primary {
    color: #0019FF;
    text-align: center; }
    .timeline_button.timeline_buttonOpen.md-primary.inverted {
      color: white;
      background-color: #0019FF; }
      .timeline_button.timeline_buttonOpen.md-primary.inverted small {
        color: white; }
    .timeline_button.timeline_buttonOpen.md-primary .main {
      margin: 10px;
      font-size: 32px; }
    .timeline_button.timeline_buttonOpen.md-primary .sub {
      margin: 10px;
      font-size: 16px; }
    .timeline_button.timeline_buttonOpen.md-primary small {
      color: rgba(0, 0, 0, 0.54);
      text-transform: initial;
      display: block;
      font-size: 16px; }

.md-button.timeline_buttonSave {
  color: white !important;
  width: 130px;
  height: 44px;
  border-radius: 22px;
  font-size: 18px; }

.md-button.timeline_buttonBack {
  color: white !important;
  flex-shrink: 1;
  flex-basis: 200px;
  height: 44px;
  border-radius: 22px;
  font-size: 18px;
  margin-left: auto;
  margin-right: 20px; }

/*
  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: 36vh; }

@media (min-width: 960px) {
  .not-found-404 {
    height: 67.3vh; } }

.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: #2E2E2E; }
  .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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJoZWxwZXJzLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJjb21wb25lbnRzL2xhbmRpbmcvbGFuZGluZy5zY3NzIiwiY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL3NlYXJjaC9zZWFyY2guc2NzcyIsImNvbXBvbmVudHMva2l0L2tpdC5zY3NzIiwiY29tcG9uZW50cy9raXQvc2hvd0tpdC9zaG93S2l0LnNjc3MiLCJjb21wb25lbnRzL3N0b3JlL3N0b3JlTW9kYWwuc2NzcyIsImNvbXBvbmVudHMvdXBsb2FkL2NzdlVwbG9hZC5zY3NzIiwiY29yZS9hbmltYXRpb24vYmFja2Ryb3AvbG9hZGluZ0JhY2tkcm9wLnNjc3MiLCJjb3JlL2FuaW1hdGlvbi9hbmltYXRpb24uZGlyZWN0aXZlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUpBQVk7QUFDWixpRkFBWTtBQ0FaO0VBQ0UsMEJDTWlCLEVETGxCOztBQUNEO0VBQ0Usd0JBQXVCLEVBQ3hCOztBQUNEO0VBQ0Usd0JBQXVCLEVBQ3hCOztBQUNEO0VBQ0UsMEJBQStCLEVBQ2hDOztBQUNEO0VBQ0UsZUNOaUIsRURPbEI7O0FBQ0Q7RUFDRSxlQ2RZLEVEZWI7O0FBQ0Q7RUFDRSxlQ2pCWSxFRGtCYjs7QUFDRDtFQUNFLGVDaEJhLEVEb0JkO0VBTEQ7SUFHSSxjQ2xCVyxFRG1CWjs7QUFFSDtFQUNFLGVDdkJXLEVEMkJaO0VBTEQ7SUFHSSx5QkFBcUIsRUFDdEI7O0FBRUg7RUFDRSxZQUFXLEVBQ1o7O0FBQ0Q7RUFDRSxhQUFZLEVBQ2I7O0FBQ0Q7RUFDRSxjQUFZLEVBQ2I7O0FBQ0Q7RUFDRSxZQUFXLEVBQ1o7O0FBQ0Q7RUFDRSxpQkFBZ0IsRUFDakI7O0FBQ0Q7RUFDRSxnQkFBZSxFQUNoQjs7QUFHRDtFQUNFLGdDQUE4QixFQUMvQjs7QUFDRDtFQUNFLHFCQUFtQixFQUNwQjs7QUFFRDtFQUNFLG1CQUFrQixFQUNuQjs7QUFDRDtF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WSxFQUNiOztBQWxHTDtFQXFHSyxvQkFBbUIsRUFDbkI7O0FBdEdMO0VBeUdLLG9CQUFtQixFQUNuQjs7QUExR0w7RUE2R0ssb0JBQW1CLEVBQ25COztBQTlHTDtFQWlISyxvQkFBbUIsRUFDbkI7O0FBbEhMO0VBcUhLLG9CQUFtQixFQUNuQjs7QUF0SEw7RUF5SEssb0JBQW1CLEVBQ25COztBQTFITDtFQTZISyxvQkFBbUIsRUFDbkI7O0FBOUhMO0VBaUlLLG9CQUFtQixFQUNuQjs7QUFsSUw7RUFxSUssb0JBQW1CLEVBQ25COztBQXRJTDtFQXlJSyxvQkFBbUIsRUFDbkI7O0FBTUwsdUJBQXVCO0FBRXZCO0VBQ0UsYUFBWTtFQUNaLGtEQUF5QztVQUF6QywwQ0FBeUMsRUFBRTs7QUFFN0M7RUFDRTtJQUNFLHdCQUFvQjtJQUNwQixxRUFFd0IsRUFBQTtFQUMxQjtJQUNFLGFBQVk7SUFDWixxRUFFd0IsRUFBQTtFQUMxQjtJQUNFLDREQUV3QixFQUFBO0VBQzFCO0lBQ0UsbURFeGxFVSxFQUFBLEVBQUE7O0FGd2tFZDtFQUNFO0lBQ0Usd0JBQW9CO0lBQ3BCLHFFQUV3QixFQUFBO0VBQzFCO0lBQ0UsYUFBWTtJQUNaLHFFQUV3QixFQUFBO0VBQzFCO0lBQ0UsNERBRXdCLEVBQUE7RUFDMUI7SUFDRSxtREV4bEVVLEVBQUEsRUFBQTs7QUY2bEVkO3VDQUN1QyIsImZpbGUiOiJpbmRleC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvK0NvbmRlbnNlZDo0MDAsMzAwLDMwMGl0YWxpYyw0MDBpdGFsaWMsNzAwLDcwMGl0YWxpY3xSb2JvdG86NDAwLDcwMCw3MDBpdGFsaWMsNDAwaXRhbGljKTtcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9S2FuaXQ6NDAwLDUwMCw2MDAsNzAwLDkwMCcpO1xuXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcbkBpbXBvcnQgJ2hlbHBlcnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYW5kaW5nL2xhbmRpbmcnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2tpdC9raXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9raXQvc2hvd0tpdC9zaG93S2l0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RvcmUvc3RvcmVNb2RhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3VwbG9hZC9jc3ZVcGxvYWQnO1xuQGltcG9ydCAnY29yZS9hbmltYXRpb24vYmFja2Ryb3AvbG9hZGluZ0JhY2tkcm9wJztcbkBpbXBvcnQgJ2NvcmUvYW5pbWF0aW9uL2FuaW1hdGlvbi5kaXJlY3RpdmUnO1xuXG4vKipcbiAqICBNT1pJTExBLVNQRUNJRklDIENTU1xuICovXG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAua2l0X2RldGFpbGVkIC5raXRfY2hhcnQgLmNvbnRhaW5lciAua2l0X2NoYXJ0X2xlZnQgLnNlbnNvcl9zZWxlY3QgLnNlbnNvcl9pY29uX3NlbGVjdGVkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XG4gIH1cbiAgLmtpdF9kZXRhaWxlZCAua2l0X2NoYXJ0IC5jb250YWluZXIgLmtpdF9jaGFydF9sZWZ0IC5zZW5zb3JfY29tcGFyZSBtZC1zZWxlY3Qge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBib2R5IC5raXRfZGV0YWlsZWQgLmtpdF9jaGFydCAuY29udGFpbmVyIC5raXRfY2hhcnRfbGVmdCAuc2Vuc29yX2RhdGEge1xuICAgIG1hcmdpbjogNSUgMCA0JSAwO1xuICB9XG5cbi8qICAgc2VjdGlvbi5tYXAge1xuICAgIHotaW5kZXg6IDA7XG4gIH0gKi9cbn1cblxuLyoqXG4gKiAgSU5QVVQgQ1NTXG4gKi9cbi8vXG4vLyA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBXZWJLaXQgYnJvd3NlcnMgKi9cbi8vICAgY29sb3I6ICRmb250X2NvbG9yX3doaXRlO1xuLy8gfVxuLy8gOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCAqL1xuLy8gICBjb2xvcjogJGZvbnRfY29sb3Jfd2hpdGU7XG4vLyAgIG9wYWNpdHk6ICAxO1xuLy8gfVxuLy8gOjotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDE5KyAqL1xuLy8gICBjb2xvcjogICRmb250X2NvbG9yX3doaXRlO1xuLy8gICBvcGFjaXR5OiAgMTtcbi8vIH1cbi8vIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi9cbi8vICAgY29sb3I6ICRmb250X2NvbG9yX3doaXRlO1xuLy8gfVxuLy9cbi8vIDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCBicm93c2VycyAqL1xuLy8gICBjb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2JhY2tncm91bmQ7XG4vLyB9XG4vLyA6Zm9jdXM6LW1vei1wbGFjZWhvbGRlciB7IC8qIE1vemlsbGEgRmlyZWZveCA0IHRvIDE4ICovXG4vLyAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDtcbi8vICAgb3BhY2l0eTogIDE7XG4vLyB9XG4vLyA6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggMTkrICovXG4vLyAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDtcbi8vICAgb3BhY2l0eTogIDE7XG4vLyB9XG4vLyA6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICovXG4vLyAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDtcbi8vIH1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCc7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xufVxuXG5hLmFib3V0e1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRibHVlO1xufVxuXG5saS5wb2xpY3ktdG9jIHtcbiAgcGFkZGluZzogM3B4O1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxudWwjcG9saWN5LXRvYyB7XG4gIHBhZGRpbmctYm90dG9tOiAwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4ucG9saWN5LXRvYyNoZWFkZXJ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5pY29uX2xhYmVse1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0ycHg7XG4gIHN2ZyB7XG4gICAgZmlsbDogJGdyZXlfZGFya2VyO1xuICB9XG59XG5cbi8qKlxuICAqIFRZUE9HUkFQSFlcbiAgKi9cblxuaDF7XG4gIGZvbnQtc2l6ZTogMi4yZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5oMiB7XG4gIGZvbnQtc2l6ZTogMS43ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5oMyB7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cblxucCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbnRkIHtcbiAgcGFkZGluZzo1cHg7XG59XG5cbmlucHV0e1xuICBmb250LWZhbWlseTonUm9ib3RvIENvbmRlbnNlZCc7XG59XG5cbi5sYWJlbCwgLnRhZywgLnN0YXRle1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OjI0cHg7XG4gIGJvcmRlci1yYWRpdXM6MjBweDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgbWQtaWNvbntcbiAgICBtYXJnaW4tbGVmdDo0cHg7XG4gICAgaGVpZ2h0OjExcHg7XG4gICAgd2lkdGg6MTFweDtcbiAgICBtYXJnaW4tdG9wOi0zcHg7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gIH1cbiAgJltjbGlja2FibGVde1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICB9XG59XG4ubGFiZWx7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3dfbGlnaHQ7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xuICBtZC1pY29uIHN2ZyBwYXRoe1xuICAgIGZpbGw6ICR0ZXJjaWFyeV9jb2xvcl9saWdodDtcbiAgfVxufVxuLnRhZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3dfbGlnaHRlcjtcbiAgY29sb3I6ICRvZmZfYmxhY2s7XG4gIG1kLWljb24gc3ZnIHBhdGh7XG4gICAgZmlsbDogJHNlY29uZGFyeV9jb2xvcjtcbiAgfVxufVxuXG4ubGVhZmxldC1jb250YWluZXIgLnRhZywgLmxlYWZsZXQtY29udGFpbmVyIC5sYWJlbCxcbi5sZWFmbGV0LWNvbnRhaW5lciAuc3RhdGV7XG4gIGZvbnQtc2l6ZToxZW07XG59XG5cbi5sZWFmbGV0LXRvcHtcbiAgIHRvcDo5M3B4O1xufVxuXG5zZWN0aW9uLmluZm97XG4gIGgxe1xuICAgIGZvbnQtc2l6ZToxLjNlbTtcbiAgfVxufVxuXG5he1xuICBjb2xvcjogJG9mZl9ibGFjaztcbiAgJjpob3ZlciwgJjphY3RpdmV7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkYmx1ZTtcbiAgfVxufVxuXG5hLmZvb3Rlci1saW5re1xuICBjb2xvcjogJHllbGxvdztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpO1xuICAmOmhvdmVyLCAmOmFjdGl2ZXtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6JGJsdWU7XG4gIH1cbn1cbmEubWQtYnV0dG9uLCBhLFxuYnV0dG9uLm1kLWJ1dHRvbiwgYnV0dG9ue1xuICAvLyBjb2xvciBoZXJlIG92ZXJ3cml0ZXMgTUFQIGFuZCBDT01NVU5JVFkgaW4gbmF2YmFyXG4gIC8vIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XG59XG5cbi8qXG4gIE92ZXJ3cml0ZSBnbG9iYWwgbWF0ZXJpYWwgZGVzaWduLCBhbGxvdyBpY29ucyB0byBiZSBzbWFsbGVyXG4qL1xuXG5tZC10b29sYmFye1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfbmF2YmFyICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6ICRsYXJnZV9wcmlvcml0eTtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIG1kLWljb257XG4gICAgZmlsbDogd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuICAvL2hlaWdodDogNjRweDtcbn1cblxubWQtaWNvbntcbiAgLy8gRWZmZWN0cyBBTEwgaWNvbnMgb24gdGhlIHNpdGVcbiAgbWluLXdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xufVxuXG5tZC1zZWxlY3R7XG4gIG1kLXNlbGVjdC12YWx1ZXtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjY2NjY2NjNzUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5hLm1kLWJ1dHRvbiBoNCwgYS5tZC1idXR0b24gLmg0e1xuICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xuICBtYXJnaW46IDA7XG59XG5hLndhcm4sXG5idXR0b24ud2FybntcbiAgY29sb3I6ICRhbGVydF9yZWQ7XG4gIHN2ZyB7XG4gICAgLy8gZmlsbDogJGFsZXJ0X3JlZDtcbiAgfVxufVxuXG4uYm9sZHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRpdlthcGkta2V5XXtcbiAgZGlzcGxheTogZmxleDtcblxuICAuYXBpX2tleV9udW1iZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIHdpZHRoOiA0MjBweDtcbiAgfVxuICAuYXBpX2tleV9yZWZyZXNoX2J1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0RCREJEQjtcbiAgICBtYXJnaW46MDtcbiAgICBtZC1pY29uIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICB9XG4gIH1cbiAgbWQtaWNvbiB7XG4gICAgb3BhY2l0eTogLjU7XG4gIH1cbn1cblxuLmluZm9fb3ZlcmxheXtcbiAgaDJ7XG4gICAgY29sb3I6d2hpdGU7XG4gIH1cbiAgcHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6JHRlcmNpYXJ5X2NvbG9yX2xpZ2h0O1xuICB9XG59XG5cbi5kYXJre1xuICBoMSwgaDJ7XG4gICAgY29sb3I6d2hpdGU7XG4gIH1cbiAgaDEsIGgye1xuICAgIG1hcmdpbjowO1xuICB9XG4gIGgzLCBoNCwgLmg0LCBhe1xuICAgIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XG4gIH1cbn1cblxuLyoqXG4gKiBBTkdVTEFSIE1BVEVSSUFMIE9WRVJSSURJTkdcbiAqL1xuXG5cbm1kLXNlbGVjdC1tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5tZC1zZWxlY3QsXG5tZC1zZWxlY3QtbWVudSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5tZC1zZWxlY3Q6bm90KFtkaXNhYmxlZF0pOmZvY3VzIC5tZC1zZWxlY3QtdmFsdWUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjNkI4NjhEO1xufVxuXG5idXR0b24ubWQtcHJpbWFyeXtcbiAgLy8gR2V0IG5ldyBraXQgcG9wdXAsIGJ1dHRvbiBjb2xvclxuICAvLyBBbHNvIGludGVyZmVyZXMgd2l0aCBraXRzL2VkaXQgc2F2ZSBidXR0b25cbiAgLy8gY29sb3I6JHRlcmNpYXJ5X2NvbG9yICFpbXBvcnRhbnQ7XG4gIC8vIGZvbnQtc2l6ZToxOHB4O1xufVxuLm1kLWJ1dHRvbi5tZC1mbGF0Lm1kLXByaW1hcnkge1xuICAvL21hcmdpbjogMHB4O1xuICAvL2JhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcbiAgLy9jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLm1kLWJ1dHRvbi5tZC1wcmltYXJ5Lm1kLWZsYXQ6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5tZC1idXR0b24ubWQtcHJpbWFyeS5tZC1mbGF0Om5vdChbZGlzYWJsZWRdKTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubWQtYnV0dG9uLmZpbGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbm1kLWlucHV0LWNvbnRhaW5lcjpub3QoLm1kLWlucHV0LWludmFsaWQpLm1kLWlucHV0LWZvY3VzZWQge1xuICBsYWJlbCB7XG4gICAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcbiAgfVxuXG4gIC5tZC1pbnB1dCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTIpO1xuICB9XG59XG5cbi8qKlxuICogQUxFUlQgQ09NUE9ORU5UXG4gKi9cblxuLm1kLXRvYXN0LWNvbnRlbnQge1xuICBib3gtc2hhZG93OiB1bnNldCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldCAhaW1wb3J0YW50O1xuICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAxMDAlO1xufVxuXG5tZC10b2FzdCB7XG4gIC8vIFRPRE86IHdoZW4gYSB0b2FzdCBpcyBvbiBzY3JlZW4sIHRoZSBib2R5IGdldHMgY2xhc3M9J21kLXRvYXN0LW9wZW4tYm90dG9tJ1xuICAvLyBXaGVyZSBkb2VzIHRoYXQgY29tZSBmcm9tP1xuICAvLyBJZiB0aGVyZSBpcyBhIHNpbWlsYXIgKm9wZW4tdG9wLCB3ZSBjYW4gcmVtb3ZlIHRoZSBDU1MgYm90dG9tLCB0b3BcbiAgYm90dG9tOiB1bnNldCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgYW5ndWxhciBkZWZhdWx0XG4gIGNvbG9yOiBibGFjaztcbiAgb3BhY2l0eTogMC45O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNjRweCAhaW1wb3J0YW50OyAvLyBTdGFydCB0aGUgdG9hc3QgYXQgdG9wIGJlbG93IG5hdmJhci5cbiAgbWluLXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA4O1xuXG4gIC5hbGVydF90eXBlSWNvbiB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxuXG4gIC5hbGVydF9jbG9zZUljb24ge1xuICAgIHdpZHRoOiAxMC41cHg7XG4gICAgaGVpZ2h0OiAxMC41cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAuYWxlcnRfYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwcHggMTJweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxubWQtdG9hc3QucmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsZXJ0X3JlZDtcbn1cblxubWQtdG9hc3QuZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnRfZ3JlZW47XG59XG5cbm1kLXRvYXN0LmJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbn1cblxubWQtdG9hc3QueWVsbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbn1cblxubWQtY2hlY2tib3gubWQtY2hlY2tlZCAubWQtaWNvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG59XG5tZC1jaGVja2JveCAubWQtbGFiZWwge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxubWQtY2hlY2tib3ggLm1kLWxhYmVsIHNwYW4ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qKlxuICogIFNQSU5ORVIvUFJPR1JFU1MgQkFSIENPTVBPTkVOVFNcbiAqL1xuXG5tZC1wcm9ncmVzcy1saW5lYXIubWQtYmFyLmdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xufVxubWQtcHJvZ3Jlc3MtbGluZWFyLmdyZWVuIC5tZC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRncmVlbiwgMCk7XG59XG5tZC1wcm9ncmVzcy1saW5lYXIuZ3JlZW4gLm1kLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbn1cbm1kLXByb2dyZXNzLWxpbmVhci5tZC1iYXJ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xufVxubWQtcHJvZ3Jlc3MtbGluZWFyLm1kLWh1ZS0zIC5tZC1jb250YWluZXJ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsdWUsIDAuMDUpO1xufVxubWQtcHJvZ3Jlc3MtbGluZWFyLm1kLWh1ZS0zIC5tZC1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbn1cblxuLmtpdF9zcGlubmVyIHtcbiAgei1pbmRleDogMjAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogNnB4O1xufVxuXG4uY2hhcnRfc3Bpbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyMDBweDtcbiAgbGVmdDogNTclO1xufVxuXG4vKipcbiAqICBDT09LSUVTIFBPTElDWSBDT01QT05FTlRcbiAqL1xuXG4gLmNvb2tpZXMtcG9saWN5X2NvbnRhaW5lcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDYwLCA2MCwgNjAsIDEpO1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzo1cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL2hlaWdodDogNHZoO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDR2aDtcblxuICAgIGF7XG4gICAgICBjb2xvcjogcmdiYSgkeWVsbG93LCAwLjYpO1xuICAgIH1cbiB9XG5cblxuLy8gTm8gZGF0YSBiYWNrZHJvcFxuLm1kLW5vRGF0YUJhY2tkcm9wIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogOTYgKyAyODVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAuYmxvY2sge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gIH1cbiAgLnRpdGxlLCAubWVzc2FnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC50aXRsZSB7XG4gICAgY29sb3I6ICRncmV5X2RhcmtlcjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLm1lc3NhZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJGJsdWU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8qKlxuICogIE1BUFxuICovXG5cbi5tYXBfc3RhdGUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDEwMjRweCkge1xuICAubWFwX3N0YXRlIHtcbiAgfVxufVxuXG5zZWN0aW9uLm1hcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiBibGFjaztcbiAgei1pbmRleDogMTsvLyRzbWFsbF9wcmlvcml0eTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDY0cHg7XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC1oZWlnaHQ6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiAxMDAwcHgpIHtcbiAgICBoZWlnaHQ6IDk1MHB4O1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiAxMDAwcHgpIGFuZCAobWluLWhlaWdodDogODAwcHgpIHtcbiAgICBoZWlnaHQ6IDcwMHB4O1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA4MDBweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xuICAgIGhlaWdodDogNTUwcHg7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC1oZWlnaHQ6IDYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDQwMHB4KSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM2VtO1xuICB9XG59XG5cbi8qXG4gIENPUkUgQ0hJUCBDT01QT05FTlRcbiAqL1xuLmNoaXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGRpdi5jaGlwc19yb3d7XG4gICAgaGVpZ2h0OjQwLjVweDtcbiAgfVxuXG4gIC5sYWJlbCwgLnRhZ3tcbiAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjY1KTtcbiAgfVxufVxuLmNoaXAge1xuICAvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDBweCAxMHB4IDBweCAxNHB4O1xuICBtYXJnaW46IGF1dG8gNXB4O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBoZWlnaHQ6MzBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjlweDtcblxuICAuY2hpcF9uYW1lIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICB9XG4gIC5jaGlwX2ljb24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIG1kLWljb24ge1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgIH1cbiAgfVxuXG4gICYubWFwX2ZpbHRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwwLDAsMC42NSk7XG4gIH1cbiAgJi5raXRfdGFnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweDtcbiAgfVxufVxuLypcbiAgTUFQIEZJTFRFUlNcbiovXG4ubWFwX2xlZ2VuZCB7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5jaGlwc3tcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAubWFwX2xlZ2VuZF9fZmlsdGVyc0NvbnRhaW5lcntcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMjRweDtcbiAgICBoZWlnaHQ6IDgxcHg7XG5cbiAgICBib3JkZXItcmFkaXVzOjRweDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC42NSk7XG4gICAgc3ZnLCBwIHtcbiAgICAgIGZpbGw6ICRvZmZfYmxhY2s7XG4gICAgfVxuXG5cbiAgICAubWFwX2xlZ2VuZF9fZmlsdGVyc1Jvd3tcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpe1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ3JheTtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgLm1hcF9maWx0ZXJfYnV0dG9ue1xuICAgICAgICBib3gtc2hhZG93Om5vbmU7XG4gICAgICAgIHB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ubWFwX2ZpbHRlcl9idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB3aWR0aDogMjZweDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjY1KTtcblxuICBtZC1pY29uIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cbn1cbi5tZC1idXR0b24ubWFwX2ZpbHRlcl9idXR0b246aG92ZXIsIC5tZC1idXR0b24ubWFwX2ZpbHRlcl9idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuXG5cbi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuS0lUIFRBR1MgTU9EVUxFXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmtpdFRhZ3NfX3NlY3Rpb257XG4gIG1hcmdpbi10b3A6IDM3NnB4O1xuXG4gIC5raXRUYWdzX19saXN0Q29udGFpbmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X2xpZ2h0ZXI7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxuXG4gIC5raXRUYWdzX19jb250YWluZXJ7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG5cbiAgICAua2l0VGFnc19fdGV4dENvbnRhaW5lcntcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIC5raXRUYWdzX190ZXh0RWxlbWVudHtcbiAgICAgICAgZmxleC1iYXNpczo0MCU7XG4gICAgICAgIGZsZXgtZ3JvdzowO1xuICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlxuIENPUkUgRk9STSBDT01QT05FTlRcbiAqL1xuXG4uZm9ybV9jb250YWluZXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAzcHggM3B4O1xufVxuLmZvcm1fY29udGVudENvbnRhaW5lciB7XG4gIHdpZHRoOiA5MiU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmZvcm1fZmllbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mb3JtX2Vycm9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNSU7XG4gIGxlZnQ6IDUlO1xuICBjb2xvcjogcmVkO1xuICBmb250LXNpemU6IDAuN2VtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZvcm1fY2xvc2VJY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW46IDEycHg7XG5cbiAgbWQtaWNvbiB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gIH1cbn1cblxuLm1kLXByaW1hcnkuZm9ybV9idXR0b24ge1xuICBjb2xvcjogJGZvbnRfY29sb3Jfd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcbiAgaGVpZ2h0OiA2NHB4O1xuICBib3R0b206IDBweDtcbiAgbGVmdDogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDJweCAycHg7XG59XG5cblxuLmZvcm1fdGl0bGUge1xuICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uZm9ybV9tZXNzYWdlSGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cbi5mb3JtX21lc3NhZ2VTdWJoZWFkZXIge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiByZ2JhKDAsOTgsMTIzLDAuNTQpO1xuICBsaW5lLWhlaWdodDogMC41O1xufVxuXG4uZm9ybV9tZXNzYWdlRGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qXG4gIENPUkUgTEFSR0UgREVWSUNFUyBGT1JNXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDUwMXB4KSB7XG4gIC5mb3JtX2NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDM0MHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAuZm9ybV9tZXNzYWdlQ29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5tZC1wcmltYXJ5LmZvcm1fYnV0dG9uIHtcbiAgICB3aWR0aDogMzQwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cbn1cblxuLypcbiAgQ09SRSBNT0JJTEUgREVWSUNFUyBGT1JNXG4qL1xuXG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLmZvcm1fY29udGFpbmVyIHtcbiAgICB3aWR0aDogODAlO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAubWQtcHJpbWFyeS5mb3JtX2J1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cbn1cblxuLy8gb3ZlcnJpZGUgZm9yIElwaG9uZSA0XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA0ODBweCkgYW5kICgtd2Via2l0LWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiAyLzMpIHtcbiAgLnJlY292ZXJ5X2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxuICAuZm9ybV9maWVsZCB7XG4gICAgcGFkZGluZzogNSUgMDtcbiAgfVxufVxuXG4vKlxuICBSRUNPVkVSWSBGT1JNXG4qL1xuLnJlY292ZXJ5X2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwcHggYXV0bztcbiAgbWFyZ2luLWJvdHRvbToxMDBweDtcbi8vICBoZWlnaHQ6IDM3NnB4O1xufVxuXG4uZm9ybVJlY292ZXJ5X2ZpZWxkIHtcbiAgcGFkZGluZzogMTAlIDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1MDFweCkge1xuICAucmVjb3ZlcnlfY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG4gIC5mb3JtUmVjb3ZlcnlfZXJyb3JzIHtcbiAgICBib3R0b206IDE1JTtcbiAgICBsZWZ0OiA1JTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLnJlY292ZXJ5X2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMjAlO1xuICB9XG4gIC5mb3JtUmVjb3ZlcnlfZXJyb3JzIHtcbiAgICBib3R0b206IDIzJTtcbiAgICBsZWZ0OiA1JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA0ODBweCkgYW5kICgtd2Via2l0LWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiAyLzMpIHtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICAuZm9ybVJlY292ZXJ5X2ZpZWxkIHtcbiAgICAgIHBhZGRpbmc6IDIlIDA7XG4gICAgfVxuICAgIC5mb3JtUmVjb3ZlcnlfZXJyb3JzIHtcbiAgICAgIGJvdHRvbTogMjklO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuICBSRVNFVCBGT1JNXG4qL1xuLmZvcm1SZXNldF9maWVsZCB7XG4gIHBhZGRpbmc6IDclIDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1MDFweCkge1xuICAuZm9ybVJlc2V0X2Vycm9ycyB7XG4gICAgYm90dG9tOiA1JTtcbiAgICBsZWZ0OiA1JTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLmZvcm1SZXNldF9lcnJvcnMge1xuICAgIGJvdHRvbTogMTglO1xuICAgIGxlZnQ6IDElO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSBhbmQgKC13ZWJraXQtZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKGRldmljZS1hc3BlY3QtcmF0aW86IDIvMykge1xuICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICAuZm9ybVJlc2V0X2Vycm9ycyB7XG4gICAgICB0b3A6IDY1JTtcbiAgICB9XG4gICAgLmZvcm1SZXNldF9maWVsZCB7XG4gICAgICBwYWRkaW5nOiAzJSAwO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE1PVkUgRE9XTiBFRkZFQ1QgT04gU0NST0xMXG4gKi9cblxuLm1vdmVfZG93biB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMycHgpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMnB4KTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMycHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCk7XG59XG5cbi8qXG4gIE1BUktFUiBBTkQgUE9QVVAgTUFSS0VSXG4qL1xuXG4ubWFya2VyU21hcnRDaXRpemVuTm9ybWFsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHllbGxvdztcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggMHB4IHJnYmEoMCwwLDAsMC4zMCk7XG59XG5cbi5tYXJrZXJTbWFydENpdGl6ZW5PbmxpbmUge1xuICBib3JkZXI6IDJweCBzb2xpZCAkeWVsbG93O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgwLDAsMCwwLjMwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkeWVsbG93LCAwLjUpO1xufVxuXG4ubWFya2VyRXhwZXJpbWVudGFsTm9ybWFsIHtcbiAgYm9yZGVyOiAycHggc29saWQgJGJhY2tncm91bmRfYmx1ZV9taWR0b25lO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgwLDAsMCwwLjMwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9taWR0b25lO1xufVxuXG4vKiBAa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxufSAqL1xuXG4ubWFya2VyU21hcnRDaXRpemVuT2ZmbGluZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMCwwLDAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDAsMCwwLDAuMzApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMik7XG59XG5cbi8qIC5tYXJrZXJfYmxpbmsge1xuICAtd2Via2l0LWFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uOiBwdWxzZSAycyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xufSAqL1xuXG4ucG9wdXAge1xuICB3aWR0aDogMTAxJTs7XG4gIGhlaWdodDogMTM1cHg7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xuICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnXG59XG5cbi5wb3B1cF90b3Age1xuICBoZWlnaHQ6IDcycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2xpZ2h0O1xuICBwYWRkaW5nLXRvcDo1cHg7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRvZmZfYmxhY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgIH1cbiAgfVxuXG4gIC5wb3B1cF9uYW1lIHtcbiAgICBwYWRkaW5nOiAwIDAgMXB4IDhweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnBvcHVwX3R5cGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDFweCAwIDNweCA4cHg7XG4gIH1cbiAgLnBvcHVwX3RpbWUge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBwYWRkaW5nOiAycHggMCAwIDhweDtcblxuICAgIG1kLWljb24ge1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB9XG4gIH1cbn1cblxuLnBvcHVwX2JvdHRvbSB7XG4gIGhlaWdodDogNjhweDtcblxuICAucG9wdXBfbG9jYXRpb24ge1xuICAgIHBhZGRpbmc6IDVweCAwIDAgOHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIG1kLWljb24ge1xuICAgICAgd2lkdGg6IDguNHB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgfVxuICB9XG4gIC5wb3B1cF9sYWJlbHMge1xuICAgIHBhZGRpbmc6IDhweCAwIDAgOHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIHNwYW4ge1xuICAgICAgLy8gTWFrZSBiYWxsb29ucyBvbiBtYXAgc21hbGxlclxuICAgICAgLy9ib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgLy9tYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAvL3BhZGRpbmc6IDNweCA4cHg7XG4gICAgfVxuXG4gICAgdGFnLCBzcGFuIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuLnBvcHVwX2ljb24gc3ZnOm50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qIEtpdCB0eXBlIGNvbG9ycyBraXRVdGlscy5zZXJ2aWNlLmpzIDo6IGNsYXNzaWZ5KCkqL1xuXG4uc2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbn1cbi51bmtub3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JleTtcbn1cbi8qKlxuICogT1ZFUlJJREUgTEVBRkxFVFxuICovXG5cbi5sZWFmbGV0LWxlZnQge1xuICAvLyBUaGlzIGlzIGEgaGFjay4gVGhlIHJpZ2h0IHdheSBpcyB0byBjaGFuZ2UgdGhlIGxlYWZsZXQgQVBJLiBTZWUgdGhlIGRvY3M6XG4gIC8vIGh0dHA6Ly9sZWFmbGV0anMuY29tL3JlZmVyZW5jZS0wLjcuNy5odG1sI2NvbnRyb2wtcG9zaXRpb25cbiAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDExcHg7XG4gIHRvcDogMTVweCAhaW1wb3J0YW50O1xufVxuXG4ubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQge1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMjQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAtMXB4O1xuXG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ubGVhZmxldC1wb3B1cC1jbG9zZS1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGVhZmxldC1vdmVybGF5LXBhbmUgLmxlYWZsZXQtem9vbS1hbmltYXRlZCBwYXRoIHtcbiAgc3Ryb2tlOiBncmV5O1xufVxuLy8gb3ZlcnJpZGUgei1pbmRleCBvZiBtYXAgY29udHJvbHNcbi5sZWFmbGV0LXRvcC5sZWFmbGV0LWxlZnQge1xuICB6LWluZGV4OiAxO1xufVxuLmxlYWZsZXQtYm90dG9tLmxlYWZsZXQtcmlnaHQge1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWFya2VyLWNsdXN0ZXIge1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSgwLDAsMCwwLjIwKTtcbiAgZGl2IHtcbiAgICAvL21hcmdpbi10b3A6IC0ycHg7XG4gICAgLy9tYXJnaW4tbGVmdDogLTJweDtcbiAgICAvL3dpZHRoOiA0MHB4O1xuICAgIC8vaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCc7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIC8vbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgLy9mb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5tYXJrZXItY2x1c3Rlci1zbWFsbCwgLm1hcmtlci1jbHVzdGVyLW1lZGl1bSwgLm1hcmtlci1jbHVzdGVyLWxhcmdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkeWVsbG93LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHllbGxvdywgMC4zKTtcbiAgZGl2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMjU1LDE2OCwwKTtcbiAgfVxufVxuXG4vKlxuICBQSUNLRVIgQ09NUE9ORU5UXG4qL1xuXG4ucGlja2VyIHtcbiAgY29sb3I6ICRvZmZfYmxhY2s7XG59XG5cbi5waWNrZXJfX3dlZWtkYXkge1xuICBjb2xvcjogJGdyZXlfZGFya2VyO1xufVxuXG4ucGlja2VyX19uYXYtLXByZXY6OmJlZm9yZSB7XG4gIGJvcmRlci1yaWdodDogMC43NWVtIHNvbGlkICRncmV5X2Rhcmtlcjtcbn1cblxuLnBpY2tlcl9fbmF2LS1uZXh0OjpiZWZvcmUge1xuICBib3JkZXItbGVmdDogMC43NWVtIHNvbGlkICRncmV5X2Rhcmtlcjtcbn1cblxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTo6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAwLjY2ZW0gc29saWQgJGJsdWU7XG59XG5cbi5waWNrZXJfX2hvbGRlci5waWNrZXJfY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjo6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgJHJlZDtcbn1cbi5waWNrZXJfX2J1dHRvbi0tY2xvc2Uge1xuICBjb2xvcjogJG9mZl9ibGFjaztcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXksIC5waWNrZXJfX2J1dHRvbi0tY2xlYXIge1xuICBjb2xvcjogJG9mZl9ibGFjaztcbn1cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQsIC5waWNrZXJfX2RheS0tc2VsZWN0ZWQsIC5waWNrZXJfX2RheS0tc2VsZWN0ZWQ6aG92ZXIsIC5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fZGF5LS1zZWxlY3RlZHtcbiAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgYm9yZGVyLWNvbG9yOiAkeWVsbG93O1xuICBjb2xvcjogJG9mZl9ibGFjaztcbn1cbi5waWNrZXJfX2RheS0taW5mb2N1czpob3ZlciwgLnBpY2tlcl9fbmF2LS1wcmV2OmhvdmVyLCAucGlja2VyX19uYXYtLW5leHQ6aG92ZXIsIC5waWNrZXJfX2J1dHRvbi0tdG9kYXk6aG92ZXIsIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXIsIC5waWNrZXJfX2J1dHRvbi0tY2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAkeWVsbG93X2xpZ2h0ZXI7XG4gIGJvcmRlci1jb2xvcjogJHllbGxvd19saWdodGVyO1xufVxuXG4uZGF0ZV9waWNrZXIge1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlfZGFya2VyO1xuICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNlbGVjdF9pbWFnZSB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLyoqXG4gKiBEUk9QRE9XTiBNRU5VXG4gKiBPdmVycmlkZSBzdHlsZSBmb3IgZHJvcGRvd24gbWVudSBmcm9tIGFuZ3VsYXItZHJvcGRvd25zIGRlcGVuZGVuY3lcbiAqL1xuIC53cmFwLWRkLW1lbnUgLmRyb3Bkb3duIGxpIGEge1xuICAgY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XG4gfVxuXG4ua2l0X21lbnUge1xuXG4gIC53cmFwLWRkLW1lbnUge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICBwYWRkaW5nOiAwIDA7XG4gIH1cbiAgLndyYXAtZGQtbWVudSAuZHJvcGRvd24ge1xuICAgIHRvcDogNzAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIGxpIGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgfVxufVxuLmtpdExpc3RfcGFyZW50IHtcblxuICAud3JhcC1kZC1tZW51IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLndyYXAtZGQtbWVudSAuZHJvcGRvd24ge1xuICAgIHRvcDogNzAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBsaSBhIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDBweDtcbiAgICB9XG4gIH1cbn1cblxuLmtpdF9vd25lcl9kcm9wZG93bl9idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8qKlxuICogIEtJVCBMSVNUXG4gKlxuICovXG4ua2l0TGlzdCB7XG4gIG1hcmdpbjogMHB4O1xuICBjb2xvcjogJGdyZXk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRUFFQ0YxO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRUFFQ0YxO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFQUVDRjE7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBwYWRkaW5nOjE1cHg7XG5cbiAgaDEsaDIsaDMsaDR7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbiAgcHtcbiAgICBsaW5lLWhlaWdodDogMC40ZW07XG4gIH1cblxuICAud3JhcC1kZC1tZW51IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLndyYXAtZGQtbWVudSAuZHJvcGRvd24ge1xuICAgIHRvcDogNzAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBsaSBhIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDBweDtcbiAgICB9XG4gIH1cblxuICAuY2hpcHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTMwcHg7XG4gIH1cblxufVxuXG4ua2l0TGlzdF9hdmF0YXIge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBib3JkZXItcmFkaXVzOiAyMnB4O1xufVxuLmtpdExpc3RfbmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogJGJsdWU7XG59XG4ua2l0TGlzdF9yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG5cbiAgLmNoaXAgLmNoaXBfbmFtZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuLmtpdExpc3Rfc3RhdGUge1xuICBjb2xvcjp3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5raXRMaXN0X3N0YXRlX2hhc19wdWJsaXNoZWQge1xuICBjb2xvcjogJGdyZWVuO1xufVxuLmtpdExpc3Rfc3RhdGVfbmV2ZXJfcHVibGlzaGVkIHtcbiAgY29sb3I6ICR5ZWxsb3c7XG59XG4ua2l0TGlzdF9zdGF0ZV9ub3RfY29uZmlndXJlZCB7XG4gIGNvbG9yOiAjRjQzRDREO1xufVxuLmtpdExpc3RfZHJvcGRvd25CdXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLmtpdExpc3Rfbm9LaXRzIHtcbiAgbGluZS1oZWlnaHQ6IDU7XG59XG5cbi5kcm9wZG93bi1pdGVtLWJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5kcm9wZG93bi1pdGVtLWJ1dHRvbjpob3ZlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdyAhaW1wb3J0YW50XG59XG5cbi8qKlxuICogIFVTRVIgUFJPRklMRSBTVEFURVxuICogIG1vc3Qgc3R5bGVzIGFyZSByZS11c2VkIG9uIG15IHByb2ZpbGUgc3RhdGVcbiAqL1xuXG4vKiBwcm9maWxlIGhlYWRlciAqL1xuLnByb2ZpbGVfaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX21lbnU7XG4gIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XG4gIGhlaWdodDogMTkycHg7XG4gIG1hcmdpbi10b3A6IDY0cHg7XG59XG4ucHJvZmlsZV9oZWFkZXJfYXZhdGFyIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDI5cHg7XG4gIG1hcmdpbi1sZWZ0OiAyN3B4O1xufVxuLnByb2ZpbGVfaGVhZGVyX2NvbnRlbnQge1xuICA+ZGl2IHtcbiAgICBtYXJnaW46IDVweCAwO1xuICB9XG4gIHN2ZyB7XG4gICAgZmlsbDogJGdyZXlfbGlnaHRlcjtcbiAgfVxufVxuLnByb2ZpbGVfaGVhZGVyX2NvbnRlbnRfYXZhdGFyIHtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4ucHJvZmlsZV9jb250ZW50IHtcbiAgbWluLWhlaWdodDogNzAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi8qIHByb2ZpbGUgc2lkZWJhciAqL1xuLnByb2ZpbGVfc2lkZWJhciB7XG4gIC8vbWluLWhlaWdodDogNDAwcHg7XG4gIC8vIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gIC8vIHdpZHRoOiAyNTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgbWluLXdpZHRoOjIwMHB4O1xufVxuLnByb2ZpbGVfc2lkZWJhcl90aXRsZSB7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5wcm9maWxlX3NpZGViYXJfZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wcm9maWxlX3NpZGViYXJfYnV0dG9uIHtcbiAgaGVpZ2h0OiA2NHB4O1xuICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xuICBzdmcgeyBmaWxsOiAkYmx1ZTsgfVxufVxuXG4ucHJvZmlsZV9zaWRlYmFyX2F2YXRhciB7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTJweDtcbn1cblxuLyogcHJvZmlsZSBtYWluIGNvbnRlbnQgKi9cbi5wcm9maWxlX2NvbnRlbnRfbWFpbl90b3Age1xuICBtYXJnaW46IDAgMCA0MnB4IDIwcHg7XG59XG5cbi8qKlxuICogIE1ZIFBST0ZJTEUgU1RBVEVcbiAqL1xuXG4vL292ZXJyaWRlIGFuZ3VsYXItbWF0ZXJpYWxcbi5teVByb2ZpbGVfc3RhdGUge1xuICBtZC1pbmstYmFye1xuICAgIC8vIFRhYnMgdW5kZXJsaW5lIGNvbG9yIGN5YW5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XG4gIH1cbiAgbWQtdGFiIG1kLXRhYi1sYWJlbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgbWQtdGFicyBtZC10YWIge1xuICAgIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XG4gIH1cbiAgbWQtdGFicyBtZC10YWIuYWN0aXZlIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cbiAgbWQtdGFicyBtZC10YWJzLWluay1iYXIge1xuICAgIGNvbG9yOiAkYmx1ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbiAgfVxufVxuXG4ubXlQcm9maWxlX2hlYWRlciB7XG4gIGhlaWdodDogMTg4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5teVByb2ZpbGVfaGVhZGVyX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiA1MXB4O1xuICBtYXJnaW4tbGVmdDogNDZweDtcbn1cbi5teVByb2ZpbGVfaGVhZGVyX2F2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLm15UHJvZmlsZV90YWJzX3BhcmVudCB7XG4gIG1kLXRhYnMtd3JhcHBlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfbWVudTtcbiAgfVxufVxuLm15UHJvZmlsZV90YWJzIHtcbn1cbi5teVByb2ZpbGVfdGFiX2ljb24ge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG4gIHN2ZyB7XG4gICAgZmlsbDogd2hpdGU7XG4gIH1cbn1cbi5teVByb2ZpbGVfc2lkZWJhcl9idXR0b24ge1xuICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG59XG4ubXlQcm9maWxlX2NvbnRlbnRfZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiAxMTNweDtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbn1cbi5teVByb2ZpbGVfY29udGVudF9mb3JtX2lucHV0IHtcbiAgbWFyZ2luOiAxNnB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb3VudHJ5SW5wdXRfY29udGFpbmVyIHtcbiAgbWQtYXV0b2NvbXBsZXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBtZC1hdXRvY29tcGxldGUtd3JhcCB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIGlucHV0IHtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gIH1cbiAgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDU1cHg7XG4gIH1cbn1cbi5teVByb2ZpbGVfZm9ybV9hdmF0YXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLm15UHJvZmlsZV9mb3JtX2F2YXRhckltYWdlIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgYm9yZGVyLXJhZGl1czogMzJweDtcbiAgbWFyZ2luLXJpZ2h0OiA3JTtcbn1cbi5teVByb2ZpbGVfYXBpS2V5X3RleHQge1xuICBjb2xvcjogJGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgd2lkdGg6IDEyMHB4O1xufVxuLm15UHJvZmlsZV9hcGlLZXlfbnVtYmVyIHtcbiAgY29sb3I6ICM5RDlEOUU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cbi5teVByb2ZpbGVfYXBpS2V5X3JlZnJlc2hCdXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XG4gIGhlaWdodDogMjlweDtcblxuICBtZC1pY29uIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAzcHggYXV0bztcbiAgfVxufVxuLm1kLWJ1dHRvbi5teVByb2ZpbGVfYXBpS2V5X3JlZnJlc2hCdXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbn1cbi5tZC1idXR0b24ubXlQcm9maWxlX2FwaUtleV9yZWZyZXNoQnV0dG9uOmFjdGl2ZSwgLm1kLWJ1dHRvbi5teVByb2ZpbGVfYXBpS2V5X3JlZnJlc2hCdXR0b246aG92ZXIsIC5tZC1idXR0b24ubXlQcm9maWxlX2FwaUtleV9yZWZyZXNoQnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xufVxuLm15UHJvZmlsZV9mb3JtX3JlbW92ZUJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGFsZXJ0X3JlZDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLm15UHJvZmlsZV91cGRhdGVGb3JtX2Vycm9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwcHg7XG4gIGxlZnQ6IDJweDtcbiAgY29sb3I6IHJlZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5teVByb2ZpbGVfYXBpS2V5X2Jsb2NrIHtcbiAgbWFyZ2luLXRvcDogNjNweDtcbiAgbWFyZ2luLWJvdHRvbTogNjVweDtcbn1cblxuLm15UHJvZmlsZV9hcGlLZXkge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBzdmcge1xuICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcbiAgfVxufVxuXG4ubWQtYnV0dG9uLm15UHJvZmlsZV9hZGRLaXRCdXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbn1cbi5tZC1idXR0b24ubXlQcm9maWxlX2FkZEtpdEJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xufVxuLm15UHJvZmlsZV9oaWRkZW5ocmVme1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDoxMDAlO1xuICB0b3A6MDtcbiAgbGVmdDowO1xufVxuXG4vKipcbiAqIFRPT0wgTElTVFxuICpcbiAqL1xuXG4gYS5raXRMaXN0IHtcbiAgIGg0IHtcbiAgICAgY29sb3I6ICRvZmZfYmxhY2s7XG4gICB9XG4gICBwIHtcbiAgICAgY29sb3I6ICRncmV5X2RhcmtlcjtcbiAgIH1cbiB9XG5cbi5jbGVhcmZpeCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKlxuICBGT09URVIgQ09NUE9ORU5UXG4qL1xuXG5mb290ZXIge1xuLy8gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xufVxuXG4uZm9vdGVyX2ljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbn1cblxuLypcbiAgUkVDT1ZFUlkgUEFTU1dPUkQgU1RBVEVcbiovXG4ucmVjb3ZlcnlfaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTI4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xufVxuXG4ucmVjb3ZlcnlfaGVhZGVySWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4vKlxuICBUSU1FTElORSBDT01QT05FTlRcblxuICB1c2VkIG9uIGFkZCBhbmQgc2V0dXAga2l0XG4qL1xuXG4udGltZWxpbmUge1xuICBtYXJnaW4tdG9wOiA2NHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfbWVudTtcbiAgaGVpZ2h0OiAxMjhweDtcbn1cbi50aW1lbGluZV9jb250YWluZXIge1xuICBtYXJnaW46IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGltZWxpbmVfbGluZSB7XG4gIHdpZHRoOiA1MDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHllbGxvdztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDE0cHg7XG59XG4udGltZWxpbmVfbGluZV9zbWFsbCB7XG4gIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBweCAyMHB4O1xuICB0b3A6MHB4ICFpbXBvcnRhbnQ7XG59XG4udGltZWxpbmVfc3RlcENpcmNsZSB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiAwIDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgJi5pcy1vbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHllbGxvdztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICB9XG4gICYuaXMtb2ZmIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkeWVsbG93O1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICB9XG59XG4udGltZWxpbmVfc3RlcE5hbWUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHllbGxvdztcbiAgZm9udC1zaXplOjE4cHg7XG5cbiAgJi52ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuLnRpbWVsaW5lX2NvbnRlbnQge1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGltZWxpbmVfYnV0dG9uIHtcbiAgd2lkdGg6IDk5JTtcbiAgaGVpZ2h0OiA5MHB4O1xuICBmb250LXNpemU6IDI2cHg7XG5cbiAgJi50aW1lbGluZV9idXR0b25PcGVuLm1kLXByaW1hcnkge1xuICAgIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5pbnZlcnRlZHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcblxuICAgICAgc21hbGwge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4ge1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgIH1cblxuICAgIC5zdWIge1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuNTQpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG5cbiAgfVxuXG59XG4ubWQtYnV0dG9uLnRpbWVsaW5lX2J1dHRvblNhdmUge1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEzMHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLm1kLWJ1dHRvbi50aW1lbGluZV9idXR0b25CYWNre1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgZmxleC1zaHJpbms6IDE7XG4gIGZsZXgtYmFzaXM6IDIwMHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLypcbiAgQUREIEtJVCBTVEFURVxuKi9cblxuLmtpdF9kYXRhQ2hhbmdlIHtcbiAgLmZvcm1fYmxvY2sge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXG4gICAgJi5pc0V2ZW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGQjtcbiAgICB9XG4gICAgJi5mb3JtX2Jsb2NrTm9ybWFsIHtcbiAgICAgLy8gbWluLWhlaWdodDogMjUwcHg7XG4gICAgfVxuICAgICYuZm9ybV9ibG9ja01hcCB7XG4gICAgICAvL2hlaWdodDogMjkwcHg7XG4gICAgfVxuICB9XG4gIC5mb3JtX2Jsb2NrSW5wdXQge1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgIC8vIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgfVxuICAuZm9ybV9ibG9ja0lucHV0X2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICB9XG4gIC5mb3JtX2Jsb2NrSW5wdXRfYnV0dG9uIHtcbiAgICBoZWlnaHQ6aW5oZXJpdDtcbiAgfVxuICAuZm9ybV9ibG9ja0lucHV0X21hcCB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBtaW4td2lkdGg6IDI1MHB4O1xuICB9XG4gIC5mb3JtX2Jsb2NrSW5wdXRfc2VsZWN0IGxhYmVse1xuICAgIGNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC5mb3JtX2Jsb2NrSW5wdXRfY2hpcHMge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cbiAgLmZvcm1fYmxvY2tDb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGltZywgZGl2IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgIG1hcmdpbjogNXB4IDIwcHg7XG4gICAgfVxuICB9XG4gIC5mb3JtX2Jsb2NrQ29udGVudF9pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogM3B4O1xuICB9XG4gIC5mb3JtX2Jsb2NrQ29udGVudF90ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB3aWR0aDogMjQwcHg7XG4gICAgJi5sb25ne1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogI0E1QTVBNTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICB9XG4gIC5mb3JtX2Vycm9ycyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTUlO1xuICAgIGxlZnQ6IDA7XG4gICAgY29sb3I6IHJlZDtcbiAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5cbi5lbW9qaXtcbiAgZm9udC13ZWlnaHQ6NDAwO1xufVxuXG4vKlxuICBTVEFUSUMgUEFHRVNcbiovXG4uc3RhdGljX3BhZ2V7XG4gIC50aW1lbGluZXtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCBzdHJldGNoO1xuXG4gICAgLmNvbnRlbnR7XG4gICAgICBwYWRkaW5nOjAgMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50e1xuICAgIG1heC13aWR0aDogNTBlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgIHBhZGRpbmc6NDBweCAxMHB4O1xuICB9XG5cbiAgLmZ1bGwtd2lkdGgtaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAyMDAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCAwIC01cHggMDtcbiAgfVxuXG4gIC5lbWJlZC1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBpZnJhbWUsIG9iamVjdCwgZW1iZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgfVxuXG4gIC5jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIC5yb3d7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG5cbiAgICAmOm50aC1jaGlsZChvZGQpe1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGQjtcbiAgICB9XG4gIH1cbiAgaDF7XG4gICAgY29sb3I6d2hpdGU7XG4gIH1cbiAgaDR7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yZW07XG4gIH1cblxuICAubWQtYnV0dG9uLm1kLXByaW1hcnkubWQtcmFpc2VkLCAubWQtYnV0dG9uLm1kLXByaW1hcnkubWQtZmFie1xuICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbiAgICBjb2xvcjp3aGl0ZTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXN7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0M5OEFGO1xuICAgIH1cblxuICAgICY6bm90KFtkaXNhYmxlZF0pe1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubWQtYnV0dG9uLm1kLXByaW1hcnl7XG4gICAgY29sb3I6ICRibHVlO1xuICB9XG59XG5cbi5ub3QtZm91bmQtNDA0IHtcbiAgaGVpZ2h0OiAzNnZoO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLm5vdC1mb3VuZC00MDQge1xuICAgIGhlaWdodDogNjcuM3ZoO1xuICB9XG59XG5cbi8vIEFib3V0XG5cbi5zZW5zb3ItaW1hZ2UtbWFyZ2luIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuaDMubm8tbWFyZ2luIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5wLm5vLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnRlYW0tY2VsbHMtbWFyZ2luIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLnN1YnRpdGxlLXNlcGFyYXRpb24ge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4vLyBGZWVkYmFja1xuXG4uZG9vcmJlbGwtYnV0dG9uIHtcbiBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93ICFpbXBvcnRhbnQ7XG59XG5cbi8vIFN0eWxlZ3VpZGVcblxuLnN0eWxlZ3VpZGUge1xuICAuaW5mby10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB9XG5cbiAgLmluZm8tdGV4dC1kYXJrIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZGFyay10aGVtZS1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO1xuICB9XG5cbiAgc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cblxuICAuZGFyay10ZXh0LXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19iYWNrZ3JvdW5kO1xuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAkZm9udF9jb2xvcl9ibHVlX2dyZXk7XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgY29sb3I6ICM4N0NDREQ7XG4gICAgfVxuXG4gICAgcHtcbiAgICAgIGNvbG9yOiAjQzhFNkVEO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICBzbWFsbCB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeV9jb2xvcl9saWdodDtcbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA2MHB4O1xuICB9XG5cbiAgLmNvbG9ycy1zZWN0aW9uIHtcbiAgICBwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAuc2Vjb25kYXJ5LWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRlcmNpYXJ5X2NvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJjaWFyeV9jb2xvcjtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4REIyQkE7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1jb2xvci1wYXN0ZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M4RTZFRDtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogIzhEQjJCQTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAud2hpdGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgI0M4RTZFRDtcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogIzhEQjJCQTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Vuc29ycyA+IGRpdiB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMTBweDtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDEpIHtcbiAgICAgYmFja2dyb3VuZDogI2ZmYzEwNztcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgYmFja2dyb3VuZDogIzRmYzNmNztcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgICAgYmFja2dyb3VuZDogI2ZmZWU1ODtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgICAgYmFja2dyb3VuZDogI2YwNjI5MjtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDUpIHtcbiAgICAgYmFja2dyb3VuZDogIzRjYWY1MDtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDYpIHtcbiAgICAgYmFja2dyb3VuZDogIzhiYzM0YTtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDcpIHtcbiAgICAgYmFja2dyb3VuZDogIzk1NzVjZDtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDgpIHtcbiAgICAgYmFja2dyb3VuZDogI2ZmZjljNDtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDkpIHtcbiAgICAgYmFja2dyb3VuZDogI2ZmZWU1ODtcbiAgICB9XG5cbiAgICAuc2Vuc29ycyBkaXY6bnRoLWNoaWxkKDEwKSB7XG4gICAgIGJhY2tncm91bmQ6ICNmZjU3MjI7XG4gICAgfVxuICB9XG5cbn1cblxuXG4vKiBDdXN0b20gQW5pbWF0aW9ucyAqL1xuXG4ubG9hZGluZy1kb3RzIHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiAnLic7XG4gIGFuaW1hdGlvbjogZG90cyAycyBzdGVwcyg1LCBlbmQpIGluZmluaXRlO31cblxuQGtleWZyYW1lcyBkb3RzIHtcbiAgMCUsIDIwJSB7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gICAgdGV4dC1zaGFkb3c6XG4gICAgICAuMjVlbSAwIDAgcmdiYSgwLDAsMCwwKSxcbiAgICAgIC41ZW0gMCAwIHJnYmEoMCwwLDAsMCk7fVxuICA0MCUge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LXNoYWRvdzpcbiAgICAgIC4yNWVtIDAgMCByZ2JhKDAsMCwwLDApLFxuICAgICAgLjVlbSAwIDAgcmdiYSgwLDAsMCwwKTt9XG4gIDYwJSB7XG4gICAgdGV4dC1zaGFkb3c6XG4gICAgICAuMjVlbSAwIDAgJHllbGxvdyxcbiAgICAgIC41ZW0gMCAwIHJnYmEoMCwwLDAsMCk7fVxuICA4MCUsIDEwMCUge1xuICAgIHRleHQtc2hhZG93OlxuICAgICAgLjI1ZW0gMCAwICR5ZWxsb3csXG4gICAgICAuNWVtIDAgMCAkYmx1ZTt9fVxuXG5cbi8qIERvIG5vdCByZW1vdmUgdGhpcyBjb21tZW50cyBiZWxsb3cuIEl0J3MgdGhlIG1hcmtlcnMgdXNlZCBieSBndWxwLWluamVjdCB0byBpbmplY3RcbiAgIGFsbCB5b3VyIHNhc3MgZmlsZXMgYXV0b21hdGljYWxseSAqL1xuLy8gaW5qZWN0b3Jcbi8vIGVuZGluamVjdG9yXG4iLCIvLyBHZW5lcmFsIGhlbHBlcnNcbi5ib3JkZXItYmxhY2t7XG4gIGJvcmRlcjogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG59XG4uYm9yZGVyLXdoaXRle1xuICBib3JkZXI6IDNweCBzb2xpZCB3aGl0ZTtcbn1cbi5jb2xvci13aGl0ZXtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uY29sb3ItZHJvcGRvd257XG4gIGNvbG9yOiAkZ3JleV9kYXJrZXN0ICFpbXBvcnRhbnQ7XG59XG4uY29sb3ItYmxhY2t7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xufVxuLmNvbG9yLWJsdWV7XG4gIGNvbG9yOiR0ZXJjaWFyeV9jb2xvcjtcbn1cbi5jb2xvci1jeWFue1xuICBjb2xvcjogJHRlcmNpYXJ5X2NvbG9yO1xufVxuLmNvbG9yLWdyZWVuIHtcbiAgY29sb3I6ICRncmVlbjtcbiAgc3ZnIHtcbiAgICBmaWxsOiAkZ3JlZW47XG4gIH1cbn1cbi5jb2xvci1yZWQge1xuICBjb2xvcjogJHJlZDtcbiAgc3ZnIHtcbiAgICBmaWxsOiAkcmVkICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mbG9hdC1sZWZ0e1xuICBmbG9hdDogbGVmdDtcbn1cbi5mbG9hdC1yaWdodHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmQtZmxleHtcbiAgZGlzcGxheTpmbGV4O1xufVxuLmZ1bGwtd2lkdGh7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1heC13aWR0aC01MDBweCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG59XG4ubWluLWhlaWdodC04MCB7XG4gIG1pbi1oZWlnaHQ6IDgwJTtcbn1cblxuLy8gRm9udCAmIHRleHRcbi5mb250LXJvYm90by1jb25kZW5zZWR7XG4gIGZvbnQtZmFtaWx5OidSb2JvdG8gQ29uZGVuc2VkJztcbn1cbi5mb250LWthbml0e1xuICBmb250LWZhbWlseTonS2FuaXQnO1xufVxuXG4udGV4dC1jZW50ZXJ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi50ZXh0LWxlZnR7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuXG4vLyBCYWNrZ3JvdW5kIGhlbHBlcnNcbi5iZy13aGl0ZXtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5iZy1ibGFja3tcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4uYmctZ3JlZW57XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbn1cbi5iZy1ibHVle1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbn1cbi5iZy1yZWR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbn1cbi5iZy1yZWQtbGlnaHR7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHJlZCwuMik7XG59XG4uYmcteWVsbG93e1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xufVxuLmJnLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleSAhaW1wb3J0YW50O1xufVxuLmJnLWdyZXktbGlnaHRlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleV9saWdodGVzdCAhaW1wb3J0YW50O1xufVxuXG4ub3V0bGluZXtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHJlZDtcbn1cblxuLy8gQnV0dG9uIGhlbHBlcnNcbi5idG4tb3V0bGluZS1ibHVle1xuICBib3JkZXI6MnB4IHNvbGlkICRibHVlO1xuICBjb2xvcjogJGJsdWU7XG4gIHBhZGRpbmc6MTBweCAyOXB4O1xuICBzdmcge1xuICAgIGZpbGw6ICRibHVlXG4gIH1cbn1cbi5idG4tb3V0bGluZS1ibHVlOmhvdmVye1xuICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgY29sb3I6IHdoaXRlO1xuICBzdmcge1xuICAgIGZpbGw6IHdoaXRlXG4gIH1cbn1cbi5idG4tb3V0bGluZS13aGl0ZTpob3ZlcntcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiAkb2ZmX2JsYWNrO1xufVxuLmJ0bi1vdXRsaW5lLXdoaXRle1xuICBib3JkZXI6MnB4IHNvbGlkIHdoaXRlO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6MTBweCAyOXB4O1xufVxuLmJ0bi1vdXRsaW5lLXllbGxvd3tcbiAgYm9yZGVyOjJweCBzb2xpZCAkeWVsbG93O1xuICBjb2xvcjogJHllbGxvdztcbiAgcGFkZGluZzoxMHB4IDI5cHg7XG59XG4uYnRuLW91dGxpbmUteWVsbG93OmhvdmVye1xuICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICBjb2xvcjogJG9mZl9ibGFjaztcbn1cbi5idG4teWVsbG93e1xuICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICBjb2xvcjogJG9mZl9ibGFjaztcbiAgcGFkZGluZzoxMnB4IDI5cHg7XG59XG5cbi5idG4teWVsbG93OmhvdmVye1xuICBiYWNrZ3JvdW5kOiAkb2ZmX2JsYWNrO1xuICBjb2xvcjogJHllbGxvdztcbn1cbi5idG4tYmxhY2stb3V0bGluZXtcbiAgYm9yZGVyOjJweCBzb2xpZCAkb2ZmX2JsYWNrO1xuICBjb2xvcjogJG9mZl9ibGFjaztcbiAgcGFkZGluZzoxMHB4IDI5cHg7XG59XG4uYnRuLWJsYWNrLW91dGxpbmU6aG92ZXJ7XG4gIGJhY2tncm91bmQ6ICRvZmZfYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5idG4tYmx1ZXtcbiAgYmFja2dyb3VuZDogJGJsdWU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzoxMnB4IDI5cHg7XG59XG5cbi5idG4tYmx1ZTpob3ZlcntcbiAgY29sb3I6ICRibHVlO1xuICBiYWNrZ3JvdW5kOiAkZ3JleV9saWdodGVyO1xufVxuXG4uYnRuLXJvdW5kLW5ld3tcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzI1ZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC40cyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpO1xuXG59XG4uYnRuLXJvdW5ke1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIHBhZGRpbmc6NXB4IDM1cHg7XG4gIGZvbnQtc2l6ZToxOHB4O1xufVxuLmJ0bi1jeWFue1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVyY2lhcnlfY29sb3I7XG4gIGNvbG9yOndoaXRlO1xufVxuXG4uYnRuLWN5YW46aG92ZXJ7XG4gIGNvbG9yOiBibHVlO1xufVxuXG4vLyBkaXNwbGF5IGhlbHBlcnNcbi5idG4tZnVsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzoxMnB4IDI5cHg7XG59XG5cbi5idG4tc21hbGwge1xuICBtaW4td2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIC8vb3V0bGluZTogMXB4IHNvbGlkIHJlZDtcbn1cblxuLy8gTWFyZ2luIC0gcGFkZGluZyBoZWxwZXJzXG4ubS0we1xuICBtYXJnaW46IDA7XG59XG4ubS0xMHtcbiAgbWFyZ2luOiAxMHB4O1xufVxuLm1sLTAge1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuLm1sLTE1IHtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG4ubXQtMTB7IG1hcmdpbi10b3A6IDEwcHg7IH1cbi5tdC0yMHsgbWFyZ2luLXRvcDogMjBweDsgfVxuLm10LTMweyBtYXJnaW4tdG9wOiAzMHB4OyB9XG4ubXQtNTB7IG1hcmdpbi10b3A6IDUwcHg7IH1cbi5tci0xMHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4ubXItMjB7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuLm1yLTMweyBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbi5tci01MHsgbWFyZ2luLXJpZ2h0OiA1MHB4OyB9XG4ubWItMTB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbi5tYi0yMHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuLm1iLTMweyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4ubWItNTB7IG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbi5tbC0xMCB7IG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4ubWwtMjAgeyBtYXJnaW4tbGVmdDogMjBweDsgfVxuLm1sLTMwIHsgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbi5tbC01MHsgbWFyZ2luLWxlZnQ6IDUwcHg7IH1cbi5teS0yMHtcbiAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG4ubXctMTAwe1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4ucC0weyBwYWRkaW5nOiAwOyB9XG4ucC0xMHsgcGFkZGluZzogMTBweDsgfVxuLnAtMjB7IHBhZGRpbmc6IDIwcHg7IH1cbi5wLTMweyBwYWRkaW5nOiAzMHB4OyB9XG4ucC00MHsgcGFkZGluZzogNDBweDsgfVxuLnAtNTB7IHBhZGRpbmc6IDUwcHg7IH1cbi5wLTYweyBwYWRkaW5nOiA2MHB4OyB9XG4ucGwtMjB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuLnB0LTgweyBwYWRkaW5nLXRvcDo4MHB4OyB9XG4ucHktNDB7XG4gIHBhZGRpbmctdG9wOjQwcHg7XG4gIHBhZGRpbmctYm90dG9tOjQwcHg7XG59XG4ucHgtMjB7XG4gIHBhZGRpbmctbGVmdDoyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OjIwcHg7XG59XG4ucHgtNDB7XG4gIHBhZGRpbmctbGVmdDo0MHB4O1xuICBwYWRkaW5nLXJpZ2h0OjQwcHg7XG59XG5cblxuLy8gaW1nIGhlbHBlcnNcblxuLmltZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbmZvb3RlcntcbiAgcHtcbiAgICBmb250LXNpemU6MTJweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OjEycHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBwb3N0aW9uIGhlbHBlcnNcblxuLmFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIHNpemUgaGVscGVyc1xuLnMtNDgge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuIiwiJHllbGxvdzogI0ZGQzEwMDtcbiR5ZWxsb3dfbGlnaHQ6ICNGRkQ0NEQ7XG4keWVsbG93X2xpZ2h0ZXI6ICNGRkVDQjM7XG4kYmx1ZTogIzAwMTlGRjtcbiRibHVlX2xpZ2h0OiAjNTVDNEY1O1xuXG4kcmVkOiAjRkYzRDRDO1xuJGdyZWVuOiAjMDBFNTk3O1xuJG9mZl9ibGFjazogIzJFMkUyRTtcblxuXG4kZ3JleV9saWdodGVzdDogI0Y5RjlGQjtcbiRncmV5X2xpZ2h0ZXI6ICNFQ0VDRUU7XG4kZ3JleTogI0QyRDNENTtcbiRncmV5X2RhcmtlcjogIzZFNkU2RTtcbiRncmV5X2Rhcmtlc3Q6ICM3RTdFN0U7XG5cbiRzZWNvbmRhcnlfY29sb3I6ICRncmV5X2RhcmtlcjtcbiR0ZXJjaWFyeV9jb2xvcjogJGJsdWU7XG5cbiRzZWNvbmRhcnlfY29sb3JfbGlnaHQ6ICRncmV5X2RhcmtlcjtcbiR0ZXJjaWFyeV9jb2xvcl9saWdodDogJGdyZXk7XG5cbiRpbmZvX3ByaW1hcnk6ICRncmV5O1xuJGluZm9fc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0O1xuXG4kYWxlcnRfcmVkOiAkcmVkO1xuJGFsZXJ0X2dyZWVuOiAjNERCRDRFO1xuXG4kZm9udF9jb2xvcl93aGl0ZTogd2hpdGU7XG4kZm9udF9jb2xvcl9ibHVlX2dyZXk6ICRncmV5O1xuJGZvbnRfY29sb3JfYmx1ZV9kYXJrOiAkZ3JleV9kYXJrZXI7XG4kZm9udF9jb2xvcl9ibHVlX2xpZ2h0OiAkYmx1ZTtcblxuJGJhY2tncm91bmRfYmx1ZV9kYXJrX21lbnU6ICRvZmZfYmxhY2s7XG4kYmFja2dyb3VuZF9ibHVlX2Rhcmtfb3ZlcnZpZXc6ICRvZmZfYmxhY2s7XG4kYmFja2dyb3VuZF9ibHVlX2RhcmtfYmFja2dyb3VuZDogJG9mZl9ibGFjaztcbiRiYWNrZ3JvdW5kX2JsdWVfZGFya19uYXZiYXI6ICRvZmZfYmxhY2s7XG4kYmFja2dyb3VuZF9ibHVlX2RhcmtfY2hhcnQ6ICRvZmZfYmxhY2s7XG4kYmFja2dyb3VuZF9ibHVlX2xpZ2h0OiAkZ3JleV9saWdodGVyO1xuJGJhY2tncm91bmRfYmx1ZV9taWR0b25lOiAkZ3JleTtcblxuJGxhcmdlX3ByaW9yaXR5OiAxMDtcbiRtb3JlX3ByaW9yaXR5OiA1O1xuJG1lZGl1bV9wcmlvcml0eTogMjtcbiRzbWFsbF9wcmlvcml0eTogLTE7XG5cbiRkcm9wZG93bl9ibHVlOiAjM2Y1MWI1O1xuIiwiLy8gTmV3IGxhbmRpbmcgcGFnZVxuXG4uZ3JleS13YXZlc3tcbiAgYmFja2dyb3VuZDogZ3JleSB1cmwoXCIvYXNzZXRzL2ltYWdlcy9zY2tfYmcucG5nXCIpIDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA2NXB4O1xufVxuXG4ubmV3LWxhbmRpbmctcGFnZXtcbiAgaDEsaDIsaDMsaDQsaDUsaDZ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDMyNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnS2FuaXQnO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgY29sb3I6ICRvZmZfYmxhY2s7XG4gIH1cbiAgaDF7XG4gICAgZm9udC1zaXplOiA2NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICAgIG1hcmdpbjowcHggMHB4O1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICB9XG4gIGgye1xuICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBtYXJnaW46MHB4IDBweDtcbiAgfVxuICBoM3tcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDoxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgcHtcbiAgICBjb2xvcjogJG9mZl9ibGFjaztcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxuICBhe1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zYy1sb2dve1xuICAgIGhlaWdodDogNDNweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBsZWZ0OiAxMCU7XG4gICAgdG9wOjI1cHg7XG4gIH1cbiAgLnNjLW9mZi1jdGEtcGxhdGZvcm0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHJpZ2h0OiAxMCU7XG4gICAgdG9wOjI1cHg7XG5cbiAgfVxuICAvLyBJbWFnZXMgb24gbGFuZGluZyBwYWdlXG4gIC5pbWctbmV3X3Nja3tcbiAgICBtaW4taGVpZ2h0OiAzMHZ3O1xuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbmV3X3Njay5qcGdcIikgY2VudGVyL2NvdmVyO1xuICB9XG4gIC5pbWctc2NrX2VkdXtcbiAgICBtaW4taGVpZ2h0OiAzMHZ3O1xuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvc2NrX2VkdS5qcGdcIikgY2VudGVyL2NvdmVyO1xuICB9XG4gIC5pbWctc2NrX2NvbXtcbiAgICBiYWNrZ3JvdW5kOiBibHVlIHVybChcIi9hc3NldHMvaW1hZ2VzL3Nja19jb21tdW5pdGllcy5qcGdcIikgY2VudGVyL2NvdmVyO1xuICB9XG4gIC5pbWctcmVzZWFyY2h7XG4gICAgYmFja2dyb3VuZDogYmx1ZSB1cmwoXCIvYXNzZXRzL2ltYWdlcy9zY2tfcmVzZWFyY2guanBnXCIpIGNlbnRlci9jb3ZlcjtcbiAgfVxuICAuaW1nLWdvdmVybm17XG4gICAgYmFja2dyb3VuZDogYmx1ZSB1cmwoXCIvYXNzZXRzL2ltYWdlcy9zY2tfY2l0aWVzLmpwZ1wiKSBjZW50ZXIvY292ZXI7XG4gIH1cbiAgLmltZy1wbGF0Zm9ybXtcbiAgICBtaW4taGVpZ2h0OjYzMHB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogYmx1ZSB1cmwoXCIvYXNzZXRzL2ltYWdlcy9zY2tfcGxhdGZvcm0uanBnXCIpIGNlbnRlci9jb3ZlcjtcbiAgfVxuICAuaW1nLWRvY3N7XG4gICAgbWluLWhlaWdodDozMjBweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvc2NrX2RvY3MuanBnXCIpIHRvcC9jb3ZlcjtcbiAgfVxuICAvLyBUaWxlcyBvbiBsYW5kaW5nIHBhZ2VcbiAgLnRpbGV7XG4gICAgcGFkZGluZzogNjBweCA0MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xuICAgIGJvcmRlci1yaWdodDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG4gIH1cbiAgLnRpbGUtaW1hZ2V7XG4gICAgbWluLWhlaWdodDozMDBweDtcbiAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50aWxlLWxlZnR7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xuICB9XG4gIC50aWxlLXRvcHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgJG9mZl9ibGFjaztcbiAgfVxuXG4gIC50ZXh0LWZ1bmRpbmd7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC8vIFZpZGVvIHNlY3Rpb25cblxuICAudmlkZW8tc2VjdGlvbntcbiAgICBiYWNrZ3JvdW5kOiBibHVlIHVybChcIi9hc3NldHMvaW1hZ2VzL2xhbmRpbmcvc21hcnRjaXRpemVuLXNlZWVkLXByZW9yZGVyLmpwZ1wiKSBjZW50ZXIvY292ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogOTB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5oZWFkaW5nLW92ZXItdmlkZW97XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwJTtcblxuICAgIGltZ3tcbiAgICAgIHBhZGRpbmctYm90dG9tOjQwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDEwcHgpIHtcbiAgICBoMXtcbiAgICAgIGZvbnQtc2l6ZTo0MnB4O1xuICAgICAgbGluZS1oZWlnaHQ6NDJweDtcbiAgICB9XG4gICAgaDJ7XG4gICAgICBmb250LXNpemU6MjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjI4cHg7XG4gICAgfVxuICAgIGgze1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgfVxuICAgIHB7XG4gICAgICBmb250LXNpemU6MThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjIycHg7XG4gICAgfVxuICAgIC5zYy1sb2dve1xuICAgICAgbGVmdDo1JTtcbiAgICB9XG4gICAgLmhlYWRpbmctb3Zlci12aWRlb3tcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MjUlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgaW1ne1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTowMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExlc3MgdGhlbiA3NTBweFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgaDF7XG4gICAgICBmb250LXNpemU6MzBweDtcbiAgICB9XG4gICAgaDJ7XG4gICAgICBmb250LXNpemU6MjVweDtcbiAgICB9XG4gICAgLnRleHQtZnVuZGluZ3tcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgaDF7XG4gICAgICBmb250LXNpemU6MjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjMzcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbToxMHB4O1xuICAgIH1cbiAgICBoMntcbiAgICAgIGZvbnQtc2l6ZToyOHB4O1xuICAgIH1cbiAgICBwe1xuICAgICAgZm9udC1zaXplOjE5cHg7XG4gICAgfVxuICAgIC5wLTYwe1xuICAgICAgcGFkZGluZzogNTBweCAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5ib3JkZXIteHMtdG9we1xuICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG4gICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG4gICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG4gICAgfVxuICAgIC5ib3JkZXIteHMtYm90dG9te1xuICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRvZmZfYmxhY2s7XG4gICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkb2ZmX2JsYWNrO1xuICAgICAgYm9yZGVyLWJvdHRvbTozcHggc29saWQgJG9mZl9ibGFjaztcbiAgICB9XG4gICAgLmltZy1wbGF0Zm9ybXtcbiAgICAgIG1pbi1oZWlnaHQ6MzU2cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhlYWRpbmctb3Zlci12aWRlb3tcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgIH1cbiAgICAuc2Mtb2ZmLWN0YS1wbGF0Zm9ybSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgfVxuICAgIC5teS0yMHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmltZy1uZXdfc2Nre1xuICAgICAgYmFja2dyb3VuZDogYmx1ZSB1cmwoXCIvYXNzZXRzL2ltYWdlcy9zY2tfZWR1LmpwZ1wiKSBjZW50ZXIvY292ZXI7XG4gICAgfVxuICAgIC5pbWctc2NrX2VkdXtcbiAgICAgIGJhY2tncm91bmQ6IGJsdWUgdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbmV3X3Njay5qcGdcIikgY2VudGVyL2NvdmVyO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiAgTkFWQkFSXG4gKi9cblxuLm5hdmJhcl9jb250YWluZXIge1xuICBhe1xuICAgICY6aG92ZXIsICY6YWN0aXZle1xuICAgICAgY29sb3I6ICRmb250X2NvbG9yX3doaXRlXG4gICAgfVxuICB9XG5cbiAgLm1kLWJ1dHRvbi5uYXZiYXJfaGlnaGxpZ2h0X2J1dHRvbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHllbGxvdztcbiAgICBjb2xvcjogJHllbGxvdztcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIC8vcGFkZGluZzogOXB4IDExcHg7XG4gICAgLy93aWR0aDogMTA4cHg7XG4gICAgcGFkZGluZy10b3A6IC4wMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjAxcmVtO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSksIGJhY2tncm91bmQtY29sb3IgMC40cyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKTtcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR5ZWxsb3cgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkb2ZmX2JsYWNrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmxvZ29fbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmxvZ29faWNvbiB7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICB9XG4gIH1cblxuICAubmF2X2ljb24ge1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgIGhlaWdodDogMTRweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6ICR5ZWxsb3c7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhcl9zaWdudXBfYnV0dG9uIHtcbiAgICAubWQtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDJweCAwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkeWVsbG93O1xuICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgd2lkdGg6IDc5cHg7XG4gICAgfVxuICAgIC5tZC1idXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xuICAgIH1cbiAgfVxuXG59XG5cbi5uYXZiYXJfYXZhdGFyX2ljb24ge1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBib3JkZXItcmFkaXVzOiAxOXB4O1xufVxuXG4vLyBNYWtlIHN1cmUgdGhlIERyb3Bkb3duIHN0YXlzIGJlbG93IHRoZSBidXR0b24gcHVzaGVkXG4ubWQtb3Blbi1tZW51LWNvbnRhaW5lci5tZC1hY3RpdmV7XG4gIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDtcbn1cblxuIiwiLy8gLyoqXG4vLyAgKiAgU0VBUkNIIENPTVBPTkVOVFxuLy8gICovXG5cblxuI3NlYXJjaCBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvc2VhcmNoX2ljb25fYmxhY2suc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggMTJweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHg7XG4gICAgcGFkZGluZzogMHB4IDM1cHg7XG59XG5cbi5zZWFyY2hfcmVzdWx0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC5yZXN1bHRfaWNvbiB7XG4gICAgZmxleDogMCAwIDE4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIGhlaWdodDogMThweDtcbiAgfVxuICAucmVzdWx0X25hbWUge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuICAucmVzdWx0X2xvY2F0aW9uIHtcbiAgICBjb2xvcjogJGJsdWU7XG4gIH1cbn1cbiIsIi8qXG4gIENPTlRBSU5FUlMgVVNFRCBPTiBTSE9XIEtJVCBTVEFURVxuICovXG5cbi5vdmVyX21hcHtcbiAgbWluLWhlaWdodDogMTIwcHg7XG59XG5cbi5raXRfZml4ZWQge1xuICB6LWluZGV4OiAkbWVkaXVtLXByaW9yaXR5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5raXRfZGF0YSB7XG4gIHdpZHRoOjEwMCU7XG4gIG1hcmdpbi10b3A6IDM3NnB4O1xuXG4gIHNlY3Rpb24ub3ZlcmxheXtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRvZmZfYmxhY2s7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgZm9udC1zaXplOjIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG5cbiAgICBoMXtcbiAgICAgIGNvbG9yOiAkb2ZmX2JsYWNrO1xuICAgICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICAgIG1hcmdpbjowO1xuICAgIH1cbiAgICBwe1xuICAgICAgY29sb3I6ICR0ZXJjaWFyeV9jb2xvcl9saWdodDtcbiAgICAgIG1hcmdpbjogMC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmhpbnR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgY29sb3I6JGZvbnRfY29sb3JfYmx1ZV9ncmV5O1xuXG4gICAgbWFyZ2luLXRvcDowcHg7XG5cbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlO1xuICAgID4gcCB7XG4gICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgIH1cbiAgICAubWQtYnV0dG9ue1xuICAgICAgbWFyZ2luLXRvcDoyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ua2l0X2RhdGEsIC5raXRUYWdzX19zZWN0aW9ue1xuICAuc2hhZG93e1xuICAgIHRvcDogMHB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNoYWRvdzogMHB4IC0xcHggNnB4IDAgcmdiYSgwLDAsMCwwLjY1KTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG59XG4ua2l0X3RhZ3Mtc2VsZWN0LWhlYWRlciB7XG4gIGhlaWdodDogNDhweDtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5raXRfdGFncy1oZWFkZXItc2VhcmNoYm94IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5LSVQgQ09NTUVOVFMgTU9EVUxFXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cbi5raXRfY29tbWVudHMge1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG59XG5cbi8qXG4gIENIQVJUIENPTVBPTkVOVFxuKi9cblxuLmNoYXJ0X2NvbnRhaW5lciB7XG4gIC8qbWluLXdpZHRoOiAzNDBweDsqL1xuICBtaW4taGVpZ2h0OiAzMTBweDtcbiAgLyp3aWR0aDogMTAwJTsqL1xuICAvKmhlaWdodDogOTAlOyovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY2hhcnRfbGluZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgfVxuICAuY2hhcnRfYXJlYSB7XG4gICAgb3BhY2l0eTogMC4xO1xuICB9XG5cbiAgLmF4aXMgcGF0aCwuYXhpcyBsaW5lIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogJGdyZXlfZGFya2VyO1xuICAgIHN0cm9rZS13aWR0aDogMTtcbiAgICBzaGFwZS1yZW5kZXJpbmc6IGNyaXNwRWRnZXM7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYXhpcyB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICB9XG4gIC5heGlzLnlfbGVmdCB7XG4gICAgZmlsbDogJGdyZXk7XG4gIH1cbiAgLmF4aXMueV9yaWdodCB7XG4gICAgZmlsbDogJGdyZXk7XG4gIH1cbiAgLmF4aXMueCB7XG4gICAgZmlsbDogJGdyZXk7XG4gIH1cbiAgLmdyaWQge1xuICAgIC50aWNrIHtcbiAgICAgIHN0cm9rZTogJGdyZXk7XG4gICAgICBzdHJva2Utb3BhY2l0eTogMC42O1xuICAgICAgc2hhcGUtcmVuZGVyaW5nOiBjcmlzcEVkZ2VzO1xuICAgIH1cbiAgICBwYXRoIHtcbiAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICB9XG4gIH1cbiAgLm92ZXJsYXkge1xuICAgIGZpbGw6IG5vbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxuXG4gIC5mb2N1cyBjaXJjbGUge1xuICAgIGZpbGw6IHJnYigzLCAzNywgNDUpO1xuICAgIHN0cm9rZS13aWR0aDogMnB4O1xuICB9XG4gIC50ZXh0X2hvdmVyX2NvbnRhaW5lciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlfZGFya2VyO1xuICB9XG4gIC5wb3B1cF92YWx1ZSB7XG4gICAgZmlsbDogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2NoYXJ0O1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfY2hhcnQ7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5wb3B1cF9kYXRlIHtcbiAgICBmaWxsOiAkZ3JleV9kYXJrZXI7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5wb3B1cF91bml0IHtcbiAgICBmaWxsOiAkZ3JleTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuXG4uc3RpY2tOYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMHB4O1xufVxuXG4ub3ZlcmxheS1raXRpbmZve1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHotaW5kZXg6OTk5O1xufVxuXG5cbi8qXG4gIEtJVCBNRU5VIE1PRFVMRVxuICovXG5zZWN0aW9uIC5raXRfbWVudSB7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAkbW9yZV9wcmlvcml0eTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzNweDtcbiAgfVxuXG4gIC5raXRfdGltZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vbGVmdDogLTQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkZ3JleV9kYXJrZXI7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5raXRfdXNlciB7XG4gICAgbWFyZ2luLWxlZnQ6MjBweDtcbiAgICAvL2Zsb2F0OiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIC8vbWFyZ2luOiAwIDMycHggMCAyMHB4O1xuICAgIGNvbG9yOiAkZ3JleV9kYXJrZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICAua2l0X25hbWUge1xuICAgIG1hcmdpbi1sZWZ0OjMwcHg7XG4gICAgLy9mbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRncmV5X2RhcmtlcjtcbiAgICAvL21hcmdpbjogMCAzMnB4IDAgMDtcblxuICAgIG1kLWljb24ge1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBzdmcgeyBmaWxsOiAkeWVsbG93OyB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAua2l0X2JhdHRlcnkge1xuICAgIG1hcmdpbi1sZWZ0OjMwcHg7XG4gICAgLy9mbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgIG1kLWljb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAua2l0LXNob3ctcmF3e1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG5cbiAgLmtpdC1yYXctdG9nZ2xle1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAvKlNob3cgcmF3IFRvZ2dsZSovXG4gIC5zd2l0Y2gge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gIH1cblxuICAuc3dpdGNoIGlucHV0IHsgXG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAuc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XG4gICAgdHJhbnNpdGlvbjogLjRzO1xuICB9XG5cbiAgLnNsaWRlcjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMTFweDtcbiAgICB3aWR0aDogMTFweDtcbiAgICBsZWZ0OiAzcHg7XG4gICAgYm90dG9tOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XG4gICAgdHJhbnNpdGlvbjogLjRzO1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gIH1cblxuICBpbnB1dDpmb2N1cyArIC5zbGlkZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggIzIxOTZGMztcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgKyAuc2xpZGVyOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTRweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTRweCk7XG4gIH1cblxuICAvKiBSb3VuZGVkIHNsaWRlciAqL1xuICAuc2xpZGVyLnJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICB9XG5cbiAgLnNsaWRlci5yb3VuZDpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIC5raXQtc2hvdy1yYXctdGV4dHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAkZ3JleV9kYXJrZXI7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmtpdF9uYXZiYXIge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgIC8vIEljb25zIGFyZSBpbnNpZGUgbWQtYnV0dG9uXG4gICAgbWQtaWNvbiB7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWQtYnV0dG9uIHtcbiAgICAgIG1hcmdpbjowO1xuICAgIH1cblxuICAgIGEubWQtYnV0dG9uOmhvdmVyLCAuYnV0dG9uX2FjdGl2ZSAge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRvZmZfYmxhY2s7XG4gICAgfVxuXG4gIH1cblxufVxuXG4ua2l0X292ZXJ2aWV3IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogOTZweDtcbiAgei1pbmRleDogJG1lZGl1bV9wcmlvcml0eTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlc3Q7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuYnV0dG9uX3Njcm9sbCB7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy90b3A6IDA7XG4gICAgLy93aWR0aDogNjBweDtcbiAgICAvL2hlaWdodDogOTZweDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICB9XG5cbiAgLmJ1dHRvbl9zY3JvbGxfbGVmdCB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5idXR0b25fc2Nyb2xsX3JpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC5zZW5zb3JzX2NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBoZWlnaHQ6IDk2cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgfVxuXG4gIEBtZWRpYSAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgLnNlbnNvcnNfY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLnNlbnNvcl9jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG91dGxpbmU6bm9uZTtcblxuICAgIHB7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuXG4gICAgLmNsZWFyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zZW5zb3JfcmlnaHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICBib3R0b206IDM4cHg7XG4gICAgICBtYXgtd2lkdGg6IDMwcHg7XG4gICAgICAuc2Vuc29yX3VuaXQge1xuICAgICAgICBtYXJnaW4tdG9wOjhweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgICAgLnNlbnNvcl9hcnJvdyB7XG4gICAgICAgIG1hcmdpbi10b3A6LTE1cHg7XG4gICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgJi5hcnJvd191cCBzdmcgeyBmaWxsOiAkZ3JlZW47IH1cbiAgICAgICAgJi5hcnJvd19kb3duIHN2ZyB7IGZpbGw6ICRyZWQ7IH1cbiAgICAgICAgJi5lcXVhbCBzdmcgeyBmaWxsOiAkYmx1ZV9saWdodDsgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2Vuc29yX3ZhbHVlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgIH1cbiAgICAuc2Vuc29yX3ZhbHVlX251bGwge1xuICAgICAgb3BhY2l0eTogMC4xNTtcbiAgICB9XG4gICAgLnNlbnNvcl9pY29uIHtcbiAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA0NXB4O1xuICAgICAgbGVmdDogMjVweDtcbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgY29sb3I6ICRvZmZfYmxhY2s7XG4gICAgICAuc2Vuc29yX2ljb24gc3ZnIHtcbiAgICAgICAgZmlsbDogJG9mZl9ibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiAgS0lUIERFVEFJTFNcbiAqXG4gKi9cblxuIC5raXRfZGV0YWlsc19ub3RBdXRoIHtcbiAgIC8vIEJ1ZzogdGhpcyB3aWxsIGNyZWF0ZSBhbiBleHRyYSBnYXAgb24gbW9iaWxlIGRldmljZXNcbiAgLy93aWR0aDogNTAwcHg7XG4gfVxuLmtpdF9kZXRhaWxzX25vdEF1dGhfdGl0bGUge1xuICBtYXJnaW46IDA7XG4gfVxuLmtpdF9kZXRhaWxzX25vdEF1dGhfc3ViaGVhZGVyIHtcbiAgY29sb3I6ICRncmV5X2Rhcmtlcjtcbn1cbi5raXRfZGV0YWlsc19ub3RBdXRoX2J1dHRvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5raXRfZGV0YWlsZWQge1xuICAvKmhlaWdodDogMTAwMHB4OyovXG4gIHotaW5kZXg6ICRtZWRpdW1fcHJpb3JpdHk7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgcC5kZXNjcmlwdGlvbiB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5raXRfdGltZU9wdHN7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gIH1cblxuICAua2l0X2NoYXJ0IHtcbiAgICBtaW4taGVpZ2h0OiAzNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaGludHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZfYmxhY2s7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAzN3B4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAua2l0X2NoYXJ0X2xlZnQge1xuICAgICAgICBjb2xvcjogJG9mZl9ibGFjaztcblxuICAgICAgICAuc2Vuc29yX3NlbGVjdCB7XG4gICAgICAgICAgLnNlbnNvcl9pY29uX3NlbGVjdGVkIHtcbiAgICAgICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjVweDtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgIGZpbGw6ICRvZmZfYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIG1kLXNlbGVjdCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAubWQtc2VsZWN0LXZhbHVle1xuICAgICAgICAgICAgICAubWQtdGV4dHtcbiAgICAgICAgICAgICAgICAuc2VsZWN0X2ltYWdle1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZW5zb3JfZGVzY3JpcHRpb24ge1xuICAgICAgICAgIC8qLy9jb2xvcjogJGJhY2tncm91bmRfYmx1ZV9saWdodDsqL1xuICAgICAgICAgIC8qLy9oZWlnaHQ6IDgwcHg7Ki9cbiAgICAgICAgICAvKi8vbWFyZ2luLXRvcDogMHB4OyAvLzMwOyovXG4gICAgICAgICAgLyovL3Bvc2l0aW9uOiByZWxhdGl2ZTsqL1xuXG4gICAgICAgICAgaDYge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTozcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXlfZGFya2VyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zZW5zb3JfZGVzY3JpcHRpb25fZnVsbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgICAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkIGdyZXk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX2NoYXJ0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZW5zb3JfZGF0YSB7XG4gICAgICAgICAgLnNlbnNvcl92YWx1ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2Vuc29yX3VuaXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2Vuc29yX2RhdGFfaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZW5zb3JfZGF0YV9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCA1cHgpO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCA1cHgpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1cHgsIDVweCk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoNXB4LCA1cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwgNXB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19jaGFydDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC42NSk7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNzVweDtcbiAgICAgICAgfVxuICAgICAgICAuc2Vuc29yX2NvbXBhcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDozMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmtpdF9jaGFydF9yaWdodCB7XG4gICAgICAgIC8qLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7Ki9cbiAgICAgICAgLyovL2hlaWdodDogMTAwJTsqL1xuXG4gICAgICAgIC5jaGFydF9uYXZpZ2F0aW9uIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwJTtcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAua2l0X3RpbWUge1xuICAgICAgICAgICAgbWQtaWNvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5waWNrZXJfY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDEwNTBweCkge1xuICAgICAgICAgICAgLmNoYXJ0X25hdmlnYXRpb257XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucGlja2VyX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCA1cHggMCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA5NjBweCkge1xuXG4gICAgICAgICAgICAucGlja2VyX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogbWlkZGxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29yZF9waWNrZXJ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNoYXJ0X21vdmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgLmNoYXJ0X21vdmVfYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNoYXJ0X21vdmUge1xuICAgICAgICAgICAgLmNoYXJ0X21vdmVfYnV0dG9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwcHggLTJweCAwIC0ycHg7XG4gICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9kYXJrZXI7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X2xpZ2h0ZXN0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNoYXJ0X21vdmVfcmlnaHQge1xuICAgICAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZ3JleV9kYXJrZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfZGFya2VyO1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICBmaWxsOiAkZ3JleV9saWdodGVzdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jaGFydF9tb3ZlX2xlZnQge1xuICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X2RhcmtlcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleV9kYXJrZXI7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X2xpZ2h0ZXN0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbWQtaWNvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1LjVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5raXRfZGV0YWlscyB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kX2JsdWVfZGFya19uYXZiYXI7XG4gIH1cbiAgLmtpdF9kZXRhaWxzX2NvbnRlbnQge1xuICAgIHN2ZyB7XG4gICAgICBmaWxsOiAkb2ZmX2JsYWNrO1xuICAgIH1cblxuICAgIC5raXRfZGV0YWlsc19sYWJlbHN7XG4gICAgICBtYXJnaW4tdG9wOjMwcHg7XG4gICAgfVxuICB9XG4gIC5raXRfZGV0YWlsc19uYW1lIHtcbiAgICBtYXJnaW46IDVweCAwIDIwcHggMDtcbiAgfVxuICAua2l0X2RldGFpbHNfdHlwZSB7XG4gICAgPiBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gIH1cbiAgLmtpdF9kZXRhaWxzX3R5cGVfbG9jYXRpb24gc3ZnIHtcbiAgICBmaWxsOiAkc2Vjb25kYXJ5X2NvbG9yO1xuICB9XG4gIC5raXRfZGV0YWlsc192ZXJzaW9uIHtcbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5X2NvbG9yX2xpZ2h0O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIC5raXRfZGV0YWlsc19pZCB7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeV9jb2xvcl9saWdodDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5raXRfZGV0YWlsc19kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDRweDtcbiAgfVxuICAua2l0X2RldGFpbHNfZGVzY3JpcHRpb25fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG4gIC5raXRfZGV0YWlsc19kZXNjcmlwdGlvbl9jb250ZW50IHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLmtpdF9kZXRhaWxzX21hbmFnZV9idXR0b25zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICB9XG4gIC5raXRfZGV0YWlsc19idXR0b25fZGVsZXRlIHtcbiAgICBjb2xvcjogJHJlZDtcbiAgfVxuICAua2l0X2RldGFpbHNfbWFuYWdlX2RhdGEge1xuICAgIC5kYXRhX2NvbnRhaW5lciB7XG4gICAgfVxuICB9XG4gIC5raXRfZGV0YWlsc19rZXkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMjZweDtcbiAgfVxuICAubWQtYnV0dG9uLmtpdF9kZXRhaWxzX2tleV9yZWZyZXNoQnV0dG9uOmhvdmVyLCAubWQtYnV0dG9uLmtpdF9kZXRhaWxzX2tleV9yZWZyZXNoQnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREJEQkRCO1xuICB9XG4gIC5raXRfZGV0YWlsZWRfaWNvbl9jb250ZW50IHtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgICBzdmcge1xuICAgICAgZmlsbDogJGdyZXlfZGFya2VyO1xuICAgIH1cbiAgfVxuICAua2l0X2RldGFpbGVkX2ljb25fdGl0bGUge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICB9XG4gIC5raXRfZGV0YWlsZWRfdGl0bGVfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gIH1cbiAgLmtpdF9kZXRhaWxlZF90aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICAua2l0X2RldGFpbGVkX2NvbnRlbnRfY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDYycHggMzdweCAwcHg7XG5cbiAgICAua2l0X2RldGFpbHNfY29udGVudF9tYWluIHtcbiAgIC8vIEJ1ZzogdGhpcyB3aWxsIGNyZWF0ZSBhbiBleHRyYSBnYXAgb24gbW9iaWxlIGRldmljZXNcbiAgICAvLyAgd2lkdGg6IDUwMHB4O1xuICAgIH1cbiAgfVxuICAua2l0X293bmVyIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmRfYmx1ZV9kYXJrX25hdmJhcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICAgIHBhZGRpbmctYm90dG9tOjQwcHg7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmtpdF9vd25lcl91c2VybmFtZUxpbmsge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAua2l0X293bmVyX3VzZXJuYW1lVGV4dCB7XG4gICAgICBjb2xvcjogJG9mZl9ibGFjaztcbiAgICAgIG1hcmdpbjogNTBweCAwIDIwcHggMDtcbiAgICB9XG4gICAgLmtpdF9vd25lcl9sb2NhdGlvbiB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeV9jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAua2l0X293bmVyX3VybCBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZF9ibHVlX2RhcmtfbmF2YmFyO1xuICAgIH1cbiAgICAua2l0X293bmVyX2tpdHNfdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG4gICAgLmtpdF9vd25lcl9raXRzX2xpc3Qge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0VBRUNGMTtcbiAgICAgIGhlaWdodDogODJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgICAua2l0X293bmVyX2tpdHNfbGlzdF9hdmF0YXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNDRweDtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMyU7XG4gICAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgfVxuICAgIC5raXRfb3duZXJfa2l0c19saXN0X2NvbnRlbnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICAgIC5raXRfb3duZXJfa2l0c19saXN0X2RhdGEge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmtpdF9vd25lcl9raXRzX2xpc3Rfc3RhdGUge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgICAgbWFyZ2luOiAxNXB4O1xuICAgIH1cbiAgICAua2l0X293bmVyX2tpdHNfbGlzdF9uZXZlcl9wdWJsaXNoZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICB9XG4gICAgLmtpdF9vd25lcl9raXRzX2xpc3Rfbm90X2NvbmZpZ3VyZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICB9XG4gICAgLmtpdF9vd25lcl9raXRzX2xpc3RfY29uZmlnIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IDEzcHg7XG4gICAgfVxuICAgIC5raXRfb3duZXJfa2l0c19saXN0X2NvbmZpZ19pY29uIHtcbiAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2Vuc29yX3ZhbHVlIHtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBmb250LWZhbWlseTogS2FuaXQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qKi9cblxuLyogWyFdIExlYXZlIGFuaW1hdGlvbiAobmctbGVhdmUgKSBhcmUgZGlzYWJsZWRcbmJlY2F1c2UgdGhleSBjb25mbGljdCB3aXRoIGVudGVyIGFuaW1hdGlvbnMgKi9cblxuXG4uc2Vuc29yX2FuaW1hdGlvbi5uZy1lbnRlciB7XG4gIHRyYW5zaXRpb246MXMgZWFzZS1vdXQgYWxsO1xufVxuLnNlbnNvcl9hbmltYXRpb24ubmctZW50ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAvLyBvcGFjaXR5OiAwO1xufVxuLnNlbnNvcl9hbmltYXRpb24ubmctZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLy8gb3BhY2l0eTogMTtcbn1cblxuLyogLnNlbnNvcl9hbmltYXRpb24ubmctbGVhdmV7XG4gIHRyYW5zaXRpb246MXMgZWFzZSBhbGw7XG59XG4uc2Vuc29yX2FuaW1hdGlvbi5uZy1sZWF2ZXtcbiAgb3BhY2l0eTogMDtcbn1cbi5zZW5zb3JfYW5pbWF0aW9uLm5nLWxlYXZlLWFjdGl2ZXtcbiAgb3BhY2l0eTogMTtcbn0gKi9cblxuLyogVGltZSBhbmltYXRpb24gY3VycmVudGx5IG5vdCBpbiB1c2UgKi9cblxuLnRpbWVfYW5pbWF0aW9uLm5nLWVudGVyIHtcbiAgdHJhbnNpdGlvbjoxcyBlYXNlLW91dCBhbGw7XG59XG4udGltZV9hbmltYXRpb24ubmctZW50ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuLnRpbWVfYW5pbWF0aW9uLm5nLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi8qIC50aW1lX2FuaW1hdGlvbi5uZy1sZWF2ZSB7XG4gIHRyYW5zaXRpb246MXMgZWFzZSBhbGw7XG59XG4udGltZV9hbmltYXRpb24ubmctbGVhdmUge1xuICBvcGFjaXR5OiAwO1xufVxuLnRpbWVfYW5pbWF0aW9uLm5nLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59ICovXG5cbi5iYXRfYW5pbWF0aW9uLm5nLWVudGVyIHtcbiAgdHJhbnNpdGlvbjoxcyBlYXNlLW91dCBhbGw7XG59XG4uYmF0X2FuaW1hdGlvbi5uZy1lbnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4uYmF0X2FuaW1hdGlvbi5uZy1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4vKiAuYmF0X2FuaW1hdGlvbi5uZy1sZWF2ZSB7XG4gIHRyYW5zaXRpb246MnMgZWFzZSBhbGw7XG59XG4uYmF0X2FuaW1hdGlvbi5uZy1sZWF2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG4uYmF0X2FuaW1hdGlvbi5uZy1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufSAqL1xuIiwiLypcbiAgTU9EQUwgU1RPUkVcbiovXG5cbi5zdG9yZV9pdGVtRGVzY3JpcHRpb24ge1xuICBtYXJnaW4tbGVmdDoyMHB4O1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCcuLi9hc3NldHMvaW1hZ2VzL2NoZWNrX2NpcmNsZS5zdmcnKTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICBsaW5lLWhlaWdodDogMS44ZW07XG4gIH1cbn1cbiIsIi5jc3ZfZmlsZV9pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWQtY2hlY2tib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgfVxuICBzcGFuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHhcbiAgfVxufVxuXG4ubGlzdC1zaGFkb3cge1xuICBib3gtc2hhZG93OiAwcHggMXB4IDNweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xuICBtZC1saXN0LWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkZ3JleV9saWdodGVyO1xuICB9XG4gIG1kLWxpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi8vIC5tZC1iYXIuYmctZ3JlZW4ge1xuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4vLyB9XG5cbi5sYWJlbC1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG59XG5cbi50aXRsZS10aW1lbGluZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuLyogVGhpcyBpcyB0ZW1wb3JhcnkgKi9cblxuLnVwbG9hZC1jc3Yge1xuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA5NzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTE3MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyoqXG4gKiAgQkFDS0RST1AgQ09NUE9ORU5UXG4gKi9cblxuLy8gUG9wdXAgYmFja2Ryb3BcblxubWQtY29udGVudC5tZC1vcGFxdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMwLCAzMCwgMzAsIDAuNik7XG59XG5cbi8vTG9hZGluZyBiYWNrZHJvcFxuXG5tZC1jb250ZW50Lm1kLW1haW5CYWNrZHJvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIC5iYWNrZHJvcF9pY29uIHtcbiAgICB3aWR0aDogMTAxcHg7XG4gICAgaGVpZ2h0OiAxMDFweDtcbiAgfVxufVxuXG4vLyBzdGF0ZSBjaGFuZ2UgYmFja2Ryb3Bcbm1kLWNvbnRlbnQubWQtc3RhdGVDaGFuZ2VCYWNrZHJvcCB7XG4gIHotaW5kZXg6IDk5OTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG4uYmFja2Ryb3BfaWNvbiB7XG4gIHN2ZyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgZmlsbDogJGdyZXlfZGFya2VyO1xuICB9XG4gIC5zYy1jaXJjbGUtYXJyb3cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUzLjglO1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUzLjglO1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1My44JTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTMuOCU7XG4gICAgLXdlYmtpdC1hbmltYXRpb246c3BpbiAzcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLW1vei1hbmltYXRpb246c3BpbiAzcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uOnNwaW4gM3MgbGluZWFyIGluZmluaXRlO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cbiIsInNlY3Rpb24gLnN0aWNrTWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuLy8gIHRvcDogNjRweDtcbn1cblxuLnN0aWNrTmF2IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDBweDtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzY2Njtcbn1cbiJdfQ== */
