/* 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: 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: #a7cbee; }
      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 #a7cbee; }
        @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 #a7cbee; } }
        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 {
    margin-bottom: 1.5em;
    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: #ACC72E;
        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: #ACC72E;
      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;
  background-color: #5198DE;
  color: #FFFFFF;
  z-index: 100; }
  @media only screen and (min-width: 992px) {
    header.app {
      text-align: left; } }
  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: 1.5em; }
  section.job-list > h4 {
    color: #cecece;
    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: 50%;
          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;
        min-height: 365px; }
        .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 {
        height: calc(100% - 60px);
        overflow: auto; }

.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: #5198DE;
      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 > span {
        font-size: 1.1em;
        font-weight: 500; }
        .modal-container > div.modal > header > section > span.category {
          display: block;
          color: #a7cbee;
          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: #3D5668; }
      .modal-container > div.modal > header > section > i.close {
        position: absolute;
        top: 0.5em;
        right: 0.5em;
        cursor: pointer;
        color: #91beea;
        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: 1em;
      overflow: auto;
      height: calc(100% - 60px - 120px); }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal > div.main {
          padding: 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 #cecece;
              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 #5198DE; }
          .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 #5198DE;
          color: #5198DE;
          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: #ACC72E;
            color: #ACC72E; }
        .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: 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 #cecece;
          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 #5198DE; }
      .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: #5198DE; }
    .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: #5198DE !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: #cecece;
          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: #ACC72E;
          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: #5198DE;
          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 {
  z-index: 125;
  height: 100%;
  width: 80%;
  min-width: 80%;
  position: absolute;
  top: 0;
  left: -80%;
  background-color: #2E2F30;
  color: #FFFFFF;
  -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: #252728;
    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 1.5em; }
    aside > header > label {
      font-size: 1.8em;
      font-weight: 500;
      width: auto; }
    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: #252728 !important;
        border-radius: 50px;
        border-color: transparent;
        padding: 0.5em 2.5em;
        width: 100%;
        font-size: 1em;
        color: #eeeeef;
        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: #d4d5d6;
        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: #535557;
          border: none;
          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: #5198DE; }
            aside > section > section.filter-section > .filter-item > input[type="checkbox"]:checked + label {
              color: #5198DE; }
    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; }
    .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; }
      .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: "Roboto";
  font-size: 13px;
  color: #46474A;
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #F4F4F4;
  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: #5198DE;
  text-decoration: none;
  cursor: pointer; }
  a:visited, a:focus, a:active {
    color: #5198DE; }

.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.7em;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0.2em;
    margin-top: 1em;
    white-space: nowrap;
    display: block;
    color: #5198DE;
    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: #5198DE; }
  .card > .card-title-category > .card-category {
    display: block;
    margin-bottom: 1em;
    font-size: 1.2em;
    color: #2E2F30;
    font-weight: 600; }
  .card > .card-location, .card > .card-type, .card > .card-separator {
    color: #939597;
    font-weight: 500;
    font-size: 1.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; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJhbmltYXRpb25zLnNjc3MiLCJwcmludC5zY3NzIiwiZGV0YWlsL2RldGFpbC5zY3NzIiwibWl4aW5zLnNjc3MiLCJoZWFkZXIvaGVhZGVyLnNjc3MiLCJsaXN0L2xpc3Quc2NzcyIsIm1haW4vbWFpbi5zY3NzIiwibW9kYWwvbW9kYWwuc2NzcyIsInNpZGViYXIvc2lkZWJhci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzJFQUMyRTtBQTBCM0U7dUNBQ3VDO0FDeEJ2QztFQUNJLFdBQVc7RUFDWCxvQkFBb0IsRUFjdkI7RUFoQkQ7SUFLUSxxQ0FBcUMsRUFDeEM7RUFOTDtJQVNRLFdBQVc7SUFDWCxtQkFBbUIsRUFDdEI7RUFYTDtJQWNRLFdBQVcsRUFDZDs7QUFPTDtFQUNJO0lBQ0kscUNBQXFCO1lBQXJCLDZCQUFxQjtJQUNyQixXQUFXLEVBQUE7RUFHZjtJQUNJLG9DQUFxQjtZQUFyQiw0QkFBcUIsRUFBQTtFQUd6QjtJQUNJLFdBQVcsRUFBQSxFQUFBOztBQVhuQjtFQUNJO0lBQ0kscUNBQXFCO1lBQXJCLDZCQUFxQjtJQUNyQixXQUFXLEVBQUE7RUFHZjtJQUNJLG9DQUFxQjtZQUFyQiw0QkFBcUIsRUFBQTtFQUd6QjtJQUNJLFdBQVcsRUFBQSxFQUFBOztBQUluQjtFQUNJLDZDQUFxQztVQUFyQyxxQ0FBcUMsRUFDeEM7O0FBTUQ7RUFDSSxpQ0FBcUI7VUFBckIseUJBQXFCO0VBQ3JCLFdBQVcsRUF5QmQ7RUEzQkQ7SUFLUSxrQ0FBa0MsRUFDckM7RUFOTDtJQVNRLG9DQUFxQjtZQUFyQiw0QkFBcUI7SUFDckIsV0FBVyxFQUNkO0VBWEw7SUFjUSxpQ0FBcUI7WUFBckIseUJBQXFCO0lBQ3JCLFdBQVcsRUFDZDtFQWhCTDtJQW1CUSxvQ0FBcUI7WUFBckIsNEJBQXFCO0lBQ3JCLFdBQVcsRUFDZDtFQXJCTDtJQXdCUSx1QkFBdUI7SUFDdkIsd0JBQXdCLEVBQzNCOztBQU9MO0VBRVEsNEJBQTRCLEVBQy9C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RUFDYixZQUFZO0VBQ1osbUJBQW1CLEVBbUJ0QjtFQXRCRDtJQU1RLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsZUFBYztJQUNkLG9CQUFvQixFQUN2QjtFQVZMO0lBYVEsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixlQUFjO0lBQ2Qsa0JBQWtCLEVBQ3JCO0VBakJMO0lBb0JRLGlCQUFpQixFQUNwQjs7QUFHTDtFQUNJLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsYUFBYTtFQUNiLGFBQWE7RUFDYixZQUFZO0VBQ1osVUFBVSxFQUNiOztBQUVEO0VBQ0ksZ0JBQWdCO0VBQ2hCLGFBN0pnQjtFQThKaEIsT0FBTztFQUNQLFFBQVE7RUFDUixpQkFBaUI7RUFDakIsU0FBUztFQUNULFVBQVU7RUFDVix1QkFBdUI7RUFDdkIsV0FBVztFQUNYLHdEQUF3RCxFQVEzRDtFQWxCRDtJQWFRLFlBQVk7SUFDWixhQUFhO0lBQ2IsYUFBYTtJQUNiLHlCQUF5QixFQUM1QiIsImZpbGUiOiJpbmRleC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBEbyBub3QgcmVtb3ZlIHRoaXMgY29tbWVudHMgYmVsbG93LiBJdCdzIHRoZSBtYXJrZXJzIHVzZWQgYnkgd2lyZWRlcCB0byBpbmplY3RcclxuICAgc2FzcyBkZXBlbmRlbmNpZXMgd2hlbiBkZWZpbmVkIGluIHRoZSBib3dlci5qc29uIG9mIHlvdXIgZGVwZW5kZW5jaWVzICovXHJcbi8vIGJvd2VyOnNjc3NcclxuLy8gZW5kYm93ZXJcclxuXHJcbiR3aGl0ZTogI0ZGRkZGRjtcclxuJHByaW1hcnk6ICM1MTk4REU7XHJcbiRzZWNvbmRhcnk6ICNBQ0M3MkU7XHJcbiRsaWdodC1iZzogI0Y0RjRGNDtcclxuJGRhcmstYmc6ICMyRTJGMzA7XHJcbiRoZWFkZXItYmc6ICRwcmltYXJ5O1xyXG4kc2lkZWJhci1oZWFkZXItYmc6ICMyNTI3Mjg7XHJcbiR0b2dnbGUtYWN0aXZlOiAjZmZmO1xyXG4kY2FuY2VsOiBkYXJrZW4oJGxpZ2h0LWJnLCAxNSUpO1xyXG4kZXJyb3I6ICNkYTQ0NTM7XHJcblxyXG4kZm9udC1zaXplOiAxM3B4O1xyXG4kZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xyXG4kYmFzZS1jb2xvcjogIzQ2NDc0QTtcclxuXHJcbiRoZWFkZXItaGVpZ2h0OiA2MHB4O1xyXG4kc2lkZWJhci13aWR0aDogMzAwcHg7XHJcbiRzaWRlYmFyLXdpZHRoLXNtYWxsOiA1MHB4O1xyXG5cclxuJG1vZGFsLXotaW5kZXg6IDEwMDA7XHJcbiRoZWFkZXItei1pbmRleDogMTAwO1xyXG5cclxuLyogRG8gbm90IHJlbW92ZSB0aGlzIGNvbW1lbnRzIGJlbGxvdy4gSXQncyB0aGUgbWFya2VycyB1c2VkIGJ5IGd1bHAtaW5qZWN0IHRvIGluamVjdFxyXG4gICBhbGwgeW91ciBzYXNzIGZpbGVzIGF1dG9tYXRpY2FsbHkgKi9cclxuLy8gaW5qZWN0b3JcclxuQGltcG9ydCBcImFuaW1hdGlvbnMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zLnNjc3NcIjtcclxuQGltcG9ydCBcInByaW50LnNjc3NcIjtcclxuQGltcG9ydCBcImRldGFpbC9kZXRhaWwuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiaGVhZGVyL2hlYWRlci5zY3NzXCI7XHJcbkBpbXBvcnQgXCJsaXN0L2xpc3Quc2Nzc1wiO1xyXG5AaW1wb3J0IFwibWFpbi9tYWluLnNjc3NcIjtcclxuQGltcG9ydCBcIm1vZGFsL21vZGFsLnNjc3NcIjtcclxuQGltcG9ydCBcInNpZGViYXIvc2lkZWJhci5zY3NzXCI7XHJcbi8vIGVuZGluamVjdG9yXHJcblxyXG5odG1sLCBib2R5IHtcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIGNvbG9yOiAkYmFzZS1jb2xvcjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmc7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgID4gc2VjdGlvbi5tYWluIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5maWxsIHtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcbi5fNzIwa2ItdG9vbHRpcCB7XHJcbiAgICB6LWluZGV4OiAkbW9kYWwtei1pbmRleCArIDE7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcclxuXHJcbiAgICAmLl83MjBrYi10b29sdGlwLW9wZW4ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuaW5wdXQge1xyXG4gICAgJjpmb2N1cywgJjphY3RpdmUge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbmJ1dHRvbiB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjpmb2N1cywgJjphY3RpdmUge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbmEge1xyXG4gICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6dmlzaXRlZCwgJjpmb2N1cywgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuICAgIH1cclxufVxyXG5cclxuLmNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjE1KTtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuXHJcbiAgICA+IC5jYXJkLWRhdGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYXJkLXRpdGxlLWNhdGVnb3J5IHtcclxuICAgICAgICA+IC5jYXJkLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAmOnZpc2l0ZWQsICY6Zm9jdXMsICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAuY2FyZC1jYXRlZ29yeSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1iZztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiAuY2FyZC1sb2NhdGlvbiwgPiAuY2FyZC10eXBlLCA+IC5jYXJkLXNlcGFyYXRvciB7XHJcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDQwJSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5kaXYubm8tZGF0YS1tZXNzYWdlIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgID4gaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy41ZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcclxuICAgICAgICBtYXJnaW46IDEwJSAwIDAuMWVtO1xyXG4gICAgfVxyXG5cclxuICAgID4gaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcclxuICAgICAgICBtYXJnaW46IDAgMCAwLjVlbTtcclxuICAgIH1cclxuXHJcbiAgICA+IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jbGVhcmZpeDphZnRlciB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi5tYXNrIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgd2lkdGggMHMgMC4zcywgaGVpZ2h0IDBzIDAuM3M7XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBGQURFXHJcbi8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLmZhZGUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcblxyXG4gICAgJi5uZy1lbnRlciwgJi5uZy1sZWF2ZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICYubmctZW50ZXIsICYubmctbGVhdmUtYWN0aXZlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAmLm5nLWVudGVyLWFjdGl2ZSwgJi5uZy1sZWF2ZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFNMSURFIFVQXHJcbi8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuQGtleWZyYW1lcyBzbGlkZS11cCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIDQwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWRlLXVwIHtcclxuICAgIGFuaW1hdGlvbjogc2xpZGUtdXAgMC40cyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFNMSURFIFVQIElURU0gKE5HLVJFUEVBVClcclxuLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4uc2xpZGUtdXAtaXRlbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG5cclxuICAgICYubmctZW50ZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmLm5nLWVudGVyLCAmLm5nLW1vdmUsICYubmctbGVhdmUtYWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLm5nLWVudGVyLWFjdGl2ZSwgJi5uZy1sZWF2ZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJi5uZy1sZWF2ZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5uZy1sZWF2ZS1zdGFnZ2VyLCAmLm5nLWVudGVyLXN0YWdnZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBTTElERSBET1dOIElURU0gKE5HLVJFUEVBVClcclxuLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4uc2xpZGUtZG93bi1pdGVtIHtcclxuICAgICYubmctbW92ZSwgJi5uZy1lbnRlciwgJi5uZy1sZWF2ZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xyXG4gICAgfVxyXG5cclxuICAgICYubmctbGVhdmUubmctbGVhdmUtYWN0aXZlLCAmLm5nLW1vdmUsICYubmctZW50ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLm5nLWxlYXZlLCAmLm5nLW1vdmUubmctbW92ZS1hY3RpdmUsICYubmctZW50ZXIubmctZW50ZXItYWN0aXZlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcbn0iLCJAbWVkaWEgcHJpbnQge1xyXG4gICAgaHRtbCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XHJcblxyXG4gICAgICAgID4gYm9keSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcclxuXHJcbiAgICAgICAgICAgIHNlY3Rpb24ub3ZlcnZpZXctb3BlbiB7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgID4gc2VjdGlvbi5wb3J0YWwge1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGFzaWRlLnNpZGViYXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgc2VjdGlvbi5tYWluIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbltuYW1lPVwiZmlsdGVycy1tZW51XCJdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uW25hbWU9XCJvdmVyLWFycm93LWJhY2tcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNlY3Rpb24uZmFkZSB7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgICAgID4gc2VjdGlvbi5qb2ItZGV0YWlsIHtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LmRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFnZS1icmVhay1iZWZvcmU6IGFsd2F5cztcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvYi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbi5iaGktYXJyb3ctYmFjayB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkaXYuYXBwbHkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgLmFwcGx5LFxyXG4gICAgICAgICAgICAgICAgLmJyZWFrLFxyXG4gICAgICAgICAgICAgICAgLmJ0bi1saS1sZyxcclxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1maWx0ZXIsXHJcbiAgICAgICAgICAgICAgICAucmVsYXRlZC1qb2JzLFxyXG4gICAgICAgICAgICAgICAgaHIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJzZWN0aW9uLmpvYi1kZXRhaWwge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNWVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIH1cclxuXHJcbiAgICA+IGRpdi5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyZW07XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcclxuICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjE1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2LmpvYi1oZWFkaW5nIHtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gaDIge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IHNwYW4uZmlsbCB7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gZGl2LmpvYi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDFlbSAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkYmFzZS1jb2xvciwgMTUlKTtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDFlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJltuYW1lPVwic2hhcmVcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gZGl2LnNoYXJlLW91dGxldHMge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYTpudGgtY2hpbGQoI3skaX0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICgoI3s1MDAtKCRpKjEwMG1zKX0pKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLnNoYXJlLW9wZW4ge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJzaGFyZVwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LCAyMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cInByaW50XCJdIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LnNoYXJlLW91dGxldHMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGxpZ2h0ZW4oJHByaW1hcnksIDIwJSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBsaWdodGVuKCRwcmltYXJ5LCAyMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2LmpvYi1kZXRhaWxzIHtcclxuICAgICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiBkaXYuYXBwbHkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyZW07XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDUwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIExpbmtlZCBJbiBJbnRlZ3JhdGlvblxyXG4gICAgICAgICAgICAgICAgJGxpbmtlZC1pbi1ibHVlOiAjMDA3N0I1O1xyXG4gICAgICAgICAgICAgICAgLy9MaW5rZWQgSW4gQWxlcnRcclxuICAgICAgICAgICAgICAgIGRpdi5hbGVydCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGluZm8tYmx1ZS1mb250OiAjMjQ1QzdFO1xyXG4gICAgICAgICAgICAgICAgICAgICRpbmZvLWJsdWUtYmc6ICNEMEU4RjY7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaW5mby1ibHVlLWZvbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMS41ZW0gMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuaW5mbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdGhpbiBkYXJrZW4oJGluZm8tYmx1ZS1iZywgMTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGluZm8tYmx1ZS1iZztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvL09yIEJyZWFrXHJcbiAgICAgICAgICAgICAgICBzcGFuLmJyZWFrIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgbGlnaHRncmF5IHRoaW47XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgLy9oZWlnaHQ6IDJlbTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDJlbSAwO1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNiU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBncmV5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NiU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyBMaW5rZWQgSW4gQnV0dG9uXHJcbiAgICAgICAgICAgICAgICBidXR0b24uYnRuLWxpLWxnIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTklO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaW5rZWQtaW4tYmx1ZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcclxuICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXM7XHJcbiAgICAgICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXM7XHJcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpbmtlZC1pbi1ibHVlLCA1JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmRvbmUsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5sb2FkaW5nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGxpbmtlZC1pbi1ibHVlLCAuMjUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNzUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBsaWdodGVuKCRsaW5rZWQtaW4tYmx1ZSwgMTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogLjE1ZW0gLjI1ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAuMjVlbSAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIHRoaW4gZGFya2VuKCRsaW5rZWQtaW4tYmx1ZSwgNyUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0uNGVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEuNWVtIDAgMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGRpdi5zZW5kIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE0OTAyKSAwIDFweCAwIDA7XHJcblxyXG4gICAgICAgICAgICA+IGlucHV0LmVtYWlsIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzMlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDtcclxuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBhLnNlbmQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4xNSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gLmlvcy11cGxvYWQtd2FybmluZyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAuY2FyZC1kYXRlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gLmNhcmQtdGl0bGUtY2F0ZWdvcnkge1xyXG4gICAgICAgICAgICA+IC5jYXJkLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuN2VtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5jYXJkLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1MCUpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4zZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gLmNhcmQtbG9jYXRpb24sID4gLmNhcmQtdHlwZSwgPiAuY2FyZC1zZXBhcmF0b3Ige1xyXG4gICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMjUlKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gYnV0dG9uLmFwcGx5IHtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVlbTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcblxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjE1KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gaHIge1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRThFOEU4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDJlbSAtMC41ZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2LnJlbGF0ZWQtam9icyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gaDUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gZGl2LnJlbGF0ZWQtam9iIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA+IHNwYW4uc2VwYXJhdG9yIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gc3Bhbi5jYXRlZ29yeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNSUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBzcGFuLmxvY2F0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNDUlKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGEuY2F0ZWdvcnktZmlsdGVyIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIiRzbWFsbC1waG9uZS13aWR0aDogMzIwcHg7XHJcbiRwaG9uZS13aWR0aDogNDgwcHg7XHJcbiR0YWJsZXQtd2lkdGg6IDc2OHB4O1xyXG4kZGVza3RvcC13aWR0aDogOTkycHg7XHJcbiRsYXJnZS1kZXNrdG9wLXdpZHRoOiAxMjAwcHg7XHJcblxyXG5AbWl4aW4gc21hbGwtcGhvbmUge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRzbWFsbC1waG9uZS13aWR0aH0pIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBob25lIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skcGhvbmUtd2lkdGh9KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0YWJsZXQge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyR0YWJsZXQtd2lkdGh9KSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBkZXNrdG9wIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skZGVza3RvcC13aWR0aH0pIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGxhcmdlLWRlc2t0b3Age1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRsYXJnZS1kZXNrdG9wLXdpZHRofSkge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcHJpbnQge1xyXG4gICAgQG1lZGlhIHByaW50IHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG4iLCJoZWFkZXIuYXBwIHtcclxuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XHJcbiAgICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcclxuICAgIHBhZGRpbmc6IDAgMS41ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1iZztcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB6LWluZGV4OiAkaGVhZGVyLXotaW5kZXg7XHJcblxyXG4gICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgID4gbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XHJcbiAgICAgICAgd2lkdGg6IDc1JTtcclxuICAgIH1cclxuXHJcbiAgICA+IGJ1dHRvbiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAxZW07XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gYnV0dG9uLnRvZ2dsZS1maWx0ZXJzIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogJGhlYWRlci16LWluZGV4ICsgMTtcclxuXHJcbiAgICAgICAgPiAuYmFkZ2Uge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMTVweDtcclxuICAgICAgICAgICAgbGVmdDogLTdweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxcHggNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3I7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC5jbG9zZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBQYXJlbnQgc2VsZWN0b3JcclxuICAgIC5zaG93LW5hdiAmIHtcclxuICAgICAgICA+IGJ1dHRvbi50b2dnbGUtZmlsdGVycyB7XHJcbiAgICAgICAgICAgID4gLmNsb3NlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5vcGVuLCA+IC5iYWRnZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxyXG4gICAgLm92ZXJ2aWV3LW9wZW4gJiB7XHJcbiAgICAgICAgPiBidXR0b24udG9nZ2xlLWZpbHRlcnMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBidXR0b24uZ28tYmFjayB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Iiwic2VjdGlvbi5qb2ItbGlzdCB7XHJcbiAgICBwYWRkaW5nOiAxLjVlbTtcclxuXHJcbiAgICA+IGg0IHtcclxuICAgICAgICBjb2xvcjogZGFya2VuKCRsaWdodC1iZywgMTUlKTtcclxuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMWVtO1xyXG4gICAgfVxyXG5cclxuICAgID4gcC5sb2FkLW1vcmUtZGF0YSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBQYXJlbnQgc2VsZWN0b3JcclxuICAgIC5saXN0LXZpZXcgJiB7XHJcbiAgICAgICAgZGl2LmNhcmRzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICA+IGRpdi5jYXJkLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgPiBhLmNhcmQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWRhdGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiAuY2FyZC10aXRsZS1jYXRlZ29yeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtbG9jYXRpb24sID4gLmNhcmQtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtc2VwYXJhdG9yIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDIwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBQYXJlbnQgc2VsZWN0b3JcclxuICAgIC5ncmlkLXZpZXcgJiB7XHJcbiAgICAgICAgZGl2LmNhcmRzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuNzVlbTtcclxuXHJcbiAgICAgICAgICAgIGRpdi5jYXJkLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVlbTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsYXJnZS1kZXNrdG9wKCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBhLmNhcmQge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzY1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMjAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTZlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCAkd2hpdGUgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsInNlY3Rpb24ucG9ydGFsIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblxyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgPiAucG9ydGFsLWNhbnZhcyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZSBhbGw7XHJcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cclxuICAgICAgICAmLnNob3ctbmF2IHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDgwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKDgwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoODAlLCAwLCAwKTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2lkZWJhci13aWR0aCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgkc2lkZWJhci13aWR0aCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRzaWRlYmFyLXdpZHRoLCAwLCAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBzZWN0aW9uLm1haW4ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHBhZGRpbmctbGVmdCAwLjJzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNpZGViYXItd2lkdGg7XHJcblxyXG4gICAgICAgICAgICAgICAgLm92ZXJ2aWV3LW9wZW4gJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZWJhci13aWR0aC1zbWFsbDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBzZWN0aW9uLmZhZGUge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRoZWFkZXItaGVpZ2h0fSk7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5tb2RhbC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43KTtcclxuICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4O1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuXHJcbiAgICA+IGRpdi5tb2RhbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiA4MHB4IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgICAgICYuc3VjY2VzcyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA3MDBweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KXtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKC44NSk7IC8qIElFIDkgKi9cclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC44NSk7IC8qIFNhZmFyaSAqL1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44NSk7IC8qIEZpcmVmb3gsIE9wZXJhLCBDaHJvbWUgKi9cclxuXHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgJi5zdWNjZXNzIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW46IDgwcHggYXV0bztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gaGVhZGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDNlbSAxLjNlbSAxZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMWVtIDNlbSAyZW0gMmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IHNlY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgPiBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAuNWVtIDAgMC4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuY2F0ZWdvcnkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnksIDIwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5sb2NhdGlvbixcclxuICAgICAgICAgICAgICAgICAgICAmLnNlcGFyYXRvcixcclxuICAgICAgICAgICAgICAgICAgICAmLnR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzNENTY2ODtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBpLmNsb3NlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMC41ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LCAxNSUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zdWNjZXNzIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2Lm1haW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxZW07XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDYwcHggLSAxMjBweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJlbTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc2VjdGlvbiB7XHJcbiAgICAgICAgICAgICAgICBkaXYudG9vbHRpcC1pbmZvIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogJG1vZGFsLXotaW5kZXggKyAxMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvb2x0aXAtbW9kYWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzNlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMmVtIDNlbSAyZW0gMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogZ3JleTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBwIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBkaXYudG9vbHRpcC1pbmZvLWNsb3NlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBmb3JtLmFwcGx5LWZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5mb3JtLWZpZWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxZW0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMmVtIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpdi5pbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAucmVxdWlyZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubmctaW52YWxpZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubmctdmFsaWQtcmVxdWlyZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRlcnJvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwiZW1haWxcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkbGlnaHQtYmcsIDE1JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5lZW9jIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiKDEyMSwgMTI0LCAxMjYpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYWRhZmIwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5lZW9jLWNoZWNrYm94IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGluaXRpYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnVwbG9hZC1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnZhbGlkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBkaXYudXBsb2FkLWxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDIwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmVycm9yIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zdWNjZXNzIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMzAlKTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYubmctaW52YWxpZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYubmctdmFsaWQtcmVxdWlyZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRlcnJvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwiZW1haWxcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkbGlnaHQtYmcsIDE1JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC41ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIExpbmtlZCBJbiBTa2lsbHMgYW5kIGV4cGVydGlzZTpcclxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICByZXNpemU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIHRoaW4gI0NDQztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuNzVlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzc5N2M3ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvb3RlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvbmUoKSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgc21hbGwtcGhvbmUoKSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuc3VjY2VzcyB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgJltuYW1lPVwiY2FuY2VsXCJdLFxyXG4gICAgICAgICAgICAgICAgJltuYW1lPVwib2tcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY2FuY2VsO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJltuYW1lPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJltuYW1lPVwib2tcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmVycm9yIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICRlcnJvcjtcclxuICAgIG1hcmdpbi1sZWZ0OiAxLjFlbTtcclxuICAgIG1hcmdpbi10b3A6IDAuM2VtO1xyXG5cclxuICAgICYuc3VibWl0LWVycm9yIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hY2NlcHRlZC1mb3JtYXRzIHtcclxuICAgIC5fNzIwa2ItdG9vbHRpcC10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwLjJlbSAwIDAgMS4xZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9hZGluZyB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmxvYWRpbmctZG90IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDVweDtcclxuICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLmxvYWRpbmctZG90Om50aC1jaGlsZCg0biArIDEpIHt9XHJcblxyXG4gICAgLmxvYWRpbmctZG90Om50aC1jaGlsZCg0biArIDIpIHtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XHJcbiAgICB9XHJcblxyXG4gICAgLmxvYWRpbmctZG90Om50aC1jaGlsZCg0biArIDMpIHtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBsb2FkaW5nIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuIiwiYXNpZGUge1xyXG4gICAgei1pbmRleDogMTI1O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDgwJTtcclxuICAgIG1pbi13aWR0aDogODAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogLTgwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJnO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuXHJcbiAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XHJcbiAgICAgICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xyXG4gICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItd2lkdGg7XHJcbiAgICAgICAgbGVmdDogLSRzaWRlYmFyLXdpZHRoO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gaGVhZGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1oZWFkZXItYmc7XHJcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMS41ZW07XHJcblxyXG4gICAgICAgID4gbGFiZWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2LmJ1dHRvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG4gICAgICAgICAgICA+IGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0NSUpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiBzZWN0aW9uIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gI3skaGVhZGVyLWhlaWdodH0pO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDFlbTtcclxuXHJcbiAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMWVtIDAgMmVtO1xyXG5cclxuICAgICAgICAgICAgPiBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM1MDUyNTU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gYnV0dG9uLmNsZWFyLWZpbHRlciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDlweDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBpbnB1dC5zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItaGVhZGVyLWJnICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDIuNWVtO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA3NSUpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6Oi1tcy1jbGVhciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBzZWN0aW9uLmZpbHRlci1zZWN0aW9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzNzBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gLmZpbHRlci1zZWN0aW9uLWhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuXHJcbiAgICAgICAgICAgICAgICA+IGg0IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMzUlKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA+IGJ1dHRvbi5jbGVhci1maWx0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gc3Bhbi5zaG93LW1vcmUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1MCUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5maWx0ZXItaXRlbSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGxpZ2h0ZW4oJGRhcmstYmcsIDUlKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA2NSUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICA+IGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRkYXJrLWJnLCAxNSUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogaW5pdGlhbDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDEzMG1zIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IHNlY3Rpb24uY3JlZGl0cyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRlbTtcclxuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XHJcblxyXG4gICAgICAgICAgICBzcGFuLnBvd2VyZWQtYnkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idWxsaG9ybiB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gYnV0dG9uW25hbWU9XCJiYWNrLWFycm93XCJdIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDZweCAkYmFzZS1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBQYXJlbnQgc2VsZWN0b3JcclxuICAgIC5vdmVydmlldy1vcGVuICYge1xyXG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aC1zbWFsbDtcclxuICAgICAgICBtaW4td2lkdGg6ICRzaWRlYmFyLXdpZHRoLXNtYWxsO1xyXG5cclxuICAgICAgICA+IGhlYWRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IHNlY3Rpb24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gsID4gc2VjdGlvbi5maWx0ZXItc2VjdGlvbiwgPiBzZWN0aW9uLmNyZWRpdHMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cImJhY2stYXJyb3dcIl0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJjbGVhci1hbGxcIl0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkZGFyay1iZywgMyUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= */
