/* media queries */
.screen-readers-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

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

/* nav style */
.nav-stacked > li {
  border-top: 1px solid #808080 !important;
  padding: 0 !important;
  line-height: 1.2;
}

.nav-stacked > li:last-child {
  border-bottom: 1px solid #808080 !important;
}

.nav-stacked > li > a {
  padding: 7px 0 !important;
  font-weight: normal !important;
  display: block;
}

.nav-stacked > li.active > a {
  font-weight: bold !important;
}

.nav-stacked > li > .list-group {
  border: 1px solid red;
  font-size: 11px;
  display: none;
}

.nav-stacked .nav-stacked li {
  border-color: transparent !important;
}

body {
  font-size: 14px;
  font-family: "Open Sans", sans-serif;
  line-height: 1.5;
}

/* link style */
a {
  color: #00618e;
}

hr {
  border-color: #808080;
}

/* heading style */
h1 {
  font-family: "Roboto Slab", serif;
  font-weight: 700;
  font-size: 24px !important;
  margin-bottom: 1rem !important;
  line-height: 1.2;
}

h1.page-title {
  font-size: 36px !important;
  margin-top: 0;
  margin-bottom: 2rem !important;
}

/* description */
#s-lg-guide-desc-container {
  padding-bottom: 16px;
}

h2, h3, h4, h5, h6,
.h2, .h3, .h4, .h5, .h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: 700 !important;
  line-height: 1.2;
  color: #000;
  margin: 0 0 14px;
}

a h2, a h3, a h4, a h5, a h6, a
.h2, a .h3, a .h4, a .h5, a .h6 {
  color: inherit !important;
}

h2, .h2 {
  font-size: 21px;
}

h3, .h3 {
  font-size: 20px;
  margin: 0 0 10px;
}

h4, .h4 {
  font-size: 14px;
  margin: 0 0 7px;
}

h5, .h5 {
  font-size: 14px;
  margin: 0 0 7px;
}

h6, .h6 {
  font-size: 14px;
  margin: 0 0 7px;
}

/* mark style */
mark,
.marker {
  background: #ff0;
  color: #000;
}

/* blockquote */
blockquote {
  font-size: 14px;
}

/* special container */
.special-container {
  margin: 0 0 20px;
}

.btn {
  border-radius: 0 !important;
}

.btn-info,
.btn-primary {
  color: #fff;
  background-color: #00618e !important;
  border-color: #00618e;
  background-image: none;
}

.btn-info:hover, .btn-info:focus,
.btn-primary:hover,
.btn-primary:focus {
  background-color: #00618e;
  border-color: #00618e;
}

.btn-link {
  color: #00618e;
}

/* nested list */
.s-lg-link-list-5 ul {
  list-style-type: disc;
}

.s-lg-link-list-5 ul li {
  list-style-position: inside;
}

.s-lg-link-list-5 ul.dropdown-menu li {
  list-style-position: outside;
}

/* box style h2 and etc */
.s-lib-box {
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.s-lib-box .s-lib-box-title {
  background-color: transparent;
  border-bottom: none;
  border-radius: 0;
  font-family: "Roboto Slab", serif;
  font-size: 20px;
  padding: 0 0 5px;
  margin-bottom: 18px;
  text-transform: uppercase;
  border-bottom: 1px solid #808080;
}

.s-lib-box.s-lib-box-std {
  border: 0;
}

.s-lib-box-content {
  padding: 0;
}

/* ask a lib box */
.ask-a-librarian-box {
  background-color: #f5fcff;
  border: 1px solid #bfbfbf;
  padding: 10px;
}

.ask-a-librarian-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 10px;
  color: #000;
}

.ask-a-librarian-logo-wrapper {
  text-align: center;
  padding: 6px 0 12px;
}

/* authorship box */
.authorship-box {
  background-color: #f5fcff;
  border: 1px solid #bfbfbf;
  padding: 10px;
}

.authorship-box > h3 {
  font-size: 14px;
  margin: 18px 0 2px;
}

.authorship-box > ul {
  list-style: none;
  padding: 0;
}

.authorship-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 10px;
  color: #000;
}

#s-lib-footer-public {
  background-color: #fff;
  position: relative;
}

#s-lib-footer-public #s-lg-guide-header-attributes {
  display: none;
}

#s-lib-footer-public #s-lg-guide-header-meta {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  text-align: center;
  position: absolute;
  height: 30px;
  right: 0;
  bottom: -45px;
  z-index: 5;
}

#s-lib-footer-public #s-lg-guide-header-meta #s-lib-footer-login-link {
  float: none !important;
}

@media (min-width: 50.625em) {
  #s-lib-footer-public #s-lg-guide-header-meta {
    width: auto;
  }
}

#s-lib-footer-public #s-lib-footer-brand,
#s-lib-footer-public #s-lib-footer-rights {
  display: none;
}

#s-lg-guide-header-subjects .s-lg-small.bold,
#s-lg-guide-header-tags .s-lg-small.bold {
  font-weight: normal;
  font-size: 14px;
}

.loc-libguides-subject-container {
  border-top: 1px solid #808080;
  padding-top: 20px;
  padding-bottom: 20px;
}

#s-lib-footer-login-link {
  padding: 0;
  display: block;
}

#s-lib-footer-login-link a {
  color: #00618e;
  font-weight: bold;
}

.loc-libguides-footer-wrapper {
  background-color: #EFEFEF;
  position: relative;
  padding-bottom: 32px;
}

.loc-libguides-footer-wrapper:before, .loc-libguides-footer-wrapper:after {
  content: '';
  position: absolute;
  width: 15px;
  height: 100%;
  background-color: #EFEFEF;
  top: 0;
  left: -15px;
}

.loc-libguides-footer-wrapper:after {
  left: auto;
  right: -15px;
}

.loc-libguides-footer-container {
  background-color: #EFEFEF;
  padding-top: 50px;
  padding-bottom: 20px;
  font-size: 13px;
  color: #666;
}

@media (min-width: 50.625em) {
  .loc-libguides-footer-container {
    padding-top: 20px;
  }
}

