/* 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 #ccc !important;
  padding: 0 !important;
  line-height: 1.2;
}

.nav-stacked > li:last-child {
  border-bottom: 1px solid #ccc !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;
}

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

h1.page-title {
  font-size: 24px !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: 17.5px;
  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;
}

/* 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-size: 14px;
  padding: 0 0 5px;
  margin-bottom: 18px;
  text-transform: uppercase;
  border-bottom: 1px solid #ccc;
}

.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 #ccc;
  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 #ccc;
  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 {
  display: none;
}

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

.loc-libguides-subject-container {
  border-top: 1px solid #999;
  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: 20px;
  padding-bottom: 20px;
  font-size: 13px;
  color: #666;
}

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

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

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

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

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZ3VpZGUuY3NzIiwic291cmNlcyI6WyJsaWJndWlkZS5zY3NzIiwiX21xLnNjc3MiLCJfbXEtbGliZ3VpZGUuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyIsIl9uYXYuc2NzcyIsIl9tYWluLnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJfZmlndXJlLnNjc3MiLCJfc2xpY2stc2xpZGVyLnNjc3MiLCJfdGFicy5zY3NzIiwiX2JhY2stdG8tdG9wLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyogbWVkaWEgcXVlcmllcyAqL1xuQGltcG9ydCAnbXEnO1xuQGltcG9ydCAnbXEtbGliZ3VpZGUnO1xuXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuQGltcG9ydCAnbmF2JztcbkBpbXBvcnQgJ21haW4nO1xuQGltcG9ydCAnZm9vdGVyJztcbkBpbXBvcnQgJ2hlYWRlcic7XG5cbkBpbXBvcnQgJ2ZpZ3VyZSc7XG5AaW1wb3J0ICdzbGljay1zbGlkZXInO1xuQGltcG9ydCAndGFicyc7XG5AaW1wb3J0ICdiYWNrLXRvLXRvcCc7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmICRtaW4td2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkbWF4LXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxuXG4gICAgICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcbiAgICAgICAgICAgICRtZWRpYS10eXBlOiAnJztcbiAgICAgICAgICAgICRtZWRpYS1xdWVyeTogc3RyLXNsaWNlKHVucXVvdGUoJG1lZGlhLXF1ZXJ5KSwgNik7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3ctYnJlYWtwb2ludHMgKCRtcS1zaG93LWJyZWFrcG9pbnRzKSAtIExpc3Qgb2YgYnJlYWtwb2ludHMgdG8gc2hvdyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbi8vL1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcbkBtaXhpbiBtcS1zaG93LWJyZWFrcG9pbnRzKCRzaG93LWJyZWFrcG9pbnRzOiAkbXEtc2hvdy1icmVha3BvaW50cywgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBib2R5OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0Y4RTM7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGNvbG9yOiAjQzA5ODUzO1xuICAgICAgICBmb250OiBzbWFsbC1jYXB0aW9uO1xuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgLy8gTG9vcCB0aHJvdWdoIHRoZSBicmVha3BvaW50cyB0aGF0IHNob3VsZCBiZSBzaG93blxuICAgICAgICBAZWFjaCAkc2hvdy1icmVha3BvaW50IGluICRzaG93LWJyZWFrcG9pbnRzIHtcbiAgICAgICAgICAgICR3aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIjeyRzaG93LWJyZWFrcG9pbnR9IOKJpSAjeyR3aWR0aH0gKCN7bXEtcHgyZW0oJHdpZHRoKX0pXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpZiBsZW5ndGgoJG1xLXNob3ctYnJlYWtwb2ludHMpID4gMCB7XG4gICAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbn0iLCIkbGliZ3VpZGUtc2NyZWVuLXhzOiAzMjBweDtcbiRsaWJndWlkZS1zY3JlZW4tc206IDQ4MHB4O1xuJGxpYmd1aWRlLXNjcmVlbi1tZDogNjUwcHg7XG4kbGliZ3VpZGUtc2NyZWVuLW1sOiA3NzBweDtcbiRsaWJndWlkZS1zY3JlZW4tbGc6IDgxMHB4O1xuJGxpYmd1aWRlLXNjcmVlbi14bDogOTgwcHg7XG4kbGliZ3VpZGUtc2NyZWVuLXh4bDogMTIwMHB4O1xuXG4kbXEtYnJlYWtwb2ludHM6IChcbiAgICBzY3JlZW4teHM6ICRsaWJndWlkZS1zY3JlZW4teHMsXG4gICAgc2NyZWVuLXNtOiAkbGliZ3VpZGUtc2NyZWVuLXNtLFxuICAgIHNjcmVlbi1tZDogJGxpYmd1aWRlLXNjcmVlbi1tZCxcbiAgICBzY3JlZW4tbWw6ICRsaWJndWlkZS1zY3JlZW4tbWwsXG4gICAgc2NyZWVuLWxnOiAkbGliZ3VpZGUtc2NyZWVuLWxnLFxuICAgIHNjcmVlbi14bDogJGxpYmd1aWRlLXNjcmVlbi14bCxcbiAgICBzY3JlZW4teHhsOiAkbGliZ3VpZGUtc2NyZWVuLXh4bFxuKSIsIiRmb250LXNlcmlmOiAgICAgICAgICAgICdSb2JvdG8gU2xhYicsIHNlcmlmO1xuJGZvbnQtc2Fucy1zZXJpZjogICAgICAgJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG5cbiRsb2MtcHJpbWFyeS1vcmFuZ2U6ICAgICNGQzRDMDI7XG4kbG9jLXByaW1hcnk6ICAgICAgICAgICAjMDA2MThlO1xuJGxvYy1wcmltYXJ5LWxpZ2h0ZXN0OiAgI2Y1ZmNmZjtcbiRncmF5OiAgICAgICAgICAgICAgICAgICNjY2M7XG4kZ3JheS1kYXJrZXN0OiAgICAgICAgICAjMzMzO1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgI0VGRUZFRjsiLCIvLyBzY3JlZW4gcmVhZGVycyBvbmx5XG5AbWl4aW4gc2NyZWVuLXJlYWRlcnMtb25seSgpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgYm9yZGVyOiAwO1xufVxuQG1peGluIHNjcmVlbi1yZWFkZXJzLW9ubHktcmV2ZXJzZWQoKSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG59XG5AbWl4aW4gc2NyZWVuLXJlYWRlcnMtb25seS1mb2N1c2FibGUoKSB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXJzLW9ubHktcmV2ZXJzZWRcbiAgICB9XG59XG4uc2NyZWVuLXJlYWRlcnMtb25seSB7XG4gICAgQGluY2x1ZGUgc2NyZWVuLXJlYWRlcnMtb25seTtcbn1cblxuLy8gY2xlYXJmaXhcbi5ncm91cDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbn1cbiIsIi8qIG5hdiBzdHlsZSAqL1xuLm5hdi1zdGFja2VkIHtcbiAgICA+IGxpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA3cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgPiAubGlzdC1ncm91cCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXYtc3RhY2tlZCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIkZm9udC1zaXplLWgxOiAgICAgICAgICAgICAgMzZweDtcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgICAyMXB4O1xuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICAgIDE3LjVweDtcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgICAxNHB4O1xuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAgICRmb250LXNpemUtaDQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1oNDtcblxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgIDcwMDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAxLjI7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgIzAwMDtcblxuYm9keSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4vKiBsaW5rIHN0eWxlICovXG5hIHtcbiAgICBjb2xvcjogJGxvYy1wcmltYXJ5O1xufVxuLyogaGVhZGluZyBzdHlsZSAqL1xuaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZXJpZjtcbiAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMzVweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICAgICYucGFnZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLyogZGVzY3JpcHRpb24gKi9cbiNzLWxnLWd1aWRlLWRlc2MtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbn1cblxuaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgbWFyZ2luOiAwIDAgMTRweDtcbiAgICBhICYge1xuICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbmgyLCAuaDIge2ZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjt9XG5oMywgLmgzIHtmb250LXNpemU6ICRmb250LXNpemUtaDM7bWFyZ2luOiAwIDAgMTBweDt9XG5oNCwgLmg0IHtmb250LXNpemU6ICRmb250LXNpemUtaDQ7bWFyZ2luOiAwIDAgN3B4O31cbmg1LCAuaDUge2ZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTttYXJnaW46IDAgMCA3cHg7fVxuaDYsIC5oNiB7Zm9udC1zaXplOiAkZm9udC1zaXplLWg2O21hcmdpbjogMCAwIDdweDt9XG4vKiBtYXJrIHN0eWxlICovXG5tYXJrLFxuLm1hcmtlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbn1cbi8qIGJsb2NrcXVvdGUgKi9cbmJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cbi8qIHNwZWNpYWwgY29udGFpbmVyICovXG4uc3BlY2lhbC1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG59XG4vKiBuZXN0ZWQgbGlzdCAqL1xuLnMtbGctbGluay1saXN0LTUge1xuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyogYm94IHN0eWxlIGgyIGFuZCBldGMgKi9cbi5zLWxpYi1ib3gge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5zLWxpYi1ib3ggLnMtbGliLWJveC10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAwIDAgNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG59XG4ucy1saWItYm94LnMtbGliLWJveC1zdGQge1xuICAgIGJvcmRlcjogMDtcbn1cbi5zLWxpYi1ib3gtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbn1cbi8qIGFzayBhIGxpYiBib3ggKi9cbi5hc2stYS1saWJyYXJpYW4tYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9jLXByaW1hcnktbGlnaHRlc3Q7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbi5hc2stYS1saWJyYXJpYW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgY29sb3I6ICMwMDA7XG59XG4uYXNrLWEtbGlicmFyaWFuLWxvZ28td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDZweCAwIDEycHg7XG59XG4vKiBhdXRob3JzaGlwIGJveCAqL1xuLmF1dGhvcnNoaXAtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbG9jLXByaW1hcnktbGlnaHRlc3Q7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICA+IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW46IDE4cHggMCAycHg7XG4gICAgfVxuICAgID4gdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cbi5hdXRob3JzaGlwLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIGNvbG9yOiAjMDAwO1xufVxuIiwiLy8gaGlkZSBmb290ZXIge1xuI3MtbGliLWZvb3Rlci1wdWJsaWMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4vLyBzdWJqZWN0XG4jcy1sZy1ndWlkZS1oZWFkZXItc3ViamVjdHMge1xuICAgIC5zLWxnLXNtYWxsLmJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IDE0cHhcbiAgICB9XG59XG4ubG9jLWxpYmd1aWRlcy1zdWJqZWN0LWNvbnRhaW5lciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5OTk7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG4vLyByZXN0IG9mIGZvb3RlclxuI3MtbGliLWZvb3Rlci1sb2dpbi1saW5rIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJGxvYy1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG4ubG9jLWxpYmd1aWRlcy1mb290ZXItd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTE1cHg7XG4gICAgfVxufVxuLmxvYy1saWJndWlkZXMtZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IDc2OHB4KSB7XG5cbiAgICB9XG59XG4ubG9jLWxpYmd1aWRlcy1mb290ZXIge1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbGcpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG59XG4ubG9jLWxpYmd1aWRlcy1mb290ZXItbGVmdCxcbi5sb2MtbGliZ3VpZGVzLWZvb3Rlci1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmxvYy1saWJndWlkZXMtZm9vdGVyLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tbGcpIHtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG4gICAgPiBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogYnJlYWRjcnVtYiAqL1xuLmJyZWFkY3J1bWIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG4vKiBzZWFyY2ggKi9cbi5sb2MtbGliLWhlYWRlci1zZWFyY2gge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAwIDVweDtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cbiAgICAjcy1sZy1ndWlkZS1zZWFyY2gtYm94IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogOTkycHgpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLyogaGVhZGVyICovXG4ubG9jLWhlYWRlci13cmFwcGVyIHtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGxvYy1wcmltYXJ5LW9yYW5nZTtcbiAgICBtYXJnaW46IDAgLTE1cHggMTVweDtcbn1cbi5sb2MtaGVhZGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMjBweCAxNXB4IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggOXB4IDA7XG4gICAgICAgIG1heC13aWR0aDogNzY4cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiA5OTJweCkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDExcHggMDtcbiAgICAgICAgbWF4LXdpZHRoOiA5OTJweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHggMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgfVxuICAgID4gLmxvZ28tbG9jLSB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2NyZWVuLXJlYWRlcnMtb25seTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gc3ZnIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiA1MzZweCkge1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ubG9nby1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG4ubG9nby1sb2MsXG4ubG9nby1yZXNlYXJjaC1ndWlkZXMge1xuICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXJzLW9ubHk7XG4gICAgfVxuICAgID4gaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxufVxuLmxvZ28tcmVzZWFyY2gtZ3VpZGVzIHtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNjA2MDYwO1xuICAgID4gaW1nIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc2NyZWVuLXNtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxufSIsIi8qIGltYWdlIGFsaWdubWVudCAqL1xuLmltYWdlLWFsaWduLWxlZnQge1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tc20pIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCAxNHB4IDE0cHggMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1tZCkge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgIH1cbn1cbi5pbWFnZS1hbGlnbi1yaWdodCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1zbSkge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDE0cHggMTRweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1tZCkge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgIH1cbn1cbi5pbWFnZS1hbGlnbi1jZW50ZXIge1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogZmlndXJlIGFsaWdubWVudCAqL1xuLyogdGVzdGluZyAqL1xuLmZpZ3VyZSB7XG4gICAgd2lkdGg6IG1pbi1jb250ZW50O1xuICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgLyogSUUgZmFsbGJhY2sgKi9cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tc20pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzV2dztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU2NHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgY29sb3I6ICRncmF5LWRhcmtlc3Q7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IC8qIElFIGZhbGxiYWNrICovXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRsb2MtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmFsaWduLWxlZnQsXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzY3JlZW4tc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNzBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE0cHggMTRweCAwO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNjcmVlbi1tZCkge1xuICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNHB4IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2xpY2stc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbn1cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDRcIiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogXCJmb250QXdlc29tZVwiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogNDhweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5zbGljay1uZXh0IHtcbiAgICByaWdodDogMTNweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA1XCIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiZm9udEF3ZXNvbWVcIiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDQ4cHggIWltcG9ydGFudDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6IDEycHggIWltcG9ydGFudDtcbiAgICA+IGEge1xuICAgICAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZGFya2VzdCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuLnMtbGliLWNwYW5lLWNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDEwcHggMCAwICFpbXBvcnRhbnQ7XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufSIsIi8vIHRhYnMgaW4gY29udGVudCBhcmVhXG4ucy1saWItanF0YWJzIHtcbiAgICAvL2JvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICAgIGJvcmRlci1jb2xvcjogI2JmYmZiZjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgICoge1xuICAgICAgICAvL2JvcmRlci1yYWRpdXM6IGluaXRpYWw7XG4gICAgfVxuICAgIC51aS13aWRnZXQtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmZiZmJmO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIH1cbiAgICAudWktdGFicy1uYXYge1xuICAgICAgICBwYWRkaW5nOiA5cHggMTZweCAwO1xuICAgIH1cbiAgICBsaS51aS10YWJzLXRhYiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2JmYmZiZjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiZmJmYmYgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIC4yZW0gMXB4IDA7XG4gICAgICAgIG1hcmdpbjogLTFweCAtMXB4IDAgMDtcbiAgICAgICAgJi51aS10YWJzLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyBcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmYgIWltcG9ydGFudDsgXG4gICAgICAgIH1cbiAgICB9XG59IiwiLmxpYi1zY3JvbGwtdG9wIHtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgICByaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDI7XG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc4YWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIwLCAxNzQsIDAuODUpO1xuICAgICAgICBwYWRkaW5nOiAwIDEycHggMCAxMHB4O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFBbUI7QUl5Qm5CLEFBQUEsb0JBQW9CLENBQUM7RUF2QmpCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxDQUFDO0VBQ1YsUUFBUSxFQUFFLE1BQU07RUFDaEIsSUFBSSxFQUFFLGdCQUFhO0VBQ25CLE1BQU0sRUFBRSxDQUFDO0NBa0JaOztBQUdELEFBQUEsTUFBTSxBQUFBLE1BQU0sQ0FBQztFQUNULE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEtBQUs7RUFDZCxLQUFLLEVBQUUsSUFBSTtDQUNkOztBQ2xDRCxlQUFlO0FBQ2YsQUFDSSxZQURRLEdBQ04sRUFBRSxDQUFDO0VBQ0QsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENGR0wsSUFB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 */
