/* Do not remove this comments bellow. It's the markers used by wiredep to inject
   sass dependencies when defined in the bower.json of your dependencies */
/* Do not remove this comments bellow. It's the markers used by gulp-inject to inject
   all your sass files automatically */
.fade {
  opacity: 1;
  visibility: visible; }
  .fade.ng-enter, .fade.ng-leave {
    transition: opacity 0.2s ease-in-out; }
  .fade.ng-enter, .fade.ng-leave-active {
    opacity: 0;
    visibility: hidden; }
  .fade.ng-enter-active, .fade.ng-leave {
    opacity: 1; }

@-webkit-keyframes slide-up {
  0% {
    -webkit-transform: translateY(500px);
            transform: translateY(500px);
    opacity: 0; }
  40% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  60% {
    opacity: 1; } }

@keyframes slide-up {
  0% {
    -webkit-transform: translateY(500px);
            transform: translateY(500px);
    opacity: 0; }
  40% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  60% {
    opacity: 1; } }

.slide-up {
  -webkit-animation: slide-up 0.4s ease-in-out;
          animation: slide-up 0.4s ease-in-out; }

.slide-up-item {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1; }
  .slide-up-item.ng-enter {
    transition: all 250ms ease-in-out; }
  .slide-up-item.ng-enter, .slide-up-item.ng-move, .slide-up-item.ng-leave-active {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0; }
  .slide-up-item.ng-enter-active, .slide-up-item.ng-leave {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
  .slide-up-item.ng-leave {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0; }
  .slide-up-item.ng-leave-stagger, .slide-up-item.ng-enter-stagger {
    transition-delay: 0.1s;
    transition-duration: 0s; }

.slide-down-item.ng-move, .slide-down-item.ng-enter, .slide-down-item.ng-leave {
  transition: all linear 0.2s; }

.slide-down-item.ng-leave.ng-leave-active, .slide-down-item.ng-move, .slide-down-item.ng-enter {
  opacity: 0;
  max-height: 0; }

.slide-down-item.ng-leave, .slide-down-item.ng-move.ng-move-active, .slide-down-item.ng-enter.ng-enter-active {
  opacity: 1;
  max-height: 40px; }

@media print {
  html {
    overflow: visible !important;
    height: initial; }
    html > body {
      overflow: visible !important;
      height: initial; }
      html > body section.overview-open {
        overflow: visible !important; }
        html > body section.overview-open > section.portal {
          overflow: visible !important; }
          html > body section.overview-open > section.portal aside.sidebar {
            display: none; }
          html > body section.overview-open > section.portal section.main {
            overflow: visible !important; }
            html > body section.overview-open > section.portal section.main > header button[name="filters-menu"],
            html > body section.overview-open > section.portal section.main > header button[name="over-arrow-back"] {
              display: none; }
      html > body section.fade {
        overflow: visible !important;
        height: auto; }
        html > body section.fade > section.job-detail {
          overflow: visible !important;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column; }
          html > body section.fade > section.job-detail > div.description {
            -webkit-box-ordinal-group: 3;
                -ms-flex-order: 2;
                    order: 2;
            overflow: visible !important; }
            html > body section.fade > section.job-detail > div.description .job-actions {
              display: none; }
      html > body button.bhi-arrow-back {
        display: none; }
      html > body div.apply {
        width: 100%; }
        html > body div.apply .apply,
        html > body div.apply .break,
        html > body div.apply .btn-li-lg,
        html > body div.apply .category-filter,
        html > body div.apply .related-jobs,
        html > body div.apply hr {
          display: none !important; } }

section.job-detail {
  padding: 0; }
  @media only screen and (min-width: 992px) {
    section.job-detail {
      padding: 0 1.5em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  section.job-detail > div.description {
    padding-left: 2em;
    padding-right: 2em;
    background-color: inherit;
    box-shadow: none; }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.description {
        margin-right: 1.5em;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        background-color: #FFFFFF;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); } }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.description > div.job-heading {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    section.job-detail > div.description > div.job-heading > h2 {
      font-size: 1.6em;
      font-weight: 500;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > h2 {
          display: inline-block;
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1; } }
    section.job-detail > div.description > div.job-heading > span.fill {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > span.fill {
          display: inline-block; } }
    section.job-detail > div.description > div.job-heading > div.job-actions {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > div.job-actions {
          -webkit-box-ordinal-group: 4;
              -ms-flex-order: 3;
                  order: 3; } }
      section.job-detail > div.description > div.job-heading > div.job-actions > button {
        border: none;
        background: transparent;
        margin: 0 1em 0 0;
        font-size: 1.1em;
        color: #6b6d71;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        white-space: nowrap; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions > button {
            -webkit-box-ordinal-group: 3;
                -ms-flex-order: 2;
                    order: 2;
            margin: 0 1em; } }
        section.job-detail > div.description > div.job-heading > div.job-actions > button > i {
          margin-right: 5px;
          font-size: 1.3em; }
        section.job-detail > div.description > div.job-heading > div.job-actions > button[name="share"] {
          padding-left: 0; }
          @media only screen and (min-width: 992px) {
            section.job-detail > div.description > div.job-heading > div.job-actions > button[name="share"] {
              display: inline-block; } }
      section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets {
        border-left: 1px solid transparent;
        padding-right: 20px;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        white-space: nowrap; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets {
            -webkit-box-ordinal-group: 2;
                -ms-flex-order: 1;
                    order: 1;
            border-left: none;
            border-right: 1px solid transparent; } }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(1) {
          transition-delay: 400ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(2) {
          transition-delay: 300ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(3) {
          transition-delay: 200ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(4) {
          transition-delay: 100ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets > a {
          font-size: 1.3em;
          padding: 5px 10px;
          box-sizing: border-box;
          display: inline-block;
          opacity: 0;
          visibility: hidden;
          transition: all 100ms ease;
          -webkit-transform: translateX(15px);
                  transform: translateX(15px); }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="share"] {
        color: #85e085; }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="print"] {
        display: none; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="print"] {
            display: inline-block; } }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets {
        border-left: 1px solid #85e085; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets {
            border-left: none;
            border-right: 1px solid #85e085; } }
        section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets > a {
          opacity: 1;
          visibility: visible;
          -webkit-transform: translateX(0);
                  transform: translateX(0); }
    section.job-detail > div.description > div.job-details {
      word-wrap: break-word;
      line-height: 1.5em;
      margin-top: 1em; }
  section.job-detail > div.apply {
    padding-top: 2em; }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.apply {
        width: 30%;
        max-width: 450px;
        height: 100%;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2; } }
    section.job-detail > div.apply div.alert {
      color: #245C7E;
      padding: 1em;
      margin: 1.5em 0 0;
      border-radius: .5em;
      margin-bottom: 1.5em; }
      section.job-detail > div.apply div.alert.info {
        border: solid thin #a5d3ee;
        background-color: #D0E8F6; }
    section.job-detail > div.apply span.break {
      position: relative;
      border-bottom: solid lightgray thin;
      display: block;
      margin: 2em 0; }
      section.job-detail > div.apply span.break > span {
        position: absolute;
        top: -.5em;
        text-align: center;
        width: 6%;
        color: grey;
        left: 46%;
        background-color: white;
        display: block; }
    section.job-detail > div.apply button.btn-li-lg {
      display: block;
      width: 99%;
      border: none;
      border-radius: .25em;
      padding: 0;
      margin: auto;
      margin-top: 1.5em;
      overflow: hidden;
      background: #0077B5;
      color: white;
      text-align: left;
      transition: background-color 250ms; }
      section.job-detail > div.apply button.btn-li-lg:hover, section.job-detail > div.apply button.btn-li-lg:active, section.job-detail > div.apply button.btn-li-lg:focus {
        background-color: #00669c; }
      section.job-detail > div.apply button.btn-li-lg.done, section.job-detail > div.apply button.btn-li-lg.loading {
        background-color: rgba(0, 119, 181, 0.75);
        color: rgba(255, 255, 255, 0.75); }
        section.job-detail > div.apply button.btn-li-lg.done > i, section.job-detail > div.apply button.btn-li-lg.loading > i {
          border-right-color: #0099e8; }
      section.job-detail > div.apply button.btn-li-lg > i {
        font-size: 2.5em;
        padding: .15em .25em;
        margin: 0 .25em 0 0;
        display: inline-block;
        height: 100%;
        border-right: solid thin #006091; }
      section.job-detail > div.apply button.btn-li-lg > span {
        position: relative;
        top: -.4em;
        font-size: 1.1em;
        font-weight: 600;
        padding: 0 1.5em 0 0; }
    section.job-detail > div.apply > div.send {
      margin-top: 1em;
      background-color: #F4F4F4;
      display: block;
      box-shadow: rgba(0, 0, 0, 0.14902) 0 1px 0 0; }
      section.job-detail > div.apply > div.send > input.email {
        text-align: left;
        width: 73%;
        height: 35px;
        font-size: 19px;
        border: none;
        background-color: #F4F4F4;
        text-indent: 15px;
        padding: 0; }
      section.job-detail > div.apply > div.send > a.send {
        display: inline-block;
        width: 25%;
        cursor: pointer;
        border: none;
        background: #0060af;
        padding-top: 8px;
        text-align: center;
        height: 35px;
        color: #FFFFFF;
        text-transform: uppercase;
        font-weight: 400;
        font-size: 1.3em; }
        section.job-detail > div.apply > div.send > a.send:focus {
          outline: none; }
        section.job-detail > div.apply > div.send > a.send:hover {
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); }
    section.job-detail > div.apply > .ios-upload-warning {
      text-align: center;
      padding-top: 25px;
      margin-top: 20px;
      margin-bottom: 42px;
      border-top: 1px solid #ddd; }
    section.job-detail > div.apply > .card-date {
      font-size: 0.9em; }
    section.job-detail > div.apply > .card-title-category > .card-title {
      margin-top: 0.7em; }
    section.job-detail > div.apply > .card-title-category > .card-category {
      color: #adafb0;
      margin-bottom: 1.3em; }
    section.job-detail > div.apply > .card-location, section.job-detail > div.apply > .card-type, section.job-detail > div.apply > .card-separator {
      color: #6c6f71;
      font-weight: 500;
      font-size: 1.1em; }
    section.job-detail > div.apply > button.apply {
      cursor: pointer;
      width: 100%;
      border: none;
      background: #0060af;
      color: #FFFFFF;
      padding: 0.5em;
      border-radius: 3px;
      text-transform: uppercase;
      font-weight: 300;
      font-size: 1.3em;
      margin-top: 1em; }
      section.job-detail > div.apply > button.apply:focus {
        outline: none; }
      section.job-detail > div.apply > button.apply:hover {
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); }
      section.job-detail > div.apply > button.apply.disabled {
        background-color: lightgray;
        margin-top: 1em; }
    section.job-detail > div.apply > hr {
      border: none;
      height: 1px;
      background: #E8E8E8;
      margin: 2em -0.5em;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > hr {
          display: block; } }
    section.job-detail > div.apply > div.related-jobs {
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > div.related-jobs {
          display: block; } }
      section.job-detail > div.apply > div.related-jobs > h5 {
        font-size: 1.2em;
        font-weight: 400; }
      section.job-detail > div.apply > div.related-jobs > div.related-job {
        padding: 0 1em;
        margin-bottom: 1.5em; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > a {
          font-size: 1.2em;
          font-weight: 500;
          max-width: 100%;
          display: inline-block;
          overflow: hidden;
          text-overflow: ellipsis;
          vertical-align: bottom;
          white-space: nowrap; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.separator {
          font-size: 1.2em; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.category {
          font-size: 1.1em;
          color: #3a3c3d;
          font-weight: 400; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.location {
          margin-top: 0.2em;
          display: block;
          font-size: 1em;
          color: #a0a2a4;
          font-weight: 500; }
    section.job-detail > div.apply > a.category-filter {
      font-weight: 700;
      margin-bottom: 1em;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > a.category-filter {
          display: block; } }
      section.job-detail > div.apply > a.category-filter > i {
        float: right; }

header.app {
  height: 60px;
  min-height: 60px;
  padding: 0 1.5em;
  text-align: center;
  color: #FFFFFF;
  z-index: 100; }
  @media only screen and (min-width: 992px) {
    header.app {
      text-align: left;
      display: none; } }
  header.app > label {
    display: inline-block;
    font-size: 2em;
    font-weight: 700;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    line-height: 60px;
    width: 75%; }
  header.app > button {
    display: none;
    background: transparent;
    border: none;
    font-size: 1.8em;
    line-height: 60px;
    margin-right: 0.5em;
    padding: 0;
    position: absolute;
    left: 1em;
    top: 0; }
  header.app > button.toggle-filters {
    display: inline-block;
    z-index: 101; }
    header.app > button.toggle-filters > .badge {
      position: absolute;
      top: 15px;
      left: -7px;
      font-size: 12px;
      padding: 1px 5px;
      background-color: #da4453;
      border-radius: 50%;
      color: #FFFFFF;
      line-height: 1; }
    header.app > button.toggle-filters > .close {
      display: none; }
    @media only screen and (min-width: 992px) {
      header.app > button.toggle-filters {
        display: none; } }
  .show-nav header.app > button.toggle-filters > .close {
    display: block; }
  .show-nav header.app > button.toggle-filters > .open, .show-nav header.app > button.toggle-filters > .badge {
    display: none; }
  .overview-open header.app > button.toggle-filters {
    display: none; }
  .overview-open header.app > button.go-back {
    display: inline-block; }
    @media only screen and (min-width: 992px) {
      .overview-open header.app > button.go-back {
        display: none; } }

section.job-list {
  padding: 0 1.5em 1.5em 1.5em; }
  section.job-list > h4 {
    color: #c5c5c5;
    font-size: 1.3em;
    font-weight: 500;
    margin: 0 0 1em; }
  section.job-list > p.load-more-data {
    text-align: center;
    margin: 0;
    font-size: 1.2em;
    cursor: pointer; }
  .list-view section.job-list div.cards {
    display: block; }
    .list-view section.job-list div.cards > div.card-wrapper {
      display: block; }
      .list-view section.job-list div.cards > div.card-wrapper > a.card {
        margin-bottom: 1.5em;
        overflow: hidden;
        cursor: pointer;
        display: block; }
        @media only screen and (min-width: 992px) {
          .list-view section.job-list div.cards > div.card-wrapper > a.card {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
                -ms-flex-flow: row wrap;
                    flex-flow: row wrap;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > i {
          -webkit-box-ordinal-group: 6;
              -ms-flex-order: 5;
                  order: 5;
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > i {
              display: inline-block; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-date {
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-date {
              display: block;
              -webkit-box-flex: 1;
                  -ms-flex: 1;
                      flex: 1;
              color: #939597;
              font-weight: 500;
              font-size: 1.1em;
              -webkit-box-ordinal-group: 5;
                  -ms-flex-order: 4;
                      order: 4;
              text-align: center; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category {
          display: block;
          width: 100%;
          margin-bottom: 0.25em; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category {
              width: 40%;
              margin-bottom: 0; } }
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category > .card-title {
            margin: 0 0 0.1em; }
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category > .card-category {
            font-size: 1.2em;
            margin: 0; }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-location, .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-type {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          text-align: center; }
        @media only screen and (min-width: 992px) {
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-separator {
            display: none; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-description {
          -webkit-box-ordinal-group: 7;
              -ms-flex-order: 6;
                  order: 6;
          width: 100%;
          margin-top: 1em;
          color: #606264;
          font-weight: 500;
          text-overflow: ellipsis;
          overflow: hidden;
          white-space: nowrap;
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-description {
              display: inline-block; } }
  .grid-view section.job-list div.cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-left: -0.75em;
    margin-right: -0.75em; }
    .grid-view section.job-list div.cards div.card-wrapper {
      width: 100%;
      padding-bottom: 1.5em; }
      @media only screen and (min-width: 768px) {
        .grid-view section.job-list div.cards div.card-wrapper {
          width: 33%;
          padding-right: 0.75em;
          padding-left: 0.75em; } }
      @media only screen and (min-width: 1200px) {
        .grid-view section.job-list div.cards div.card-wrapper {
          width: 33%; } }
      .grid-view section.job-list div.cards div.card-wrapper > a.card {
        width: 100%;
        background: #FFFFFF;
        padding: 1em;
        overflow: hidden;
        cursor: pointer;
        display: block;
        height: 175px;
        min-height: 175px; }
        @media only screen and (min-width: 768px) {
          .grid-view section.job-list div.cards div.card-wrapper > a.card {
            height: 183px;
            min-height: 183px; } }
        @media only screen and (min-width: 992px) {
          .grid-view section.job-list div.cards div.card-wrapper > a.card {
            height: 200px;
            min-height: 200px; } }
        .grid-view section.job-list div.cards div.card-wrapper > a.card > i {
          display: none; }
        .grid-view section.job-list div.cards div.card-wrapper > a.card > .card-description {
          margin-top: 1em;
          color: #606264;
          line-height: 1.5em;
          font-weight: 500;
          display: block;
          word-break: break-all;
          text-overflow: ellipsis;
          height: 16em;
          overflow: hidden;
          position: relative; }
          .grid-view section.job-list div.cards div.card-wrapper > a.card > .card-description:after {
            content: "";
            text-align: right;
            position: absolute;
            bottom: 0;
            right: 0;
            width: 70%;
            height: 1.2em;
            background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 100%);
            pointer-events: none; }

section.portal {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  height: 100%;
  width: 100%; }
  section.portal > .portal-canvas {
    width: 100%;
    height: 100%;
    position: relative;
    transition: .3s ease all;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    section.portal > .portal-canvas.show-nav {
      -webkit-transform: translateX(80%);
              transform: translateX(80%);
      -webkit-transform: translateZ(0) translateX(80%);
              transform: translateZ(0) translateX(80%);
      -webkit-transform: translate3d(80%, 0, 0);
              transform: translate3d(80%, 0, 0); }
      @media only screen and (min-width: 768px) {
        section.portal > .portal-canvas.show-nav {
          -webkit-transform: translateX(300px);
                  transform: translateX(300px);
          -webkit-transform: translateZ(0) translateX(300px);
                  transform: translateZ(0) translateX(300px);
          -webkit-transform: translate3d(300px, 0, 0);
                  transform: translate3d(300px, 0, 0); } }
    section.portal > .portal-canvas > section.main {
      height: 100%;
      transition: padding-left 0.2s ease-in-out; }
      @media only screen and (min-width: 992px) {
        section.portal > .portal-canvas > section.main {
          padding-left: 300px; }
          .overview-open section.portal > .portal-canvas > section.main {
            padding-left: 50px; } }
      section.portal > .portal-canvas > section.main > section.fade {
        overflow: auto;
        height: 90%; }
        @media only screen and (min-width: 768px) {
          section.portal > .portal-canvas > section.main > section.fade {
            height: 100%; } }

.modal-container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  overflow-y: auto; }
  .modal-container > div.modal {
    display: block;
    margin: auto;
    height: 100%;
    width: 100%;
    background: #FFFFFF;
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
    overflow: hidden;
    position: relative;
    pointer-events: auto; }
    @media only screen and (min-width: 768px) {
      .modal-container > div.modal {
        max-width: 500px;
        margin: 80px auto;
        height: auto; }
        .modal-container > div.modal.success {
          max-width: 500px !important; } }
    @media screen and (max-height: 700px) and (min-width: 992px) {
      .modal-container > div.modal {
        margin: 0 auto;
        /* IE 9 */
        -webkit-transform: scale(0.85);
        /* Safari */
        transform: scale(0.85);
        /* Firefox, Opera, Chrome */ } }
    .modal-container > div.modal.success {
      height: auto;
      margin: 80px auto;
      max-width: 300px; }
    .modal-container > div.modal > header {
      background: #0060af;
      padding: 0.5em 3em 1.3em 1em;
      display: block;
      color: #FFFFFF;
      height: auto;
      position: relative;
      text-align: left; }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal > header {
          padding: 1em 3em 2em 2em; } }
      .modal-container > div.modal > header > section > h2 {
        font-size: 1.8em;
        margin: 0.5em 0 0.2em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; }
      .modal-container > div.modal > header > section > h3 {
        margin-bottom: 0; }
        .modal-container > div.modal > header > section > h3 > a {
          color: #FFF;
          text-decoration: underline; }
      .modal-container > div.modal > header > section > span {
        font-size: 1.1em;
        font-weight: 500; }
        .modal-container > div.modal > header > section > span.category {
          display: block;
          color: #85e085;
          font-size: 1.3em;
          font-weight: 700;
          margin-bottom: 1.2em; }
        .modal-container > div.modal > header > section > span.location, .modal-container > div.modal > header > section > span.separator, .modal-container > div.modal > header > section > span.type {
          color: #FFF; }
      .modal-container > div.modal > header > section > i.close {
        position: absolute;
        top: 0.5em;
        right: 0.5em;
        cursor: pointer;
        color: #70db70;
        font-size: 2em; }
        @media only screen and (min-width: 768px) {
          .modal-container > div.modal > header > section > i.close {
            display: none; } }
      .modal-container > div.modal > header > section.success {
        text-align: center; }
    .modal-container > div.modal > div.main {
      padding: 0 1em;
      overflow: auto; }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal > div.main {
          padding: 0 2em;
          height: auto; } }
      .modal-container > div.modal > div.main section div.tooltip-info {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.4);
        z-index: 1010; }
        .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal {
          display: block;
          width: 100%;
          max-width: 33em;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
          padding: 2em 3em 2em 2em;
          background: #FFFFFF;
          border: grey;
          border-radius: 3px;
          box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
          z-index: 999; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > p {
            margin: 0; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > ul {
            margin-left: -1.5em !important; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > div.tooltip-info-closer {
            position: absolute;
            top: 0;
            right: 0;
            height: 46px;
            width: 46px; }
            .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > div.tooltip-info-closer > i {
              height: 100%;
              width: 100%;
              text-align: center;
              line-height: 46px;
              font-size: 1.2em;
              display: block;
              cursor: pointer; }
      .modal-container > div.modal > div.main section form.apply-form div.form-field {
        margin: 1em 0; }
        @media only screen and (min-width: 992px) {
          .modal-container > div.modal > div.main section form.apply-form div.form-field {
            margin: 2em 0; } }
        .modal-container > div.modal > div.main section form.apply-form div.form-field div.input {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input > .required {
            color: #da4453;
            font-size: 1.2em; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input,
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select {
            color: #797c7e;
            padding: 0.5em; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input.ng-invalid.ng-valid-required,
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select.ng-invalid.ng-valid-required {
              color: #da4453; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="email"], .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="text"],
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="email"],
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="text"] {
              border: none;
              border-bottom: 1px solid #c5c5c5;
              transition: border-bottom 0.2s ease-in-out; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="email"]:focus, .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="text"]:focus,
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="email"]:focus,
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="text"]:focus {
                border-bottom: 1px solid #0060af; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc > label {
              margin-bottom: 0.5em;
              text-align: left;
              width: 100%;
              font-size: 1.1em;
              color: #797c7e; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc select {
              border-color: #adafb0;
              border-radius: 4px; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc select:focus {
                outline: none; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc fieldset {
              width: 100%;
              border-radius: 3px;
              border-color: rgba(0, 0, 0, 0.1); }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox {
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-align: center;
                  -ms-flex-align: center;
                      align-items: center;
              -webkit-box-pack: start;
                  -ms-flex-pack: start;
                      justify-content: flex-start;
              height: 36px; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox input[type="checkbox"] {
                margin-top: 0;
                -ms-flex-negative: 0;
                    flex-shrink: 0;
                width: initial;
                height: 36px; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox label {
                height: 36px;
                line-height: 36px;
                padding-left: 10px;
                -webkit-box-flex: 1;
                    -ms-flex: 1;
                        flex: 1;
                width: 100%; }
        .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container {
          border: 1px solid #0060af;
          color: #0060af;
          border-radius: 3px;
          background: transparent;
          text-align: center;
          position: relative;
          cursor: pointer;
          font-size: 1.2em;
          margin-top: 1em;
          margin-bottom: 1.6em;
          height: 50px; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > i {
            line-height: 50px;
            font-size: 1.3em;
            padding-right: 0.5em; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > i:before {
              vertical-align: inherit; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > span {
            line-height: 50px;
            vertical-align: top; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container.valid {
            border-color: #0060af;
            color: #0060af; }
        .modal-container > div.modal > div.main section form.apply-form div.form-field:first-child {
          margin-top: 0; }
      .modal-container > div.modal > div.main section form.apply-form > div.upload-label {
        font-size: 1.1em;
        color: #797c7e; }
        .modal-container > div.modal > div.main section form.apply-form > div.upload-label > i {
          color: #606264; }
        .modal-container > div.modal > div.main section form.apply-form > div.upload-label > .error {
          margin-top: 0;
          float: right; }
      .modal-container > div.modal > div.main section.success {
        padding: 0 1em; }
      .modal-container > div.modal > div.main section select {
        width: 100%;
        overflow: hidden; }
      .modal-container > div.modal > div.main section input {
        color: #797c7e;
        width: 100%;
        margin-top: 1em; }
        .modal-container > div.modal > div.main section input.ng-invalid.ng-valid-required {
          color: #da4453; }
        .modal-container > div.modal > div.main section input[type="email"], .modal-container > div.modal > div.main section input[type="text"] {
          border: none;
          border-bottom: 1px solid #c5c5c5;
          transition: border-bottom 0.2s ease-in-out;
          padding: 0.5em; }
          .modal-container > div.modal > div.main section input[type="email"]:focus, .modal-container > div.modal > div.main section input[type="text"]:focus {
            border-bottom: 1px solid #0060af; }
      .modal-container > div.modal > div.main section textarea {
        width: 100%;
        resize: none;
        border: none;
        border-bottom: solid thin #CCC;
        padding: 0 0.75em;
        color: #797c7e; }
        .modal-container > div.modal > div.main section textarea:active, .modal-container > div.modal > div.main section textarea:focus, .modal-container > div.modal > div.main section textarea:hover {
          outline: none; }
        .modal-container > div.modal > div.main section textarea:focus {
          border-bottom-color: #0060af; }
    .modal-container > div.modal footer {
      width: 100%;
      text-align: right;
      position: fixed;
      bottom: 0;
      left: 0;
      height: 50px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap; }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal footer {
          position: relative; } }
      @media only screen and (min-width: 480px) {
        .modal-container > div.modal footer {
          position: relative; } }
      @media only screen and (min-width: 320px) {
        .modal-container > div.modal footer {
          position: relative; } }
      .modal-container > div.modal footer.success {
        text-align: right;
        padding-top: 0;
        display: inline-block;
        position: relative; }
        .modal-container > div.modal footer.success button {
          background-color: transparent !important;
          text-align: right;
          color: #0060af !important; }
      .modal-container > div.modal footer button {
        text-transform: uppercase;
        line-height: 50px;
        font-size: 1.5em;
        border: none;
        width: 49%;
        font-weight: 700;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
        .modal-container > div.modal footer button[name="cancel"], .modal-container > div.modal footer button[name="ok"] {
          color: #c5c5c5;
          background: transparent;
          font-weight: 600;
          display: none; }
          @media only screen and (min-width: 768px) {
            .modal-container > div.modal footer button[name="cancel"], .modal-container > div.modal footer button[name="ok"] {
              display: inline-block; } }
        .modal-container > div.modal footer button[name="submit"] {
          color: #FFFFFF;
          background: #0060af;
          border-radius: 2px;
          width: 100%;
          font-weight: 700; }
          .modal-container > div.modal footer button[name="submit"] > i {
            float: right; }
        .modal-container > div.modal footer button[name="ok"] {
          -webkit-box-flex: 0;
              -ms-flex: 0;
                  flex: 0;
          float: right;
          color: #0060af;
          font-size: 1em;
          width: 200px;
          display: inline-block; }
        .modal-container > div.modal footer button.disabled {
          background-color: lightgray; }

.error {
  display: block;
  color: #da4453;
  margin-left: 1.1em;
  margin-top: 0.3em; }
  .error.submit-error {
    margin-bottom: 1em; }

.accepted-formats ._720kb-tooltip-title {
  font-size: 0.8em; }

.accepted-formats ul {
  margin: 0.2em 0 0 1.1em;
  font-size: 0.9em;
  padding: 0; }

.loading {
  text-align: center; }
  .loading .loading-dot {
    display: inline-block;
    width: 5px;
    height: 5px;
    background: white;
    border-radius: 50%;
    -webkit-animation: loading 1.5s ease-in-out infinite;
            animation: loading 1.5s ease-in-out infinite; }
  .loading .loading-dot:nth-child(4n + 2) {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s; }
  .loading .loading-dot:nth-child(4n + 3) {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }

@-webkit-keyframes loading {
  0% {
    opacity: 1; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 1; } }

@keyframes loading {
  0% {
    opacity: 1; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 1; } }

aside {
  height: 100%;
  width: 80%;
  min-width: 80%;
  position: absolute;
  top: 0;
  left: -80%;
  color: black;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  transition: all 0.2s ease-in-out; }
  @media only screen and (min-width: 768px) {
    aside {
      width: 300px;
      min-width: 300px;
      left: -300px; } }
  @media only screen and (min-width: 992px) {
    aside {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: inherit;
      float: left;
      left: 0; } }
  aside > header {
    background-color: #0060af;
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 1em; }
    aside > header > label {
      font-size: 1.8em;
      font-weight: 500;
      width: auto; 
      color: #fff}
    aside > header > div.button-container {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      aside > header > div.button-container > button {
        background: transparent;
        border: none;
        color: #a0a2a4;
        padding: 5px;
        font-size: 1.8em;
        cursor: pointer;
        transition: all 0.2s;
        margin-right: 0; }
        aside > header > div.button-container > button:focus {
          outline: none; }
        aside > header > div.button-container > button.active {
          color: #FFFFFF; }
  aside > section {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: calc(100% - 60px);
    overflow: auto;
    padding: 1em; }
    aside > section > div.keyword-search {
      position: relative;
      margin: 1em 0 2em; }
      aside > section > div.keyword-search > label {
        position: absolute;
        top: 4px;
        left: 10px;
        font-size: 1.5em;
        color: #505255; }
      aside > section > div.keyword-search > button.clear-filter {
        position: absolute;
        top: 9px;
        right: 10px;
        padding: 0 5px;
        margin: 0;
        border: none;
        background: transparent; }
      aside > section > div.keyword-search > input.search {
        background-color: #ccc !important;
        border-radius: 50px;
        border-color: transparent;
        padding: 0.5em 2.5em;
        width: 100%;
        font-size: 1em;
        color: #2E2F30;
        box-sizing: border-box; }
        aside > section > div.keyword-search > input.search:focus {
          outline: none; }
        aside > section > div.keyword-search > input.search::-ms-clear {
          display: none; }
    aside > section > section.filter-section {
      margin-bottom: 2em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      max-height: 370px;
      overflow: hidden; }
      aside > section > section.filter-section.active {
        max-height: inherit; }
      aside > section > section.filter-section > .filter-section-header {
        width: 100%;
        margin-bottom: 1em; }
        aside > section > section.filter-section > .filter-section-header > h4 {
          color: #86888b;
          font-size: 1.1em;
          font-weight: 500;
          display: inline-block;
          margin: 0; }
        aside > section > section.filter-section > .filter-section-header > button.clear-filter {
          padding: 0;
          margin: 0;
          border: none;
          background: transparent;
          float: right; }
      aside > section > section.filter-section > span.show-more {
        display: block;
        width: 100%;
        text-align: center;
        margin-top: 1em;
        cursor: pointer;
        color: #adafb0; }
      aside > section > section.filter-section > .filter-item {
        width: 100%;
        padding-bottom: 5px;
        padding-top: 8px;
        border-bottom: 1px solid #3a3c3d;
        color: #2E2F30;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        aside > section > section.filter-section > .filter-item > label {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          font-size: 1.1em;
          cursor: pointer;
          padding-left: 1em;
          padding-right: 1em; }
        aside > section > section.filter-section > .filter-item > span {
          font-size: 1.1em; }
        aside > section > section.filter-section > .filter-item > input[type="checkbox"] {
          cursor: pointer;
          background: white;
          border: 1px solid #2E2F30;
          height: 15px;
          width: 15px;
          border-radius: 3px;
          -webkit-appearance: initial;
          display: inline-block;
          transition: all 130ms ease-in-out; }
          aside > section > section.filter-section > .filter-item > input[type="checkbox"]:focus {
            outline: none; }
          aside > section > section.filter-section > .filter-item > input[type="checkbox"]:checked {
            background: #0060af; }
            aside > section > section.filter-section > .filter-item > input[type="checkbox"]:checked + label {
              color: #0060af; }
    aside > section > section.credits {
      margin-top: 4em;
      color: #797c7e; }
      aside > section > section.credits span.powered-by {
        font-size: 1em; }
      aside > section > section.credits .bullhorn {
        display: block;
        position: relative;
        bottom: 20px;
        margin: 0; }
    aside > section > button[name="back-arrow"] {
      width: 46px;
      height: 100%;
      background: transparent;
      color: #FFFFFF;
      border: none;
      display: none; }
    aside > section::-webkit-scrollbar {
      width: 8px; }
    aside > section::-webkit-scrollbar-track {
      -webkit-box-shadow: none;
      border-radius: 0;
      background-color: #2E2F30; }
    aside > section::-webkit-scrollbar-thumb {
      border-radius: 0;
      -webkit-box-shadow: inset 1px 1px 6px #46474A;
      background-color: #46474A; }
  aside.show {
    display: block !important; }
  .overview-open aside {
    width: 50px;
    min-width: 50px;
    height: 50px; }
    .overview-open aside > header {
      display: none; }
    .overview-open aside > section {
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      background: #0060af; }
      .overview-open aside > section > div.keyword-search, .overview-open aside > section > section.filter-section, .overview-open aside > section > section.credits {
        display: none; }
      .overview-open aside > section > button[name="back-arrow"] {
        display: block; }
      .overview-open aside > section > button[name="clear-all"] {
        display: none; }
    .overview-open aside:hover {
      cursor: pointer;
      background: #353738; }

html, body {
  -webkit-font-smoothing: antialiased;
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 13px;
  color: #46474A;
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  /* overflow: hidden; */
  background-color: #EBEBEB;
  box-sizing: border-box; }
  html > section.main, body > section.main {
    height: 100%;
    width: 100%; }

*, *:before, *:after {
  box-sizing: inherit; }

.fill {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

._720kb-tooltip {
  z-index: 1001;
  visibility: hidden !important; }
  ._720kb-tooltip._720kb-tooltip-open {
    visibility: visible !important; }

input:focus, input:active {
  outline: none; }

button {
  cursor: pointer; }
  button:focus, button:active {
    outline: none; }

a {
  color: #0060af;
  text-decoration: none;
  cursor: pointer; }
  a:visited, a:focus, a:active {
    color: #0060af; }

.card {
  background: #FFFFFF;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  padding: 1em; }
  .card > .card-date {
    font-size: 0.8em;
    font-weight: 500;
    color: #adafb0; }
  .card > .card-title-category > .card-title {
    font-size: 1.5em;
    font-weight: 500;
    margin-bottom: 0.2em;
    margin-top: 1em;
    display: block;
    color: #0060af;
    text-decoration: none; }
    .card > .card-title-category > .card-title:visited, .card > .card-title-category > .card-title:focus, .card > .card-title-category > .card-title:active {
      color: #0060af; }
  .card > .card-title-category > .card-category {
    display: block;
    margin-bottom: 1em;
    font-size: 1.1em;
    color: #2E2F30;
    font-weight: 600; }
  .card > .card-location, .card > .card-type, .card > .card-separator {
    color: #939597;
    font-weight: 500;
    font-size: 1em; }

div.no-data-message {
  height: 100%;
  width: 100%;
  text-align: center; }
  div.no-data-message > h2 {
    font-size: 3.5em;
    font-weight: normal;
    color: #adafb0;
    margin: 10% 0 0.1em; }
  div.no-data-message > h3 {
    font-size: 2.5em;
    font-weight: normal;
    color: #adafb0;
    margin: 0 0 0.5em; }
  div.no-data-message > p {
    font-size: 1.3em; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

.mask {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 0;
  height: 0;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s; }
  .mask.active {
    width: 100%;
    height: 100%;
    opacity: 0.2;
    transition: opacity 0.3s; }
    
.contactus {
    border: 3px solid;
    border-radius: 20px;
    padding: 0 25px;
    line-height: 40px;
    display: block;
    text-align: center;
    margin: 10px auto;
    width: 300px;
    font-size: 1.4em;
    background: #0060af;
    transition: .25s all ease-in-out;    
}
    
.contactus:link, .contactus:visited, .contactus:hover {color: #fff; text-decoration:none;}    
.contactus:hover {
    background: #8c008c;
}
    
    

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJhbmltYXRpb25zLnNjc3MiLCJwcmludC5zY3NzIiwiZGV0YWlsL2RldGFpbC5zY3NzIiwibWl4aW5zLnNjc3MiLCJoZWFkZXIvaGVhZGVyLnNjc3MiLCJsaXN0L2xpc3Quc2NzcyIsIm1haW4vbWFpbi5zY3NzIiwibW9kYWwvbW9kYWwuc2NzcyIsInNpZGViYXIvc2lkZWJhci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzJFQUMyRTtBQTBCM0U7dUNBQ3VDO0FDeEJ2QztFQUNJLFdBQVc7RUFDWCxvQkFBb0IsRUFjdkI7RUFoQkQ7SUFLUSxxQ0FBcUMsRUFDeEM7RUFOTDtJQVNRLFdBQVc7SUFDWCxtQkFBbUIsRUFDdEI7RUFYTDtJQWNRLFdBQVcsRUFDZDs7QUFPTDtFQUNJO0lBQ0kscUNBQXFCO1lBQXJCLDZCQUFxQjtJQUNyQixXQUFXLEVBQUE7RUFHZjtJQUNJLG9DQUFxQjtZQUFyQiw0QkFBcUIsRUFBQTtFQUd6QjtJQUNJLFdBQVcsRUFBQSxFQUFBOztBQVhuQjtFQUNJO0lBQ0kscUNBQXFCO1lBQXJCLDZCQUFxQjtJQUNyQixXQUFXLEVBQUE7RUFHZjtJQUNJLG9DQUFxQjtZQUFyQiw0QkFBcUIsRUFBQTtFQUd6QjtJQUNJLFdBQVcsRUFBQSxFQUFBOztBQUluQjtFQUNJLDZDQUFxQztVQUFyQyxxQ0FBcUMsRUFDeEM7O0FBTUQ7RUFDSSxpQ0FBcUI7VUFBckIseUJBQXFCO0VBQ3JCLFdBQVcsRUF5QmQ7RUEzQkQ7SUFLUSxrQ0FBa0MsRUFDckM7RUFOTDtJQVNRLG9DQUFxQjtZQUFyQiw0QkFBcUI7SUFDckIsV0FBVyxFQUNkO0VBWEw7SUFjUSxpQ0FBcUI7WUFBckIseUJBQXFCO0lBQ3JCLFdBQVcsRUFDZDtFQWhCTDtJQW1CUSxvQ0FBcUI7WUFBckIsNEJBQXFCO0lBQ3JCLFdBQVcsRUFDZDtFQXJCTDtJQXdCUSx1QkFBdUI7SUFDdkIsd0JBQXdCLEVBQzNCOztBQU9MO0VBRVEsNEJBQTRCLEVBQy9C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QTRCWSxlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixlQTNISztJQTRITCxpQkFBaUIsRUFDcEI7RUFqQ1Q7SUFxQ1EsZUFBYztJQUNkLGlCQUFpQjtJQUNqQixpQkFBaUIsRUFDcEI7O0FBR0w7RUFDSSxhQUFhO0VBQ2IsWUFBWTtFQUNaLG1CQUFtQixFQW1CdEI7RUF0QkQ7SUFNUSxpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLGVBQWM7SUFDZCxvQkFBb0IsRUFDdkI7RUFWTDtJQWFRLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsZUFBYztJQUNkLGtCQUFrQixFQUNyQjtFQWpCTDtJQW9CUSxpQkFBaUIsRUFDcEI7O0FBR0w7RUFDSSxtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGFBQWE7RUFDYixhQUFhO0VBQ2IsWUFBWTtFQUNaLFVBQVUsRUFDYjs7QUFFRDtFQUNJLGdCQUFnQjtFQUNoQixhQTFKZ0I7RUEySmhCLE9BQU87RUFDUCxRQUFRO0VBQ1IsaUJBQWlCO0VBQ2pCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsdUJBQXVCO0VBQ3ZCLFdBQVc7RUFDWCx3REFBd0QsRUFRM0Q7RUFsQkQ7SUFhUSxZQUFZO0lBQ1osYUFBYTtJQUNiLGFBQWE7SUFDYix5QkFBeUIsRUFDNUIiLCJmaWxlIjoiaW5kZXguY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogRG8gbm90IHJlbW92ZSB0aGlzIGNvbW1lbnRzIGJlbGxvdy4gSXQncyB0aGUgbWFya2VycyB1c2VkIGJ5IHdpcmVkZXAgdG8gaW5qZWN0XG4gICBzYXNzIGRlcGVuZGVuY2llcyB3aGVuIGRlZmluZWQgaW4gdGhlIGJvd2VyLmpzb24gb2YgeW91ciBkZXBlbmRlbmNpZXMgKi9cbi8vIGJvd2VyOnNjc3Ncbi8vIGVuZGJvd2VyXG5cbiR3aGl0ZTogI0ZGRkZGRjtcbiRwcmltYXJ5OiAjM2MzO1xuJHNlY29uZGFyeTogIzNjMztcbiRsaWdodC1iZzogI0VCRUJFQjtcbiRkYXJrLWJnOiAjMkUyRjMwO1xuJGhlYWRlci1iZzogJHByaW1hcnk7XG4kc2lkZWJhci1oZWFkZXItYmc6ICNjY2M7XG4kdG9nZ2xlLWFjdGl2ZTogI2ZmZjtcbiRjYW5jZWw6IGRhcmtlbigkbGlnaHQtYmcsIDE1JSk7XG4kZXJyb3I6ICNkYTQ0NTM7XG5cbiRmb250LXNpemU6IDEzcHg7XG4kZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRiYXNlLWNvbG9yOiAjNDY0NzRBO1xuXG4kaGVhZGVyLWhlaWdodDogNjBweDtcbiRzaWRlYmFyLXdpZHRoOiAzMDBweDtcbiRzaWRlYmFyLXdpZHRoLXNtYWxsOiA1MHB4O1xuXG4kbW9kYWwtei1pbmRleDogMTAwMDtcbiRoZWFkZXItei1pbmRleDogMTAwO1xuXG4vKiBEbyBub3QgcmVtb3ZlIHRoaXMgY29tbWVudHMgYmVsbG93LiBJdCdzIHRoZSBtYXJrZXJzIHVzZWQgYnkgZ3VscC1pbmplY3QgdG8gaW5qZWN0XG4gICBhbGwgeW91ciBzYXNzIGZpbGVzIGF1dG9tYXRpY2FsbHkgKi9cbi8vIGluamVjdG9yXG5AaW1wb3J0IFwiYW5pbWF0aW9ucy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zLnNjc3NcIjtcbkBpbXBvcnQgXCJwcmludC5zY3NzXCI7XG5AaW1wb3J0IFwiZGV0YWlsL2RldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiaGVhZGVyL2hlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibGlzdC9saXN0LnNjc3NcIjtcbkBpbXBvcnQgXCJtYWluL21haW4uc2Nzc1wiO1xuQGltcG9ydCBcIm1vZGFsL21vZGFsLnNjc3NcIjtcbkBpbXBvcnQgXCJzaWRlYmFyL3NpZGViYXIuc2Nzc1wiO1xuLy8gZW5kaW5qZWN0b3JcblxuaHRtbCwgYm9keSB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgY29sb3I6ICRiYXNlLWNvbG9yO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1iZztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgPiBzZWN0aW9uLm1haW4ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi5maWxsIHtcbiAgICBmbGV4OiAxO1xufVxuXG4uXzcyMGtiLXRvb2x0aXAge1xuICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4ICsgMTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcblxuICAgICYuXzcyMGtiLXRvb2x0aXAtb3BlbiB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmlucHV0IHtcbiAgICAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxufVxuXG5idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmEge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjp2aXNpdGVkLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjE1KTtcbiAgICBwYWRkaW5nOiAxZW07XG5cbiAgICA+IC5jYXJkLWRhdGUge1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcbiAgICB9XG5cbiAgICA+IC5jYXJkLXRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgPiAuY2FyZC10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuN2VtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjp2aXNpdGVkLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY2FyZC1jYXRlZ29yeSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAuY2FyZC1sb2NhdGlvbiwgPiAuY2FyZC10eXBlLCA+IC5jYXJkLXNlcGFyYXRvciB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0MCUpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIH1cbn1cblxuZGl2Lm5vLWRhdGEtbWVzc2FnZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gaDIge1xuICAgICAgICBmb250LXNpemU6IDMuNWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcbiAgICAgICAgbWFyZ2luOiAxMCUgMCAwLjFlbTtcbiAgICB9XG5cbiAgICA+IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDUwJSk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuNWVtO1xuICAgIH1cblxuICAgID4gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDA7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4ubWFzayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzLCB3aWR0aCAwcyAwLjNzLCBoZWlnaHQgMHMgMC4zcztcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gICAgfVxufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBGQURFXG4vLy8vLy8vLy8vLy8vLy8vLy9cblxuLmZhZGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICYubmctZW50ZXIsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlciwgJi5uZy1sZWF2ZS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlci1hY3RpdmUsICYubmctbGVhdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTTElERSBVUFxuLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBrZXlmcmFtZXMgc2xpZGUtdXAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5zbGlkZS11cCB7XG4gICAgYW5pbWF0aW9uOiBzbGlkZS11cCAwLjRzIGVhc2UtaW4tb3V0O1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNMSURFIFVQIElURU0gKE5HLVJFUEVBVClcbi8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uc2xpZGUtdXAtaXRlbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLm5nLWVudGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICYubmctZW50ZXIsICYubmctbW92ZSwgJi5uZy1sZWF2ZS1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlci1hY3RpdmUsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmLm5nLWxlYXZlLXN0YWdnZXIsICYubmctZW50ZXItc3RhZ2dlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTTElERSBET1dOIElURU0gKE5HLVJFUEVBVClcbi8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uc2xpZGUtZG93bi1pdGVtIHtcbiAgICAmLm5nLW1vdmUsICYubmctZW50ZXIsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZS5uZy1sZWF2ZS1hY3RpdmUsICYubmctbW92ZSwgJi5uZy1lbnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZSwgJi5uZy1tb3ZlLm5nLW1vdmUtYWN0aXZlLCAmLm5nLWVudGVyLm5nLWVudGVyLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgfVxufSIsIkBtZWRpYSBwcmludCB7XG4gICAgaHRtbCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcblxuICAgICAgICA+IGJvZHkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcblxuICAgICAgICAgICAgc2VjdGlvbi5vdmVydmlldy1vcGVuIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgPiBzZWN0aW9uLnBvcnRhbCB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgYXNpZGUuc2lkZWJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc2VjdGlvbi5tYWluIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25bbmFtZT1cImZpbHRlcnMtbWVudVwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25bbmFtZT1cIm92ZXItYXJyb3ctYmFja1wiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzZWN0aW9uLmZhZGUge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgPiBzZWN0aW9uLmpvYi1kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFnZS1icmVhay1iZWZvcmU6IGFsd2F5cztcbiAgICAgICAgICAgICAgICAgICAgICAgIC5qb2ItYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uLmJoaS1hcnJvdy1iYWNrIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXYuYXBwbHkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLmFwcGx5LFxuICAgICAgICAgICAgICAgIC5icmVhayxcbiAgICAgICAgICAgICAgICAuYnRuLWxpLWxnLFxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1maWx0ZXIsXG4gICAgICAgICAgICAgICAgLnJlbGF0ZWQtam9icyxcbiAgICAgICAgICAgICAgICBociB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJzZWN0aW9uLmpvYi1kZXRhaWwge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNWVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgID4gZGl2LmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdi5qb2ItaGVhZGluZyB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gc3Bhbi5maWxsIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBkaXYuam9iLWFjdGlvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDFlbSAwIDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRiYXNlLWNvbG9yLCAxNSUpO1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZbbmFtZT1cInNoYXJlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGRpdi5zaGFyZS1vdXRsZXRzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhOm50aC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICgoI3s1MDAtKCRpKjEwMG1zKX0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1cHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zaGFyZS1vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cInNoYXJlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LCAyMCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cInByaW50XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBkaXYuc2hhcmUtb3V0bGV0cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGxpZ2h0ZW4oJHByaW1hcnksIDIwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgbGlnaHRlbigkcHJpbWFyeSwgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYuam9iLWRldGFpbHMge1xuICAgICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBkaXYuYXBwbHkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgIC8vIExpbmtlZCBJbiBJbnRlZ3JhdGlvblxuICAgICAgICAgICAgICAgICRsaW5rZWQtaW4tYmx1ZTogIzAwNzdCNTtcbiAgICAgICAgICAgICAgICAvL0xpbmtlZCBJbiBBbGVydFxuICAgICAgICAgICAgICAgIGRpdi5hbGVydCB7XG4gICAgICAgICAgICAgICAgICAgICRpbmZvLWJsdWUtZm9udDogIzI0NUM3RTtcbiAgICAgICAgICAgICAgICAgICAgJGluZm8tYmx1ZS1iZzogI0QwRThGNjtcblxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGluZm8tYmx1ZS1mb250O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMS41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcblxuICAgICAgICAgICAgICAgICAgICAmLmluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB0aGluIGRhcmtlbigkaW5mby1ibHVlLWJnLCAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGluZm8tYmx1ZS1iZztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvL09yIEJyZWFrXG4gICAgICAgICAgICAgICAgc3Bhbi5icmVhayB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgbGlnaHRncmF5IHRoaW47XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAvL2hlaWdodDogMmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBncmV5O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNDYlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBMaW5rZWQgSW4gQnV0dG9uXG4gICAgICAgICAgICAgICAgYnV0dG9uLmJ0bi1saS1sZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTklO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07XG5cbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlua2VkLWluLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcbiAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpbmtlZC1pbi1ibHVlLCA1JSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmRvbmUsXG4gICAgICAgICAgICAgICAgICAgICYubG9hZGluZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkbGlua2VkLWluLWJsdWUsIC4yNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNzUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IGxpZ2h0ZW4oJGxpbmtlZC1pbi1ibHVlLCAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMTVlbSAuMjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAuMjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIHRoaW4gZGFya2VuKCRsaW5rZWQtaW4tYmx1ZSwgNyUpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLS40ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMS41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYuc2VuZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTQ5MDIpIDAgMXB4IDAgMDtcblxuICAgICAgICAgICAgPiBpbnB1dC5lbWFpbCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzMlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhLnNlbmQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcblxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gLmlvcy11cGxvYWQtd2FybmluZyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MnB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jYXJkLWRhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNhcmQtdGl0bGUtY2F0ZWdvcnkge1xuICAgICAgICAgICAgPiAuY2FyZC10aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC43ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gLmNhcmQtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1MCUpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuM2VtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY2FyZC1sb2NhdGlvbiwgPiAuY2FyZC10eXBlLCA+IC5jYXJkLXNlcGFyYXRvciB7XG4gICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMjUlKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBidXR0b24uYXBwbHkge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBociB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNFOEU4RTg7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAtMC41ZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYucmVsYXRlZC1qb2JzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBkaXYucmVsYXRlZC1qb2Ige1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gc3Bhbi5zZXBhcmF0b3Ige1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gc3Bhbi5jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1JSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBzcGFuLmxvY2F0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yZW07XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDQ1JSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBhLmNhdGVnb3J5LWZpbHRlciB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkc21hbGwtcGhvbmUtd2lkdGg6IDMyMHB4O1xuJHBob25lLXdpZHRoOiA0ODBweDtcbiR0YWJsZXQtd2lkdGg6IDc2OHB4O1xuJGRlc2t0b3Atd2lkdGg6IDk5MnB4O1xuJGxhcmdlLWRlc2t0b3Atd2lkdGg6IDEyMDBweDtcblxuQG1peGluIHNtYWxsLXBob25lIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHNtYWxsLXBob25lLXdpZHRofSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBwaG9uZSB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRwaG9uZS13aWR0aH0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gdGFibGV0IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHRhYmxldC13aWR0aH0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gZGVza3RvcCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRkZXNrdG9wLXdpZHRofSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBsYXJnZS1kZXNrdG9wIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGxhcmdlLWRlc2t0b3Atd2lkdGh9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIHByaW50IHtcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG4iLCJoZWFkZXIuYXBwIHtcbiAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgMS41ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgei1pbmRleDogJGhlYWRlci16LWluZGV4O1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICA+IGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICB9XG5cbiAgICA+IGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxZW07XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICA+IGJ1dHRvbi50b2dnbGUtZmlsdGVycyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgei1pbmRleDogJGhlYWRlci16LWluZGV4ICsgMTtcblxuICAgICAgICA+IC5iYWRnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICBsZWZ0OiAtN3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMXB4IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNsb3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxuICAgIC5zaG93LW5hdiAmIHtcbiAgICAgICAgPiBidXR0b24udG9nZ2xlLWZpbHRlcnMge1xuICAgICAgICAgICAgPiAuY2xvc2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5vcGVuLCA+IC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxuICAgIC5vdmVydmlldy1vcGVuICYge1xuICAgICAgICA+IGJ1dHRvbi50b2dnbGUtZmlsdGVycyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBidXR0b24uZ28tYmFjayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJzZWN0aW9uLmpvYi1saXN0IHtcbiAgICBwYWRkaW5nOiAwIDEuNWVtIDEuNWVtIDEuNWVtO1xuXG4gICAgPiBoNCB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGxpZ2h0LWJnLCAxNSUpO1xuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDAgMCAxZW07XG4gICAgfVxuXG4gICAgPiBwLmxvYWQtbW9yZS1kYXRhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAvLyBQYXJlbnQgc2VsZWN0b3JcbiAgICAubGlzdC12aWV3ICYge1xuICAgICAgICBkaXYuY2FyZHMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgID4gZGl2LmNhcmQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICA+IGEuY2FyZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtZGF0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDQwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtdGl0bGUtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtbG9jYXRpb24sID4gLmNhcmQtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuY2FyZC1zZXBhcmF0b3Ige1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuY2FyZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDIwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGFyZW50IHNlbGVjdG9yXG4gICAgLmdyaWQtdmlldyAmIHtcbiAgICAgICAgZGl2LmNhcmRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuNzVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcblxuICAgICAgICAgICAgZGl2LmNhcmQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xuXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGFyZ2UtZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGEuY2FyZCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNzVweDtcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTc1cHg7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxODNweDtcbiAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxODNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCAyMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTZlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAkd2hpdGUgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59Iiwic2VjdGlvbi5wb3J0YWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiAucG9ydGFsLWNhbnZhcyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UgYWxsO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgJi5zaG93LW5hdiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODAlKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKDgwJSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDgwJSwgMCwgMCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpZGViYXItd2lkdGgpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKCRzaWRlYmFyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRzaWRlYmFyLXdpZHRoLCAwLCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gc2VjdGlvbi5tYWluIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHBhZGRpbmctbGVmdCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXItd2lkdGg7XG5cbiAgICAgICAgICAgICAgICAub3ZlcnZpZXctb3BlbiAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZWJhci13aWR0aC1zbWFsbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gc2VjdGlvbi5mYWRlIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDkwJTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5tb2RhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjcpO1xuICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICA+IGRpdi5tb2RhbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiA4MHB4IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAgICYuc3VjY2VzcyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDcwMHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpe1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguODUpOyAvKiBJRSA5ICovXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjg1KTsgLyogU2FmYXJpICovXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44NSk7IC8qIEZpcmVmb3gsIE9wZXJhLCBDaHJvbWUgKi9cblxuICAgICAgICB9XG5cblxuICAgICAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiA4MHB4IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiBoZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVlbSAzZW0gMS4zZW0gMWVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW0gM2VtIDJlbSAyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgPiBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMC41ZW0gMCAwLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcHJpbWFyeSwgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxvY2F0aW9uLFxuICAgICAgICAgICAgICAgICAgICAmLnNlcGFyYXRvcixcbiAgICAgICAgICAgICAgICAgICAgJi50eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjM0Q1NjY4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBpLmNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAuNWVtO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMC41ZW07XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnksIDE1JSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2Lm1haW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIC8vaGVpZ2h0OiBjYWxjKDEwMCUgLSA2MHB4IC0gMTIwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgZGl2LnRvb2x0aXAtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuNCk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4ICsgMTA7XG5cbiAgICAgICAgICAgICAgICAgICAgLnRvb2x0aXAtbW9kYWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyZW0gM2VtIDJlbSAyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IGdyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGRpdi50b29sdGlwLWluZm8tY2xvc2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZm9ybS5hcHBseS1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgZGl2LmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgZGl2LmlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gLnJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRlcnJvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMzAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC41ZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5uZy1pbnZhbGlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubmctdmFsaWQtcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmW3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRsaWdodC1iZywgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFkZGluZzogMC41ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmVlb2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYigxMjEsIDEyNCwgMTI2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNhZGFmYjA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZWVvYy1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi51cGxvYWQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYudmFsaWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LnVwbG9hZC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDIwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmVycm9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc3VjY2VzcyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJi5uZy1pbnZhbGlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYubmctdmFsaWQtcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRsaWdodC1iZywgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gTGlua2VkIEluIFNraWxscyBhbmQgZXhwZXJ0aXNlOlxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCB0aGluICNDQ0M7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC43NWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzc5N2M3ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvb3RlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvbmUoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgc21hbGwtcGhvbmUoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgICAgICAgICAmW25hbWU9XCJjYW5jZWxcIl0sXG4gICAgICAgICAgICAgICAgJltuYW1lPVwib2tcIl0ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNhbmNlbDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbbmFtZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbbmFtZT1cIm9rXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGVycm9yO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjFlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjNlbTtcblxuICAgICYuc3VibWl0LWVycm9yIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIH1cbn1cblxuLmFjY2VwdGVkLWZvcm1hdHMge1xuICAgIC5fNzIwa2ItdG9vbHRpcC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDAuMmVtIDAgMCAxLjFlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5sb2FkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubG9hZGluZy1kb3Qge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IGxvYWRpbmcgMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICB9XG5cbiAgICAubG9hZGluZy1kb3Q6bnRoLWNoaWxkKDRuICsgMSkge31cblxuICAgIC5sb2FkaW5nLWRvdDpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICB9XG5cbiAgICAubG9hZGluZy1kb3Q6bnRoLWNoaWxkKDRuICsgMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG4gICAgfVxufVxuQGtleWZyYW1lcyBsb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cbiIsImFzaWRlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtaW4td2lkdGg6IDgwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IC04MCU7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgbWluLXdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgbGVmdDogLSRzaWRlYmFyLXdpZHRoO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICA+IGhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYzM7XG4gICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAxZW07XG5cbiAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYuYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICA+IGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0NSUpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBzZWN0aW9uIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRoZWFkZXItaGVpZ2h0fSk7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxZW07XG5cbiAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMCAyZW07XG5cbiAgICAgICAgICAgID4gbGFiZWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICM1MDUyNTU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYnV0dG9uLmNsZWFyLWZpbHRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogOXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gaW5wdXQuc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1oZWFkZXItYmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41ZW0gMi41ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJnO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjotbXMtY2xlYXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gc2VjdGlvbi5maWx0ZXItc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM3MHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gLmZpbHRlci1zZWN0aW9uLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gICAgICAgICAgICAgICAgPiBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCAzNSUpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGJ1dHRvbi5jbGVhci1maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gc3Bhbi5zaG93LW1vcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5maWx0ZXItaXRlbSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRkYXJrLWJnLCA1JSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJnO1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGxpZ2h0LWJnLCAxNSUpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1iZztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDEzMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBzZWN0aW9uLmNyZWRpdHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNGVtO1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG5cbiAgICAgICAgICAgIHNwYW4ucG93ZXJlZC1ieSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idWxsaG9ybiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBidXR0b25bbmFtZT1cImJhY2stYXJyb3dcIl0ge1xuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggNnB4ICRiYXNlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxuICAgIC5vdmVydmlldy1vcGVuICYge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGgtc21hbGw7XG4gICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItd2lkdGgtc21hbGw7XG4gICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICA+IGhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBzZWN0aW9uIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzNjMztcblxuICAgICAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gsID4gc2VjdGlvbi5maWx0ZXItc2VjdGlvbiwgPiBzZWN0aW9uLmNyZWRpdHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJiYWNrLWFycm93XCJdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cImNsZWFyLWFsbFwiXSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkZGFyay1iZywgMyUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19 */