@media (min-width: 50.625em) {
  .loc-libguides-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.loc-libguides-footer-left,
.loc-libguides-footer-right {
  text-align: center;
}

@media (min-width: 50.625em) {
  .loc-libguides-footer-left,
  .loc-libguides-footer-right {
    text-align: left;
    width: 150px;
  }
}

.loc-libguides-footer-center {
  text-align: center;
}

@media (min-width: 50.625em) {
  .loc-libguides-footer-center {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.loc-libguides-footer-center > a {
  display: inline-block;
  line-height: 1;
}

.loc-libguides-footer-center > a:not(:first-child) {
  padding-left: 10px;
  padding-right: 10px;
  margin-left: 0;
}

@media (min-width: 50.625em) {
  .loc-libguides-footer-center > a:not(:first-child) {
    padding-right: 0;
    padding-left: 20px;
    margin-left: 20px;
    border-left: 1px solid #808080;
  }
}

/* breadcrumb */
.breadcrumb {
  margin-bottom: 30px !important;
  font-weight: normal !important;
}

/* search */
.loc-lib-header-search {
  float: none !important;
  padding: 0 0 5px;
}

@media (min-width: 62em) {
  .loc-lib-header-search {
    padding: 0;
    height: 0;
  }
}

.loc-lib-header-search #s-lg-guide-search-box {
  margin: 0;
}

@media (min-width: 62em) {
  .loc-lib-header-search #s-lg-guide-search-box {
    float: right;
    margin-top: -70px;
  }
}

/* header */
.loc-header-wrapper {
  border-top: 4px solid #FC4C02;
  margin: 0 -15px 15px;
}

.loc-header {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  padding: 20px 15px 0;
  margin: 0 auto;
}

@media (min-width: 48em) {
  .loc-header {
    padding: 20px 9px 0;
    max-width: 768px;
  }
}

@media (min-width: 62em) {
  .loc-header {
    padding: 20px 11px 0;
    max-width: 992px;
  }
}

@media (min-width: 75em) {
  .loc-header {
    padding: 20px 15px 0;
    max-width: 1200px;
  }
}

.loc-header > .logo-loc- {
  clear: both;
}

.loc-header > .logo-loc- > a {
  display: block;
  padding: 0;
  float: left;
}

.loc-header > .logo-loc- > a > span {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.loc-header > .logo-loc- > a > svg {
  float: left;
  max-width: 100%;
}

@media (max-width: 33.5em) {
  .loc-header > .logo-loc- > a > svg {
    width: 100%;
    height: auto;
  }
}

.logo-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.logo-loc > span,
.logo-research-guides > span {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.logo-loc > img,
.logo-research-guides > img {
  max-width: 100%;
  height: auto;
}

.logo-research-guides {
  margin-left: 20px;
  padding-left: 20px;
  border-left: 1px solid #606060;
}

.logo-research-guides > img {
  top: 50%;
  margin-top: -10px;
  position: relative;
}

@media (max-width: 29.99em) {
  .logo-research-guides {
    margin-left: 10px;
    padding-left: 10px;
  }
}

/* image alignment */
.image-align-left {
  margin: 0 auto 20px;
  height: auto;
  display: block;
}

@media (min-width: 30em) {
  .image-align-left {
    width: 50%;
    float: left;
    margin: 0 14px 14px 0;
  }
}

@media (min-width: 40.625em) {
  .image-align-left {
    width: 30%;
  }
}

.image-align-right {
  margin: 0 auto 20px;
  height: auto;
  display: block;
}

@media (min-width: 30em) {
  .image-align-right {
    width: 50%;
    float: right;
    margin: 0 0 14px 14px;
  }
}

@media (min-width: 40.625em) {
  .image-align-right {
    width: 30%;
  }
}

.image-align-center {
  margin: 0 auto 20px;
  height: auto;
  display: block;
}

/* figure alignment */
/* testing */
.figure {
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
  margin: 0 auto 25px;
  font-size: 12px;
  text-align: center;
  /* IE fallback */
}

.figure img {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
}

@media (min-width: 30em) {
  .figure img {
    max-width: 75vw;
  }
}

@media (min-width: 40.625em) {
  .figure img {
    max-width: 564px;
  }
}

.figure figcaption {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.4;
  color: #333;
  text-align: left;
  /* IE fallback */
}

.figure figcaption a {
  color: #00618e;
}

@media (min-width: 30em) {
  .figure.align-left, .figure.align-right {
    width: 270px;
    float: left;
    margin: 0 14px 14px 0;
  }
  .figure.align-left img, .figure.align-right img {
    max-width: 100%;
  }
}

@media (min-width: 40.625em) {
  .figure.align-left, .figure.align-right {
    width: 400px;
  }
}

@media (min-width: 30em) {
  .figure.align-right {
    float: right;
    margin: 0 0 14px 14px;
  }
}

figure {
  margin: 0 auto 25px;
}

figcaption {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.4;
  color: #333;
  text-align: left;
  /* IE fallback */
}

figcaption a {
  color: #00618e;
}

.slick-slider {
  background-color: #EFEFEF;
  margin: 0 !important;
  padding: 10px 40px;
}

.slick-prev {
  left: 13px !important;
  height: 50px !important;
}

.slick-prev::before {
  content: "\f104" !important;
  font-family: "fontAwesome" !important;
  font-size: 48px !important;
}

.slick-next {
  right: 13px !important;
  height: 50px !important;
}

.slick-next::before {
  content: "\f105" !important;
  font-family: "fontAwesome" !important;
  font-size: 48px !important;
}

.slick-slide {
  padding: 12px !important;
}

.slick-slide > a {
  padding: 0px !important;
  background: #333 !important;
  display: block;
}

.slick-slide > a img {
  margin: auto !important;
}

.s-lib-cpane-caption {
  padding: 10px 0 0 !important;
}

.s-lib-cpane-caption h3 {
  font-size: 13px !important;
  font-weight: normal !important;
}

.s-lib-cpane-caption h3 a {
  color: #000 !important;
}

.s-lib-cpane-caption p {
  display: none;
}

.s-lib-jqtabs {
  border-radius: initial;
  border-color: #bfbfbf;
  padding: 0;
  font-family: "Open Sans", sans-serif !important;
  font-size: 14px;
}

.s-lib-jqtabs .ui-widget-header {
  background-image: none;
  background-color: #f6f6f6;
  border-radius: initial;
  border-color: #bfbfbf;
  border-top: none;
  border-left: none;
  border-right: none;
}

.s-lib-jqtabs .ui-tabs-nav {
  padding: 9px 16px 0;
}

.s-lib-jqtabs li.ui-tabs-tab {
  background-image: none;
  background-color: #efefef;
  border-color: #bfbfbf;
  border-bottom: 1px solid #bfbfbf !important;
  margin: 0 .2em 1px 0;
  margin: -1px -1px 0 0;
}

.s-lib-jqtabs li.ui-tabs-tab.ui-tabs-active {
  background-color: #ffffff;
  border-bottom-color: #fff !important;
}

.lib-scroll-top {
  font-size: 12px !important;
  bottom: 10px !important;
  right: 10px !important;
  z-index: 2;
}

.lib-scroll-top a {
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: none;
  background-color: #0078ae;
  background-color: rgba(0, 120, 174, 0.85);
  padding: 0 12px 0 10px;
}

.lib-scroll-top a span {
  display: inline-block;
  height: 40px;
  line-height: 40px;
}

/* top level page */
.navbar {
  border-radius: 0;
}

.navbar-default {
  background-color: #f5f5f5;
  border-color: #bfbfbf;
}

.top-level-page-header#s-lib-public-header {
  padding: 0;
}

.pad-bottom-md {
  padding-bottom: 14px;
}

.top-level-pages .panel-group .panel {
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-color: #bfbfbf;
}

.top-level-pages .panel-group .panel .panel-heading > a {
  color: #333;
  position: relative;
  display: block;
  font-size: 16px;
}

.top-level-pages .panel-group .panel .panel-heading > a:focus {
  outline: none;
}

.top-level-pages .panel-group .panel .panel-heading > a::before {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0fe";
  color: #00618e;
  position: absolute;
  top: 0;
  left: 0;
}

.top-level-pages .panel-group .panel .panel-heading > a[aria-expanded="true"]::before {
  content: "\f146";
}

.top-level-pages .panel-group .panel .panel-heading > a.collapsed::before {
  content: "\f0fe";
}

.top-level-pages .panel-group .panel .panel-heading > a .bold {
  padding-left: 24px;
  line-height: 22px;
  height: 22px;
}

.top-level-pages .panel-group .panel .panel-heading > a .badge {
  margin-top: 2px;
}

.alert {
  border-radius: 0;
  padding: 10px 15px;
}

.alert-info {
  color: #333;
  background-color: #f5f5f5;
  border-color: #bfbfbf;
}

.s-lib-public-side-header h2 {
  color: #000;
  font-size: 18px;
  border: none;
}

.s-lib-public-side-header .pad-bottom-sm {
  padding-bottom: 0;
}

.s-lib-public-side-header + .txt.pad-top-sm {
  margin-bottom: 14px;
}

.nav-pills > li.active > button,
.nav-pills > li.active > button:focus,
.nav-pills > li.active > button:hover,
.nav-pills > li.active > a,
.nav-pills > li.active > a:focus,
.nav-pills > li.active > a:hover {
  background-color: #00618e;
  color: #fff;
  border-radius: 0 !important;
}

.nav .s-lg-index-nav-btn > button {
  color: #00618e;
}

#s-lg-hp-nav {
  border-radius: 0 !important;
}

#s-lg-hp-nav > ul,
#s-lg-hp-nav > ul > li,
#s-lg-hp-nav > ul > li .nav-pills .btn {
  border-radius: 0 !important;
}

#s-lg-guide-list-controls {
  overflow: hidden;
  margin-bottom: 20px;
}

#s-lg-index-list {
  margin-bottom: 25px;
}

.s-lib-box-er-course-list,
.s-lib-box-idx-blog-post-list,
.s-lib-box-idx-er-course-list,
.s-lib-box-idx-guide-list {
  margin-bottom: -1px;
  border-color: #bfbfbf;
}

.top-level-pages .s-lib-box-content {
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media (min-width: 40.625em) {
  .top-level-pages .s-lib-box-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.top-level-pages .s-lib-box-content .s-lg-gmeta {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-size: 13px;
}

.top-level-pages .s-lib-box-content .s-lg-gmeta .s-lib-color-lt-grey i {
  display: none;
}

@media (min-width: 40.625em) {
  .top-level-pages .s-lib-box-content .s-lg-gmeta .s-lib-color-lt-grey {
    text-align: right;
  }
}

.top-level-pages .s-lib-box-content .s-lg-gmeta .hitst {
  width: 75px;
  display: inline-block;
}

@media (min-width: 40.625em) {
  .top-level-pages .s-lib-box-content .s-lg-gmeta .hitst {
    text-align: right;
  }
}

.top-level-pages .s-lib-box-content .s-lg-gtitle {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.top-level-pages .s-lib-box-content .s-lg-gtitle .btn {
  padding: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZ3VpZGUuY3NzIiwic291cmNlcyI6WyJsaWJndWlkZS5zY3NzIiwiX21xLnNjc3MiLCJfbXEtbGliZ3VpZGUuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyIsIl9uYXYuc2NzcyIsIl9tYWluLnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJfZmlndXJlLnNjc3MiLCJfc2xpY2stc2xpZGVyLnNjc3MiLCJfdGFicy5zY3NzIiwiX2JhY2stdG8tdG9wLnNjc3MiLCJfdG9wLWxldmVsLXBhZ2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBtZWRpYSBxdWVyaWVzICovXG5AaW1wb3J0ICdtcSc7XG5AaW1wb3J0ICdtcS1saWJndWlkZSc7XG5cbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG5AaW1wb3J0ICduYXYnO1xuQGltcG9ydCAnbWFpbic7XG5AaW1wb3J0ICdmb290ZXInO1xuQGltcG9ydCAnaGVhZGVyJztcblxuQGltcG9ydCAnZmlndXJlJztcbkBpbXBvcnQgJ3NsaWNrLXNsaWRlcic7XG5AaW1wb3J0ICd0YWJzJztcbkBpbXBvcnQgJ2JhY2stdG8tdG9wJztcbkBpbXBvcnQgJ3RvcC1sZXZlbC1wYWdlJztcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxuXG4vLy8gQmFzZSBmb250IHNpemUgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcbi8vLyBAdHlwZSBOdW1iZXIgKHVuaXQpXG4kbXEtYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vLyBSZXNwb25zaXZlIG1vZGVcbi8vL1xuLy8vIFNldCB0byBgZmFsc2VgIHRvIGVuYWJsZSBzdXBwb3J0IGZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IEBtZWRpYSBxdWVyaWVzLFxuLy8vIChJRSA8PSA4LCBGaXJlZm94IDw9IDMsIE9wZXJhIDw9IDkpXG4vLy9cbi8vLyBZb3UgY291bGQgY3JlYXRlIGEgc3R5bGVzaGVldCBzZXJ2ZWQgZXhjbHVzaXZlbHkgdG8gb2xkZXIgYnJvd3NlcnMsXG4vLy8gd2hlcmUgQG1lZGlhIHF1ZXJpZXMgYXJlIHJhc3Rlcml6ZWRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gb2xkLWllLnNjc3Ncbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb2ZmIERpc2FibGVkIHJlc3BvbnNpdmUgbW9kZSBkb2N1bWVudGF0aW9uXG4kbXEtcmVzcG9uc2l2ZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgbGlzdFxuLy8vXG4vLy8gTmFtZSB5b3VyIGJyZWFrcG9pbnRzIGluIGEgd2F5IHRoYXQgY3JlYXRlcyBhIHViaXF1aXRvdXMgbGFuZ3VhZ2Vcbi8vLyBhY3Jvc3MgdGVhbSBtZW1iZXJzLiBJdCB3aWxsIGltcHJvdmUgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXG4vLy8gc3Rha2Vob2xkZXJzLCBkZXNpZ25lcnMsIGRldmVsb3BlcnMsIGFuZCB0ZXN0ZXJzLlxuLy8vXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtYnJlYWtwb2ludHM6IChcbiAgICBtb2JpbGU6ICAzMjBweCxcbiAgICB0YWJsZXQ6ICA3NDBweCxcbiAgICBkZXNrdG9wOiA5ODBweCxcbiAgICB3aWRlOiAgICAxMzAwcHhcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXdpZHRoIGxheW91dHMpXG4vLy9cbi8vLyBEZWZpbmUgdGhlIGJyZWFrcG9pbnQgZnJvbSAkbXEtYnJlYWtwb2ludHMgdGhhdCBzaG91bGRcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgd2lkdGggZm9yIHRoZSBmaXhlZC13aWR0aCBsYXlvdXRcbi8vLyAoaS5lLiB3aGVuICRtcS1yZXNwb25zaXZlIGlzIHNldCB0byAnZmFsc2UnKSBpbiBhIG9sZC1pZS5zY3NzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIHRhYmxldC1vbmx5LnNjc3Ncbi8vLyAgLy9cbi8vLyAgLy8gSWdub3JlIGFsbCBzdHlsZXMgYWJvdmUgdGFibGV0IGJyZWFrcG9pbnQsXG4vLy8gIC8vIGFuZCBmaXggdGhlIHN0eWxlcyAoZS5nLiBsYXlvdXQpIGF0IHRhYmxldCB3aWR0aFxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byB0YWJsZXRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2FkZGluZy1jdXN0b20tYnJlYWtwb2ludHMgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xuXG4vLy8gU2hvdyBicmVha3BvaW50cyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vXG4vLy8gSWYgeW91IHdhbnQgdG8gZGlzcGxheSB0aGUgY3VycmVudGx5IGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3Bcbi8vLyByaWdodCBjb3JuZXIgb2YgeW91ciBzaXRlIGR1cmluZyBkZXZlbG9wbWVudCwgYWRkIHRoZSBicmVha3BvaW50c1xuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxuLy8vXG4vLy8gQHR5cGUgbWFwXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGUuZy4gYEBtZWRpYSBzY3JlZW5gIG9yIGBAbWVkaWEgcHJpbnRgKVxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIOKApmApXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2NoYW5naW5nLW1lZGlhLXR5cGUgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLW1lZGlhLXR5cGU6IGFsbCAhZGVmYXVsdDtcblxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRweCAtIHZhbHVlIHRvIGNvbnZlcnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UtZm9udC1zaXplICgkbXEtYmFzZS1mb250LXNpemUpIC0gYDxib2R5PmAgZm9udCBzaXplXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICRmb250LXNpemUtaW4tZW1zOiBtcS1weDJlbSgxNnB4KTtcbi8vLyAgcCB7IGZvbnQtc2l6ZTogbXEtcHgyZW0oMTZweCk7IH1cbi8vL1xuLy8vIEByZXF1aXJlcyAkbXEtYmFzZS1mb250LXNpemVcbi8vLyBAcmV0dXJucyB7TnVtYmVyfVxuQGZ1bmN0aW9uIG1xLXB4MmVtKCRweCwgJGJhc2UtZm9udC1zaXplOiAkbXEtYmFzZS1mb250LXNpemUpIHtcbiAgICBAaWYgdW5pdGxlc3MoJHB4KSB7XG4gICAgICAgIEB3YXJuIFwiQXNzdW1pbmcgI3skcHh9IHRvIGJlIGluIHBpeGVscywgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGl0IGludG8gcGl4ZWxzLlwiO1xuICAgICAgICBAcmV0dXJuIG1xLXB4MmVtKCRweCAqIDFweCwgJGJhc2UtZm9udC1zaXplKTtcbiAgICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XG4gICAgICAgIEByZXR1cm4gJHB4O1xuICAgIH1cbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZS1mb250LXNpemUpICogMWVtO1xufVxuXG4vLy8gR2V0IGEgYnJlYWtwb2ludCdzIHdpZHRoXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50LiBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICR0YWJsZXQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKHRhYmxldCk7XG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aChkZXNrdG9wKSkge31cbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVmFsdWUgaW4gcGl4ZWxzXG5AZnVuY3Rpb24gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJG5hbWUsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG5hbWUpIHtcbiAgICAgICAgQHJldHVybiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAd2FybiBcIkJyZWFrcG9pbnQgI3skbmFtZX0gd2Fzbid0IGZvdW5kIGluICRicmVha3BvaW50cy5cIjtcbiAgICB9XG59XG5cbi8vLyBNZWRpYSBRdWVyeSBtaXhpblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkZnJvbSAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJHVudGlsIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkYW5kIChmYWxzZSkgLSBBZGRpdGlvbmFsIG1lZGlhIHF1ZXJ5IHBhcmFtZXRlcnNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLXR5cGUgKCRtcS1tZWRpYS10eXBlKSAtIE1lZGlhIHR5cGU6IHNjcmVlbiwgcHJpbnTigKZcbi8vL1xuLy8vIEBpZ25vcmUgVW5kb2N1bWVudGVkIEFQSSwgZm9yIGFkdmFuY2VkIHVzZSBvbmx5OlxuLy8vIEBpZ25vcmUgQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKVxuLy8vIEBpZ25vcmUgQHBhcmFtIHtTdHJpbmd9ICRzdGF0aWMtYnJlYWtwb2ludCAoJG1xLXN0YXRpYy1icmVha3BvaW50KVxuLy8vXG4vLy8gQGNvbnRlbnQgc3R5bGluZyBydWxlcywgd3JhcHBlZCBpbnRvIGEgQG1lZGlhIHF1ZXJ5IHdoZW4gJHJlc3BvbnNpdmUgaXMgdHJ1ZVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLW1lZGlhLXR5cGVcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1weDJlbVxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLWdldC1icmVha3BvaW50LXdpZHRoXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vbi1kZWZhdWx0IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLmVsZW1lbnQge1xuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGUpIHtcbi8vLyAgICAgIGNvbG9yOiByZWQ7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogYmx1ZTtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEobW9iaWxlLCB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBncmVlbjtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJGFuZDogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScpIHtcbi8vLyAgICAgIGNvbG9yOiB0ZWFsO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSg5NTBweCkge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKHRhYmxldCwgJG1lZGlhLXR5cGU6IHNjcmVlbikge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIC8vIEFkdmFuY2VkIHVzZTpcbi8vLyAgICAkbXktYnJlYWtwb2ludHM6IChMOiA5MDBweCwgWEw6IDEyMDBweCk7XG4vLy8gICAgQGluY2x1ZGUgbXEoTCwgJGJyZWFrcG9pbnRzOiAkbXktYnJlYWtwb2ludHMsICRzdGF0aWMtYnJlYWtwb2ludDogTCkge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICB9XG5AbWl4aW4gbXEoXG4gICAgJGZyb206IGZhbHNlLFxuICAgICR1bnRpbDogZmFsc2UsXG4gICAgJGFuZDogZmFsc2UsXG4gICAgJG1lZGlhLXR5cGU6ICRtcS1tZWRpYS10eXBlLFxuICAgICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzLFxuICAgICRyZXNwb25zaXZlOiAkbXEtcmVzcG9uc2l2ZSxcbiAgICAkc3RhdGljLWJyZWFrcG9pbnQ6ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuKSB7XG4gICAgJG1pbi13aWR0aDogMDtcbiAgICAkbWF4LXdpZHRoOiAwO1xuICAgICRtZWRpYS1xdWVyeTogJyc7XG5cbiAgICAvLyBGcm9tOiB0aGlzIGJyZWFrcG9pbnQgKGluY2x1c2l2ZSlcbiAgICBAaWYgJGZyb20ge1xuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6IG1xLXB4MmVtKCRmcm9tKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbnRpbDogdGhhdCBicmVha3BvaW50IChleGNsdXNpdmUpXG4gICAgQGlmICR1bnRpbCB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKCR1bnRpbCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpKSAtIC4wMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGRpc2FibGVkLCByYXN0ZXJpemUgdGhlIG91dHB1dCBvdXRzaWRlIEBtZWRpYSBibG9ja3NcbiAgICAvLyBUaGUgYnJvd3NlciB3aWxsIHJlbHkgb24gdGhlIGNhc2NhZGUgaXRzZWxmLlxuICAgIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XG4gICAgICAgICRzdGF0aWMtYnJlYWtwb2ludC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHN0YXRpYy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAkdGFyZ2V0LXdpZHRoOiBtcS1weDJlbSgkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGgpO1xuXG4gICAgICAgIC8vIE91dHB1dCBvbmx5IHJ1bGVzIHRoYXQgc3RhcnQgYXQgb3Igc3BhbiBvdXIgdGFyZ2V0IHdpZHRoXG4gICAgICAgIEBpZiAoXG4gICAgICAgICAgICAkYW5kID09IGZhbHNlXG4gICAgICAgICAgICBhbmQgJG1pbi13aWR0aCA8PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICBhbmQgKFxuICAgICAgICAgICAgICAgICR1bnRpbCA9PSBmYWxzZSBvciAkbWF4LXdpZHRoID49ICR0YXJnZXQtd2lkdGhcbiAgICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBlbmFibGVkLCBvdXRwdXQgcnVsZXMgaW5zaWRlIEBtZWRpYSBxdWVyaWVzXG4gICAgQGVsc2Uge1xuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRtYXgtd2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1heC13aWR0aDogI3skbWF4LXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkYW5kICAgICAgICAgICAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kICN7JGFuZH0nOyB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gICAgICAgIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xuICAgICAgICAgICAgJG1lZGlhLXF1ZXJ5OiBzdHItc2xpY2UodW5xdW90ZSgkbWVkaWEtcXVlcnkpLCA2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS10eXBlICsgJG1lZGlhLXF1ZXJ5fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIEFkZCBhIGJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIGJyZWFrcG9pbnRcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICBAaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludCh0dnNjcmVlbiwgMTkyMHB4KTtcbi8vLyAgQGluY2x1ZGUgbXEodHZzY3JlZW4pIHt9XG5AbWl4aW4gbXEtYWRkLWJyZWFrcG9pbnQoJG5hbWUsICR3aWR0aCkge1xuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkd2lkdGgpO1xuICAgICRtcS1icmVha3BvaW50czogbWFwLW1lcmdlKCRtcS1icmVha3BvaW50cywgJG5ldy1icmVha3BvaW50KSAhZ2xvYmFsO1xufVxuXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyAoJG1xLXNob3ctYnJlYWtwb2ludHMpIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKSAtIEJyZWFrcG9pbnQgbmFtZXMgYW5kIHNpemVzXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc2hvdy1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGdsb2JhbCBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xuLy8vXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgY3VzdG9tIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xuQG1peGluIG1xLXNob3ctYnJlYWtwb2ludHMoJHNob3ctYnJlYWtwb2ludHM6ICRtcS1zaG93LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIGJvZHk6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XG4gICAgICAgIGZvbnQ6IHNtYWxsLWNhcHRpb247XG4gICAgICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXG4gICAgICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xuICAgICAgICAgICAgJHdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcbiAgICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xufSIsIiRsaWJndWlkZS1zY3JlZW4teHM6IDMyMHB4O1xuJGxpYmd1aWRlLXNjcmVlbi1zbTogNDgwcHg7XG4kbGliZ3VpZGUtc2NyZWVuLW1kOiA2NTBweDtcbiRsaWJndWlkZS1zY3JlZW4tbWw6IDc3MHB4O1xuJGxpYmd1aWRlLXNjcmVlbi1sZzogODEwcHg7XG4kbGliZ3VpZGUtc2NyZWVuLXhsOiA5ODBweDtcbiRsaWJndWlkZS1zY3JlZW4teHhsOiAxMjAwcHg7XG5cbiRtcS1icmVha3BvaW50czogKFxuICAgIHNjcmVlbi14czogJGxpYmd1aWRlLXNjcmVlbi14cyxcbiAgICBzY3JlZW4tc206ICRsaWJndWlkZS1zY3JlZW4tc20sXG4gICAgc2NyZWVuLW1kOiAkbGliZ3VpZGUtc2NyZWVuLW1kLFxuICAgIHNjcmVlbi1tbDogJGxpYmd1aWRlLXNjcmVlbi1tbCxcbiAgICBzY3JlZW4tbGc6ICRsaWJndWlkZS1zY3JlZW4tbGcsXG4gICAgc2NyZWVuLXhsOiAkbGliZ3VpZGUtc2NyZWVuLXhsLFxuICAgIHNjcmVlbi14eGw6ICRsaWJndWlkZS1zY3JlZW4teHhsXG4pIiwiJGZvbnQtc2VyaWY6ICAgICAgICAgICAgJ1JvYm90byBTbGFiJywgc2VyaWY7XG4kZm9udC1zYW5zLXNlcmlmOiAgICAgICAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcblxuJGxvYy1wcmltYXJ5LW9yYW5nZTogICAgI0ZDNEMwMjtcbiRsb2MtcHJpbWFyeTogICAgICAgICAgICMwMDYxOGU7XG4kbG9jLXByaW1hcnktbGlnaHRlc3Q6ICAjZjVmY2ZmO1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgI2JmYmZiZjtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICM4MDgwODA7XG4kZ3JheS1kYXJrZXN0OiAgICAgICAgICAjMzMzO1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgI0VGRUZFRjtcbiIsIi8vIHNjcmVlbiByZWFkZXJzIG9ubHlcbkBtaXhpbiBzY3JlZW4tcmVhZGVycy1vbmx5KCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICBib3JkZXI6IDA7XG59XG5AbWl4aW4gc2NyZWVuLXJlYWRlcnMtb25seS1yZXZlcnNlZCgpIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbn1cbkBtaXhpbiBzY3JlZW4tcmVhZGVycy1vbmx5LWZvY3VzYWJsZSgpIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgc2NyZWVuLXJlYWRlcnMtb25seS1yZXZlcnNlZFxuICAgIH1cbn1cbi5zY3JlZW4tcmVhZGVycy1vbmx5IHtcbiAgICBAaW5jbHVkZSBzY3JlZW4tcmVhZGVycy1vbmx5O1xufVxuXG4vLyBjbGVhcmZpeFxuLmdyb3VwOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xufVxuIiwiLyogbmF2IHN0eWxlICovXG4ubmF2LXN0YWNrZWQge1xuICAgID4gbGkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktZGFya2VyICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1kYXJrZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICA+IGEge1xuICAgICAgICAgICAgcGFkZGluZzogN3B4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgID4gLmxpc3QtZ3JvdXAge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubmF2LXN0YWNrZWQge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkZm9udC1zaXplLWgxOiAgICAgICAgICAgICAgMzZweDtcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgICAyMXB4O1xuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICAgIDIwcHg7XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgICAgMTRweDtcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWg0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICAgICRmb250LXNpemUtaDQ7XG5cbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICA3MDA7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgMS4yO1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICMwMDA7XG5cbmJvZHkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Fucy1zZXJpZjtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuLyogbGluayBzdHlsZSAqL1xuYSB7XG4gICAgY29sb3I6ICRsb2MtcHJpbWFyeTtcbn1cbmhyIHtcbiAgICBib3JkZXItY29sb3I6ICRncmF5LWRhcmtlcjtcbn1cbi8qIGhlYWRpbmcgc3R5bGUgKi9cbmgxIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgICBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAmLnBhZ2UtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDM2cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi8qIGRlc2NyaXB0aW9uICovXG4jcy1sZy1ndWlkZS1kZXNjLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG59XG5cbmgyLCBoMywgaDQsIGg1LCBoNixcbi5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgIG1hcmdpbjogMCAwIDE0cHg7XG4gICAgYSAmIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB9XG59XG5oMiwgLmgyIHtmb250LXNpemU6ICRmb250LXNpemUtaDI7fVxuaDMsIC5oMyB7Zm9udC1zaXplOiAkZm9udC1zaXplLWgzO21hcmdpbjogMCAwIDEwcHg7fVxuaDQsIC5oNCB7Zm9udC1zaXplOiAkZm9udC1zaXplLWg0O21hcmdpbjogMCAwIDdweDt9XG5oNSwgLmg1IHtmb250LXNpemU6ICRmb250LXNpemUtaDU7bWFyZ2luOiAwIDAgN3B4O31cbmg2LCAuaDYge2ZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjttYXJnaW46IDAgMCA3cHg7fVxuLyogbWFyayBzdHlsZSAqL1xubWFyayxcbi5tYXJrZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZjA7XG4gICAgY29sb3I6ICMwMDA7XG59XG4vKiBibG9ja3F1b3RlICovXG5ibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG4vKiBzcGVjaWFsIGNvbnRhaW5lciAqL1xuLnNwZWNpYWwtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xufVxuLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLmJ0bi1pbmZvLFxuLmJ0bi1wcmltYXJ5IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9jLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRsb2MtcHJpbWFyeTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2MtcHJpbWFyeTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbG9jLXByaW1hcnk7XG4gICAgfVxufVxuLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJGxvYy1wcmltYXJ5O1xufVxuLyogbmVzdGVkIGxpc3QgKi9cbi5zLWxnLWxpbmstbGlzdC01IHtcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICAgICAgICB9XG4gICAgICAgICYuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8qIGJveCBzdHlsZSBoMiBhbmQgZXRjICovXG4ucy1saWItYm94IHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG4ucy1saWItYm94IC5zLWxpYi1ib3gtdGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIHBhZGRpbmc6IDAgMCA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1kYXJrZXI7XG59XG4ucy1saWItYm94LnMtbGliLWJveC1zdGQge1xuICAgIGJvcmRlcjogMDtcbn1cbi5zLWxpYi1ib3gtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbn1cbi8qIGFzayBhIGxpYiBib3ggKi9cbi5hc2stYS1saWJyYXJpYW4tYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9jLXByaW1hcnktbGlnaHRlc3Q7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbi5hc2stYS1saWJyYXJpYW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgY29sb3I6ICMwMDA7XG59XG4uYXNrLWEtbGlicmFyaWFuLWxvZ28td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDZweCAwIDEycHg7XG59XG4vKiBhdXRob3JzaGlwIGJveCAqL1xuLmF1dGhvcnNoaXAtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9jLXByaW1hcnktbGlnaHRlc3Q7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICA+IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW46IDE4cHggMCAycHg7XG4gICAgfVxuICAgID4gdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cbi5hdXRob3JzaGlwLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIGNvbG9yOiAjMDAwO1xufVxuIiwiLy8gaGlkZSBmb290ZXIge1xuI3MtbGliLWZvb3Rlci1wdWJsaWMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIGhpZGUgbWlzYyBsaW5rc1xuICAgICNzLWxnLWd1aWRlLWhlYWRlci1hdHRyaWJ1dGVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI3MtbGctZ3VpZGUtaGVhZGVyLW1ldGEge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogLTQ1cHg7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICNzLWxpYi1mb290ZXItbG9naW4tbGluayB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGZvciB0b3AgbGV2ZWwgcGFnZXNcbiAgICAjcy1saWItZm9vdGVyLWJyYW5kLFxuICAgICNzLWxpYi1mb290ZXItcmlnaHRzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4vLyBzdWJqZWN0XG4jcy1sZy1ndWlkZS1oZWFkZXItc3ViamVjdHMsXG4jcy1sZy1ndWlkZS1oZWFkZXItdGFncyB7XG4gICAgLnMtbGctc21hbGwuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweFxuICAgIH1cbn1cbi5sb2MtbGliZ3VpZGVzLXN1YmplY3QtY29udGFpbmVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktZGFya2VyO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLy8gcmVzdCBvZiBmb290ZXJcbiNzLWxpYi1mb290ZXItbG9naW4tbGluayB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRsb2MtcHJpbWFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuLmxvYy1saWJndWlkZXMtZm9vdGVyLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0xNXB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0xNXB4O1xuICAgIH1cbn1cbi5sb2MtbGliZ3VpZGVzLWZvb3Rlci1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbGcpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxufVxuLmxvYy1saWJndWlkZXMtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLWxnKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxufVxuLmxvYy1saWJndWlkZXMtZm9vdGVyLWxlZnQsXG4ubG9jLWxpYmd1aWRlcy1mb290ZXItcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLWxnKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG59XG4ubG9jLWxpYmd1aWRlcy1mb290ZXItY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1sZykge1xuICAgICAgICBmbGV4OiAxO1xuICAgIH1cbiAgICA+IGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmF5LWRhcmtlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIGJyZWFkY3J1bWIgKi9cbi5icmVhZGNydW1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuLyogc2VhcmNoICovXG4ubG9jLWxpYi1oZWFkZXItc2VhcmNoIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMCA1cHg7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICB9XG4gICAgI3MtbGctZ3VpZGUtc2VhcmNoLWJveCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IDk5MnB4KSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qIGhlYWRlciAqL1xuLmxvYy1oZWFkZXItd3JhcHBlciB7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRsb2MtcHJpbWFyeS1vcmFuZ2U7XG4gICAgbWFyZ2luOiAwIC0xNXB4IDE1cHg7XG59XG4ubG9jLWhlYWRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDIwcHggMTVweCAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDlweCAwO1xuICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAxMXB4IDA7XG4gICAgICAgIG1heC13aWR0aDogOTkycHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiAxMjAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAxNXB4IDA7XG4gICAgICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIH1cbiAgICA+IC5sb2dvLWxvYy0ge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXJzLW9ubHk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IHN2ZyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogNTM2cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLmxvZ28tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuLmxvZ28tbG9jLFxuLmxvZ28tcmVzZWFyY2gtZ3VpZGVzIHtcbiAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBzY3JlZW4tcmVhZGVycy1vbmx5O1xuICAgIH1cbiAgICA+IGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cbi5sb2dvLXJlc2VhcmNoLWd1aWRlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzYwNjA2MDtcbiAgICA+IGltZyB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNjcmVlbi1zbSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cbn0iLCIvKiBpbWFnZSBhbGlnbm1lbnQgKi9cbi5pbWFnZS1hbGlnbi1sZWZ0IHtcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLXNtKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgMTRweCAxNHB4IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbWQpIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG59XG4uaW1hZ2UtYWxpZ24tcmlnaHQge1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tc20pIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgMCAxNHB4IDE0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbWQpIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG59XG4uaW1hZ2UtYWxpZ24tY2VudGVyIHtcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi8qIGZpZ3VyZSBhbGlnbm1lbnQgKi9cbi8qIHRlc3RpbmcgKi9cbi5maWd1cmUge1xuICAgIHdpZHRoOiBtaW4tY29udGVudDtcbiAgICBtYXJnaW46IDAgYXV0byAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IC8qIElFIGZhbGxiYWNrICovXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1dnc7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1tZCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrZXN0O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAvKiBJRSBmYWxsYmFjayAqL1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbG9jLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5hbGlnbi1sZWZ0LFxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICB3aWR0aDogMjcwcHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNHB4IDE0cHggMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbWQpIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1zbSkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTRweCAxNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuZmlndXJlIHtcbiAgICBtYXJnaW46IDAgYXV0byAyNXB4O1xufVxuZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiAkZ3JheS1kYXJrZXN0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IC8qIElFIGZhbGxiYWNrICovXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkbG9jLXByaW1hcnk7XG4gICAgfVxufVxuIiwiLnNsaWNrLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG59XG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogMTNweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA0XCIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiZm9udEF3ZXNvbWVcIiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDQ4cHggIWltcG9ydGFudDtcbiAgICB9XG59XG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDEzcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwNVwiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImZvbnRBd2Vzb21lXCIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiA0OHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgPiBhIHtcbiAgICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LWRhcmtlc3QgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zLWxpYi1jcGFuZS1jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMCAhaW1wb3J0YW50O1xuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn0iLCIvLyB0YWJzIGluIGNvbnRlbnQgYXJlYVxuLnMtbGliLWpxdGFicyB7XG4gICAgLy9ib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgICBib3JkZXItY29sb3I6ICNiZmJmYmY7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAqIHtcbiAgICAgICAgLy9ib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICAgIH1cbiAgICAudWktd2lkZ2V0LWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGluaXRpYWw7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2JmYmZiZjtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICB9XG4gICAgLnVpLXRhYnMtbmF2IHtcbiAgICAgICAgcGFkZGluZzogOXB4IDE2cHggMDtcbiAgICB9XG4gICAgbGkudWktdGFicy10YWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICAgICAgICBib3JkZXItY29sb3I6ICNiZmJmYmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmZiZmJmICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAuMmVtIDFweCAwO1xuICAgICAgICBtYXJnaW46IC0xcHggLTFweCAwIDA7XG4gICAgICAgICYudWktdGFicy1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IFxuICAgICAgICB9XG4gICAgfVxufSIsIi5saWItc2Nyb2xsLXRvcCB7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3OGFlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMCwgMTc0LCAwLjg1KTtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4IDAgMTBweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIHRvcCBsZXZlbCBwYWdlICovXG4ubmF2YmFyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBhLXpcbn1cbi5uYXZiYXItZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgLy8gYS16XG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JheTsgLy8gYS16XG59XG4udG9wLWxldmVsLXBhZ2UtaGVhZGVyIHtcbiAgICAmI3MtbGliLXB1YmxpYy1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cbi5wYWQtYm90dG9tLW1kIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbn1cbi50b3AtbGV2ZWwtcGFnZXMge1xuICAgIC5wYW5lbC1ncm91cCAucGFuZWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6ICRncmF5O1xuICAgICAgICAucGFuZWwtaGVhZGluZyB7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrZXN0O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgLy9saW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjBmZVwiO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbG9jLXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTQ2XCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwZmVcIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYm9sZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5hbGVydCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG59XG4uYWxlcnQtaW5mbyB7XG4gICAgY29sb3I6ICRncmF5LWRhcmtlc3Q7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICBib3JkZXItY29sb3I6ICRncmF5O1xufVxuLnMtbGliLXB1YmxpYy1zaWRlLWhlYWRlciB7XG4gICAgaDIge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIC5wYWQtYm90dG9tLXNtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICAgICYgKyAudHh0LnBhZC10b3Atc20ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIH1cbn1cbi5uYXYtcGlsbHMgPiBsaS5hY3RpdmUgPiBidXR0b24sXG4ubmF2LXBpbGxzID4gbGkuYWN0aXZlID4gYnV0dG9uOmZvY3VzLFxuLm5hdi1waWxscyA+IGxpLmFjdGl2ZSA+IGJ1dHRvbjpob3Zlcixcbi5uYXYtcGlsbHMgPiBsaS5hY3RpdmUgPiBhLFxuLm5hdi1waWxscyA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXMsXG4ubmF2LXBpbGxzID4gbGkuYWN0aXZlID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjE4ZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4ubmF2IC5zLWxnLWluZGV4LW5hdi1idG4gPiBidXR0b24ge1xuICAgIGNvbG9yOiAjMDA2MThlO1xufVxuI3MtbGctaHAtbmF2IHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgPiB1bCxcbiAgICA+IHVsID4gbGksXG4gICAgPiB1bCA+IGxpIC5uYXYtcGlsbHMgLmJ0biB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG4jcy1sZy1ndWlkZS1saXN0LWNvbnRyb2xzIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4jcy1sZy1pbmRleC1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuLnMtbGliLWJveC1lci1jb3Vyc2UtbGlzdCxcbi5zLWxpYi1ib3gtaWR4LWJsb2ctcG9zdC1saXN0LFxuLnMtbGliLWJveC1pZHgtZXItY291cnNlLWxpc3QsXG4ucy1saWItYm94LWlkeC1ndWlkZS1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXk7XG59XG4ucy1saWItYm94LWNvbnRlbnQge1xuICAgIC50b3AtbGV2ZWwtcGFnZXMgJiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbWQpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICAgICAgLnMtbGctZ21ldGEge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAucy1saWItY29sb3ItbHQtZ3JleSB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmhpdHN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnMtbGctZ3RpdGxlIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUJBQW1CO0FJeUJuQixBQUFBLG9CQUFvQixDQUFDO0VBdkJqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxHQUFHO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsQ0FBQztFQUNWLFFBQVEs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 */
